simple recursion achieved!