     return value.map(T.init)
 }
 
-public prefix func <|<T: JSONCreatable>(value: JSONArray<T.JSONType>?) -> [T]? {
-    return value.map { $0.map(T.init) }
-}
-
-public prefix func <|<T: JSONStaticCreatable>(value: JSONArray<T.JSONType>?) -> [T]? {
-    return value.map { $0.flatMap(T.from) }
+//public prefix func <|<T: JSONCreatable>(value: JSONArray<T.JSONType>?) -> [T]? {
+//    return value.map { $0.map(T.init) }
+//}
+
+public prefix func <|<T: JSONStaticCreatable>(value: JSONArray<T.JSONType>) -> [T] {
+    return value.flatMap(T.from)
 }
     
 public func =<|<T>(lhs: inout T, value: JSONObject?) {

    lhs = <|value
}
    
public func =<|<T: JSONCreatable>(lhs: inout [T], value: JSONObject?) {
    if let val: JSONArray<T.JSONType> = <|value { lhs = <|val }
}

public func =<|<T: JSONStaticCreatable>(lhs: inout [T], value: JSONObject?) {
    if let val: JSONArray<T.JSONType> = <|value,
        let arr: Array<T> = <|val { lhs = arr }
}

public func =<|<T: JSONCreatable>(lhs: inout [T]?, value: JSONObject?) {
    if let val = value { lhs =<| val }
}

public func =<|<T: JSONStaticCreatable>(lhs: inout [T]?, value: JSONObject?) {
    if let val = value { lhs =<| val }
}

public func =<|<T: JSONCreatable>(lhs: inout T, value: T.JSONType) {
    lhs = <|value

}

public func =<|<T: JSONStaticCreatable>(lhs: inout [T], value: [T.JSONType]) {
    lhs = <|value
}

public func =<|<T: JSONCreatable>(lhs: inout [T]?, value: [T.JSONType]?) {
