     func generate() -> IndexingGenerator<[(Key, Value)]> {
         return pairs.generate()
     }
-}
-
-extension ShortDictionary where Key: Hashable /* Require Hashable to that ShortDictionary can be replaced with Dictionary */ {
+    
     subscript(key: Key) -> Value? {
         for (k, value) in pairs {
             if key == k {

}


// MARK: - ShortDictionary

struct ShortDictionary<Key, Value>: SequenceType {
    let pairs: [(Key, Value)]
    
    init<Sequence: SequenceType where Sequence.Generator.Element == (Key, Value)>(_ sequence: Sequence) {

    
    enum Kind {
        case Values([DatabaseValueConvertible?])
        case NamedValues(OptimisticDictionary<String, DatabaseValueConvertible?>)
    }
    
    let kind: Kind
