diy callback part2 - around & after. recursion.
tweaks