code: func NewSet(items ...interface{}) Set {
  	res := setImpl{
  		data: make(map[interface{}]struct{}),
  	}
  	for _, item := range items {
  		res.Add(item)
  	}
  	return res
  }
docs: // Returns a new Set pre-populated with the given items