Recursion is hard sometimes..