https://tutorial.eyehunts.com/js/javascript-recursion/
JavaScript Recursion