 import RxSwift
 import CloudKit
 
-typealias ZoneTokenMap = [CKRecordZoneID: CKServerChangeToken]
+typealias ZoneTokenMap = [Data: Data]
 
 public protocol CacheDelegate {
     func cache(record: CKRecord)

            
            for recordZoneID in recordZoneIDs {
                
                if let token = tokenMap[recordZoneID] {
                    let options = CKFetchRecordZoneChangesOptions()
                    options.previousServerChangeToken = token
                    optionsByRecordZoneID[recordZoneID] = options
                }
                

                    self.delegate.deleteCache(for: recordID)
                case .token(let (zoneID, token)):
                    print("token: \(zoneID)->\(token)")
                    self.save(zoneID: zoneID, token: token, for: Cache.zoneTokenMapKey)
                }
                
            case .error(let error):
