Redesign

ditto re: code reuse here.