https://catalinx.ro/wordpress/?p=2683
The infinite loop and the smart infinite loop