infinite loop, another fix