fix inifinite loops