Final Refactor for release