Recursive object Observer