fixed recursive depencies bug