     }
 
     public func union(other: CountedSet<Element>) -> CountedSet<Element> {
-        var unionized = CountedSet<Element>(countedSet: self)
+        var unionized = self
         unionized.unionInPlace(other)
 
         return unionized

    }

    public func exclusiveOr(other: CountedSet<Element>) -> CountedSet<Element> {
        var xored = CountedSet<Element>(countedSet: self)
        xored.exclusiveOrInPlace(other)

        return xored

    }

    public func intersect(other: CountedSet<Element>) -> CountedSet<Element> {
        var intersected = self
        intersected.intersectInPlace(other)

        return intersected
