Finish geometry refactor