Continuing refactor