func CalcHash(data []byte, hasher hash.Hash) []byte {
	hasher.Write(data)
	return hasher.Sum(nil)
}
func CalcHash(data []byte, hasher hash.Hash) []byte {
	hasher.Write(data)
	return hasher.Sum(nil)
}
//--------------------------------------------------------------
// CalcHash returns the hash of data using hasher.