prevents deep recursion if we have a circular reference between 2 objects