Start integrating refactor