 								delete oldRecord.ids[id]
 							else
 								record.ids[id] = true
-								@added(name, id, fields)
+								@added(collectionName, id, fields)
 								
 						removed: (id) =>
 							delete record.ids[id]
-							@removed(name, id)
+							@removed(collectionName, id)
 							
 						changed: (id, fields) =>
-							@changed(name, id, fields)
+							@changed(collectionName, id, fields)
 			
 			result = f.call(@)
 			

			else
				addCursor result
			
			for name, record of oldRecords
				for id of record.ids
					@removed(name, id)
			
			oldRecords = newRecords
			

			
			addCursor = (cursor) =>
				if cursor
					collectionName = cursor._cursorDescription.collectionName
				
					record =
						cursor: cursor
						ids: {}
					
					newRecords[collectionName] = record
					oldRecord = oldRecords[collectionName] ? {ids: {}}
					
					cursor.observeChanges
						added: (id, fields) =>
