code: func New(ctx context.Context, next http.Handler, config config.Retry, listener Listener, name string) (http.Handler, error) {
  	logger := middlewares.GetLogger(ctx, name, typeName)
  	logger.Debug("Creating middleware")
  
  	if config.Attempts <= 0 {
  		return nil, fmt.Errorf("incorrect (or empty) value for attempt (%d)", config.Attempts)
  	}
  
  	return &retry{
  		attempts: config.Attempts,
  		next:     next,
  		listener: listener,
  		name:     name,
  	}, nil
  }
docs: // New returns a new retry middleware.