public static int bgl_string_hash_number( byte[] s ) { int result= 0; for ( int i= 0 ; i < s.Length ; ++i ) result+= (result << 3) + s[i]; return result & ((1 << 29) - 1); }