Refactorings: moved methods for type envy. See wiki