fixed infiniteloop