code: func handlerToMiddleware(m Handler) Middleware {
  	return func(h Handler) Handler {
  		return func(ctx context.Context, rw http.ResponseWriter, req *http.Request) error {
  			if err := m(ctx, rw, req); err != nil {
  				return err
  			}
  			return h(ctx, rw, req)
  		}
  	}
  }
docs: // handlerToMiddleware creates a middleware from a raw handler.
  // The middleware calls the handler and either breaks the middleware chain if the handler returns
  // an error by also returning the error or calls the next handler in the chain otherwise.