A more serious problem:
What if the watched object is not a hash?
Answer 0: Yeah, how often does that happen?
Answer 1: Then you shouldn't use this module
continued...