 
 // MARK: Internal functions
 
-internal func contains<T:CollectionType where T.Generator.Element:Equatable>(a:T, e:T.Generator.Element) -> Bool
-{
-    return (find(a,e) != nil);
-}
-
-internal func transform<T:CollectionType where T.Generator.Element:Equatable>(a: T, b: T, cmpr: (inout Array<T.Generator.Element>, T, T, T.Generator.Element ) -> Void ) -> [T.Generator.Element]
+internal func contains<T:CollectionType where T.Generator.Element:Equatable>(a:T, _ e:T.Generator.Element) -> Bool
+{
+    return (a.indexOf(e) != nil);
+}
+
+internal func transform<T:CollectionType where T.Generator.Element:Equatable>(a: T, _ b: T, _ cmpr: (inout Array<T.Generator.Element>, T, T, T.Generator.Element ) -> Void ) -> [T.Generator.Element]
 {
     typealias U = T.Generator.Element;
     var c = [U]();

        
        self.minHashLength = minHashLength;
        self.guards = [Char]();
        self.salt = map(salt.unicodeScalars){ numericCast($0.value) };
        self.seps = map(_seps.unicodeScalars){ numericCast($0.value) };
        self.alphabet = unique( map(_alphabet.unicodeScalars){ numericCast($0.value) } );
        
        self.seps = intersection(self.alphabet, self.seps);
        self.alphabet = difference(self.alphabet, self.seps);

        var alphabet = self.alphabet;
        var numbers_hash_int = 0;

        for (index, value) in numbers.enumerate()
        {
            numbers_hash_int += ( value  % ( index + 100 ) );
        }
