func NewNodeHashBlock(h HashMaker, b []byte) (*Node, error) {
	n := &Node{hash: h}
	h1 := n.hash()
	if _, err := h1.Write(b); err != nil {
		return nil, err
	}
	n.checksum = h1.Sum(nil)
	return n, nil
}
// NewNodeHashBlock returns a new Node using the provided crypto.Hash, and calculates the block's checksum
NewNodeHashBlock returns a new Node using the provided crypto.Hash, and calculates the block's checksum
// NewNodeHashBlock returns a new Node using the provided crypto . Hash and calculates the block ' s checksum
func NewNodeHashBlock(h HashMaker, b []byte) (*Node, error) {
	n := &Node{hash: h}
	h1 := n.hash()
	if _, err := h1.Write(b); err != nil {
		return nil, err
	}
	n.checksum = h1.Sum(nil)
	return n, nil
}
func NewNodeHashBlock ( h HashMaker , b [ ] byte ) ( * Node , error ) { n := & Node { hash : h } h1 := n . hash ( ) if _ , err := h1 . Write ( b ) ; err != nil { return nil , err } n . checksum = h1 . Sum ( nil ) return n , nil }
NewNodeHashBlock returns a new Node using the provided crypto.Hash, and calculates the block's checksum
NewNodeHashBlock returns a new Node using the provided crypto . Hash and calculates the block ' s checksum