Work on 2nd refactor