https://yywe.github.io/posts/how-to-traverse-trees-in-rust/
How to Traverse Trees in Rust - Hulua