removing circular dep