refactored stupid names