started implementing new organizational scheme (how to handle recursion)