code: func withStatus(err error, status int) *protocolError {
  	if _, ok := err.(*protocolError); ok {
  		panic("protocolError in protocolError")
  	}
  	if err == nil {
  		return nil
  	}
  	return &protocolError{err, status}
  }
docs: // withStatus wraps an error with an HTTP status.
  // If err is nil, returns nil.