                 remoteReadingListsByID[apiReadingList.id] = apiReadingList
                 remoteReadingListsToCreateLocally[apiReadingList.id] = apiReadingList
                 remoteReadingListsByName[apiReadingList.name.precomposedStringWithCanonicalMapping] = apiReadingList
+                if let date = DateFormatter.wmf_iso8601().date(from: apiReadingList.updated),
+                    date.compare(sinceDate) == .orderedDescending {
+                    sinceDate = date
+                }
             }
             DispatchQueue.main.async {
                 self.dataStore.performBackgroundCoreDataOperation(onATemporaryContext: { (moc) in

    }
}

fileprivate class ReadingListsUpdateOperation: ReadingListsOperation {
    override func execute() {
        DispatchQueue.main.async {
            self.dataStore.performBackgroundCoreDataOperation(onATemporaryContext: { (moc) in
                guard let since = moc.wmf_stringValue(forKey: "WMFReadingListUpdateKey") else {
                    self.finish()
                    return
                }
                
                self.apiController.updatedListsAndEntries(since: since, completion: { (updatedLists, updatedEntries, error) in
                    print("\(String(describing: updatedLists)) \(String(describing: updatedEntries))")
                    self.finish()
                })
            })
        }

                self.finish(with: error)
                return
            }
            var sinceDate: Date = Date.distantPast
            var remoteReadingListsByID: [Int64: APIReadingList] = [:]
            var remoteReadingListsToCreateLocally: [Int64: APIReadingList] = [:]
            var remoteReadingListsByName: [String: APIReadingList] = [:]
