     // MARK: - NSIncrementalStore
     
     override func loadMetadata() throws {
-        let uuid = ProcessInfo.processInfo().globallyUniqueString
+        let uuid = ProcessInfo.processInfo.globallyUniqueString
         self.metadata = [NSStoreTypeKey : CachingIncrementalStore.storeType, NSStoreUUIDKey: uuid]
     }
     
-    override func execute(_ request: NSPersistentStoreRequest, with context: NSManagedObjectContext?) throws -> AnyObject {
+    override func execute(_ request: NSPersistentStoreRequest, with context: NSManagedObjectContext?) throws -> Any {
         let error: NSError? = nil
         if request.requestType == .fetchRequestType {
             return try self.executeFetchRequest(request, withContext: context)

    :param: identifier A context
    */
    
    func fetchRemoteObjectsWithRequest(_ fetchRequest: NSFetchRequest<AnyObject>, context: NSManagedObjectContext) -> Void {
        
        let parseJsonData = { (data: Data) -> Void in
            guard let jsonResult = try JSONSerialization.jsonObject(with: data, options: []) as? [AnyObject] else {

    }

    override func newValuesForObject(with objectID: NSManagedObjectID, with context: NSManagedObjectContext) throws -> NSIncrementalStoreNode {
        let fetchRequest = NSFetchRequest<NSManagedObject>(entityName: objectID.entity.name!)
        fetchRequest.resultType = NSFetchRequestResultType.dictionaryResultType
        fetchRequest.fetchLimit = 1
        fetchRequest.includesSubentities = false
        
        let refObj = self.referenceObject(for: objectID) as! NSString
        let predicate = NSPredicate(format: "%K = %@", kPALResourceIdentifierAttributeName, refObj.description)
        fetchRequest.predicate = predicate
        
        var results: [AnyObject]? = nil
