         }
     }
 }
-
-/*
-
-
-var iKeyString = String(bytes: iKey, length: iKeyLength, encoding: NSUTF8StringEncoding)
-
-func id() {
-    var iData
-    var iDataLength: Int
-    levelDBIteratorGetValue(iterator, iData!, iDataLength)
-    var v = decoder(iKeyString, NSData(bytes: iData!, length: iDataLength)!)
-    return v!
-}
-
-func block() {
-    self.enumerateKeysAndObjectsBackward(false, lazily: false, startingAtKey: nil, filteredByPredicate: nil, andPrefix: nil, usingBlock: block)
-}
-
-*/

                if key.hasPrefix(prefix) {
                    startingKey = key
                }
                /*
                if let range = key.rangeOfString(prefix) {
                    if range.startIndex == key.startIndex && range.count > 0 {
                        startingKey = key
                    }
                }*/
            }
            let len = startingKey.length
            // If a prefix is provided and the iteration is backwards

                // Otherwise, we start at the provided prefix
                levelDBIteratorSeek(iterator, startingKey.cString, len)
            }
        } else if let key = key {
            levelDBIteratorSeek(iterator, key.cString, key.length)
        } else if backward {
