working on cyclic ref.