code: func (xft *XFastTrie) walkUpSuccessor(root, node, successor *node) {
  	n := successor.parent
  	for n != nil && n != root {
  		// we don't really want to overwrite existing internal nodes,
  		// or where the child is a leaf that is the successor
  		if !isInternal(n.children[0]) && n.children[0] != successor {
  			n.children[0] = node
  		}
  		n = n.parent
  	}
  }
docs: // walkUpSuccessor will walk up the successor branch setting
  // the predecessor where possible.  This breaks when a common
  // ancestor between successor and node is found, ie, the root.