Recursion all the things