code: func (n *Node) Tree(path string, depth int) []string {
  	if path == "" && depth == -1 {
  		return n.tree
  	}
  
  	var out []string
  	for _, t := range n.tree {
  		if !strings.HasPrefix(t, path) {
  			continue
  		}
  
  		sub := strings.TrimLeft(t[len(path):], "/")
  		if sub == "" {
  			continue
  		}
  
  		if depth < 0 {
  			out = append(out, sub)
  			continue
  		}
  
  		parts := strings.Split(sub, "/")
  		if len(parts) <= depth {
  			out = append(out, sub)
  		}
  	}
  	return out
  }
docs: // Tree returns a flattend array of paths at the given path for the given depth.