code: func (n *metadataNode) metadata() (md []*api.PrefixMetadata) {
  	n.assertFrozen()
  	if n.parent != nil {
  		md = n.parent.metadata()
  	} else {
  		md = make([]*api.PrefixMetadata, 0, 32) // 32 is picked arbitrarily
  	}
  	if n.md != nil {
  		md = append(md, n.md)
  	}
  	return
  }
docs: // metadata returns this node's and all inherited metadata.
  //
  // Root metadata first. The return value is never nil. If there's no metadata,
  // returns non-nil empty slice.