private function calculateDelay($attempt) { return min(mt_rand(0, 1000000) + pow(2, $attempt) * 1000000, self::MAX_DELAY_MICROSECONDS); }