fix small bug and left mutual dependency bug not yet solved.