     }
     
     func insertObjects(_ newObjects: [ListObject], at index: Int = 0) {
+        guard !newObjects.isEmpty else { return }
+
         self.objects.mutate { objects in
             objects.insert(contentsOf: newObjects, at: index)
         }

    }
    
    func removeObjects(_ objects: [ListObject]) {
        var indexPaths: [IndexPath] = []
        
        // reverse arrays, so we can remove current idx in loop


    // MARK: Insert
    func appendObjects(_ newObjects: [ListObject]) {
        guard !newObjects.isEmpty else { return }

        let lower = self.objects.value.count
        let upper = lower + newObjects.count
        let range = lower..<upper
