code: func setPublishOption(k, v interface{}) broker.PublishOption {
  	return func(o *broker.PublishOptions) {
  		if o.Context == nil {
  			o.Context = context.Background()
  		}
  		o.Context = context.WithValue(o.Context, k, v)
  	}
  }
docs: // setPublishOption returns a function to setup a context with given value