Hmm my thought is here that`toJSON()` might create a deep copy on its own... do you know?