Phasing in Mike's refactor