code: func (r *Router) depth() int {
  	max := 0
  	for _, child := range r.children {
  		childDepth := child.depth()
  		if childDepth > max {
  			max = childDepth
  		}
  	}
  	return max + 1
  }
docs: // Calculates the max child depth of the node. Leaves return 1. For Parent->Child, Parent is 2.