code: func New(validSchemes enr.IdentityScheme, r *enr.Record) (*Node, error) {
  	if err := r.VerifySignature(validSchemes); err != nil {
  		return nil, err
  	}
  	node := &Node{r: *r}
  	if n := copy(node.id[:], validSchemes.NodeAddr(&node.r)); n != len(ID{}) {
  		return nil, fmt.Errorf("invalid node ID length %d, need %d", n, len(ID{}))
  	}
  	return node, nil
  }
docs: // New wraps a node record. The record must be valid according to the given
  // identity scheme.