https://betapython.com/how-recursion-is-different-from-loop/
How Recursion Is Different From Loop?