counter+recursion