         guard !readingList.isDefaultList else {
             return
         }
-        
         assert(Thread.isMainThread)
-
-        let moc = dataStore.viewContext
-        
         let existingKeys = Set(readingList.articleKeys)
-        
         for article in articles {
             guard let key = article.key, !existingKeys.contains(key) else {
                 continue

        guard let name = readingList.name else {
            return nil
        }
        let moc = dataStore.viewContext
        let readingListRequest: NSFetchRequest<ReadingList> = ReadingList.fetchRequest()
        readingListRequest.predicate = NSPredicate(format: "name MATCHES[c] %@", name)
        readingListRequest.fetchLimit = 1

    }
    
    public func delete(readingLists: [ReadingList]) throws {
        let readingListsToDeleteRequest: NSFetchRequest<ReadingList> = ReadingList.fetchRequest()
        let names = readingLists.flatMap({ $0.name })
        readingListsToDeleteRequest.predicate = NSPredicate(format: "name IN %@", names)
        let readingListsToDelete = try moc.fetch(readingListsToDeleteRequest)
        
        for readingList in readingListsToDelete {
