add throttle support