allow cyclic references