Jeff - refactor to eliminate a long method