If this was an update and `response["nModified"]` is absent or nil, you actually need to *delete* nModified from `result`. So the logic is like:

```
if response has nModified and result has nModified
    tally(result, "nModified", response["nModified"])
else
    remove nModified from result

The justification is this: if you have a cluster with some 2.4 and some 2.6 shards and you do several updates via mongos, mongos includes nModified for updates that only touch 2.6 shards, and omits it for updates that touch some 2.4 shards. If mongos ever omits nModified, then you don't know what the final tally should be for nModified, so you need to *both* remove the current nModified from result *and* stop tallying it in the future.