Refactors for clearer division of internal/public methods