code: func (m resetExpiryMiddleware) MiddlewareWithReset(next http.Handler) http.Handler {
  	return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
  		// Convert the response writer to a sessions response, so we can
  		// use its cookie buffering and writing capabilities
  		w = newSessionsResponseWriter(w)
  
  		err := m.resetter.ResetExpiry(w, r)
  		// It's possible that the session hasn't been created yet
  		// so there's nothing to reset. In that case, do not explode.
  		if err != nil && !IsNoSessionError(err) {
  			panic(err)
  		}
  
  		next.ServeHTTP(w, r)
  	})
  }
docs: // Middleware converts the ResponseWriter object to a sessionsResponseWriter
  // for buffering cookies across session API requests.
  // The sessionsResponseWriter implements cookieWriter.
  //
  // MiddlewareWithReset also resets the users session expiry on each request.
  // If you do not want this added functionality use Middleware instead.