fix cyclic reference issue