throttle refactored