                         return
 
                     if doc?
-                        resetCountByModelReactive["#{watcherModelClass.name}.#{watcherReactiveName}"] += 1
+                        resetCountByModelReactive["#{watcherModelName}.#{watcherReactiveName}"] += 1
 
                         # Continue to reset one doc at a time until there are no more docs to reset
-                        resetOneWatcherDoc watcherModelClass, watcherReactiveName
+                        resetOneWatcherDoc watcherModelName, watcherReactiveName
 
                         # Also branch into resetting all docs watching this watching-reactive in this doc
                         watcherOldValues = {}

                        J.denorm.resetWatchers watcherModelName, doc._id, watcherOldValues, watcherNewValues, timestamp

                    else
                        numWatchersReset = resetCountByModelReactive["#{watcherModelClass.name}.#{watcherReactiveName}"]
                        console.log "    <#{watcherModelName}>.#{watcherReactiveName}:
                            #{numWatchersReset} watchers reset"
                        # console.log "selector: #{JSON.stringify selector, null, 4}"
            )




            watcherMatcher

        watcherMatcher = makeWatcherMatcher instanceId, oldValues, newValues

        resetCountByModelReactive = {} # "#{watcherModelName}.#{reactiveName}": resetCount
        resetOneWatcherDoc = (watcherModelName, watcherReactiveName) ->
            watcherModelClass = J.models[watcherModelName]
            # console.log "resetOneWatcherDoc: <#{watcherModelName}>.#{watcherReactiveName} watching <#{modelName}
                #{JSON.stringify instanceId}>"

            selector = {}
            selector["_reactives.#{watcherReactiveName}.ts"] = $lt: timestamp
            selector["_reactives.#{watcherReactiveName}.watching"] = $elemMatch: watcherMatcher

            setter = {}
            setter["_reactives.#{watcherReactiveName}.ts"] = timestamp

            unsetter = {}
            unsetter["_reactives.#{watcherReactiveName}.val"] = 1
            unsetter["_reactives.#{watcherReactiveName}.watching"] = 1

            resetCountByModelReactive["#{watcherModelName}.#{watcherReactiveName}"] ?= 0
            watcherModelClass.collection.rawCollection().findAndModify(
                selector
            ,
