cubehash.go
func NewCubeHash() *CubeHash {
	c := &CubeHash{}
	c.x0 = iv[0]
	c.x1 = iv[1]
	c.x2 = iv[2]
	c.x3 = iv[3]
	c.x4 = iv[4]
	c.x5 = iv[5]
	c.x6 = iv[6]
	c.x7 = iv[7]
	c.x8 = iv[8]
	c.x9 = iv[9]
	c.xa = iv[10]
	c.xb = iv[11]
	c.xc = iv[12]
	c.xd = iv[13]
	c.xe = iv[14]
	c.xf = iv[15]
	c.xg = iv[16]
	c.xh = iv[17]
	c.xi = iv[18]
	c.xj = iv[19]
	c.xk = iv[20]
	c.xl = iv[21]
	c.xm = iv[22]
	c.xn = iv[23]
	c.xo = iv[24]
	c.xp = iv[25]
	c.xq = iv[26]
	c.xr = iv[27]
	c.xs = iv[28]
	c.xt = iv[29]
	c.xu = iv[30]
	c.xv = iv[31]

	return c
}
func NewCubeHash() *CubeHash {
	c := &CubeHash{}
	c.x0 = iv[0]
	c.x1 = iv[1]
	c.x2 = iv[2]
	c.x3 = iv[3]
	c.x4 = iv[4]
	c.x5 = iv[5]
	c.x6 = iv[6]
	c.x7 = iv[7]
	c.x8 = iv[8]
	c.x9 = iv[9]
	c.xa = iv[10]
	c.xb = iv[11]
	c.xc = iv[12]
	c.xd = iv[13]
	c.xe = iv[14]
	c.xf = iv[15]
	c.xg = iv[16]
	c.xh = iv[17]
	c.xi = iv[18]
	c.xj = iv[19]
	c.xk = iv[20]
	c.xl = iv[21]
	c.xm = iv[22]
	c.xn = iv[23]
	c.xo = iv[24]
	c.xp = iv[25]
	c.xq = iv[26]
	c.xr = iv[27]
	c.xs = iv[28]
	c.xt = iv[29]
	c.xu = iv[30]
	c.xv = iv[31]

	return c
}
//NewCubeHash initializes anrd retuns Cubuhash struct.