This sounds like exactly what I need.