code: func (s Set) Intersect(other Set) Set {
  	smallLen := len(s)
  	if lo := len(other); lo < smallLen {
  		smallLen = lo
  	}
  	ret := make(Set, smallLen)
  	for k := range s {
  		if _, ok := other[k]; ok {
  			ret[k] = struct{}{}
  		}
  	}
  	return ret
  }
docs: // Intersect returns a new Set which is the intersection of this set with the
  // other set.
  //
  // `other` must have the same underlying type as the current set, or this will
  // panic.