first three digit number
val = ( s [ 0 ] . charCodeAt ( 0 ) - ' ' . charCodeAt ( 0 ) ) * 100 + ( s [ 1 ] . charCodeAt ( 0 ) - ' ' . charCodeAt ( 0 ) ) * 10 + ( s [ 2 ] . charCodeAt ( 0 ) - ' ' . charCodeAt ( 0 ) ) ; hm . set ( val , 1 ) ; for ( i = 3 ; i < s . length ; i ++ ) { val = ( val % 100 ) * 10 + s [ i ] . charCodeAt ( 0 ) - ' ' . charCodeAt ( 0 ) ;