fix comprehensive bug