should we handle multiple level recursion or is a single level enough?