Refactor final! (at least for now)