// With applies the given options to the Mux and returns the result of invoking
// the last Option func. If no options are provided then a no-op Option is returned.
With applies the given options to the Mux and returns the result of invoking
the last Option func. If no options are provided then a no-op Option is returned.
// With applies the given options to the Mux and returns the result of invoking // the last Option func . If no options are provided then a no - op Option is returned .
func (m *Mux) With(opts ...Option) Option {
	var last Option 
	last = Option(func(x *Mux) Option { return last })
	for _, o := range opts {
		if o != nil {
			last = o(m)
		}
	}
	return last
}
func ( m * Mux ) With ( opts ... Option ) Option { var last Option last = Option ( func ( x * Mux ) Option { return last } ) for _ , o := range opts { if o != nil { last = o ( m ) } } return last }
With applies the given options to the Mux and returns the result of invoking
the last Option func.
With applies the given options to the Mux and returns the result of invoking the last Option func .
// defaults to noop