| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 | 
							- 'use strict';
 
- var utils = exports;
 
- function toArray(msg, enc) {
 
-   if (Array.isArray(msg))
 
-     return msg.slice();
 
-   if (!msg)
 
-     return [];
 
-   var res = [];
 
-   if (typeof msg !== 'string') {
 
-     for (var i = 0; i < msg.length; i++)
 
-       res[i] = msg[i] | 0;
 
-     return res;
 
-   }
 
-   if (enc === 'hex') {
 
-     msg = msg.replace(/[^a-z0-9]+/ig, '');
 
-     if (msg.length % 2 !== 0)
 
-       msg = '0' + msg;
 
-     for (var i = 0; i < msg.length; i += 2)
 
-       res.push(parseInt(msg[i] + msg[i + 1], 16));
 
-   } else {
 
-     for (var i = 0; i < msg.length; i++) {
 
-       var c = msg.charCodeAt(i);
 
-       var hi = c >> 8;
 
-       var lo = c & 0xff;
 
-       if (hi)
 
-         res.push(hi, lo);
 
-       else
 
-         res.push(lo);
 
-     }
 
-   }
 
-   return res;
 
- }
 
- utils.toArray = toArray;
 
- function zero2(word) {
 
-   if (word.length === 1)
 
-     return '0' + word;
 
-   else
 
-     return word;
 
- }
 
- utils.zero2 = zero2;
 
- function toHex(msg) {
 
-   var res = '';
 
-   for (var i = 0; i < msg.length; i++)
 
-     res += zero2(msg[i].toString(16));
 
-   return res;
 
- }
 
- utils.toHex = toHex;
 
- utils.encode = function encode(arr, enc) {
 
-   if (enc === 'hex')
 
-     return toHex(arr);
 
-   else
 
-     return arr;
 
- };
 
 
  |