https://mathpn.com/posts/climbing-trees-1/