}
func (rl *MultiRequestRateLimiterImpl) Reserve(now time.Time, request Request) Reservation {
multi_request_rate_limiter_impl.go
length := len(rl.requestRateLimiters)
reservations := make([]Reservation, 0, length)
for _, requestRateLimiter := range rl.requestRateLimiters {
reservation := requestRateLimiter.Reserve(now, request)
if !reservation.OK() {
// cancel all existing reservation
for _, reservation := range reservations {