code: func (n *node) Insert(path string, backend *httpRoute) {
  	cur := n
  	for part, i := slice(path, 0); ; part, i = slice(path, i) {
  		if part != "" {
  			child, _ := cur.children[part]
  			if child == nil {
  				// insert node if it doesn't exist
  				child = &node{children: make(map[string]*node, 0)}
  				cur.children[part] = child
  			}
  			cur = child
  		}
  		if i == -1 {
  			break
  		}
  	}
  	cur.backend = backend // finally set the backend for this node
  }
docs: // insert a new route into the tree, replacing entry if it exists