fix cyclic dep