procedure main() bTree := [1, [2, [4, [7]], [5]], [3, [6, [8], [9]]]] mapTree(bTree, write) bTree := [1, ["two", ["four", [7]], [5]], [3, ["six", ["eight"], [9]]]] mapTree(bTree, write) end procedure mapTree(tree, f) every f(\tree[1]) | mapTree(!tree[2:0], f) end