sets.go
func (set basicSet) Clone() set {
	clone := basicSet(make(map[string]interface{}))
	for k, v := range set {
		clone[k] = v
	}

	return clone
}
func (set basicSet) Clone() set {
	clone := basicSet(make(map[string]interface{}))
	for k, v := range set {
		clone[k] = v
	}

	return clone
}
func ( set basicSet ) Clone ( ) set { clone := basicSet ( make ( map [ string ] interface { } ) ) for k , v := range set { clone [ k ] = v } return clone }
// Clone creates a copy of the set where the values in clone set point to the same underlying reference as the original set
Clone creates a copy of the set where the values in clone set point to the same underlying reference as the original set