-In fact, there's some redundancy in this structure, at the points where we have `* filled by node 9200` and `* filled by node 500`. Most of `node 9200`---with the exception of any label attached to node `9200` itself---is determined by the rest of this structure; and so too with `node 500`. So we could really work with:
-
- {
- parent = {
- parent = {
- parent = None;
- siblings = [*]
- }, label for * position (at node 9200);
- siblings = [*; node 920; node 950]
- }, label for * position (at node 500);
- siblings = [node 20; *; node 80]
- }, * filled by node 50
-
-Or, if we only had labels on the leafs of our tree:
+In fact, there's some redundancy in this structure, at the points where we have `* filled by tree 9200` and `* filled by subtree 500`. Since node 9200 doesn't have any label attached to it, the subtree rooted in it is determined by the rest of this structure; and so too with `subtree 500`. So we could really work with: