func ChecksumString32S(s string, seed uint32) uint32 {
	if len(s) == 0 {
		return Checksum32S(nil, seed)
	}
	ss := (*reflect.StringHeader)(unsafe.Pointer(&s))
	return Checksum32S((*[maxInt32]byte)(unsafe.Pointer(ss.Data))[:len(s):len(s)], seed)
}
func ChecksumString32S(s string, seed uint32) uint32 {
	if len(s) == 0 {
		return Checksum32S(nil, seed)
	}
	ss := (*reflect.StringHeader)(unsafe.Pointer(&s))
	return Checksum32S((*[maxInt32]byte)(unsafe.Pointer(ss.Data))[:len(s):len(s)], seed)
}
func ChecksumString32S ( s string , seed uint32 ) uint32 { if len ( s ) == 0 { return Checksum32S ( nil , seed ) } ss := ( * reflect . StringHeader ) ( unsafe . Pointer ( & s ) ) return Checksum32S ( ( * [ maxInt32 ] byte ) ( unsafe . Pointer ( ss . Data ) ) [ : len ( s ) : len ( s ) ] , seed ) }
// ChecksumString32S returns the checksum of the input data, without creating a copy, with the specific seed.
ChecksumString32S returns the checksum of the input data without creating a copy with the specific seed .