md5.js
function bytesToWords(bytes) {
	var bytes_count = bytes.length,
	    bits_count = bytes_count << 3,
	    words = new Uint32Array((bytes_count + 64) >>> 6 << 4);
	for (var i = 0, n = bytes.length; i < n; ++i)
		words[i >>> 2] |= bytes.charCodeAt(i) << ((i & 3) << 3);
	words[bytes_count >> 2] |= 0x80 << (bits_count & 31); // append "1" bit to message
	words[words.length - 2] = bits_count;
	return words;
}
function bytesToWords(bytes) {
	var bytes_count = bytes.length,
	    bits_count = bytes_count << 3,
	    words = new Uint32Array((bytes_count + 64) >>> 6 << 4);
	for (var i = 0, n = bytes.length; i < n; ++i)
		words[i >>> 2] |= bytes.charCodeAt(i) << ((i & 3) << 3);
	words[bytes_count >> 2] |= 0x80 << (bits_count & 31); // append "1" bit to message
	words[words.length - 2] = bits_count;
	return words;
}
function bytesToWords ( bytes ) { var bytes_count = bytes . length , bits_count = bytes_count << 3 , words = new Uint32Array ( ( bytes_count + 64 ) >>> 6 << 4 ) ; for ( var i = 0 , n = bytes . length ; i < n ; ++ i ) words [ i >>> 2 ] |= bytes . charCodeAt ( i ) << ( ( i & 3 ) << 3 ) ; words [ bytes_count >> 2 ] |= 0x80 << ( bits_count & 31 ) ; // append "1" bit to message words [ words . length - 2 ] = bits_count ; return words ; }
converts bytes string to 32-bits words array padded with "1" and zeros and bits_length for MD5 message buffer
converts bytes string to 32 - bits words array padded with 1 and zeros and bits_length for MD5 message buffer