code: func (s *Subscription) SetPendingLimits(msgLimit, bytesLimit int) error {
  	if s == nil {
  		return ErrBadSubscription
  	}
  	s.mu.Lock()
  	defer s.mu.Unlock()
  	if s.conn == nil {
  		return ErrBadSubscription
  	}
  	if s.typ == ChanSubscription {
  		return ErrTypeSubscription
  	}
  	if msgLimit == 0 || bytesLimit == 0 {
  		return ErrInvalidArg
  	}
  	s.pMsgsLimit, s.pBytesLimit = msgLimit, bytesLimit
  	return nil
  }
docs: // SetPendingLimits sets the limits for pending msgs and bytes for this subscription.
  // Zero is not allowed. Any negative value means that the given metric is not limited.