serialization
serialization
preorder_tree_walk with handlers