func (t Tree) Walk(f func(*exphtml.Node)) {
	WalkNodes(t.n, f)
}
Walk a Tree applying a given function to each Node.
package h5
import (
	exphtml "golang.org/x/net/html"
	"golang.org/x/net/html/atom"
	"io"
	"strings"
)
func Data(n *exphtml.Node) string {
	if n.Data == "" {
		return n.DataAtom.String()
	}
	return n.Data
}
func CloneNode(n *exphtml.Node) *exphtml.Node {
	clone := new(exphtml.Node)
	clone.Type = n.Type
	clone.DataAtom = n.DataAtom
	clone.Data = n.Data
	clone.Attr = make([]exphtml.Attribute, len(n.Attr))
	copy(clone.Attr, n.Attr)
	for c := n.FirstChild; c != nil; c = c.NextSibling {
		nc := CloneNode(c)
		clone.AppendChild(nc)
	}
	return clone
}
func NewTree(n *exphtml.Node) Tree {
	return Tree{n}
}
type Tree struct {
	n *exphtml.Node
}
func (t Tree) Top() *exphtml.Node {
	return t.n
}