func AddString64(h uint64, s string) uint64 {
	for len(s) >= 8 {
		h = (h * prime64) ^ uint64(s[0])
		h = (h * prime64) ^ uint64(s[1])
		h = (h * prime64) ^ uint64(s[2])
		h = (h * prime64) ^ uint64(s[3])
		h = (h * prime64) ^ uint64(s[4])
		h = (h * prime64) ^ uint64(s[5])
		h = (h * prime64) ^ uint64(s[6])
		h = (h * prime64) ^ uint64(s[7])
		s = s[8:]
	}

	if len(s) >= 4 {
		h = (h * prime64) ^ uint64(s[0])
		h = (h * prime64) ^ uint64(s[1])
		h = (h * prime64) ^ uint64(s[2])
		h = (h * prime64) ^ uint64(s[3])
		s = s[4:]
	}

	if len(s) >= 2 {
		h = (h * prime64) ^ uint64(s[0])
		h = (h * prime64) ^ uint64(s[1])
		s = s[2:]
	}

	if len(s) > 0 {
		h = (h * prime64) ^ uint64(s[0])
	}

	return h
}
// AddString64 adds the hash of s to the precomputed hash value h.
AddString64 adds the hash of s to the precomputed hash value h.
// AddString64 adds the hash of s to the precomputed hash value h .
func AddString64(h uint64, s string) uint64 {
	for len(s) >= 8 {
		h = (h * prime64) ^ uint64(s[0])
		h = (h * prime64) ^ uint64(s[1])
		h = (h * prime64) ^ uint64(s[2])
		h = (h * prime64) ^ uint64(s[3])
		h = (h * prime64) ^ uint64(s[4])
		h = (h * prime64) ^ uint64(s[5])
		h = (h * prime64) ^ uint64(s[6])
		h = (h * prime64) ^ uint64(s[7])
		s = s[8:]
	}
	if len(s) >= 4 {
		h = (h * prime64) ^ uint64(s[0])
		h = (h * prime64) ^ uint64(s[1])
		h = (h * prime64) ^ uint64(s[2])
		h = (h * prime64) ^ uint64(s[3])
		s = s[4:]
	}
	if len(s) >= 2 {
		h = (h * prime64) ^ uint64(s[0])
		h = (h * prime64) ^ uint64(s[1])
		s = s[2:]
	}
	if len(s) > 0 {
		h = (h * prime64) ^ uint64(s[0])
	}
	return h
}
func AddString64 ( h uint64 , s string ) uint64 { for len ( s ) >= 8 { h = ( h * prime64 ) ^ uint64 ( s [ 0 ] ) h = ( h * prime64 ) ^ uint64 ( s [ 1 ] ) h = ( h * prime64 ) ^ uint64 ( s [ 2 ] ) h = ( h * prime64 ) ^ uint64 ( s [ 3 ] ) h = ( h * prime64 ) ^ uint64 ( s [ 4 ] ) h = ( h * prime64 ) ^ uint64 ( s [ 5 ] ) h = ( h * prime64 ) ^ uint64 ( s [ 6 ] ) h = ( h * prime64 ) ^ uint64 ( s [ 7 ] ) s = s [ 8 : ] } if len ( s ) >= 4 { h = ( h * prime64 ) ^ uint64 ( s [ 0 ] ) h = ( h * prime64 ) ^ uint64 ( s [ 1 ] ) h = ( h * prime64 ) ^ uint64 ( s [ 2 ] ) h = ( h * prime64 ) ^ uint64 ( s [ 3 ] ) s = s [ 4 : ] } if len ( s ) >= 2 { h = ( h * prime64 ) ^ uint64 ( s [ 0 ] ) h = ( h * prime64 ) ^ uint64 ( s [ 1 ] ) s = s [ 2 : ] } if len ( s ) > 0 { h = ( h * prime64 ) ^ uint64 ( s [ 0 ] ) } return h }
AddString64 adds the hash of s to the precomputed hash value h.
AddString64 adds the hash of s to the precomputed hash value h .