 /// Extension customizing how NSDictionaries are wrapped
 extension NSDictionary: WrapCustomizable {
     public func wrap(context: Any?, dateFormatter: DateFormatter?) -> Any? {
-        return try? Wrapper(context: context, dateFormatter: dateFormatter).wrap(dictionary: self as [NSObject : AnyObject]) as AnyObject
+        return try? Wrapper(context: context, dateFormatter: dateFormatter).wrap(dictionary: self as [NSObject : AnyObject])
     }
 }
 

        }
        
        if let date = value as? WrappableDate {
            return self.wrap(date: date) as AnyObject
        }
        
        let mirror = Mirror(reflecting: value)

 */
public func wrap<T>(_ objects: [T], writingOptions: JSONSerialization.WritingOptions? = nil, context: Any? = nil, dateFormatter: DateFormatter? = nil) throws -> Data {
    let dictionaries: [WrappedDictionary] = try wrap(objects, context: context)
    return try JSONSerialization.data(withJSONObject: dictionaries, options: writingOptions ?? [])
}

// Enum describing various styles of keys in a wrapped dictionary
