UNPKG

groestl-hash-js

Version:

groestl javascript hashing algorithm in pure javascript

3 lines 98.6 kB
require=function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g<d.length;g++)e(d[g]);return e}({1:[function(a,b,c){var d=a("./op"),e=a("./helper"),f=e.bytes2Int32Buffer(e.b64Decode("pWNjxoR8fPiZd3fujXt79g3y8v+9a2vWsW9v3lTFxZFQMDBgAwEBAqlnZ859KytWGf7+52LX17Xmq6tNmnZ27EXKyo+dgoIfQMnJiYd9ffoV+vrv61lZsslHR44L8PD77K2tQWfU1LP9oqJf6q+vRb+cnCP3pKRTlnJy5FvAwJvCt7d1HP394a6Tkz1qJiZMWjY2bEE/P34C9/f1T8zMg1w0NGj0paVRNOXl0Qjx8fmTcXHic9jYq1MxMWI/FRUqDAQECFLHx5VlIyNGXsPDnSgYGDChlpY3DwUFCrWami8JBwcONhISJJuAgBs94uLfJuvrzWknJ07NsrJ/n3V16hsJCRKeg4MddCwsWC4aGjQtGxs2sm5u3O5aWrT7oKBb9lJSpE07O3Zh1ta3zrOzfXspKVI+4+PdcS8vXpeEhBP1U1OmaNHRuQAAAAAs7e3BYCAgQB/8/OPIsbF57Vtbtr5qatRGy8uN2b6+Z0s5OXLeSkqU1ExMmOhYWLBKz8+Fa9DQuyrv78XlqqpPFvv77cVDQ4bXTU2aVTMzZpSFhRHPRUWKEPn56QYCAgSBf3/+8FBQoEQ8PHi6n58l46ioS/NRUaL+o6NdwEBAgIqPjwWtkpI/vJ2dIUg4OHAE9fXx37y8Y8G2tnd12tqvYyEhQjAQECAa///lDvPz/W3S0r9Mzc2BFAwMGDUTEyYv7OzD4V9fvqKXlzXMRESIORcXLlfExJPyp6dVgn5+/Ec9PXqsZGTI511duisZGTKVc3PmoGBgwJiBgRnRT0+ef9zco2YiIkR+KipUq5CQO4OIiAvKRkaMKe7ux9O4uGs8FBQoed7ep+JeXrwdCwsWdtvbrTvg4NtWMjJkTjo6dB4KChTbSUmSCgYGDGwkJEjkXFy4XcLCn27T073vrKxDpmJixKiRkTmklZUxN+Tk04t5efIy5+fVQ8jIi1k3N263bW3ajI2NAWTV1bHSTk6c4KmpSbRsbNj6VlasB/T08yXq6s+vZWXKjnp69OmurkcYCAgQ1bq6b4h4ePBvJSVKci4uXCQcHDjxpqZXx7S0c1HGxpcj6OjLfN3doZx0dOghHx8+3UtLlty9vWGGi4sNhYqKD5BwcOBCPj58xLW1capmZszYSEiQBQMDBgH29vcSDg4co2Fhwl81NWr5V1eu0Lm5aZGGhhdYwcGZJx0dOrmenic44eHZE/j467OYmCszEREiu2lp0nDZ2amJjo4Hp5SUM7abmy0iHh48koeHFSDp6clJzs6H/1VVqngoKFB639+lj4yMA/ihoVmAiYkJFw0NGtq/v2Ux5ubXxkJChLhoaNDDQUGCsJmZKXctLVoRDw8ey7Cwe/xUVKjWu7ttOhYWLA==")),g=e.bytes2Int32Buffer(e.b64Decode("Y2PGpXx8+IR3d+6Ze3v2jfLy/w1ra9a9b2/escXFkVQwMGBQAQECA2dnzqkrK1Z9/v7nGdfXtWKrq03mdnbsmsrKj0WCgh+dycmJQH19+of6+u8VWVmy60dHjsnw8PsLra1B7NTUs2eiol/9r69F6pycI7+kpFP3cnLklsDAm1u3t3XC/f3hHJOTPa4mJkxqNjZsWj8/fkH39/UCzMyDTzQ0aFylpVH05eXRNPHx+QhxceKT2NirczExYlMVFSo/BAQIDMfHlVIjI0Zlw8OdXhgYMCiWljehBQUKD5qaL7UHBw4JEhIkNoCAG5vi4t896+vNJicnTmmysn/NdXXqnwkJEhuDgx2eLCxYdBoaNC4bGzYtbm7cslpatO6goFv7UlKk9js7dk3W1rdhs7N9zikpUnvj490+Ly9ecYSEE5dTU6b10dG5aAAAAADt7cEsICBAYPz84x+xsXnIW1u27Wpq1L7Ly41Gvr5n2Tk5cktKSpTeTEyY1FhYsOjPz4VK0NC7a+/vxSqqqk/l+/vtFkNDhsVNTZrXMzNmVYWFEZRFRYrP+fnpEAICBAZ/f/6BUFCg8Dw8eESfnyW6qKhL41FRovOjo13+QECAwI+PBYqSkj+tnZ0hvDg4cEj19fEEvLxj37a2d8Ha2q91ISFCYxAQIDD//+Ua8/P9DtLSv23NzYFMDAwYFBMTJjXs7MMvX1++4ZeXNaJERIjMFxcuOcTEk1enp1Xyfn78gj09ekdkZMisXV265xkZMitzc+aVYGDAoIGBGZhPT57R3NyjfyIiRGYqKlR+kJA7q4iIC4NGRozK7u7HKbi4a9MUFCg83t6neV5evOILCxYd29utduDg2zsyMmRWOjp0TgoKFB5JSZLbBgYMCiQkSGxcXLjkwsKfXdPTvW6srEPvYmLEppGROaiVlTGk5OTTN3l58ovn59UyyMiLQzc3blltbdq3jY0BjNXVsWROTpzSqalJ4Gxs2LRWVqz69PTzB+rqzyVlZcqvenr0jq6uR+kICBAYurpv1Xh48IglJUpvLi5cchwcOCSmplfxtLRzx8bGl1Ho6Msj3d2hfHR06JwfHz4hS0uW3b29YdyLiw2GiooPhXBw4JA+PnxCtbVxxGZmzKpISJDYAwMGBfb29wEODhwSYWHCozU1al9XV675ublp0IaGF5HBwZlYHR06J56eJ7nh4dk4+PjrE5iYK7MRESIzaWnSu9nZqXCOjgeJlJQzp5ubLbYeHjwih4cVkunpySDOzodJVVWq/ygoUHjf36V6jIwDj6GhWfiJiQmADQ0aF7+/Zdrm5tcxQkKExmho0LhBQYLDmZkpsC0tWncPDx4RsLB7y1RUqPy7u23WFhYsOg==")),h=e.bytes2Int32Buffer(e.b64Decode("Y8alY3z4hHx37pl3e/aNe/L/DfJr1r1rb96xb8WRVMUwYFAwAQIDAWfOqWcrVn0r/ucZ/te1YterTearduyadsqPRcqCH52CyYlAyX36h3367xX6WbLrWUeOyUfw+wvwrUHsrdSzZ9SiX/2ir0Xqr5wjv5ykU/ekcuSWcsCbW8C3dcK3/eEc/ZM9rpMmTGomNmxaNj9+QT/39QL3zINPzDRoXDSlUfSl5dE05fH5CPFx4pNx2Ktz2DFiUzEVKj8VBAgMBMeVUscjRmUjw51ewxgwKBiWN6GWBQoPBZovtZoHDgkHEiQ2EoAbm4Di3z3i680m6ydOaSeyf82ydeqfdQkSGwmDHZ6DLFh0LBo0LhobNi0bbtyyblq07lqgW/ugUqT2Ujt2TTvWt2HWs33OsylSeynj3T7jL15xL4QTl4RTpvVT0blo0QAAAADtwSztIEBgIPzjH/yxecixW7btW2rUvmrLjUbLvmfZvjlySzlKlN5KTJjUTFiw6FjPhUrP0Ltr0O/FKu+qT+Wq++0W+0OGxUNNmtdNM2ZVM4URlIVFis9F+ekQ+QIEBgJ//oF/UKDwUDx4RDyfJbqfqEvjqFGi81GjXf6jQIDAQI8Fio+SP62SnSG8nThwSDj18QT1vGPfvLZ3wbbar3XaIUJjIRAgMBD/5Rr/8/0O89K/bdLNgUzNDBgUDBMmNRPswy/sX77hX5c1opdEiMxEFy45F8STV8SnVfKnfvyCfj16Rz1kyKxkXbrnXRkyKxlz5pVzYMCgYIEZmIFPntFP3KN/3CJEZiIqVH4qkDurkIgLg4hGjMpG7scp7rhr07gUKDwU3qd53l684l4LFh0L26122+DbO+AyZFYyOnROOgoUHgpJkttJBgwKBiRIbCRcuORcwp9dwtO9btOsQ++sYsSmYpE5qJGVMaSV5NM35Hnyi3nn1TLnyItDyDduWTdt2rdtjQGMjdWxZNVOnNJOqUngqWzYtGxWrPpW9PMH9OrPJeplyq9levSOeq5H6a4IEBgIum/VunjwiHglSm8lLlxyLhw4JBymV/GmtHPHtMaXUcboyyPo3aF83XTonHQfPiEfS5bdS71h3L2LDYaLig+FinDgkHA+fEI+tXHEtWbMqmZIkNhIAwYFA/b3AfYOHBIOYcKjYTVqXzVXrvlXuWnQuYYXkYbBmVjBHTonHZ4nuZ7h2Tjh+OsT+Jgrs5gRIjMRadK7admpcNmOB4mOlDOnlJsttpsePCIehxWSh+nJIOnOh0nOVar/VShQeCjfpXrfjAOPjKFZ+KGJCYCJDRoXDb9l2r/m1zHmQoTGQmjQuGhBgsNBmSmwmS1ady0PHhEPsHvLsFSo/FS7bda7Fiw6Fg==")),i=e.bytes2Int32Buffer(e.b64Decode("xqVjY/iEfHzumXd39o17e/8N8vLWvWtr3rFvb5FUxcVgUDAwAgMBAc6pZ2dWfSsr5xn+/rVi19dN5qur7Jp2do9FysofnYKCiUDJyfqHfX3vFfr6sutZWY7JR0f7C/DwQeytrbNn1NRf/aKiReqvryO/nJxT96Sk5JZycptbwMB1wre34Rz9/T2uk5NMaiYmbFo2Nn5BPz/1Avf3g0/MzGhcNDRR9KWl0TTl5fkI8fHik3Fxq3PY2GJTMTEqPxUVCAwEBJVSx8dGZSMjnV7DwzAoGBg3oZaWCg8FBS+1mpoOCQcHJDYSEhubgIDfPeLizSbr605pJyd/zbKy6p91dRIbCQkdnoODWHQsLDQuGho2LRsb3LJubrTuWlpb+6CgpPZSUnZNOzu3YdbWfc6zs1J7KSndPuPjXnEvLxOXhISm9VNTuWjR0QAAAADBLO3tQGAgIOMf/Px5yLGxtu1bW9S+amqNRsvLZ9m+vnJLOTmU3kpKmNRMTLDoWFiFSs/Pu2vQ0MUq7+9P5aqq7Rb7+4bFQ0Oa101NZlUzMxGUhYWKz0VF6RD5+QQGAgL+gX9/oPBQUHhEPDwlup+fS+OoqKLzUVFd/qOjgMBAQAWKj48/rZKSIbydnXBIODjxBPX1Y9+8vHfBtravddraQmMhISAwEBDlGv///Q7z879t0tKBTM3NGBQMDCY1ExPDL+zsvuFfXzWil5eIzERELjkXF5NXxMRV8qen/IJ+fnpHPT3IrGRkuuddXTIrGRnmlXNzwKBgYBmYgYGe0U9Po3/c3ERmIiJUfioqO6uQkAuDiIiMykZGxynu7mvTuLgoPBQUp3ne3rziXl4WHQsLrXbb29s74OBkVjIydE46OhQeCgqS20lJDAoGBkhsJCS45Fxcn13Cwr1u09ND76ysxKZiYjmokZExpJWV0zfk5PKLeXnVMufni0PIyG5ZNzfat21tAYyNjbFk1dWc0k5OSeCpqdi0bGys+lZW8wf09M8l6urKr2Vl9I56ekfprq4QGAgIb9W6uvCIeHhKbyUlXHIuLjgkHBxX8aamc8e0tJdRxsbLI+jooXzd3eicdHQ+IR8flt1LS2Hcvb0NhouLD4WKiuCQcHB8Qj4+ccS1tcyqZmaQ2EhIBgUDA/cB9vYcEg4OwqNhYWpfNTWu+VdXadC5uReRhoaZWMHBOicdHSe5np7ZOOHh6xP4+CuzmJgiMxER0rtpaalw2dkHiY6OM6eUlC22m5s8Ih4eFZKHh8kg6emHSc7Oqv9VVVB4KCilet/fA4+MjFn4oaEJgImJGhcNDWXav7/XMebmhMZCQtC4aGiCw0FBKbCZmVp3LS0eEQ8Pe8uwsKj8VFRt1ru7LDoWFg=="));b.exports.AES_ROUND_LE=function(a,b,c){c[0]=f[255&a[0]]^g[a[1]>>>8&255]^h[a[2]>>>16&255]^i[a[3]>>>24&255]^b[0],c[1]=f[255&a[1]]^g[a[2]>>>8&255]^h[a[3]>>>16&255]^i[a[0]>>>24&255]^b[1],c[2]=f[255&a[2]]^g[a[3]>>>8&255]^h[a[0]>>>16&255]^i[a[1]>>>24&255]^b[2],c[3]=f[255&a[3]]^g[a[0]>>>8&255]^h[a[1]>>>16&255]^i[a[2]>>>24&255]^b[3]},b.exports.AES_ROUND_NOKEY_LE=function(a,b){var c=new Array(4);d.bufferSet(c,0,0,4),this.AES_ROUND_LE(a,c,b)}},{"./helper":7,"./op":11}],2:[function(a,b,c){var d=a("./op"),e=a("./helper"),f=e.bytes2Int64Buffer(e.b64Decode("JD9qiIWjCNMTGYouA3BzRKQJOCIpnzHQCC76mOxObIlFKCHmONATd75UZs806QxswKwpt8l8UN0/hNW1tUcJF5IW1dmJefsb0TELppjftawv/XLb0Brft7jhr+1qJn6WunyQRfEsf5kkoZlHs5Fs9wgB8uKFjvwWY2kg2HFXTmk=")),g=[[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],[14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3],[11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4],[7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8],[9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13],[2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9],[12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11],[13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10],[6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5],[10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0]],h=[d.u(1779033703,4089235720),d.u(3144134277,2227873595),d.u(1013904242,4271175723),d.u(2773480762,1595750129),d.u(1359893119,2917565137),d.u(2600822924,725511199),d.u(528734635,4215389547),d.u(1541459225,327033209)],i=function(a,b,c,d,e,f,g,h){e.add(a.xor(d).add(f)),h.setxorOne(e).setFlip(),g.add(h),f.setxorOne(g).setRotateRight(25),e.add(b.xor(c).add(f)),h.setxorOne(e).setRotateRight(16),g.add(h),f.setxorOne(g).setRotateRight(11)},j=function(a,b,c){i(c[g[a][0]],c[g[a][1]],f[g[a][0]],f[g[a][1]],b[0],b[4],b[8],b[12]),i(c[g[a][2]],c[g[a][3]],f[g[a][2]],f[g[a][3]],b[1],b[5],b[9],b[13]),i(c[g[a][4]],c[g[a][5]],f[g[a][4]],f[g[a][5]],b[2],b[6],b[10],b[14]),i(c[g[a][6]],c[g[a][7]],f[g[a][6]],f[g[a][7]],b[3],b[7],b[11],b[15]),i(c[g[a][8]],c[g[a][9]],f[g[a][8]],f[g[a][9]],b[0],b[5],b[10],b[15]),i(c[g[a][10]],c[g[a][11]],f[g[a][10]],f[g[a][11]],b[1],b[6],b[11],b[12]),i(c[g[a][12]],c[g[a][13]],f[g[a][12]],f[g[a][13]],b[2],b[7],b[8],b[13]),i(c[g[a][14]],c[g[a][15]],f[g[a][14]],f[g[a][15]],b[3],b[4],b[9],b[14])},k=function(a,b,c,e,g){var h=new Array(16);d.bufferInsert64(h,0,b,8),h[8]=c[0].xor(f[0]),h[9]=c[1].xor(f[1]),h[10]=c[2].xor(f[2]),h[11]=c[3].xor(f[3]),h[12]=e.xor(f[4]),h[13]=e.xor(f[5]),h[14]=g.xor(f[6]),h[15]=g.xor(f[7]);for(var i=0;i<16;i++)j(i%10,h,a);for(var i=0;i<8;i++)b[i]=d.xor64(b[i],c[i%4],h[i],h[8+i])},l=function(a,b,c){var f,g,h=new Array(8),i=new Array(4),j=a.T0.clone(),l=a.T1.clone();if(f=a.buffer,g=a.ptr,c<a.buffer.length-g)return d.bufferInsert(f,g,b,b.length),g+=b.length,void(a.ptr=g);for(d.bufferInsert(h,0,a.state,8),d.bufferInsert(i,0,a.salt,4);c>0;){var m=a.buffer.length-g;if(m>c&&(m=c),d.bufferInsert(f,g,b,m),g+=m,b=b.slice(m),c-=m,g===a.buffer.length){j.add(d.u(0,1024)),(j.hi<0||j.lo<1024)&&l.addOne();var n=e.bytes2Int64Buffer(f);k(n,h,i,j,l),g=0}}a.state=h,a.salt=i,a.T0=j,a.T1=l,a.ptr=g},m=function(a){var b=new Array(128),c=a.ptr,f=d.u(0,c).shiftLeft(3),g=(b.length,a.T0.plus(f)),h=a.T1.clone();b[c]=128,0===c?(a.T0=d.u(4294967295,4294966272),a.T1=d.u(4294967295,4294967295)):a.T0.isZero()?(a.T0=d.u(4294967295,4294966272).plus(f),a.T1=a.T1.minus(d.u(0,1))):a.T0=a.T0.minus(d.u(0,1024).minus(f)),f.lo<=894?(d.bufferSet(b,c+1,0,111-c),b[111]|=1,e.bufferEncode64(b,112,h),e.bufferEncode64(b,120,g),l(a,b.slice(c),128-c)):(d.bufferSet(j.buf,c+1,0,127-c),l(a,b.slice(c),128-c),a.T0=d.u(4294967295,4294966272),a.T1=d.u(4294967295,4294967295),d.bufferSet(b,0,0,112),b[111]=1,e.bufferEncode64(b,112,h),e.bufferEncode64(b,120,g),l(a,b,128));for(var i=new Array(16),j=0;j<8;j++)i[2*j]=a.state[j].hi,i[2*j+1]=a.state[j].lo;return i};b.exports=function(a,b,c){var f;f=1===b?a:2===b?e.int32Buffer2Bytes(a):e.string2bytes(a);var g={};g.state=d.clone64Array(h);var i=d.u(0,0);g.salt=[i,i,i,i],g.T0=i.clone(),g.T1=i.clone(),g.ptr=0,g.buffer=new Array(128),l(g,f,f.length);var j,k=m(g,0,0);return j=2===c?k:1===c?e.int32Buffer2Bytes(k):e.int32ArrayToHexString(k)}},{"./helper":7,"./op":11}],3:[function(a,b,c){var d=a("./op"),e=a("./helper"),f=e.bytes2Int64Buffer(e.b64Decode("gIGCg4SFhoeIiYqLjI2Oj5CRkpOUlZaXmJmam5ydnp+goaKjpKWmp6ipqqusra6vsLGys7S1tre4ubq7vL2+v8DBwsPExcbHyMnKy8zNzs/Q0dLT1NXW19jZ2tvc3d7f4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb3+Pn6+/z9/v8=")),g=e.bytes2Int64Buffer(e.b64Decode("qqqqqqqqqqCqqqqqqqqqoaqqqqqqqqqiqqqqqqqqqqOqqqqqqqqqpKqqqqqqqqqlqqqqqqqqqqaqqqqqqqqqp6qqqqqqqqqoqqqqqqqqqqmqqqqqqqqqqqqqqqqqqqqrqqqqqqqqqqyqqqqqqqqqraqqqqqqqqquqqqqqqqqqq8=")),h=[1,1,2,2,1,2],i=[3,2,1,2],j=[4,13,19,28],k=[37,43,53,59],l=new Array(16);l.push([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]),l.push([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]),l.push([2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),l.push([3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18]),l.push([4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19]),l.push([5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]),l.push([6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21]),l.push([7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]),l.push([8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]),l.push([9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24]),l.push([10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25]),l.push([11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]),l.push([12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27]),l.push([13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28]),l.push([14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29]),l.push([15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30]);var m=new Array(16);m.push([0,1,3,4,7,10,11]),m.push([1,2,4,5,8,11,12]),m.push([2,3,5,6,9,12,13]),m.push([3,4,6,7,10,13,14]),m.push([4,5,7,8,11,14,15]),m.push([5,6,8,9,12,15,16]),m.push([6,7,9,10,13,0,1]),m.push([7,8,10,11,14,1,2]),m.push([8,9,11,12,15,2,3]),m.push([9,10,12,13,0,3,4]),m.push([10,11,13,14,1,4,5]),m.push([11,12,14,15,2,5,6]),m.push([12,13,15,16,3,6,7]),m.push([13,14,0,1,4,7,8]),m.push([14,15,1,2,5,8,9]),m.push([15,16,2,3,6,9,10]);var n=function(a,b){return a<4?d.xor64(b.shiftRight(h[a]),b.shiftLeft(i[a]),b.rotateLeft(j[a]),b.rotateLeft(k[a])):b.shiftRight(h[a]).xor(b)},o=[0,5,11,27,32,37,43,53],p=function(a,b){return b.rotateLeft(o[a])},q=function(a,b,c,d){var e=a[c[0]].xor(b[c[0]]),f=a[c[1]].xor(b[c[1]]),g=a[c[2]].xor(b[c[2]]),h=a[c[3]].xor(b[c[3]]),i=a[c[4]].xor(b[c[4]]),j=d[3](d[2](d[1](d[0](e,f),g),h),i);return j},r=[[5,7,10,13,14],[6,8,11,14,15],[0,7,9,12,15],[0,1,8,10,13],[1,2,9,11,14],[3,2,10,12,15],[4,0,3,11,13],[1,4,5,12,14],[2,5,6,13,15],[0,3,6,7,14],[8,1,4,7,15],[8,0,2,5,9],[1,3,6,9,10],[2,4,7,10,11],[3,5,8,11,12],[12,4,6,9,13]],s=function(a,b){return a.plus(b)},t=function(a,b){return a.minus(b)},u=[[t,s,s,s],[t,s,s,t],[s,s,t,s],[t,s,t,s],[s,s,t,t],[t,s,t,s],[t,t,t,s],[t,t,t,t],[t,t,s,t],[t,s,t,s],[t,t,t,s],[t,t,t,s],[s,t,t,s],[s,s,s,s],[t,s,t,t],[t,t,t,s]],v=function(a,b,c){return q(a,b,r[c],u[c])},w=function(a){var b=d.u(89478485,1431655765);return b.multiply(a)},x=function(a,b,c,d){var e=w(d),f=a[c[0]].rotateLeft(c[1]).add(a[c[2]].rotateLeft(c[3])).minus(a[c[5]].rotateLeft(c[6])).add(e).xor(b[c[4]]);return f},y=function(a,b,c,d,e,f){return a[e[0]].plus(p(1,a[e[1]])).add(a[e[2]]).add(p(2,a[e[3]])).add(a[e[4]]).add(p(3,a[e[5]])).add(a[e[6]]).add(p(4,a[e[7]])).add(a[e[8]]).add(p(5,a[e[9]])).add(a[e[10]]).add(p(6,a[e[11]])).add(a[e[12]]).add(p(7,a[e[13]])).add(n(4,a[e[14]])).add(n(5,a[e[15]])).add(x(b,c,f,d))},z=function(a,b,c,d,e,f){return n(1,a[e[0]]).add(n(2,a[e[1]])).add(n(3,a[e[2]])).add(n(0,a[e[3]])).add(n(1,a[e[4]])).add(n(2,a[e[5]])).add(n(3,a[e[6]])).add(n(0,a[e[7]])).add(n(1,a[e[8]])).add(n(2,a[e[9]])).add(n(3,a[e[10]])).add(n(0,a[e[11]])).add(n(1,a[e[12]])).add(n(2,a[e[13]])).add(n(3,a[e[14]])).add(n(0,a[e[15]])).add(x(b,c,f,d))},A=function(a,b,c,d){var e=l[d],f=m[d];return z(a,b,c,d,e,f)},B=function(a,b,c,d){var e=l[d],f=m[d];return y(a,b,c,d,e,f)},C=function(a,b){for(var c=new Array(32),d=0;d<16;d++){var e=v(a,b,d),f=n(d%5,e);c[d]=f.plus(b[(d+1)%16])}c[16]=A(c,a,b,16),c[17]=A(c,a,b,17);for(var d=18;d<32;d++)c[d]=B(c,a,b,d);return c},D=function(a,b){var c=new Array(16),e=C(a,b),f=d.xor64(e[16],e[17],e[18],e[19],e[20],e[21],e[22],e[23]),g=d.xor64(f,e[24],e[25],e[26],e[27],e[28],e[29],e[30],e[31]);return c[0]=d.xor64(g.shiftLeft(5),e[16].shiftRight(5),a[0]).add(d.xor64(f,e[24],e[0])),c[1]=d.xor64(g.shiftRight(7),e[17].shiftLeft(8),a[1]).add(d.xor64(f,e[25],e[1])),c[2]=d.xor64(g.shiftRight(5),e[18].shiftLeft(5),a[2]).add(d.xor64(f,e[26],e[2])),c[3]=d.xor64(g.shiftRight(1),e[19].shiftLeft(5),a[3]).add(d.xor64(f,e[27],e[3])),c[4]=d.xor64(g.shiftRight(3),e[20],a[4]).add(d.xor64(f,e[28],e[4])),c[5]=d.xor64(g.shiftLeft(6),e[21].shiftRight(6),a[5]).add(d.xor64(f,e[29],e[5])),c[6]=d.xor64(g.shiftRight(4),e[22].shiftLeft(6),a[6]).add(d.xor64(f,e[30],e[6])),c[7]=d.xor64(g.shiftRight(11),e[23].shiftLeft(2),a[7]).add(d.xor64(f,e[31],e[7])),c[8]=c[4].rotateLeft(9).add(d.xor64(g,e[24],a[8])).add(d.xor64(f.shiftLeft(8),e[23],e[8])),c[9]=c[5].rotateLeft(10).add(d.xor64(g,e[25],a[9])).add(d.xor64(f.shiftRight(6),e[16],e[9])),c[10]=c[6].rotateLeft(11).add(d.xor64(g,e[26],a[10])).add(d.xor64(f.shiftLeft(6),e[17],e[10])),c[11]=c[7].rotateLeft(12).add(d.xor64(g,e[27],a[11])).add(d.xor64(f.shiftLeft(4),e[18],e[11])),c[12]=c[0].rotateLeft(13).add(d.xor64(g,e[28],a[12])).add(d.xor64(f.shiftRight(3),e[19],e[12])),c[13]=c[1].rotateLeft(14).add(d.xor64(g,e[29],a[13])).add(d.xor64(f.shiftRight(4),e[20],e[13])),c[14]=c[2].rotateLeft(15).add(d.xor64(g,e[30],a[14])).add(d.xor64(f.shiftRight(7),e[21],e[14])),c[15]=c[3].rotateLeft(16).add(d.xor64(g,e[31],a[15])).add(d.xor64(f.shiftRight(2),e[22],e[15])),c},E=function(a,b){var c=e.bytes2Int64BufferLeAligned(a);return D(c,b)},F=function(a,b){var c=new Array(16),e=b.length,f=d.u(0,e);f=f.shiftLeft(3),a.bitCount.add(f);for(var g=a.buffer,h=a.ptr,i=a.state,j=c;e>0;){var k=a.buffer.length-h;if(k>e&&(k=e),d.bufferInsert(g,h,b,k),b=b.slice(k),e-=k,h+=k,h===a.buffer.length){var l;j=E(g,i),l=i,i=j,j=l,h=0}}a.ptr=h,i!==a.state&&d.bufferInsert(a.state,0,i,a.state.length)},G=function(a){var b,c=new Array(16),f=a.buffer,h=a.ptr,i=f.length;f[h++]=128;var j=a.state;for(h>i-8&&(d.bufferSet(f,h,0,i-h),j=E(f,j),h=0),d.bufferSet(f,h,0,i-8-h),e.bufferEncode64leAligned(f,i-8,a.bitCount),c=E(f,j),l=0;l<16;l++)e.bufferEncode64leAligned(f,8*l,c[l]);b=E(f,g);for(var k=new Array(16),l=0,m=8;l<8;l++,m++)k[2*l]=d.swap32(b[m].lo),k[2*l+1]=d.swap32(b[m].hi);return k};b.exports=function(a,b,c){var g;g=1===b?a:2===b?e.int32Buffer2Bytes(a):e.string2bytes(a);var h={};h.state=d.clone64Array(f),h.ptr=0,h.bitCount=d.u(0,0),h.buffer=new Array(128),F(h,g);var i,j=G(h,0,0);return i=2===c?j:1===c?e.int32Buffer2Bytes(j):e.int32ArrayToHexString(j)}},{"./helper":7,"./op":11}],4:[function(a,b,c){var d=a("./op"),e=a("./helper"),f=32,g=32,h=[719989345,1358206164,760449931,1097324606,1072571155,3338784652,3426326158,1353471637,1296222087,2789714099,2546928623,2187019575,4009256146,4062220484,3504721203,2721649070,4241725657,344974469,453082095,3057927474,1783849305,804616220,2449111348,230350505,3596388907,2779188853,2982552662,3162072438,421644535,3885538033,2006307398,3560848196],i=function(a){a[16]=4294967295&a[0]+a[16],a[0]=d.rotl32(a[0],7),a[17]=4294967295&a[1]+a[17],a[1]=d.rotl32(a[1],7),a[18]=4294967295&a[2]+a[18],a[2]=d.rotl32(a[2],7),a[19]=4294967295&a[3]+a[19],a[3]=d.rotl32(a[3],7),a[20]=4294967295&a[4]+a[20],a[4]=d.rotl32(a[4],7),a[21]=4294967295&a[5]+a[21],a[5]=d.rotl32(a[5],7),a[22]=4294967295&a[6]+a[22],a[6]=d.rotl32(a[6],7),a[23]=4294967295&a[7]+a[23],a[7]=d.rotl32(a[7],7),a[24]=4294967295&a[8]+a[24],a[8]=d.rotl32(a[8],7),a[25]=4294967295&a[9]+a[25],a[9]=d.rotl32(a[9],7),a[26]=4294967295&a[10]+a[26],a[10]=d.rotl32(a[10],7),a[27]=4294967295&a[11]+a[27],a[11]=d.rotl32(a[11],7),a[28]=4294967295&a[12]+a[28],a[12]=d.rotl32(a[12],7),a[29]=4294967295&a[13]+a[29],a[13]=d.rotl32(a[13],7),a[30]=4294967295&a[14]+a[30],a[14]=d.rotl32(a[14],7),a[31]=4294967295&a[15]+a[31],a[15]=d.rotl32(a[15],7),a[8]^=a[16],a[9]^=a[17],a[10]^=a[18],a[11]^=a[19],a[12]^=a[20],a[13]^=a[21],a[14]^=a[22],a[15]^=a[23],a[0]^=a[24],a[1]^=a[25],a[2]^=a[26],a[3]^=a[27],a[4]^=a[28],a[5]^=a[29],a[6]^=a[30],a[7]^=a[31],a[18]=4294967295&a[8]+a[18],a[8]=d.rotl32(a[8],11),a[19]=4294967295&a[9]+a[19],a[9]=d.rotl32(a[9],11),a[16]=4294967295&a[10]+a[16],a[10]=d.rotl32(a[10],11),a[17]=4294967295&a[11]+a[17],a[11]=d.rotl32(a[11],11),a[22]=4294967295&a[12]+a[22],a[12]=d.rotl32(a[12],11),a[23]=4294967295&a[13]+a[23],a[13]=d.rotl32(a[13],11),a[20]=4294967295&a[14]+a[20],a[14]=d.rotl32(a[14],11),a[21]=4294967295&a[15]+a[21],a[15]=d.rotl32(a[15],11),a[26]=4294967295&a[0]+a[26],a[0]=d.rotl32(a[0],11),a[27]=4294967295&a[1]+a[27],a[1]=d.rotl32(a[1],11),a[24]=4294967295&a[2]+a[24],a[2]=d.rotl32(a[2],11),a[25]=4294967295&a[3]+a[25],a[3]=d.rotl32(a[3],11),a[30]=4294967295&a[4]+a[30],a[4]=d.rotl32(a[4],11),a[31]=4294967295&a[5]+a[31],a[5]=d.rotl32(a[5],11),a[28]=4294967295&a[6]+a[28],a[6]=d.rotl32(a[6],11),a[29]=4294967295&a[7]+a[29],a[7]=d.rotl32(a[7],11),a[12]^=a[18],a[13]^=a[19],a[14]^=a[16],a[15]^=a[17],a[8]^=a[22],a[9]^=a[23],a[10]^=a[20],a[11]^=a[21],a[4]^=a[26],a[5]^=a[27],a[6]^=a[24],a[7]^=a[25],a[0]^=a[30],a[1]^=a[31],a[2]^=a[28],a[3]^=a[29]},j=function(a){a[19]=4294967295&a[12]+a[19],a[12]=d.rotl32(a[12],7),a[18]=4294967295&a[13]+a[18],a[13]=d.rotl32(a[13],7),a[17]=4294967295&a[14]+a[17],a[14]=d.rotl32(a[14],7),a[16]=4294967295&a[15]+a[16],a[15]=d.rotl32(a[15],7),a[23]=4294967295&a[8]+a[23],a[8]=d.rotl32(a[8],7),a[22]=4294967295&a[9]+a[22],a[9]=d.rotl32(a[9],7),a[21]=4294967295&a[10]+a[21],a[10]=d.rotl32(a[10],7),a[20]=4294967295&a[11]+a[20],a[11]=d.rotl32(a[11],7),a[27]=4294967295&a[4]+a[27],a[4]=d.rotl32(a[4],7),a[26]=4294967295&a[5]+a[26],a[5]=d.rotl32(a[5],7),a[25]=4294967295&a[6]+a[25],a[6]=d.rotl32(a[6],7),a[24]=4294967295&a[7]+a[24],a[7]=d.rotl32(a[7],7),a[31]=4294967295&a[0]+a[31],a[0]=d.rotl32(a[0],7),a[30]=4294967295&a[1]+a[30],a[1]=d.rotl32(a[1],7),a[29]=4294967295&a[2]+a[29],a[2]=d.rotl32(a[2],7),a[28]=4294967295&a[3]+a[28],a[3]=d.rotl32(a[3],7),a[4]^=a[19],a[5]^=a[18],a[6]^=a[17],a[7]^=a[16],a[0]^=a[23],a[1]^=a[22],a[2]^=a[21],a[3]^=a[20],a[12]^=a[27],a[13]^=a[26],a[14]^=a[25],a[15]^=a[24],a[8]^=a[31],a[9]^=a[30],a[10]^=a[29],a[11]^=a[28],a[17]=4294967295&a[4]+a[17],a[4]=d.rotl32(a[4],11),a[16]=4294967295&a[5]+a[16],a[5]=d.rotl32(a[5],11),a[19]=4294967295&a[6]+a[19],a[6]=d.rotl32(a[6],11),a[18]=4294967295&a[7]+a[18],a[7]=d.rotl32(a[7],11),a[21]=4294967295&a[0]+a[21],a[0]=d.rotl32(a[0],11),a[20]=4294967295&a[1]+a[20],a[1]=d.rotl32(a[1],11),a[23]=4294967295&a[2]+a[23],a[2]=d.rotl32(a[2],11),a[22]=4294967295&a[3]+a[22],a[3]=d.rotl32(a[3],11),a[25]=4294967295&a[12]+a[25],a[12]=d.rotl32(a[12],11),a[24]=4294967295&a[13]+a[24],a[13]=d.rotl32(a[13],11),a[27]=4294967295&a[14]+a[27],a[14]=d.rotl32(a[14],11),a[26]=4294967295&a[15]+a[26],a[15]=d.rotl32(a[15],11),a[29]=4294967295&a[8]+a[29],a[8]=d.rotl32(a[8],11),a[28]=4294967295&a[9]+a[28],a[9]=d.rotl32(a[9],11),a[31]=4294967295&a[10]+a[31],a[10]=d.rotl32(a[10],11),a[30]=4294967295&a[11]+a[30],a[11]=d.rotl32(a[11],11),a[0]^=a[17],a[1]^=a[16],a[2]^=a[19],a[3]^=a[18],a[4]^=a[21],a[5]^=a[20],a[6]^=a[23],a[7]^=a[22],a[8]^=a[25],a[9]^=a[24],a[10]^=a[27],a[11]^=a[26],a[12]^=a[29],a[13]^=a[28],a[14]^=a[31],a[15]^=a[30]},k=function(a){i(a),j(a),i(a),j(a),i(a),j(a),i(a),j(a),i(a),j(a),i(a),j(a),i(a),j(a),i(a),j(a)},l=function(a,b){var c,f,h=new Array(g);c=a.buffer,f=a.ptr;var i=b.length;if(i<a.buffer.length-f)return d.bufferInsert(c,f,b,b.length),f+=b.length,void(a.ptr=f);for(var j=0;j<g;j++)h[j]=a.state[j];for(;i>0;){var l=a.buffer.length-f;if(l>i&&(l=i),d.bufferInsert(c,f,b,l),f+=l,b=b.slice(l),i-=l,f===a.buffer.length){var m=d.swap32Array(e.bytes2Int32Buffer(c));d.bufferXORInsert(h,0,m,0,8),k(h),f=0}}a.state=h,a.ptr=f},m=function(a){var b=a.buffer,c=a.ptr,f=new Array(g);b[c++]=128,d.bufferSet(b,c,0,a.buffer.length-c);for(var h=0;h<g;h++)f[h]=a.state[h];var i=d.swap32Array(e.bytes2Int32Buffer(b));for(d.bufferXORInsert(f,0,i,0,8),h=0;h<11;h++)k(f),0==h&&(f[31]^=1);a.state=f;for(var j=new Array(16),l=0;l<16;l++)j[l]=d.swap32(a.state[l]);return j};b.exports=function(a,b,c){var d;d=1===b?a:2===b?e.int32Buffer2Bytes(a):e.string2bytes(a);var g={};g.state=h,g.ptr=0,g.buffer=new Array(f),l(g,d);var i,j=m(g);return i=2===c?j:1===c?e.int32Buffer2Bytes(j):e.int32ArrayToHexString(j)}},{"./helper":7,"./op":11}],5:[function(a,b,c){var d=a("./op"),e=a("./helper"),f=a("./aes"),g=128,h=function(a,b){for(var c=0;c<16;c++){var e=a[c],g=new Array(4);f.AES_ROUND_LE(e,b,g),f.AES_ROUND_NOKEY_LE(g,e),0===(b[0]=d.t32(b[0]+1))&&0===(b[1]=d.t32(b[1]+1))&&0===(b[2]=d.t32(b[2]+1))&&(b[3]=d.t32(b[3]+1))}},i=function(a,b,c,d,e){var f;f=a[b][0],a[b][0]=a[c][0],a[c][0]=a[d][0],a[d][0]=a[e][0],a[e][0]=f,f=a[b][1],a[b][1]=a[c][1],a[c][1]=a[d][1],a[d][1]=a[e][1],a[e][1]=f,f=a[b][2],a[b][2]=a[c][2],a[c][2]=a[d][2],a[d][2]=a[e][2],a[e][2]=f,f=a[b][3],a[b][3]=a[c][3],a[c][3]=a[d][3],a[d][3]=a[e][3],a[e][3]=f},j=function(a,b,c,d,e){var f;f=a[b][0],a[b][0]=a[d][0],a[d][0]=f,f=a[c][0],a[c][0]=a[e][0],a[e][0]=f,f=a[b][1],a[b][1]=a[d][1],a[d][1]=f,f=a[c][1],a[c][1]=a[e][1],a[e][1]=f,f=a[b][2],a[b][2]=a[d][2],a[d][2]=f,f=a[c][2],a[c][2]=a[e][2],a[e][2]=f,f=a[b][3],a[b][3]=a[d][3],a[d][3]=f,f=a[c][3],a[c][3]=a[e][3],a[e][3]=f},k=function(a,b,c,d,e){i(a,e,d,c,b)},l=function(a){i(a,1,5,9,13),j(a,2,6,10,14),k(a,3,7,11,15)},m=function(a,b,c,d,e){for(var f=0;f<4;f++){var g=a[b][f],h=a[c][f],i=a[d][f],j=a[e][f],k=g^h,l=h^i,m=i^j,n=27*((2155905152&k)>>>7)^(2139062143&k)<<1,o=27*((2155905152&l)>>>7)^(2139062143&l)<<1,p=27*((2155905152&m)>>>7)^(2139062143&m)<<1;a[b][f]=n^l^j,a[c][f]=o^g^m,a[d][f]=p^k^j,a[e][f]=n^o^p^k^i}},n=function(a,b){for(var c=d.swap32Array(e.bytes2Int32Buffer(a.buffer)),f=0;f<8;f++)for(var g=0;g<4;g++)a.state[f][g]^=c[4*f+g]^b[f][g]^b[f+8][g]},o=function(a,b){d.buffer2Insert(b,0,0,a.state,8,4);for(var c=d.swap32Array(e.bytes2Int32Buffer(a.buffer)),f=0;f<8;f++)b[f+8][0]=c[4*f],b[f+8][1]=c[4*f+1],b[f+8][2]=c[4*f+2],b[f+8][3]=c[4*f+3]},p=function(a){m(a,0,1,2,3),m(a,4,5,6,7),m(a,8,9,10,11),m(a,12,13,14,15)},q=function(a,b){h(a,b),l(a),p(a)},r=function(a){for(var b=new Array(16),c=0;c<16;c++)b[c]=new Array(4);var e=new Array(4);d.bufferInsert(e,0,a.C,4),o(a,b);for(var f=0;f<10;f++)q(b,e);n(a,b)},s=function(a,b){a.C[0]=d.t32(a.C[0]+d.t32(b)),a.C[0]<d.t32(b)&&0===(a.C[1]=d.t32(a.C[1]+1))&&0===(a.C[2]=d.t32(a.C[2]+1))&&(a.C[3]=d.t32(a.C[3]+1))},t=function(a){a.state=new Array(8);for(var b=0;b<8;b++)a.state[b]=new Array(4);a.state[0][0]=512,a.state[0][1]=a.state[0][2]=a.state[0][3]=0,a.state[1][0]=512,a.state[1][1]=a.state[1][2]=a.state[1][3]=0,a.state[2][0]=512,a.state[2][1]=a.state[2][2]=a.state[2][3]=0,a.state[3][0]=512,a.state[3][1]=a.state[3][2]=a.state[3][3]=0,a.state[4][0]=512,a.state[4][1]=a.state[4][2]=a.state[4][3]=0,a.state[5][0]=512,a.state[5][1]=a.state[5][2]=a.state[5][3]=0,a.state[6][0]=512,a.state[6][1]=a.state[6][2]=a.state[6][3]=0,a.state[7][0]=512,a.state[7][1]=a.state[7][2]=a.state[7][3]=0,a.ptr=0,a.C=new Array(4),d.bufferSet(a.C,0,0,4),a.buffer=new Array(g)},u=function(a,b){var c,f;c=a.buffer,f=a.ptr;var g=b.length;if(g<a.buffer.length-f)return d.bufferInsert(c,f,b,b.length),f+=b.length,void(a.ptr=f);for(;g>0;){var h=a.buffer.length-f;if(h>g&&(h=g),d.bufferInsert(c,f,b,h),f+=h,b=b.slice(h),g-=h,f===a.buffer.length){e.bytes2Int32Buffer(c);s(a,1024),r(a),f=0}}a.ptr=f},v=function(a){var b=new Array(16),c=a.buffer,f=a.buffer.length,g=a.ptr,h=g<<3;s(a,h);var i=e.int32Buffer2Bytes(d.swap32Array(a.C));0===h&&(a.C[0]=a.C[1]=a.C[2]=a.C[3]=0),c[g++]=128,d.bufferSet(c,g,0,f-g),g>f-18&&(r(a),d.bufferSet(a.C,0,0,4),d.bufferSet(c,0,0,f)),c[f-17]=2,d.bufferInsert(c,f-16,i,16),r(a);for(var j=0;j<4;j++)for(var k=0;k<4;k++)b[4*j+k]=d.swap32(a.state[j][k]);return b};b.exports=function(a,b,c){var d;d=1===b?a:2===b?e.int32Buffer2Bytes(a):e.string2bytes(a);var f={};t(f),u(f,d);var g,h=v(f);return g=2===c?h:1===c?e.int32Buffer2Bytes(h):e.int32ArrayToHexString(h)}},{"./aes":1,"./helper":7,"./op":11}],6:[function(a,b,c){var d=a("./op"),e=a("./helper"),f=e.bytes2Int64Buffer(e.b64Decode("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")),g=e.bytes2Int64Buffer(e.b64Decode("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")),h=e.bytes2Int64Buffer(e.b64Decode("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")),i=e.bytes2Int64Buffer(e.b64Decode("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")),j=e.bytes2Int64Buffer(e.b64Decode("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")),k=e.bytes2Int64Buffer(e.b64Decode("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")),l=e.bytes2Int64Buffer(e.b64Decode("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")),m=e.bytes2Int64Buffer(e.b64Decode("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")),n=function(a,b){
if(7===a)return 255&b.lo;var c=8*(7-a);if(c>=32)return b.hi>>>c-32&255;var d=32-c,e=this.hi<<d>>>d;return 255&(b.lo>>>c|e<<d)},o=[d.u(0,0),d.u(0,16),d.u(0,32),d.u(0,48),d.u(0,64),d.u(0,80),d.u(0,96),d.u(0,112),d.u(0,128),d.u(0,144),d.u(0,160),d.u(0,176),d.u(0,192),d.u(0,208),d.u(0,224),d.u(0,240)],p=[d.u(4294967295,4294967295),d.u(4294967295,4294967279),d.u(4294967295,4294967263),d.u(4294967295,4294967247),d.u(4294967295,4294967231),d.u(4294967295,4294967215),d.u(4294967295,4294967199),d.u(4294967295,4294967183),d.u(4294967295,4294967167),d.u(4294967295,4294967151),d.u(4294967295,4294967135),d.u(4294967295,4294967119),d.u(4294967295,4294967103),d.u(4294967295,4294967087),d.u(4294967295,4294967071),d.u(4294967295,4294967055)],q=[d.u(0,0),d.u(0,1),d.u(0,2),d.u(0,3),d.u(0,4),d.u(0,5),d.u(0,6),d.u(0,7),d.u(0,8),d.u(0,9),d.u(0,10),d.u(0,11),d.u(0,12),d.u(0,13)],r=function(a,b){for(var c=new Array(16),e=new Array(16),r=0;r<16;r++)e[r]=a[r],c[r]=e[r].xor(b[r]);for(var s=new Array(16),t=0;t<14;t++){for(var u=0;u<16;u++)c[u].setxor64(o[u].plus(q[t]).setShiftLeft(56));for(var r=0;r<16;r++)s[r]=d.xor64(f[n(0,c[r])],g[n(1,c[r+1&15])],h[n(2,c[r+2&15])],i[n(3,c[r+3&15])],j[n(4,c[r+4&15])],k[n(5,c[r+5&15])],l[n(6,c[r+6&15])],m[n(7,c[r+11&15])]);var v=c;c=s,s=v}for(var t=0;t<14;t++){for(var u=0;u<16;u++)e[u].setxor64(q[t],p[u]);for(var r=0;r<16;r++)s[r]=d.xor64(f[n(0,e[r+1&15])],g[n(1,e[r+3&15])],h[n(2,e[r+5&15])],i[n(3,e[r+11&15])],j[n(4,e[r+0&15])],k[n(5,e[r+2&15])],l[n(6,e[r+4&15])],m[n(7,e[r+6&15])]);var v=e;e=s,s=v}for(var r=0;r<16;r++)b[r].setxor64(c[r],e[r])},s=function(a){var b=new Array(16);d.bufferInsert64(b,0,a,16);for(var c=new Array(16),e=0;e<14;e++){for(var p=0;p<16;p++)b[p].setxor64(o[p].plus(q[e]).setShiftLeft(56));for(var r=0;r<16;r++)c[r]=d.xor64(f[n(0,b[r])],g[n(1,b[r+1&15])],h[n(2,b[r+2&15])],i[n(3,b[r+3&15])],j[n(4,b[r+4&15])],k[n(5,b[r+5&15])],l[n(6,b[r+6&15])],m[n(7,b[r+11&15])]);var s=b;b=c,c=s}for(var r=0;r<16;r++)a[r].setxor64(b[r])},t=function(a,b,c){var f,g,h=new Array(16);if(f=a.buffer,g=a.ptr,c<a.buffer.length-g)return d.bufferInsert(f,g,b,b.length),g+=b.length,void(a.ptr=g);for(d.bufferInsert(h,0,a.state,16);c>0;){var i=a.buffer.length-g;if(i>c&&(i=c),d.bufferInsert(f,g,b,i),g+=i,b=b.slice(i),c-=i,g===a.buffer.length){var j=e.bytes2Int64Buffer(f);r(j,h),a.count.addOne(),g=0}}a.state=h,a.ptr=g},u=function(a){var b,c,f=a.buffer,g=a.ptr,h=new Array(136);f.length;h[0]=128,g<120?(b=128-g,c=a.count.plus(d.u(0,1))):(b=256-g,c=a.count.plus(d.u(0,2))),d.bufferSet(h,1,0,b-9),e.bufferEncode64(h,b-8,c),t(a,h,b),s(a.state);for(var i=new Array(16),j=0,k=8;j<8;j++,k++)i[2*j]=a.state[k].hi,i[2*j+1]=a.state[k].lo;return i};b.exports=function(a,b,c){var f;f=1===b?a:2===b?e.int32Buffer2Bytes(a):e.string2bytes(a);var g={};g.state=new Array(16);for(var h=0;h<15;h++)g.state[h]=new d.u64(0,0);g.state[15]=new d.u64(0,512),g.ptr=0,g.count=new d.u64(0,0),g.buffer=new Array(128),t(g,f,f.length);var i,j=u(g,0,0);return i=2===c?j:1===c?e.int32Buffer2Bytes(j):e.int32ArrayToHexString(j)}},{"./helper":7,"./op":11}],7:[function(a,b,c){"use strict";var d=a("./op.js");b.exports.int8ArrayToHexString=function(a){for(var b="",c=0,d=a.length;c<d;)b+=a[c]<16?"0"+a[c].toString(16):a[c].toString(16),c++;return b},b.exports.int32ArrayToHexString=function(a){for(var b="",c=0,d=a.length,e=8;c<d;){var f=a[c];f<0&&(f=4294967295+a[c]+1);for(var g=f.toString(16);g.length<e;)g="0"+g;b+=g,c++}return b},b.exports.string2bytes=function(a){for(var b=[],c=a.length,d=0;d<c;)b[d]=a.charCodeAt(d),d++;return b},b.exports.bytes2Int32Buffer=function(a){var b=a.length;if(!b)return[];for(var c=b?(b-1>>>2)+1:0,d=new Array(c),e=0;e<c;)d[e]=a[4*e]<<24|a[4*e+1]<<16|a[4*e+2]<<8|a[4*e+3],e++;return d},b.exports.bytes2Int64Buffer=function(a){var b=a.length;if(!b)return[];for(var c=b?(b-1>>>3)+1:0,e=new Array(c),f=0;f<c;)e[f]=new d.u64(a[8*f]<<24|a[8*f+1]<<16|a[8*f+2]<<8|a[8*f+3],a[8*f+4]<<24|a[8*f+5]<<16|a[8*f+6]<<8|a[8*f+7]),f++;return e},b.exports.bytes2Int64BufferLeAligned=function(a){var b=a.length;if(!b)return[];for(var c=b?(b-1>>>3)+1:0,e=new Array(c),f=0;f<c;)e[f]=new d.u64(a[8*f+7]<<24|a[8*f+6]<<16|a[8*f+5]<<8|a[8*f+4],a[8*f+3]<<24|a[8*f+2]<<16|a[8*f+1]<<8|a[8*f]),f++;return e},b.exports.bufferEncode64leAligned=function(a,b,c){a[b+7]=c.hi>>>24,a[b+6]=c.hi>>>16&255,a[b+5]=c.hi>>>8&255,a[b+4]=255&c.hi,a[b+3]=c.lo>>>24,a[b+2]=c.lo>>>16&255,a[b+1]=c.lo>>>8&255,a[b+0]=255&c.lo},b.exports.bufferEncode64=function(a,b,c){a[b]=c.hi>>>24,a[b+1]=c.hi>>>16&255,a[b+2]=c.hi>>>8&255,a[b+3]=255&c.hi,a[b+4]=c.lo>>>24,a[b+5]=c.lo>>>16&255,a[b+6]=c.lo>>>8&255,a[b+7]=255&c.lo},b.exports.int32Buffer2Bytes=function(a){for(var b=a.length,c=4*b,d=new Array(c),e=0;e<b;)d[4*e]=(4278190080&a[e])>>>24,d[4*e+1]=(16711680&a[e])>>>16,d[4*e+2]=(65280&a[e])>>>8,d[4*e+3]=255&a[e],e++;return d},b.exports.int64Buffer2Bytes=function(a){for(var b=a.length,c=8*b,d=new Array(c),e=0;e<b;)d[8*e]=(4278190080&a[e].hi)>>>24,d[8*e+1]=(16711680&a[e].hi)>>>16,d[8*e+2]=(65280&a[e].hi)>>>8,d[8*e+3]=255&a[e].hi,d[8*e+4]=(4278190080&a[e].lo)>>>24,d[8*e+5]=(16711680&a[e].lo)>>>16,d[8*e+6]=(65280&a[e].lo)>>>8,d[8*e+7]=255&a[e].lo,e++;return d},b.exports.string2Int32Buffer=function(a){return this.bytes2Int32Buffer(this.string2bytes(a))};var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";b.exports.b64Encode=function(a){for(var b,c,d,f,g,h,i,j="",k=0;k<a.length;)b=a[k++],c=a[k++],d=a[k++],f=b>>2,g=(3&b)<<4|c>>4,h=(15&c)<<2|d>>6,i=63&d,isNaN(c)?h=i=64:isNaN(d)&&(i=64),j=j+e.charAt(f)+e.charAt(g)+e.charAt(h)+e.charAt(i);return j},b.exports.b64Decode=function(a){var b,c,d,f,g,h,i,j=[],k=0;a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var l=a.length;k<l;)f=e.indexOf(a.charAt(k++)),g=e.indexOf(a.charAt(k++)),h=e.indexOf(a.charAt(k++)),i=e.indexOf(a.charAt(k++)),b=f<<2|g>>4,c=(15&g)<<4|h>>2,d=(3&h)<<6|i,j.push(b),64!=h&&j.push(c),64!=i&&j.push(d);return j}},{"./op.js":11}],8:[function(a,b,c){var d=a("./op"),e=a("./helper"),f=64,g=8,h=4,i=e.bytes2Int32Buffer(e.b64Decode("b9FLlj4Aqhdjai4FehXVQ4oiXo0Ml+8L6TQSWfKzw2GJHaDBU2+AHiqpBWvqK22AWI7M2yB1uqapDzp2uvg79wFp5gVB40ppRrWKji5v5loQR6fQwYQ8JDtucbEtWsGZz1f27J2x+FanBoh8VxaxVuPC/N/mhRf7VFpGeMyM3Us=")),j=e.bytes2Int32Buffer(e.b64Decode("ot7Vcmf4Fd8KFYR7VxUjt5DWq4H2h1pNxU+fTkAr0cPgOpjqnPpFXJnSxQOambJmtJYCZopTu/IaFFa1MaLbiFxaowPbDhmaCrI/QBBEwYeAGQUcHZWehK3rM2/czedekhO6EEFrvwIVZXjc0Ce79zmBLApQeKo30r8aP9ORAEENWi1CkH7M9pyfYt3Ol8CSC6dcGKxEK8fWZd/RI/zGYwNsbpcauOCefkUFIajsbES7A/Hu+mGOXbKXlv2XgYOUN4WOSi8wA9stjWcqlWqf+4Fz/opsabj4RnLHihRCf8CPFfTFxF7HvadvRHWAuxGPt3XeUryI5K4eALiC9KOmmDOP9I4VY6OpJFZfqon5t9Ug7fG2/eBafFrpyjY2LEIGQzUpzj2Y/k50+TpTp0uac1kf9dCGgU5vga2dDp9a2K9nBgWnamI07r4oC4snF7luJgd0Rz8QgMZvfqDge0h+xqUKVQ3ApPhKn+fjkZ7xjpeBcnaG1I1gUEFann5isOXz7B+f/HogVEAAGuTjhMn0zvWU10/YlfqdEX4uVaVUwyQoct9bKG7+veJ/9XiyxKUP73yJBS7TSe6Fk35Ef1ko6zdpX3BKMSSz8SiGXmXk1h0EdxvH5yC5UehD/nSKh9Qjo+gpffKUdpIJesvdwdkwm/swGx3gG9xbT0kk2r+CnPIxuuek/79wtAVEMg1IvPjeMvyuOznTu1PBw59FoIsp4P0FyeUPCa73EjRwlDTxkEIBt3Gile1E4zaOO+lKmC9PYx1AiBX2bKBLRMFH/69Sh/FKu34wxgrixbZwRuaMbsxWpNWkAMpPvUuEndquGD7IRc5Xc63RZDBozqboZyVcFPKM2qMW4Q7LWAbpM5qZlJogsmAfe4Rvwn+sztEYhdGgoVtZMtMZ3Y3AHJpQRrSlqmdjPZ+6awTkqxnK9n7uVgvqebEfdCEoqTX3venuUTY7WqxXHXbTUHX+wkY6AXB9o6/BNfdC2KSYIOzteHlna54VY4NBqNs66k07w/qDLIMyHztAp/NHJxw08EBZmnYtt2xOPuf9TyHSOY39uO9ZV9xJDJuN2utJK0nXolsNcPNo0K47fYRVjXrw6aX1ZY745PSiuKBTOxA2ngeoDFrsPnWSlGiRT4joVlVcsFtMvLr4mTu743uUh/PW9Np1XRxrciisrmRtszTcUKU0bHHbKLjy4mH4KlGNEDNk2+P8dd1Z8bysHKI/zkM80btnsEPoAspbCjN1oSmITRk0f1xTFrTDlDuSHk15Dtd1dHk/r+6299So6iE5Gr4JfvRcUScjTFMkoybSPDK6ShejRK3Vpm2mPh21CMnyr5g9WYNWPGuRoXz4TE1ghnLMPuJG9sduCLMzmC9edryxpWbWKyrmxO/otvQGNtTBvhWC7nRjIe+8DU7B/WnJU/TEWn2nJlhYBhYUwX4W+uAGPa+Qfj+dYyjj8snSDNKbADDOql8wDNS3FlEqdJgy4PLYMOsNmvjO43uexUuSefG1buZR/9NohgRXTSObMWeW5vOm5swFdQoX2YF2sc5sMhOEUhc8YqIF+LPLK/RHFUd4glRG/0hqkyMHWN84ZWVeTol8/PKOUIb8RC5wMYbKC9CiCUDwTkd4MDnuoGWDOPfRN+le9706LOQmspchb/gTAdHtRKPn3p/vFd+gi9mSJXb294U8vkLcEnzsp9h+sCer2n2NU96oPqqTziWq2GkCvf1D9lr5CHMa2u9fwKUZShczZk2XaiH9TDGYtDVwFUHbuw8e6ptUze2hY9CackCXUb+ddfbib0eR")),k=function(a,b){a[3]=~a[3],a[0]^=b&~a[2];var c=b^a[0]&a[1];return a[0]^=a[2]&a[3],a[3]^=~a[1]&a[2],a[1]^=a[0]&a[2],a[2]^=a[0]&~a[3],a[0]^=a[1]|a[3],a[3]^=a[1]&a[2],a[1]^=c&a[0],a[2]^=c,a},l=function(a){return a[4]^=a[1],a[5]^=a[2],a[6]^=a[3]^a[0],a[7]^=a[0],a[0]^=a[5],a[1]^=a[6],a[2]^=a[7]^a[4],a[3]^=a[4],a},m=function(a,b){return j[(b<<3)+3-a]},n=function(a,b){return j[(b<<3)+7-a]},o=function(a,b,c,d,e,f){var g=k([a[3],b[3],c[3],d[3]],e(3,f));a[3]=g[0],b[3]=g[1],c[3]=g[2],d[3]=g[3],g=k([a[2],b[2],c[2],d[2]],e(2,f)),a[2]=g[0],b[2]=g[1],c[2]=g[2],d[2]=g[3],g=k([a[1],b[1],c[1],d[1]],e(1,f)),a[1]=g[0],b[1]=g[1],c[1]=g[2],d[1]=g[3],g=k([a[0],b[0],c[0],d[0]],e(0,f)),a[0]=g[0],b[0]=g[1],c[0]=g[2],d[0]=g[3]},p=function(a,b,c,d,e,f,g,h){var i=l([a[3],b[3],c[3],d[3],e[3],f[3],g[3],h[3]]);a[3]=i[0],b[3]=i[1],c[3]=i[2],d[3]=i[3],e[3]=i[4],f[3]=i[5],g[3]=i[6],h[3]=i[7],i=l([a[2],b[2],c[2],d[2],e[2],f[2],g[2],h[2]]),a[2]=i[0],b[2]=i[1],c[2]=i[2],d[2]=i[3],e[2]=i[4],f[2]=i[5],g[2]=i[6],h[2]=i[7],i=l([a[1],b[1],c[1],d[1],e[1],f[1],g[1],h[1]]),a[1]=i[0],b[1]=i[1],c[1]=i[2],d[1]=i[3],e[1]=i[4],f[1]=i[5],g[1]=i[6],h[1]=i[7],i=l([a[0],b[0],c[0],d[0],e[0],f[0],g[0],h[0]]),a[0]=i[0],b[0]=i[1],c[0]=i[2],d[0]=i[3],e[0]=i[4],f[0]=i[5],g[0]=i[6],h[0]=i[7]},q=function(a,b,c){var d=(a[3]&b)<<c;a[3]=a[3]>>c&b|d,d=(a[2]&b)<<c,a[2]=a[2]>>c&b|d,d=(a[1]&b)<<c,a[1]=a[1]>>c&b|d,d=(a[0]&b)<<c,a[0]=a[0]>>c&b|d},r=function(a,b){switch(a){case 0:return q(b,1431655765,1);case 1:return q(b,858993459,2);case 2:return q(b,252645135,4);case 3:return q(b,16711935,8);case 4:return q(b,65535,16);case 5:var c=b[3];return b[3]=b[2],b[2]=c,c=b[1],b[1]=b[0],void(b[0]=c);case 6:var c=b[3];return b[3]=b[1],b[1]=c,c=b[2],b[2]=b[0],void(b[0]=c)}},s=function(a,b,c){o(a[0],a[2],a[4],a[6],m,b),o(a[1],a[3],a[5],a[7],n,b),p(a[0],a[2],a[4],a[6],a[1],a[3],a[5],a[7]),r(c,a[1]),r(c,a[3]),r(c,a[5]),r(c,a[7])},t=function(a,b){a[0][3]=b[0],a[0][2]=b[1],a[0][1]=b[2],a[0][0]=b[3],a[1][3]=b[4],a[1][2]=b[5],a[1][1]=b[6],a[1][0]=b[7],a[2][3]=b[8],a[2][2]=b[9],a[2][1]=b[10],a[2][0]=b[11],a[3][3]=b[12],a[3][2]=b[13],a[3][1]=b[14],a[3][0]=b[15],a[4][3]=b[16],a[4][2]=b[17],a[4][1]=b[18],a[4][0]=b[19],a[5][3]=b[20],a[5][2]=b[21],a[5][1]=b[22],a[5][0]=b[23],a[6][3]=b[24],a[6][2]=b[25],a[6][1]=b[26],a[6][0]=b[27],a[7][3]=b[28],a[7][2]=b[29],a[7][1]=b[30],a[7][0]=b[31]},u=function(a,b){b[0]=a[0][3],b[1]=a[0][2],b[2]=a[0][1],b[3]=a[0][0],b[4]=a[1][3],b[5]=a[1][2],b[6]=a[1][1],b[7]=a[1][0],b[8]=a[2][3],b[9]=a[2][2],b[10]=a[2][1],b[11]=a[2][0],b[12]=a[3][3],b[13]=a[3][2],b[14]=a[3][1],b[15]=a[3][0],b[16]=a[4][3],b[17]=a[4][2],b[18]=a[4][1],b[19]=a[4][0],b[20]=a[5][3],b[21]=a[5][2],b[22]=a[5][1],b[23]=a[5][0],b[24]=a[6][3],b[25]=a[6][2],b[26]=a[6][1],b[27]=a[6][0],b[28]=a[7][3],b[29]=a[7][2],b[30]=a[7][1],b[31]=a[7][0]},v=function(a){for(var b=0;b<42;b+=7)s(a,b+0,0),s(a,b+1,1),s(a,b+2,2),s(a,b+3,3),s(a,b+4,4),s(a,b+5,5),s(a,b+6,6)},w=function(a,b,c,d,e,f){e||(e=0),f||(f=0);for(var g=0;g<c;g++)for(var h=0;h<c;h++){var i=g+e,j=f+d-1-h,k=a[i][j]^b[4*g+h];a[i][j]=k}},x=function(a,b,c){var f,i;if(f=a.buffer,i=a.ptr,c||(c=b.length),c<a.buffer.length-i)return d.bufferInsert(f,i,b,b.length),i+=b.length,void(a.ptr=i);for(var j=new Array(g),k=0;k<g;k++)j[k]=new Array(h);for(t(j,a.state);c>0;){var l=a.buffer.length-i;if(l>c&&(l=c),d.bufferInsert(f,i,b,l),i+=l,b=b.slice(l),c-=l,i===a.buffer.length){var m=d.swap32Array(e.bytes2Int32Buffer(f));w(j,m,4,4),v(j),w(j,m,4,4,4,0),0==(a.blockCountLow=d.t32(a.blockCountLow+1))&&a.blockCountHigh++,i=0}}u(j,a.state),a.ptr=i},y=function(a){var b,c,f=new Array(128),g=new Array(4);f[0]=128,b=0==a.ptr?47:111-a.ptr,d.bufferSet(f,1,0,b),g[0]=d.t32(a.blockCountLow<<9)+(a.ptr<<3),g[1]=d.t32(a.blockCountLow>>23)+d.t32(a.blockCountHigh<<9),g[2]=d.t32(a.blockCountHigh>>23),g[3]=0;var h=e.int32Buffer2Bytes(d.swap32Array(g));d.bufferInsertBackwards(f,1+b,h,16),x(a,f,b+17);var i=new Array(16);for(c=0;c<16;c++)i[c]=d.swap32(a.state[c+16]);return i};b.exports=function(a,b,c){var g;g=1===b?a:2===b?e.int32Buffer2Bytes(a):e.string2bytes(a);var h={};h.state=d.swap32Array(i),h.ptr=0,h.buffer=new Array(f),h.blockCountHigh=0,h.blockCountLow=0,x(h,g);var j,k=y(h);return j=2===c?k:1===c?e.int32Buffer2Bytes(k):e.int32ArrayToHexString(k)}},{"./helper":7,"./op":11}],9:[function(a,b,c){function d(a,b,c){this.blocks=[],this.s=[],this.padding=b,this.outputBits=c,this.reset=!0,this.block=0,this.start=0,this.blockCount=1600-(a<<1)>>5,this.byteCount=this.blockCount<<2,this.outputBlocks=c>>5,this.extraBytes=(31&c)>>3;for(var d=0;d<50;++d)this.s[d]=0}for(var e="0123456789abcdef".split(""),f=[1,256,65536,16777216],g=[0,8,16,24],h=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648],i=[512],j=["hex","buffer","array"],k=a("./helper"),l=function(a,b,c){return function(e){return new d(a,b,a).update(e)[c]()}},m=function(a,b){var c=l(a,b,"array");c.create=function(){return new d(a,b,a)},c.update=function(a){return c.create().update(a)};for(var e=0;e<j.length;++e){var f=j[e];c[f]=l(a,b,f)}return c},n=[{name:"keccak",padding:f,bits:i,createMethod:m}],o={},p=0;p<n.length;++p)for(var q=n[p],r=q.bits,m=q.createMethod,s=0;s<r.length;++s){var t=q.createMethod(r[s],q.padding);o[q.name+"_"+r[s]]=t}d.prototype.update=function(a){var b="string"!=typeof a;b&&"[object ArrayBuffer]"===Object.prototype.toString.call(a.constructor)&&(a=k.string2bytes(a));for(var c,d,e=a.length,f=this.blocks,h=this.byteCount,i=this.blockCount,j=0,l=this.s;j<e;){if(this.reset)for(this.reset=!1,f[0]=this.block,c=1;c<i+1;++c)f[c]=0;if(b)for(c=this.start;j<e&&c<h;++j)f[c>>2]|=a[j]<<g[3&c++];else for(c=this.start;j<e&&c<h;++j)d=a.charCodeAt(j),d<128?f[c>>2]|=d<<g[3&c++]:d<2048?(f[c>>2]|=(192|d>>6)<<g[3&c++],f[c>>2]|=(128|63&d)<<g[3&c++]):d<55296||d>=57344?(f[c>>2]|=(224|d>>12)<<g[3&c++],f[c>>2]|=(128|d>>6&63)<<g[3&c++],f[c>>2]|=(128|63&d)<<g[3&c++]):(d=65536+((1023&d)<<10|1023&a.charCodeAt(++j)),f[c>>2]|=(240|d>>18)<<g[3&c++],f[c>>2]|=(128|d>>12&63)<<g[3&c++],f[c>>2]|=(128|d>>6&63)<<g[3&c++],f[c>>2]|=(128|63&d)<<g[3&c++]);if(this.lastByteIndex=c,c>=h){for(this.start=c-h,this.block=f[i],c=0;c<i;++c)l[c]^=f[c];u(l),this.reset=!0}else this.start=c}return this},d.prototype.finalize=function(){var a=this.blocks,b=this.lastByteIndex,c=this.blockCount,d=this.s;if(a[b>>2]|=this.padding[3&b],this.lastByteIndex==this.byteCount)for(a[0]=a[c],b=1;b<c+1;++b)a[b]=0;for(a[c-1]|=2147483648,b=0;b<c;++b)d[b]^=a[b];u(d)},d.prototype.toString=d.prototype.hex=function(){this.finalize();for(var a,b=this.blockCount,c=this.s,d=this.outputBlocks,f=this.extraBytes,g=0,h=0,i="";h<d;){for(g=0;g<b&&h<d;++g,++h)a=c[g],i+=e[a>>4&15]+e[15&a]+e[a>>12&15]+e[a>>8&15]+e[a>>20&15]+e[a>>16&15]+e[a>>28&15]+e[a>>24&15];h%b==0&&(u(c),g=0)}return f&&(a=c[g],f>0&&(i+=e[a>>4&15]+e[15&a]),f>1&&(i+=e[a>>12&15]+e[a>>8&15]),f>2&&(i+=e[a>>20&15]+e[a>>16&15])),i},d.prototype.buffer=function(){this.finalize();var a,b=this.blockCount,c=this.s,d=this.outputBlocks,e=this.extraBytes,f=0,g=0,h=this.outputBits>>3;a=e?new ArrayBuffer(d+1<<2):new ArrayBuffer(h);for(var i=new Uint32Array(a);g<d;){for(f=0;f<b&&g<d;++f,++g)i[g]=c[f];g%b==0&&u(c)}return e&&(i[f]=c[f],a=a.slice(0,h)),a},d.prototype.digest=d.prototype.array=function(){this.finalize();for(var a,b,c=this.blockCount,d=this.s,e=this.outputBlocks,f=this.extraBytes,g=0,h=0,i=[];h<e;){for(g=0;g<c&&h<e;++g,++h)a=h<<2,b=d[g],i[a]=255&b,i[a+1]=b>>8&255,i[a+2]=b>>16&255,i[a+3]=b>>24&255;h%c==0&&u(d)}return f&&(a=h<<2,b=d[g],f>0&&(i[a]=255&b),f>1&&(i[a+1]=b>>8&255),f>2&&(i[a+2]=b>>16&255)),i};var u=function(a){var b,c,d,e,f,g,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,$,_,aa,ba,ca,da,ea,fa,ga,ha,ia,ja,ka;for(d=0;d<48;d+=2)e=a[0]^a[10]^a[20]^a[30]^a[40],f=a[1]^a[11]^a[21]^a[31]^a[41],g=a[2]^a[12]^a[22]^a[32]^a[42],i=a[3]^a[13]^a[23]^a[33]^a[43],j=a[4]^a[14]^a[24]^a[34]^a[44],k=a[5]^a[15]^a[25]^a[35]^a[45],l=a[6]^a[16]^a[26]^a[36]^a[46],m=a[7]^a[17]^a[27]^a[37]^a[47],n=a[8]^a[18]^a[28]^a[38]^a[48],o=a[9]^a[19]^a[29]^a[39]^a[49],b=n^(g<<1|i>>>31),c=o^(i<<1|g>>>31),a[0]^=b,a[1]^=c,a[10]^=b,a[11]^=c,a[20]^=b,a[21]^=c,a[30]^=b,a[31]^=c,a[40]^=b,a[41]^=c,b=e^(j<<1|k>>>31),c=f^(k<<1|j>>>31),a[2]^=b,a[3]^=c,a[12]^=b,a[13]^=c,a[22]^=b,a[23]^=c,a[32]^=b,a[33]^=c,a[42]^=b,a[43]^=c,b=g^(l<<1|m>>>31),c=i^(m<<1|l>>>31),a[4]^=b,a[5]^=c,a[14]^=b,a[15]^=c,a[24]^=b,a[25]^=c,a[34]^=b,a[35]^=c,a[44]^=b,a[45]^=c,b=j^(n<<1|o>>>31),c=k^(o<<1|n>>>31),a[6]^=b,a[7]^=c,a[16]^=b,a[17]^=c,a[26]^=b,a[27]^=c,a[36]^=b,a[37]^=c,a[46]^=b,a[47]^=c,b=l^(e<<1|f>>>31),c=m^(f<<1|e>>>31),a[8]^=b,a[9]^=c,a[18]^=b,a[19]^=c,a[28]^=b,a[29]^=c,a[38]^=b,a[39]^=c,a[48]^=b,a[49]^=c,p=a[0],q=a[1],V=a[11]<<4|a[10]>>>28,W=a[10]<<4|a[11]>>>28,D=a[20]<<3|a[21]>>>29,E=a[21]<<3|a[20]>>>29,ha=a[31]<<9|a[30]>>>23,ia=a[30]<<9|a[31]>>>23,R=a[40]<<18|a[41]>>>14,S=a[41]<<18|a[40]>>>14,J=a[2]<<1|a[3]>>>31,K=a[3]<<1|a[2]>>>31,r=a[13]<<12|a[12]>>>20,s=a[12]<<12|a[13]>>>20,X=a[22]<<10|a[23]>>>22,Y=a[23]<<10|a[22]>>>22,F=a[33]<<13|a[32]>>>19,G=a[32]<<13|a[33]>>>19,ja=a[42]<<2|a[43]>>>30,ka=a[43]<<2|a[42]>>>30,ba=a[5]<<30|a[4]>>>2,ca=a[4]<<30|a[5]>>>2,L=a[14]<<6|a[15]>>>26,M=a[15]<<6|a[14]>>>26,t=a[25]<<11|a[24]>>>21,u=a[24]<<11|a[25]>>>21,Z=a[34]<<15|a[35]>>>17,$=a[35]<<15|a[34]>>>17,H=a[45]<<29|a[44]>>>3,I=a[44]<<29|a[45]>>>3,z=a[6]<<28|a[7]>>>4,A=a[7]<<28|a[6]>>>4,da=a[17]<<23|a[16]>>>9,ea=a[16]<<23|a[17]>>>9,N=a[26]<<25|a[27]>>>7,O=a[27]<<25|a[26]>>>7,v=a[36]<<21|a[37]>>>11,w=a[37]<<21|a[36]>>>11,_=a[47]<<24|a[46]>>>8,aa=a[46]<<24|a[47]>>>8,T=a[8]<<27|a[9]>>>5,U=a[9]<<27|a[8]>>>5,B=a[18]<<20|a[19]>>>12,C=a[19]<<20|a[18]>>>12,fa=a[29]<<7|a[28]>>>25,ga=a[28]<<7|a[29]>>>25,P=a[38]<<8|a[39]>>>24,Q=a[39]<<8|a[38]>>>24,x=a[48]<<14|a[49]>>>18,y=a[49]<<14|a[48]>>>18,a[0]=p^~r&t,a[1]=q^~s&u,a[10]=z^~B&D,a[11]=A^~C&E,a[20]=J^~L&N,a[21]=K^~M&O,a[30]=T^~V&X,a[31]=U^~W&Y,a[40]=ba^~da&fa,a[41]=ca^~ea&ga,a[2]=r^~t&v,a[3]=s^~u&w,a[12]=B^~D&F,a[13]=C^~E&G,a[22]=L^~N&P,a[23]=M^~O&Q,a[32]=V^~X&Z,a[33]=W^~Y&$,a[42]=da^~fa&ha,a[43]=ea^~ga&ia,a[4]=t^~v&x,a[5]=u^~w&y,a[14]=D^~F&H,a[15]=E^~G&I,a[24]=N^~P&R,a[25]=O^~Q&S,a[34]=X^~Z&_,a[35]=Y^~$&aa,a[44]=fa^~ha&ja,a[45]=ga^~ia&ka,a[6]=v^~x&p,a[7]=w^~y&q,a[16]=F^~H&z,a[17]=G^~I&A,a[26]=P^~R&J,a[27]=Q^~S&K,a[36]=Z^~_&T,a[37]=$^~aa&U,a[46]=ha^~ja&ba,a[47]=ia^~ka&ca,a[8]=x^~p&r,a[9]=y^~q&s,a[18]=H^~z&B,a[19]=I^~A&C,a[28]=R^~J&L,a[29]=S^~K&M,a[38]=_^~T&V,a[39]=aa^~U&W,a[48]=ja^~ba&da,a[49]=ka^~ca&ea,a[0]^=h[d],a[1]^=h[d+1]};b.exports=o},{"./helper":7}],10:[function(a,b,c){var d=a("./op"),e=a("./helper"),f=[[1831149161,1152405984,1319792564,3690431589,1848188945,2417307124,3993338169,3740668091],[3283372949,3654480470,1894705568,3725172643,1570440535,2412332211,3474771726,1953289601],[4159686813,1572493185,67202277,2909117445,50731343,1718425654,615129866,2334542567],[2239788501,920100046,3849451479,541794151,898042986,1474947363,347912200,2094953166],[1818814910,1589911074,3357915079,2952479587,4125047193,264669425,2960270540,65563882]],g=[809079974,3236319897,1824733714,3696662590,503320719,2013282877,2405136514,2531384082],h=[3761469464,1142663437,2134168642,2475237759,3853040870,1383381748,646486951,2585947805],i=[3068006637,1895070382,117941204,471764817,1887059269,2930935138,3133805961,1084518206],j=[23617341,94469364,3171535562,4096207656,340452812,4205293099,776532417,3106129668],k=[4230011346,877997605,2061009295,2218292810,3144540210,3988226248,3649336150,2730984500],l=[3797840577,3861101426,1549313188,507044583,2028178333,660104985,921544063,1882893543],m=[2987634597,3360603797,1314949666,1457019134,876286863,3505147453,753617026,3014468104],n=[3760769471,1148546961,2123353650,2506442942,4263058402,1018308325,1497670286,2714026837],o=[4040354275,2886850554,466314994,1865259977,2019567177,2396711250,996910408,3987641632],p=[1351669111,756622763,3026491052,3516029616,689117878,264262595,1057050380,4228201521],q=function(a,b){var c=b[7];a[7]=b[6],a[6]=b[5],a[5]=b[4],a[4]=b[3]^c,a[3]=b[2]^c,a[2]=b[1],a[1]=b[0]^c,a[0]=c},r=function(a,b){var c=Array(8),e=Array(8),f=Array(8);c[0]=a[0],c[1]=a[1],c[2]=a[2],c[3]=a[3],c[4]=a[4],c[5]=a[5],c[6]=a[6],c[7]=a[7],d.xORTable(e,b[0],b[1],8),d.xORTable(f,b[2],b[3],8),d.xORTable(e,e,f,8),d.xORTable(e,e,b[4],8),q(e,e),d.xORTable(b[0],e,b[0],8),d.xORTable(b[1],e,b[1],8),d.xORTable(b[2],e,b[2],8),d.xORTable(b[3],e,b[3],8),d.xORTable(b[4],e,b[4],8),q(f,b[0]),d.xORTable(f,f,b[1],8),q(b[1],b[1]),d.xORTable(b[1],b[1],b[2],8),q(b[2],b[2]),d.xORTable(b[2],b[2],b[3],8),q(b[3],b[3]),d.xORTable(b[3],b[3],b[4],8),q(b[4],b[4]),d.xORTable(b[4],b[4],b[0],8),q(b[0],f),d.xORTable(b[0],b[0],b[4],8),q(b[4],b[4]),d.xORTable(b[4],b[4],b[3],8),q(b[3],b[3]),d.xORTable(b[3],b[3],b[2],8),q(b[2],b[2]),d.xORTable(b[2],b[2],b[1],8),q(b[1],b[1]),d.xORTable(b[1],b[1],f,8),d.xORTable(b[0],b[0],c,8),q(c,c),d.xORTable(b[1],b[1],c,8),q(c,c),d.xORTable(b[2],b[2],c,8),q(c,c),d.xORTable(b[3],b[3],c,8),q(c,c),d.xORTable(b[4],b[4],c,8)},s=function(a){a[1][4]=d.rotl32(a[1][4],1),a[1][5]=d.rotl32(a[1][5],1),a[1][6]=d.rotl32(a[1][6],1),a[1][7]=d.rotl32(a[1][7],1),a[2][4]=d.rotl32(a[2][4],2),a[2][5]=d.rotl32(a[2][5],2),a[2][6]=d.rotl32(a[2][6],2),a[2][7]=d.rotl32(a[2][7],2),a[3][4]=d.rotl32(a[3][4],3),a[3][5]=d.rotl32(a[3][5],3),a[3][6]=d.rotl32(a[3][6],3),a[3][7]=d.rotl32(a[3][7],3),a[4][4]=d.rotl32(a[4][4],4),a[4][5]=d.rotl32(a[4][5],4),a[4][6]=d.rotl32(a[4][6],4),a[4][7]=d.rotl32(a[4][7],4)},t=function(a,b,c,e){var f;return f=a,a|=b,c^=e,b=d.t32(~b),a^=e,e&=f,b^=e,e^=c,c&=a,a=d.t32(~a),c^=b,b|=e,f^=b,e^=c,c&=b,b^=a,a=f,[a,b,c,e]},u=function(a,b){return b^=a,a=d.rotl32(a,2)^b,b=d.rotl32(b,14)^a,a=d.rotl32(a,10)^b,b=d.rotl32(b,1),[a,b]},v=function(a){s(a);for(var b,c=0;c<8;c++)b=t(a[0][0],a[0][1],a[0][2],a[0][3]),a[0][0]=b[0],a[0][1]=b[1],a[0][2]=b[2],a[0][3]=b[3],b=t(a[0][5],a[0][6],a[0][7],a[0][4]),a[0][5]=b[0],a[0][6]=b[1],a[0][7]=b[2],a[0][4]=b[3],b=u(a[0][0],a[0][4]),a[0][0]=b[0],a[0][4]=b[1],b=u(a[0][1],a[0][5]),a[0][1]=b[0],a[0][5]=b[1],b=u(a[0][2],a[0][6]),a[0][2]=b[0],a[0][6]=b[1],b=u(a[0][3],a[0][7]),a[0][3]=b[0],a[0][7]=b[1],a[0][0]^=g[c],a[0][4]^=h[c];for(var c=0;c<8;c++)b=t(a[1][0],a[1][1],a[1][2],a[1][3]),a[1][0]=b[0],a[1][1]=b[1],a[1][2]=b[2],a[1][3]=b[3],b=t(a[1][5],a[1][6],a[1][7],a[1][4]),a[1][5]=b[0],a[1][6]=b[1],a[1][7]=b[2],a[1][4]=b[3],b=u(a[1][0],a[1][4]),a[1][0]=b[0],a[1][4]=b[1],b=u(a[1][1],a[1][5]),a[1][1]=b[0],a[1][5]=b[1],b=u(a[1][2],a[1][6]),a[1][2]=b[0],a[1][6]=b[1],b=u(a[1][3],a[1][7]),a[1][3]=b[0],a[1][7]=b[1],a[1][0]^=i[c],a[1][4]^=j[c];for(var c=0;c<8;c++)b=t(a[2][0],a[2][1],a[2][2],a[2][3]),a[2][0]=b[0],a[2][1]=b[1],a[2][2]=b[2],a[2][3]=b[3],b=t(a[2][5],a[2][6],a[2][7],a[2][4]),a[2][5]=b[0],a[2][6]=b[1],a[2][7]=b[2],a[2][4]=b[3],b=u(a[2][0],a[2][4]),a[2][0]=b[0],a[2][4]=b[1],b=u(a[2][1],a[2][5]),a[2][1]=b[0],a[2][5]=b[1],b=u(a[2][2],a[2][6]),a[2][2]=b[0],a[2][6]=b[1],b=u(a[2][3],a[2][7]),a[2][3]=b[0],a[2][7]=b[1],a[2][0]^=k[c],a[2][4]^=l[c];for(var c=0;c<8;c++)b=t(a[3][0],a[3][1],a[3][2],a[3][3]),a[3][0]=b[0],a[3][1]=b[1],a[3][2]=b[2],a[3][3]=b[3],b=t(a[3][5],a[3][6],a[3][7],a[3][4]),a[3][5]=b[0],a[3][6]=b[1],a[3][7]=b[2],a[3][4]=b[3],b=u(a[3][0],a[3][4]),a[3][0]=b[0],a[3][4]=b[1],b=u(a[3][1],a[3][5]),a[3][1]=b[0],a[3][5]=b[1],b=u(a[3][2],a[3][6]),a[3][2]=b[0],a[3][6]=b[1],b=u(a[3][3],a[3][7]),a[3][3]=b[0],a[3][7]=b[1],a[3][0]^=m[c],a[3][4]^=n[c];for(var c=0;c<8;c++)b=t(a[4][0],a[4][1],a[4][2],a[4][3]),a[4][0]=b[0],a[4][1]=b[1],a[4][2]=b[2],a[4][3]=b[3],b=t(a[4][5],a[4][6],a[4][7],a[4][4]),a[4][5]=b[0],a[4][6]=b[1],a[4][7]=b[2],a[4][4]=b[3],b=u(a[4][0],a[4][4]),a[4][0]=b[0],a[4][4]=b[1],b=u(a[4][1],a[4][5]),a[4][1]=b[0],a[4][5]=b[1],b=u(a[4][2],a[4][6]),a[4][2]=b[0],a[4][6]=b[1],b=u(a[4][3],a[4][7]),a[4][3]=b[0],a[4][7]=b[1],a[4][0]^=o[c],a[4][4]^=p[c]},w=function(a,b){for(var c,f,g=new Array(5),h=0;h<5;h++)g[h]=new Array(8);c=a.buffer,f=a.ptr;var i=b.length;if(i<a.buffer.length-f)return d.bufferInsert(c,f,b,b.length),f+=b.length,void(a.ptr=f);for(var h=0;h<5;h++)for(var j=0;j<8;j++)g[h][j]=a.state[h][j];for(;i>0;){var k=a.buffer.length-f;if(k>i&&(k=i),d.bufferInsert(c,f,b,k),f+=k,b=b.slice(k),i-=k,f===a.buffer.length){var l=e.bytes2Int32Buffer(c);r(l,g),v(g),f=0}}a.state=g,a.ptr=f},x=function(a,b,c){for(var f,g,h,i,j,k=new Array(5),j=0;j<5;j++)k[j]=new Array(8);f=a.buffer,h=a.ptr,i=128>>c,f[h++]=255&(b&-i|i),d.bufferSet(f,h,0,a.buffer.length-h);for(var j=0;j<5;j++)for(var l=0;l<8;l++)k[j][l]=a.state[j][l];var g=new Array(16);for(j=0;j<3;j++){var m=e.bytes2Int32Buffer(f);switch(r(m,k),v(k),j){case 0:d.bufferSet(f,0,0,a.buffer.length);break;case 1:g[0]=k[0][0]^k[1][0]^k[2][0]^k[3][0]^k[4][0],g[1]=k[0][1]^k[1][1]^k[2][1]^k[3][1]^k[4][1],g[2]=k[0][2]^k[1][2]^k[2][2]^k[3][2]^k[4][2],g[3]=k[0][3]^k[1][3]^k[2][3]^k[3][3]^k[4][3],g[4]=k[0][4]^k[1][4]^k[2][4]^k[3][4]^k[4][4],g[5]=k[0][5]^k[1][5]^k[2][5]^k[3][5]^k[4][5],g[6]=k[0][6]^k[1][6]^k[2][6]^k[3][6]^k[4][6],g[7]=k[0][7]^k[1][7]^k[2][7]^k[3][7]^k[4][7];break;case 2:g[8]=k[0][0]^k[1][0]^k[2][0]^k[3][0]^k[4][0],g[9]=k[0][1]^k[1][1]^k[2][1]^k[3][1]^k[4][1],g[10]=k[0][2]^k[1][2]^k[2][2]^k[3][2]^k[4][2],g[11]=k[0][3]^k[1][3]^k[2][3]^k[3][3]^k[4][3],g[12]=k[0][4]^k[1][4]^k[2][4]^k[3][4]^k[4][4],g[13]=k[0][5]^k[1][5]^k[2][5]^k[3][5]^k[4][5],g[14]=k[0][6]^k[1][6]^k[2][6]^k[3][6]^k[4][6],g[15]=k[0][7]^k[1][7]^k[2][7]^k[3][7]^k[4][7]}}return g};b.exports=function(a,b,c){var d;d=1===b?a:2===b?e.int32Buffer2Bytes(a):e.string2bytes(a);var g={};g.state=f,g.ptr=0,g.buffer=new Array(32),w(g,d);var h,i=x(g,0,0);return h=2===c?i:1===c?e.int32Buffer2Bytes(i):e.int32ArrayToHexString(i)}},{"./helper":7,"./op":11}],11:[function(a,b,c){"use strict";function d(a,b){this.hi=a>>>0,this.lo=b>>>0}function e(a){return(a&&a.__isLong__)===!0}function f(a){if(isNaN(a)||!isFinite(a))return this.zero();var b=1;return new d(a%b|0,a/b|0)}d.prototype.set=function(a){this.lo=a.lo,this.hi=a.hi},d.prototype.add=function(a){var b,c,d,e;return b=(65535&this.lo)+(65535&a.lo),c=(this.lo>>>16)+(a.lo>>>16)+(b>>>16),d=(65535&this.hi)+(65535&a.hi)+(c>>>16),e=(this.hi>>>16)+(a.hi>>>16)+(d>>>16),this.lo=c<<16|65535&b,this.hi=e<<16|65535&d,this},d.prototype.addOne=function(){this.lo===-1||4294967295===this.lo?(this.lo=0,this.hi++):this.lo++},d.prototype.plus=function(a){var b,c,e,f,g=new d(0,0);return b=(65535&this.lo)+(65535&a.lo),c=(this.lo>>>16)+(a.lo>>>16)+(b>>>16),e=(65535&this.hi)+(65535&a.hi)+(c>>>16),f=(this.hi>>>16)+(a.hi>>>16)+(e>>>16),g.lo=c<<16|65535&b,g.hi=f<<16|65535&e,g},d.prototype.not=function(){return new d((~this.hi),(~this.lo))},d.prototype.one=function(){return new d(0,1)},d.prototype.zero=function(){return new d(0,0)},d.prototype.neg=function(){return this.not().plus(this.one())},d.prototype.minus=function(a){return this.plus(a.neg())},d.prototype.isZero=function(){return 0===this.lo&&0===this.hi},d.prototype.multiply=function(a){if(this.isZero())return this.zero();if(e(a)||(a=f(a)),a.isZero())return this.zero();var b=this.hi>>>16,c=65535&this.hi,g=this.lo>>>16,h=65535&this.lo,i=a.hi>>>16,j=65535&a.hi,k=a.lo>>>16,l=65535&a.lo,m=0,n=0,o=0,p=0;return p+=h*l,o+=p>>>16,p&=65535,o+=g*l,n+=o>>>16,o&=65535,o+=h*k,n+=o>>>16,o&=65535,n+=c*l,m+=n>>>16,n&=65535,n+=g*k,m+=n>>>16,n&=65535,n+=h*j,m+=n>>>16,n&=65535,m+=b*l+c*k+g*j+h*i,m&=65535,new d(m<<16|n,o<<16|p)},d.prototype.shiftLeft=function(a){a%=64;var b=new d(0,0);if(0===a)return this.clone();if(a>31)b.lo=0,b.hi=this.lo<<a-32;else{var c=this.lo>>>32-a;b.lo=this.lo<<a,b.hi=this.hi<<a|c}return b},d.prototype.setShiftLeft=function(a){if(0===a)return this;if(a>63&&(a%=64),a>31)this.hi=this.lo<<a-32,this.lo=0;else{var b=this.lo>>>32-a;this.lo<<=a,this.hi=this.hi<<a|b}return this},d.prototype.shiftRight=function(a){a%=64;var b=new d(0,0);if(0===a)return this.clone();if(a>=32)b.hi=0,b.lo=this.hi>>>a-32;else{var c=32-a,e=this.hi<<c>>>c;b.hi=this.hi>>>a,b.lo=this.lo>>>a|e<<c}return b},d.prototype.rotateLeft=function(a){if(a>32)return this.rotateRight(64-a);var b=new d(0,0);return 0===a?(b.lo=this.lo>>>0,b.hi=this.hi>>>0):32===a?(b.lo=this.hi,b.hi=this.lo):(b.lo=this.lo<<a|this.hi>>>32-a,b.hi=this.hi<<a|this.lo>>>32-a),b},d.prototype.setRotateLeft=function(a){if(a>32)return this.setRotateRight(64-a);var b;return 0===a?this:(32===a?(b=this.lo,this.lo=this.hi,this.hi=b):(b=this.hi<<a|this.lo>>>32-a,this.lo=this.lo<<a|this.hi>>>32-a,this.hi=b),this)},d.prototype.rotateRight=function(a){if(a>32)return this.rotateLeft(64-a);var b=new d(0,0);return 0===a?(b.lo=this.lo>>>0,b.hi=this.hi>>>0):32===a?(b.lo=this.hi,b.hi=this.lo):(b.lo=this.hi<<32-a|this.lo>>>a,b.hi=this.lo<<32-a|this.hi>>>a),b},d.prototype.setFlip=function(){var a;return a=this.lo,this.lo=this.hi,this.hi=a,this},d.prototype.setRotateRight=function(a){if(a>32)return this.setRotateLeft(64-a);if(0===a)return this;if(32===a){var b;b=this.lo,this.lo=this.hi,this.hi=b}else b=this.lo<<32-a|this.hi>>>a,this.lo=this.hi<<32-a|this.lo>>>a,this.hi=b;return this},d.prototype.xor=function(a){var b=new d(0,0);return b.hi=this.hi^a.hi,b.lo=this.lo^a.lo,b},d.prototype.setxorOne=function(a){return this.hi^=a.hi,this.lo^=a.lo,this},d.prototype.and=function(a){var b=new d(0,0);return b.hi=this.hi&a.hi,b.lo=this.lo&a.lo,b},d.prototype.clone=function(){return new d(this.hi,this.lo)},d.prototype.setxor64=function(){for(var a=arguments,b=0,c=a.length;b<c;)this.hi^=a[b].hi,this.lo^=a[b].lo,b++;return this},b.exports.u64=d,b.exports.u=function(a,b){return new d(a,b)},b.exports.xor64=function(){for(var a=arguments,b=a[0].hi,c=a[0].lo,d=1,e=a.length;d<e;)b^=a[d].hi,c^=a[d].lo,d++;return new this.u64(b,c)},b.exports.clone64Array=function(a){for(var b=0,c=a.length,d=new Array(c);b<c;)d[b]=a[b],b++;return d},b.exports.t32=function(a){return 4294967295&a},b.exports.rotl32=function(a,b){return 4294967295&(a<<b|a>>>32-b)},b.exports.rotr32=function(a,b){return this.rotl32(a,32-b)},b.exports.swap32=function(a){return(255&a)<<24|(65280&a)<<8|a>>>8&65280|a>>>24&255},b.exports.swap32Array=function(a){for(var b=0,c=a.length,d=new Array(c);b<c;)d[b]=this.swap32(a[b]),b++;return d},b.exports.xnd64=function(a,b,c){return new this.u64(a.hi^~b.hi&c.hi,a.lo^~b.lo&c.lo)},b.exports.bufferInsert=function(a,b,c,d,e){e=0|e;for(var f=0;f<d;)a[f+b]=c[f+e],f++},b.exports.bufferInsert64=function(a,b,c,d){for(var e=0;e<d;)a[e+b]=c[e].clone(),e++},b.exports.buffer2Insert=function(a,b,c,d,e,f){for(var g=0;g<e;){for(var h=0;h<f;)a[g+b][h+c]=d[g][h],h++;g++}},b.exports.bufferInsertBackwards=function(a,b,c,d){for(var e=0;e<d;)a[e+b]=c[d-1-e],e++},b.exports.bufferSet=function(a,b,c,d){for(var e=0;e<d;)a[e+b]=c,e++},b.exports.bufferXORInsert=function(a,b,c,d,e){for(var f=0;f<e;)a[f+b]^=c[f+d],f++},b.exports.xORTable=function(a,b,c,d){for(var e=0;e<d;)a[e]=b[e]^c[e],e++}},{}],12:[function(a,b,c){var d=a("./op"),e=a("./helper"),f=a("./aes"),g=[1929170392,2043299623,311035771,1087724268,3515881990,1124786951,2996788433,3741842428,2386941757,1746580792,3186124152,3713498695,3799378654,1345167309,3107287416,36326298],h=function(a){var b=new Array(4);return d.bufferInsert(b,0,a,4),f.AES_ROUND_NOKEY_LE(b,a),a},i=function(a,b,c){var e=a.slice(b,c),f=h([e[1],e[2],e[3],e[0]]);d.bufferInsert(a,b,f,c-b)},j=function(a,b){var c,f=e.bytes2Int32Buffer(b),g=Array(16),j=Array(4),k=Array(32);for(d.bufferInsert(g,0,a.h,16),k[0]=d.swap32(f[0]),j[0]=g[4]^k[0],k[1]=d.swap32(f[1]),j[1]=g[5]^k[1],k[2]=d.swap32(f[2]),j[2]=g[6]^k[2],k[3]=d.swap32(f[3]),j[3]=g[7]^k[3],h(j),k[4]=d.swap32(f[4]),j[0]^=k[4],k[5]=d.swap32(f[5]),j[1]^=k[5],k[6]=d.swap32(f[6]),j[2]^=k[6],k[7]=d.swap32(f[7]),j[3]^=k[7],h(j),k[8]=d.swap32(f[8]),j[0]^=k[8],k[9]=d.swap32(f[9]),j[1]^=k[9],k[10]=d.swap32(f[10]),j[2]^=k[10],k[11]=d.swap32(f[11]),j[3]^=k[11],h(j),k[12]=d.swap32(f[12]),j[0]^=k[12],k[13]=d.swap32(f[13]),j[1]^=k[13],k[14]=d.swap32(f[14]),j[2]^=k[14],k[15]=d.swap32(f[15]),j[3]^=k[15],h(j),g[0]^=j[0],g[1]^=j[1],g[2]^=j[2],g[3]^=j[3],k[16]=d.swap32(f[16]),j[0]=g[12]^k[16],
k[17]=d.swap32(f[17]),j[1]=g[13]^k[17],k[18]=d.swap32(f[18]),j[2]=g[14]^k[18],k[19]=d.swap32(f[19]),j[3]=g[15]^k[19],h(j),k[20]=d.swap32(f[20]),j[0]^=k[20],k[21]=d.swap32(f[21]),j[1]^=k[21],k[22]=d.swap32(f[22]),j[2]^=k[22],k[23]=d.swap32(f[23]),j[3]^=k[23],h(j),k[24]=d.swap32(f[24]),j[0]^=k[24],k[25]=d.swap32(f[25]),j[1]^=k[25],k[26]=d.swap32(f[26]),j[2]^=k[26],k[27]=d.swap32(f[27]),j[3]^=k[27],h(j),k[28]=d.swap32(f[28]),j[0]^=k[28],k[29]=d.swap32(f[29]),j[1]^=k[29],k[30]=d.swap32(f[30]),j[2]^=k[30],k[31]=d.swap32(f[31]),j[3]^=k[31],h(j),g[8]^=j[0],g[9]^=j[1],g[10]^=j[2],g[11]^=j[3],c=0;c<3;c++)i(k,0,4),k[0]^=k[28],k[1]^=k[29],k[2]^=k[30],k[3]^=k[31],0==c&&(k[0]^=a.count[0],k[1]^=a.count[1],k[2]^=a.count[2],k[3]^=d.t32(~a.count[3])),j[0]=g[0]^k[0],j[1]=g[1]^k[1],j[2]=g[2]^k[2],j[3]=g[3]^k[3],h(j),i(k,4,8),k[4]^=k[0],k[5]^=k[1],k[6]^=k[2],k[7]^=k[3],1==c&&(k[4]^=a.count[3],k[5]^=a.count[2],k[6]^=a.count[1],k[7]^=d.t32(~a.count[0])),j[0]^=k[4],j[1]^=k[5],j[2]^=k[6],j[3]^=k[7],h(j),i(k,8,12),k[8]^=k[4],k[9]^=k[5],k[10]^=k[6],k[11]^=k[7],j[0]^=k[8],j[1]^=k[9],j[2]^=k[10],j[3]^=k[11],h(j),i(k,12,16),k[12]^=k[8],k[13]^=k[9],k[14]^=k[10],k[15]^=k[11],j[0]^=k[12],j[1]^=k[13],j[2]^=k[14],j[3]^=k[15],h(j),g[12]^=j[0],g[13]^=j[1],g[14]^=j[2],g[15]^=j[3],i(k,16,20),k[16]^=k[12],k[17]^=k[13],k[18]^=k[14],k[19]^=k[15],j[0]=g[8]^k[16],j[1]=g[9]^k[17],j[2]=g[10]^k[18],j[3]=g[11]^k[19],h(j),i(k,20,24),k[20]^=k[16],k[21]^=k[17],k[22]^=k[18],k[23]^=k[19],j[0]^=k[20],j[1]^=k[21],j[2]^=k[22],j[3]^=k[23],h(j),i(k,24,28),k[24]^=k[20],k[25]^=k[21],k[26]^=k[22],k[27]^=k[23],j[0]^=k[24],j[1]^=k[25],j[2]^=k[26],j[3]^=k[27],h(j),i(k,28,32),k[28]^=k[24],k[29]^=k[25],k[30]^=k[26],k[31]^=k[27],2==c&&(k[28]^=a.count[2],k[29]^=a.count[3],k[30]^=a.count[0],k[31]^=d.t32(~a.count[1])),j[0]^=k[28],j[1]^=k[29],j[2]^=k[30],j[3]^=k[31],h(j),g[4]^=j[0],g[5]^=j[1],g[6]^=j[2],g[7]^=j[3],k[0]^=k[25],j[0]=g[12]^k[0],k[1]^=k[26],j[1]=g[13]^k[1],k[2]^=k[27],j[2]=g[14]^k[2],k[3]^=k[28],j[3]=g[15]^k[3],h(j),k[4]^=k[29],j[0]^=k[4],k[5]^=k[30],j[1]^=k[5],k[6]^=k[31],j[2]^=k[6],k[7]^=k[0],j[3]^=k[7],h(j),k[8]^=k[1],j[0]^=k[8],k[9]^=k[2],j[1]^=k[9],k[10]^=k[3],j[2]^=k[10],k[11]^=k[4],j[3]^=k[11],h(j),k[12]^=k[5],j[0]^=k[12],k[13]^=k[6],j[1]^=k[13],k[14]^=k[7],j[2]^=k[14],k[15]^=k[8],j[3]^=k[15],h(j),g[8]^=j[0],g[9]^=j[1],g[10]^=j[2],g[11]^=j[3],k[16]^=k[9],j[0]=g[4]^k[16],k[17]^=k[10],j[1]=g[5]^k[17],k[18]^=k[11],j[2]=g[6]^k[18],k[19]^=k[12],j[3]=g[7]^k[19],h(j),k[20]^=k[13],j[0]^=k[20],k[21]^=k[14],j[1]^=k[21],k[22]^=k[15],j[2]^=k[22],k[23]^=k[16],j[3]^=k[23],h(j),k[24]^=k[17],j[0]^=k[24],k[25]^=k[18],j[1]^=k[25],k[26]^=k[19],j[2]^=k[26],k[27]^=k[20],j[3]^=k[27],h(j),k[28]^=k[21],j[0]^=k[28],k[29]^=k[22],j[1]^=k[29],k[30]^=k[23],j[2]^=k[30],k[31]^=k[24],j[3]^=k[31],h(j),g[0]^=j[0],g[1]^=j[1],g[2]^=j[2],g[3]^=j[3],i(k,0,4),k[0]^=k[28],k[1]^=k[29],k[2]^=k[30],k[3]^=k[31],j[0]=g[8]^k[0],j[1]=g[9]^k[1],j[2]=g[10]^k[2],j[3]=g[11]^k[3],h(j),i(k,4,8),k[4]^=k[0],k[5]^=k[1],k[6]^=k[2],k[7]^=k[3],j[0]^=k[4],j[1]^=k[5],j[2]^=k[6],j[3]^=k[7],h(j),i(k,8,12),k[8]^=k[4],k[9]^=k[5],k[10]^=k[6],k[11]^=k[7],j[0]^=k[8],j[1]^=k[9],j[2]^=k[10],j[3]^=k[11],h(j),i(k,12,16),k[12]^=k[8],k[13]^=k[9],k[14]^=k[10],k[15]^=k[11],j[0]^=k[12],j[1]^=k[13],j[2]^=k[14],j[3]^=k[15],h(j),g[4]^=j[0],g[5]^=j[1],g[6]^=j[2],g[7]^=j[3],i(k,16,20),k[16]^=k[12],k[17]^=k[13],k[18]^=k[14],k[19]^=k[15],j[0]=g[0]^k[16],j[1]=g[1]^k[17],j[2]=g[2]^k[18],j[3]=g[3]^k[19],h(j),i(k,20,24),k[20]^=k[16],k[21]^=k[17],k[22]^=k[18],k[23]^=k[19],j[0]^=k[20],j[1]^=k[21],j[2]^=k[22],j[3]^=k[23],h(j),i(k,24,28),k[24]^=k[20],k[25]^=k[21],k[26]^=k[22],k[27]^=k[23],j[0]^=k[24],j[1]^=k[25],j[2]^=k[26],j[3]^=k[27],h(j),i(k,28,32),k[28]^=k[24],k[29]^=k[25],k[30]^=k[26],k[31]^=k[27],j[0]^=k[28],j[1]^=k[29],j[2]^=k[30],j[3]^=k[31],h(j),g[12]^=j[0],g[13]^=j[1],g[14]^=j[2],g[15]^=j[3],k[0]^=k[25],j[0]=g[4]^k[0],k[1]^=k[26],j[1]=g[5]^k[1],k[2]^=k[27],j[2]=g[6]^k[2],k[3]^=k[28],j[3]=g[7]^k[3],h(j),k[4]^=k[29],j[0]^=k[4],k[5]^=k[30],j[1]^=k[5],k[6]^=k[31],j[2]^=k[6],k[7]^=k[0],j[3]^=k[7],h(j),k[8]^=k[1],j[0]^=k[8],k[9]^=k[2],j[1]^=k[9],k[10]^=k[3],j[2]^=k[10],k[11]^=k[4],j[3]^=k[11],h(j),k[12]^=k[5],j[0]^=k[12],k[13]^=k[6],j[1]^=k[13],k[14]^=k[7],j[2]^=k[14],k[15]^=k[8],j[3]^=k[15],h(j),g[0]^=j[0],g[1]^=j[1],g[2]^=j[2],g[3]^=j[3],k[16]^=k[9],j[0]=g[12]^k[16],k[17]^=k[10],j[1]=g[13]^k[17],k[18]^=k[11],j[2]=g[14]^k[18],k[19]^=k[12],j[3]=g[15]^k[19],h(j),k[20]^=k[13],j[0]^=k[20],k[21]^=k[14],j[1]^=k[21],k[22]^=k[15],j[2]^=k[22],k[23]^=k[16],j[3]^=k[23],h(j),k[24]^=k[17],j[0]^=k[24],k[25]^=k[18],j[1]^=k[25],k[26]^=k[19],j[2]^=k[26],k[27]^=k[20],j[3]^=k[27],h(j),k[28]^=k[21],j[0]^=k[28],k[29]^=k[22],j[1]^=k[29],k[30]^=k[23],j[2]^=k[30],k[31]^=k[24],j[3]^=k[31],h(j),g[8]^=j[0],g[9]^=j[1],g[10]^=j[2],g[11]^=j[3];i(k,0,4),k[0]^=k[28],k[1]^=k[29],k[2]^=k[30],k[3]^=k[31],j[0]=g[0]^k[0],j[1]=g[1]^k[1],j[2]=g[2]^k[2],j[3]=g[3]^k[3],h(j),i(k,4,8),k[4]^=k[0],k[5]^=k[1],k[6]^=k[2],k[7]^=k[3],j[0]^=k[4],j[1]^=k[5],j[2]^=k[6],j[3]^=k[7],h(j),i(k,8,12),k[8]^=k[4],k[9]^=k[5],k[10]^=k[6],k[11]^=k[7],j[0]^=k[8],j[1]^=k[9],j[2]^=k[10],j[3]^=k[11],h(j),i(k,12,16),k[12]^=k[8],k[13]^=k[9],k[14]^=k[10],k[15]^=k[11],j[0]^=k[12],j[1]^=k[13],j[2]^=k[14],j[3]^=k[15],h(j),g[12]^=j[0],g[13]^=j[1],g[14]^=j[2],g[15]^=j[3],i(k,16,20),k[16]^=k[12],k[17]^=k[13],k[18]^=k[14],k[19]^=k[15],j[0]=g[8]^k[16],j[1]=g[9]^k[17],j[2]=g[10]^k[18],j[3]=g[11]^k[19],h(j),i(k,20,24),k[20]^=k[16],k[21]^=k[17],k[22]^=k[18],k[23]^=k[19],j[0]^=k[20],j[1]^=k[21],j[2]^=k[22],j[3]^=k[23],h(j),i(k,24,28),k[24]^=k[20]^a.count[1],k[25]^=k[21]^a.count[0],k[26]^=k[22]^a.count[3],k[27]^=k[23]^d.t32(~a.count[2]),j[0]^=k[24],j[1]^=k[25],j[2]^=k[26],j[3]^=k[27],h(j),i(k,28,32),k[28]^=k[24],k[29]^=k[25],k[30]^=k[26],k[31]^=k[27],j[0]^=k[28],j[1]^=k[29],j[2]^=k[30],j[3]^=k[31],h(j),g[4]^=j[0],g[5]^=j[1],g[6]^=j[2],g[7]^=j[3],a.h[0]^=g[8],a.h[1]^=g[9],a.h[2]^=g[10],a.h[3]^=g[11],a.h[4]^=g[12],a.h[5]^=g[13],a.h[6]^=g[14],a.h[7]^=g[15],a.h[8]^=g[0],a.h[9]^=g[1],a.h[10]^=g[2],a.h[11]^=g[3],a.h[12]^=g[4],a.h[13]^=g[5],a.h[14]^=g[6],a.h[15]^=g[7]},k=function(a,b){for(var c=b.length,e=a.buffer,f=a.ptr;c>0;){var g=a.buffer.length-a.ptr;g>c&&(g=c),d.bufferInsert(e,f,b,g),f+=g,b=b.slice(g),c-=g,f===a.buffer.length&&(0==(a.count[0]=d.t32(a.count[0]+1024))&&(a.count[1]=d.t32(a.count[1]+1),0==a.count[1]&&(a.count[2]=d.t32(a.count[2]+1),0==a.count[2]&&(a.count[3]=d.t32(a.count[3]+1)))),j(a,e),f=0)}a.ptr=f},l=function(a,b,c){var f,g,h,i,k=new Array(4);f=a.buffer,g=a.ptr,k[0]=a.count[0]+=(g<<3)+c,k[1]=a.count[1],k[2]=a.count[2],k[3]=a.count[3],i=128>>c,i=255&(b&-i|i),0==g&&0==c?(f[0]=128,d.bufferSet(f,1,0,109),d.bufferSet(a.count,0,0,4)):g<110?(f[g++]=i,d.bufferSet(f,g,0,110-g)):(f[g++]=i,d.bufferSet(f,g,0,128-g),j(a,f),d.bufferSet(f,0,0,110),d.bufferSet(a.count,0,0,4));var l=d.swap32Array(k),m=e.int32Buffer2Bytes(l);d.bufferInsert(f,110,m,16),f[126]=0,f[127]=2,j(a,f);var n=new Array(16);for(h=0;h<16;h++)n[h]=d.swap32(a.h[h]);return n};b.exports=function(a,b,c){var f;f=1===b?a:2===b?e.int32Buffer2Bytes(a):e.string2bytes(a);var h={};h.ptr=0,h.count=new Array(4),d.bufferSet(h.count,0,0,4),h.h=g.slice(),h.buffer=new Array(128),k(h,f);var i,j=l(h,0,0);return i=2===c?j:1===c?e.int32Buffer2Bytes(j):e.int32ArrayToHexString(j)}},{"./aes":1,"./helper":7,"./op":11}],13:[function(a,b,c){var d=a("./op"),e=a("./helper"),f=e.bytes2Int32Buffer(e.b64Decode("C6FrlXL5ma2f7MKuujJk/F6JSSmOnzDlLx2qN/DyxVisUGZDqQY1peJbh4uqt4ePiIF/egoCiStVmnVQWY9lfn7vYKFrcOPonBcU0blY4qirAmde7RwBT82NZbv9t6JXCSVImdaZx7yQGbbcK5Ai5I+hSVYhv5vTuU0JQ2/93CI=")),g=[1,41,139,45,46,87,226,14,60,147,116,130,190,80,196,69,2,82,21,90,92,174,195,28,120,37,232,3,123,160,135,138,4,164,42,180,184,91,133,56,240,74,207,6,246,63,13,19,8,71,84,103,111,182,9,112,223,148,157,12,235,126,26,38,16,142,168,206,222,107,18,224,189,39,57,24,213,252,52,76,32,27,79,155,187,214,36,191,121,78,114,48,169,247,104,152,64,54,158,53,117,171,72,125,242,156,228,96,81,237,208,47,128,108,59,106,234,85,144,250,227,55,199,192,162,217,159,94,256,216,118,212,211,170,31,243,197,110,141,127,67,177,61,188,255,175,236,167,165,83,62,229,137,220,25,254,134,97,122,119,253,93,215,77,73,166,124,201,17,183,50,251,11,194,244,238,249,186,173,154,146,75,248,145,34,109,100,245,22,131,231,219,241,115,89,51,35,150,239,33,68,218,200,233,44,5,205,181,225,230,178,102,70,43,221,66,136,179,143,209,88,10,153,105,193,203,99,204,140,86,185,132,15,101,29,161,176,20,49,210,129,149,198,151,23,172,113,7,30,202,58,65,95,40,98,163],h=[1,163,98,40,95,65,58,202,30,7,113,172,23,151,198,149,129,210,49,20,176,161,29,101,15,132,185,86,140,204,99,203,193,105,153,10,88,209,143,179,136,66,221,43,70,102,178,230,225,181,205,5,44,233,200,218,68,33,239,150,35,51,89,115,241,219,231,131,22,245,100,109,34,145,248,75,146,154,173,186,249,238,244,194,11,251,50,183,17,201,124,166,73,77,215,93,253,119,122,97,134,254,25,220,137,229,62,83,165,167,236,175,255,188,61,177,67,127,141,110,197,243,31,170,211,212,118,216,256,94,159,217,162,192,199,55,227,250,144,85,234,106,59,108,128,47,208,237,81,96,228,156,242,125,72,171,117,53,158,54,64,152,104,247,169,48,114,78,121,191,36,214,187,155,79,27,32,76,52,252,213,24,57,39,189,224,18,107,222,206,168,142,16,38,26,126,235,12,157,148,223,112,9,182,111,103,84,71,8,19,13,63,246,6,207,74,240,56,133,91,184,180,42,164,4,138,135,160,123,3,232,37,120,28,195,174,92,90,21,82,2,69,196,80,190,130,116,147,60,14,226,87,46,45,139,41],i=[2,203,156,47,118,214,107,106,45,93,212,20,111,73,162,251,97,215,249,53,211,19,3,89,49,207,101,67,151,130,223,23,189,202,178,239,253,127,204,49,76,236,82,137,232,157,65,79,96,161,176,130,161,30,47,9,189,247,61,226,248,90,107,64,0,88,131,243,133,59,113,115,17,236,33,213,12,191,111,19,251,61,103,208,57,35,148,248,47,116,65,119,249,178,143,40,189,129,8,163,204,227,230,196,205,122,151,45,187,19,227,72,247,125,111,121,140,220,6,107,77,69,10,101,21,65,149,171,255,54,101,210,139,43,150,151,212,164,45,237,146,184,95,6,160,42,8,204,46,238,254,168,208,50,156,190,106,127,34,234,68,55,79,18,4,130,53,208,181,21,175,120,25,100,192,178,161,96,81,127,96,227,210,248,68,10,196,31,9,167,150,193,0,169,126,14,124,198,144,142,240,21,224,44,245,66,146,238,6,196,154,49,200,222,109,9,210,141,192,138,8,79,114,217,68,128,249,94,53,30,27,61,52,135,106,212,70,238,30,185,10,132,146,136,117,37,251,150,180,188,247,156,236,192,108,86],j=[[[4,0,1,185],[6,0,1,185],[0,0,1,185],[2,0,1,185],[7,0,1,185],[5,0,1,185],[3,0,1,185],[1,0,1,185]],[[15,0,1,185],[11,0,1,185],[12,0,1,185],[8,0,1,185],[9,0,1,185],[13,0,1,185],[10,0,1,185],[14,0,1,185]],[[17,-256,-128,233],[18,-256,-128,233],[23,-256,-128,233],[20,-256,-128,233],[22,-256,-128,233],[21,-256,-128,233],[16,-256,-128,233],[19,-256,-128,233]],[[30,-383,-255,233],[24,-383,-255,233],[25,-383,-255,233],[31,-383,-255,233],[27,-383,-255,233],[29,-383,-255,233],[28,-383,-255,233],[26,-383,-255,233]]],k=function(a){return(255&a)-(a>>8)},l=function(a){return(65535&a)+(a>>16)},m=function(a,b,c){return(b^c)&a^c},n=function(a,b,c){return a&b|(a|b)&c},o=function(a,b,c,d){var e,f,h=a[b],i=a[b+c];a[b]=h+i,a[b+c]=h-i,e=f=0;for(var j=!0;e<c;e+=4,f+=4*d){if(j)j=!1;else{var k;h=a[b+e+0],i=a[b+e+0+c],k=l(i*g[f+0*d]),a[b+e+0]=h+k,a[b+e+0+c]=h-k}h=a[b+e+1],i=a[b+e+1+c],k=l(i*g[f+1*d]),a[b+e+1]=h+k,a[b+e+1+c]=h-k,h=a[b+e+2],i=a[b+e+2+c],k=l(i*g[f+2*d]),a[b+e+2]=h+k,a[b+e+2+c]=h-k,h=a[b+e+3],i=a[b+e+3+c],k=l(i*g[f+3*d]),a[b+e+3]=h+k,a[b+e+3+c]=h-k}},p=function(a,b,c,d){var e=a[b],f=a[b+c],g=a[b+2*c],h=a[b+3*c],i=e+g,j=e+(g<<4),l=e-g,m=e-(g<<4),n=f+h,o=k((f<<2)+(h<<6)),p=(f<<4)-(h<<4),q=k((f<<6)+(h<<2));d[0]=i+n,d[1]=j+o,d[2]=l+p,d[3]=m+q,d[4]=i-n,d[5]=j-o,d[6]=l-p,d[7]=m-q},q=function(a,b,c,d,e){var f=new Array(8),g=new Array(8);p(a,b,e<<1,f),p(a,b+e,e<<1,g);for(var h=0;h<8;h++)c[d+h]=f[h]+(g[h]<<h);for(var h=0;h<8;h++)c[d+8+h]=f[h]-(g[h]<<h)},r=function(a,b,c,d,e){var f=e<<1;q(a,b,c,d,f),q(a,b+e,c,d+16,f),o(c,d,16,8)},s=function(a,b,c,d,e){var f=e<<1;r(a,b,c,d,f),r(a,b+e,c,d+32,f),o(c,d,32,4)},t=function(a,b,c,d,e){s(a,b,c,d,e<<2),s(a,b+2*e,c,d+64,e<<2),o(c,d,64,2),s(a,b+1*e,c,d+128,e<<2),s(a,b+3*e,c,d+192,e<<2),o(c,d+128,64,2),o(c,d,128,1)},u=[[1,0,3,2,5,4,7,6],[6,7,4,5,2,3,0,1],[2,3,0,1,6,7,4,5],[3,2,1,0,7,6,5,4],[5,4,7,6,1,0,3,2],[7,6,5,4,3,2,1,0],[4,5,6,7,0,1,2,3]],v=[[0,1,2,3],[1,2,3,4],[2,3,4,5],[3,4,5,6],[4,5,6,0],[5,6,0,1],[6,0,1,2],[0,1,2,3]],w=function(a,b,c){return(a*c&65535)+(b*c<<16)},x=function(a,b,c,d,e){for(var f=new Array(8),g=0;g<8;g++)f[g]=w(e[16*a+2*g+b],e[16*a+2*g+c],d);return f},y=function(a,b,c){var d=j[a][b];return x(d[0],d[1],d[2],d[3],c)},z=function(a,b,c,e,f,g,h,i,j,k){var l=d.t32(k[a]+b+c(h[a],i[a],j[a]));h[a]=d.t32(d.rotl32(l,e)+g[f[a]]),k[a]=j[a],j[a]=i[a],i[a]=g[a]},A=function(a,b,c,e,f,g,h,i,j){for(var k=new Array(8),l=0;l<8;l++)k[l]=d.rotl32(g[l],c);for(var l=0;l<8;l++)z(l,a[l],b,e,f,k,g,h,i,j)},B=function(a,b,c,d,e,f,g,h,i,j,k){A(y(a,0,k),m,c,d,u[v[0][b]],g,h,i,j),A(y(a,1,k),m,d,e,u[v[1][b]],g,h,i,j),A(y(a,2,k),m,e,f,u[v[2][b]],g,h,i,j),A(y(a,3,k),m,f,c,u[v[3][b]],g,h,i,j),A(y(a,4,k),n,c,d,u[v[4][b]],g,h,i,j),A(y(a,5,k),n,d,e,u[v[5][b]],g,h,i,j),A(y(a,6,k),n,e,f,u[v[6][b]],g,h,i,j),A(y(a,7,k),n,f,c,u[v[7][b]],g,h,i,j)},C=function(a,b){var c,f=new Array(256),g=new Array(8),j=new Array(8),n=new Array(8),o=new Array(8);if(t(a.buffer,0,f,0,1),b)for(c=0;c<256;c++){var p;p=f[c]+i[c],p=l(p),p=k(p),p=k(p),f[c]=p<=128?p:p-257}else for(c=0;c<256;c++){var p;p=f[c]+h[c],p=l(p),p=k(p),p=k(p),f[c]=p<=128?p:p-257}d.bufferInsert(g,0,a.state,8),d.bufferInsert(j,0,a.state,8,8),d.bufferInsert(n,0,a.state,8,16),d.bufferInsert(o,0,a.state,8,24);var q=d.swap32Array(e.bytes2Int32Buffer(a.buffer));d.bufferXORInsert(g,0,q,0,8),d.bufferXORInsert(j,0,q,8,8),d.bufferXORInsert(n,0,q,16,8),d.bufferXORInsert(o,0,q,24,8),B(0,0,3,23,17,27,g,j,n,o,f),B(1,1,28,19,22,7,g,j,n,o,f),B(2,2,29,9,15,5,g,j,n,o,f),B(3,3,4,13,10,25,g,j,n,o,f),A(a.state.slice(0,8),m,4,13,u[4],g,j,n,o),A(a.state.slice(8,16),m,13,10,u[5],g,j,n,o),A(a.state.slice(16,24),m,10,25,u[6],g,j,n,o),A(a.state.slice(24,32),m,25,4,u[0],g,j,n,o),d.bufferInsert(a.state,0,g,8),d.bufferInsert(a.state,8,j,8),d.bufferInsert(a.state,16,n,8),d.bufferInsert(a.state,24,o,8)},D=function(a,b){for(var c=b.length;c>0;){var e=a.buffer.length-a.ptr;e>c&&(e=c),d.bufferInsert(a.buffer,a.ptr,b,e),a.ptr+=e,b=b.slice(e),c-=e,a.ptr===a.buffer.length&&(C(a,0),a.ptr=0,a.countLow=d.t32(a.countLow+1),0==a.countLow&&a.countHigh++)}},E=function(a,b,c,e,f,g){c=d.t32(c<<10),e=d.t32(e<<10)+(c>>22),c+=(f<<3)+g,a[b]=255&c,a[b+1]=(65280&c)>>>8,a[b+2]=(16711680&c)>>>8,a[b+3]=(4278190080&c)>>>8,a[b+4]=255&e,a[b+5]=(65280&e)>>>8,a[b+6]=(16711680&e)>>>8,a[b+7]=(4278190080&e)>>>8},F=function(a,b,c){var e,f=a.buffer,g=a.ptr;(a.ptr>0||c>0)&&(d.bufferSet(f,g,0,f.length-g),f[g]=b&255<<8-c,C(a,0)),d.bufferSet(f,0,0,f.length),E(f,0,a.countLow,a.countHigh,a.ptr,c),C(a,1);var h=new Array(16);for(e=0;e<16;e++)h[e]=d.swap32(a.state[e]);return h};b.exports=function(a,b,c){var d;d=1===b?a:2===b?e.int32Buffer2Bytes(a):e.string2bytes(a);var g={};g.state=f.slice(),g.ptr=0,g.countLow=0,g.countHigh=0,g.buffer=new Array(128),D(g,d);var h,i=F(g,0,0);return h=2===c?i:1===c?e.int32Buffer2Bytes(i):e.int32ArrayToHexString(i)}},{"./helper":7,"./op":11}],14:[function(a,b,c){function d(a,b){return null==a?[0,0]:b>32?[a[1]<<b-32,0]:32==b?[a[1],0]:0==b?a:[a[0]<<b|a[1]>>>32-b,a[1]<<b]}function e(a,b){return null==a?[0,0]:b>32?[0,a[0]>>>b-32]:32==b?[0,a[0]]:0==b?a:[a[0]>>>b,a[0]<<32-b|a[1]>>>b]}function f(a,b){if(null==b)return a;var c=(65535&a[1])+(65535&b[1]),d=(a[1]>>>16)+(b[1]>>>16)+(c>>>16),e=(65535&d)<<16|65535&c;c=(65535&a[0])+(65535&b[0])+(d>>>16),d=(a[0]>>>16)+(b[0]>>>16)+(c>>>16);var f=(65535&d)<<16|65535&c;return[f,e]}function g(a,b){return null==b?a:[a[0]^b[0],a[1]^b[1]]}function h(a,b,c,h){var i=[46,36,19,37,33,42,14,27,17,49,36,39,44,56,54,9,39,30,34,24,13,17,10,50,25,29,39,43,8,22,56,35],j=[],k=[];a[8]=[466688986,2851871266];for(var l=0;l<8;l++){for(var m=7,n=h+8*l+7;m>=0;m--,n--)k[l]=d(k[l],8),k[l][1]|=255&c[n];j[l]=f(k[l],a[l]),a[8]=g(a[8],a[l])}j[5]=f(j[5],b[0]),j[6]=f(j[6],b[1]),b[2]=g(b[0],b[1]);for(var o=1;o<=18;o++){for(var p=16-((1&o)<<4),l=0;l<16;l++){var q=2*(l+(1+l+l)*(l>>2)&3),r=1+l+l&7,s=i[p+l];j[q]=f(j[q],j[r]),j[r]=g(d(j[r],s),e(j[r],64-s)),j[r]=g(j[r],j[q])}for(var l=0;l<8;l++)j[l]=f(j[l],a[(o+l)%9]);j[5]=f(j[5],b[o%3]),j[6]=f(j[6],b[(o+1)%3]),j[7]=f(j[7],[0,o])}for(var l=0;l<8;l++)a[l]=g(k[l],j[l])}var i=(a("./op"),a("./helper"));b.exports=function(a,b,c){var d;d=1===b?a:2===b?i.int32Buffer2Bytes(a):i.string2bytes(a);var f=[[0,32],[196<<24,0]],g=[],j=i.string2bytes("SHA3\0\0\0\0");h(g,f,j,0),f=[[0,0],[112<<24,0]];for(var k=d.length,l=0;k>64;k-=64,l+=64)f[0][1]+=64,h(g,f,d,l),f[1][0]=48<<24;f[0][1]+=k,f[1][0]|=128<<24,h(g,f,d,l),f[0][1]=8,f[1][0]=255<<24,h(g,f,[],0);for(var m=[],n=0;n<64;n++){var o=255&e(g[n>>3],8*(7&n))[1];m.push(o)}var p;if(2===c)p=i.bytes2Int32Buffer(m);else{if(1===c)return p;p=i.int8ArrayToHexString(m)}return p}},{"./helper":7,"./op":11}],x11hash:[function(a,b,c){"use strict";var d=a("./lib/blake"),e=a("./lib/keccak").keccak_512,f=a("./lib/skein"),g=a("./lib/luffa"),h=a("./lib/simd"),i=a("./lib/shavite"),j=a("./lib/cubehash"),k=a("./lib/jh"),l=a("./lib/echo"),m=a("./lib/groestl"),n=a("./lib/bmw"),o=a("./lib/helper");b.exports;b.exports.blake=function(a,b,c){return d(a,b,c)},b.exports.bmw=function(a,b,c){return n(a,b,c)},b.exports.cubehash=function(a,b,c){return j(a,b,c)},b.exports.echo=function(a,b,c){return l(a,b,c)},b.exports.groestl=function(a,b,c){return m(a,b,c)},b.exports.jh=function(a,b,c){return k(a,b,c)},b.exports.keccak=function(a,b,c){var d=a;return 2===b&&(d=o.int32Buffer2Bytes(a)),1===c?e.array(d):2===c?o.bytes2Int32Buffer(e.array(d)):e.hex(d)},b.exports.luffa=function(a,b,c){return g(a,b,c)},b.exports.shavite=function(a,b,c){return i(a,b,c)},b.exports.simd=function(a,b,c){return h(a,b,c)},b.exports.skein=function(a,b,c){return f(a,b,c)},b.exports.digest=function(a,b,c){var e=d(a,b,2);return e=n(e,2,2),e=m(e,2,2),e=f(e,2,2),e=k(e,2,2),e=this.keccak(e,2,1),e=g(e,1,2),e=j(e,2,2),e=i(e,2,2),e=h(e,2,2),e=l(e,2,2),e=e.slice(0,8),2===c?e:1===c?o.int32Buffer2Bytes(e):o.int32ArrayToHexString(e)}},{"./lib/blake":2,"./lib/bmw":3,"./lib/cubehash":4,"./lib/echo":5,"./lib/groestl":6,"./lib/helper":7,"./lib/jh":8,"./lib/keccak":9,"./lib/luffa":10,"./lib/shavite":12,"./lib/simd":13,"./lib/skein":14}]},{},[]);