diff --git a/dist/lesspass-pure.css b/dist/lesspass-pure.css index d85e9d1..9eb93de 100644 --- a/dist/lesspass-pure.css +++ b/dist/lesspass-pure.css @@ -1,2 +1,2 @@ -*{border-radius:0!important}i{cursor:pointer}#autoLoginButton,#fingerprint,.help-block,.help-slide,.option-block{display:none}#displayHelpButton,#displayOptionsButton{cursor:pointer}.card{border:none}#passwordGenerator input{background-clip:padding-box}#passwordGenerator label{margin-bottom:.1rem}#passwordGenerator svg{width:1rem;vertical-align:sub}.btn-close{position:absolute;top:.5rem;right:.5rem;z-index:10;display:block;padding:.25rem .5rem;font-size:75%;color:#fff;cursor:pointer;background-color:transparent;border-radius:.25rem} +*{border-radius:0!important}i{cursor:pointer}#autoLoginButton,#fingerprint,.help-block,.help-slide,.option-block{display:none}#displayHelpButton,#displayOptionsButton{cursor:pointer}.card{border:none}#passwordGenerator input{background-clip:padding-box}#passwordGenerator label{margin-bottom:.1rem}#passwordGenerator svg{width:1rem;vertical-align:sub}.btn-close{position:absolute;top:.5rem;right:.5rem;z-index:10;display:block;padding:.25rem .5rem;font-size:75%;color:#fff;cursor:pointer;background-color:transparent;border-radius:.25rem}#logo{max-height:42px} /*# sourceMappingURL=lesspass-pure.css.map*/ \ No newline at end of file diff --git a/dist/lesspass-pure.js b/dist/lesspass-pure.js index 25fd4d2..47498e4 100644 --- a/dist/lesspass-pure.js +++ b/dist/lesspass-pure.js @@ -1,11 +1,11 @@ -!function(t){function e(n){if(r[n])return r[n].exports;var o=r[n]={exports:{},id:n,loaded:!1};return t[n].call(o.exports,o,o.exports,e),o.loaded=!0,o.exports}var r={};return e.m=t,e.c=r,e.p="/dist/",e(0)}([function(t,e,r){"use strict";function n(t){return t&&t.__esModule?t:{"default":t}}function o(t,e){var r=t.className;t.setAttribute("class",r+" hint--top"),t.setAttribute("aria-label",e),setTimeout(function(){t.setAttribute("class",r)},2e3)}function i(t){var e=["EBBB56","59E0EB","E8F464","D2B4ED","BBE96D","EF9FC8","8EE083","DCBFD6","DDD15A","A1C8E8","C4D977","F1A49E","79E8A0","E9A970","60E3B4","D4C47D","73DDCA","C4EAA7","A7D6D4","9CC795"],r=parseInt(t,16)%e.length;return"#"+e[r]}function a(){var t=document.getElementById("login").value,e=document.getElementById("masterPassword").value,r=document.getElementById("fingerprint"),n=document.getElementById("displayMasterPasswordButton");return t&&e?void E["default"].encryptLogin(t,e).then(function(t){w=t;var e=t.substring(0,6),o=i(e);r.innerText=e,r.style.display="inline",n.style.backgroundColor=o,c()}):(r.innerText="",r.style.display="none",void(n.style.backgroundColor="#FFFFFF"))}function s(){for(var t={login:document.getElementById("login").value,counter:document.getElementById("passwordCounter").value,password:{length:document.getElementById("passwordLength").value,settings:[]}},e=["lowercase","uppercase","numbers","symbols"],r=0;r3?void v():(3==P&&(document.getElementById("nextHelpButton").innerText="LET'S TRY"),S.style.display="none",T.style.display="block",A=S,S=T,P+=1,void(T=document.getElementById("help-block-"+P.toString())))}function v(){d("help-block"),d("help-slide"),g(),document.getElementById("passwordGenerator").style.display="block",document.getElementById("login").focus()}r(16);var w,b=r(22),E=n(b),_=r(7),B=n(_);window.onload=function(){document.getElementById("generatedPassword").value=""},document.getElementById("login").onblur=a,document.getElementById("masterPassword").onblur=a,document.getElementById("copyPasswordButton").addEventListener("click",c),document.getElementById("generatedPasswordForm").addEventListener("change",c),document.getElementById("passwordLength").addEventListener("input",c),document.getElementById("passwordCounter").addEventListener("input",c),document.getElementById("generatedPasswordForm").oninput=c,document.getElementById("displayMasterPasswordButton").addEventListener("click",f);var k=new B["default"](".btn-copy");k.on("success",function(t){t.text&&(o(t.trigger,"copied !"),l())}),k.on("error",function(){l()}),document.getElementById("displayOptionsButton").addEventListener("click",p);var I=["lesspass.com","google.com","youtube.com","facebook.com","baidu.com","yahoo.com","amazon.com","wikipedia.org","twitter.com","qq.com","live.com","taobao.com","bing.com","msn.com","linkedin.com","instagram.com","weibo.com","vk.com","hao123.com","ebay.com","reddit.com","pinterest.com","google.fr","netflix.com","tmall.com","microsoft.com","onclickads.net","paypal.com","sohu.com","wordpress.com","tumblr.com","imgur.com","blogspot.com","naver.com","xvideos.com","stackoverflow.com","apple.com","aliexpress.com","fc2.com","github.com","imdb.com","pornhub.com","whatsapp.com","jd.com","diply.com","craigslist.org","office.com","blogger.com","alibaba.com","soso.com","pixnet.net","go.com","dropbox.com","xinhuanet.com","xhamster.com","outbrain.com","googleusercontent.com","cnn.com","coccoc.com","booking.com","ask.com","popads.net","microsoftonline.com","wikia.com","chase.com","quora.com","adobe.com","163.com","360.com","haosou.com","youku.com","bbc.com","alipay.com","flipkart.com","bongacams.com","nytimes.com","daum.net","sogou.com","txxx.com","espn.go.com","ettoday.net","bankofamerica.com","china.com","indiatimes.com","myway.com","bilibili.com","walmart.com","godaddy.com","salesforce.com","buzzfeed.com","zillow.com","xnxx.com","wellsfargo.com","dailymotion.com","detail.tmall.com","steampowered.com","steamcommunity.com","theguardian.com","indeed.com","nametests.com","aol.com","etsy.com","globo.com","amazonaws.com","yelp.com","huffingtonpost.com","tudou.com","zhihu.com","so.com","tripadvisor.com","soundcloud.com","cnzz.com","onlinesbi.com","varzesh3.com","vice.com","directrev.com","cnet.com","uptodown.com","weather.com","bet365.com","mediafire.com","washingtonpost.com","force.com","gfycat.com","stackexchange.com","taboola.com","tuberel.com","vimeo.com","feedly.com","detik.com","theladbible.com","redtube.com","pixiv.net","homedepot.com","slideshare.net","taringa.net","torrentz.eu","foxnews.com","target.com","flickr.com","hclips.com","amazon.fr","kakaku.com","9gag.com","ifeng.com","udn.com","ikea.com","americanexpress.com","iqiyi.com","bp.blogspot.com","terraclicks.com","orange.fr","fbcdn.net","comcast.net","youm7.com","gmx.net","tribunnews.com","youporn.com","deviantart.com","hdfcbank.com","tistory.com","roblox.com","capitalone.com","doubleclick.net","leboncoin.fr","douyu.com","ozock.com","spotify.com","babytree.com","w3schools.com","forbes.com","wikihow.com","wix.com","upornia.com","snapdeal.com","mozilla.org","livejournal.com","bestbuy.com","handycafe.com","xfinity.com","groupon.com","skype.com","adnetworkperformance.com","onedio.com","thepiratebay.org","rdsa2013.com","paytm.com","icicibank.com","twimg.com","usps.com","trello.com","wikimedia.org","tokopedia.com","popcash.net","webtretho.com","xywy.com","huanqiu.com","yesky.com","citi.com","blastingnews.com","shutterstock.com","rediff.com","ups.com","eksisozluk.com","1688.com","bitauto.com","slack.com","files.wordpress.com","pandora.com","imzog.com","speedtest.net","2ch.net","loading-delivery2.com","about.com","adexc.net","chaturbate.com","mbc.net","goodreads.com","wordpress.org","softonic.com","battle.net","livejasmin.com","accuweather.com","icloud.com","fedex.com","slickdeals.net","wittyfeed.com","ndtv.com","att.com","giphy.com","archive.org","csdn.net","sourceforge.net","39.net","youtube-mp3.org","secureserver.net","akamaihd.net","taleo.net","savefrom.net","themeforest.net","telegram.org","rutracker.org","cloudfront.net","atlassian.net","behance.net","free.fr","trackingclick.net","npr.org","seesaa.net","coursera.org","change.org","researchgate.net","streamcloud.eu","clien.net","sabq.org","e-hentai.org","uploaded.net","inquirer.net","alwafd.org","4chan.org","elfagr.org","torcache.net","buzzfil.net","lequipe.fr","kdnet.net","gigazine.net","bitbucket.org","ero-video.net","lemonde.fr","europa.eu","php.net","reverso.net","wiktionary.org","sfr.fr","eroterest.net","ebay.fr","fanfiction.net","labanquepostale.fr","bola.net","credit-agricole.fr","rapidgator.net","vnexpress.net","mayoclinic.org","myanimelist.net","minecraft.net","pole-emploi.fr","commentcamarche.net","gutefrage.net","archiveofourown.org","ccm.net","apache.org","dmv.org","wargaming.net","lefigaro.fr","eenadu.net","poringa.net","deviantart.net","fishki.net","jalan.net","2ch-c.net","cambridge.org","convert2mp3.net","pagesjaunes.fr","oschina.net","torrentkim3.net","khanacademy.org","dostor.org","aljazeera.net","codecanyon.net","allocine.fr","animeflv.net","jb51.net","jw.org","nocookie.net","pchome.net","ali213.net","edx.org","zatnawqy.net","ukr.net","my-hit.org","jsfiddle.net","4gamer.net","turbobit.net","mangareader.net","leo.org","caf.fr","windows.net","comenity.net","pbs.org","opensubtitles.org","xuite.net","consumerreports.org","programme-tv.net","att.net","python.org","laposte.net","p5w.net","aarp.org","docusign.net","2chan.net","caisse-epargne.fr","cnki.net","cityheaven.net","toyokeizai.net","blogspot.fr","jkanime.net","earthlink.net","linkshrink.net","oneplus.net","tf1.fr","cox.net","seriesflv.net","exhentai.org","ap.org","skyscanner.net","sanjesh.org","lds.org","17track.net","20minutes.fr","dytt8.net","shufoo.net","postimg.org","alaan.org","navyfederal.org","creditmutuel.fr","zipbogo.net","voirfilms.org","ieee.org","w3.org","tripadvisor.fr","societegenerale.fr","kaiserpermanente.org","lcl.fr","bbb.org","bouyguestelecom.fr","lifehack.org","familysearch.org","monova.org","laredoute.fr","say-move.org","banquepopulaire.fr","baiducdn.org","pbskids.org","eurosport.fr","go2cloud.org","laposte.fr","zimbra.free.fr","ameli.fr","linguee.fr","westeros.org","leroymerlin.fr","leparisien.fr","drupal.org","hltv.org","videolan.org","slashdot.org","angularjs.org","francetvinfo.fr","yify-torrent.org","un.org","acs.org","fullhdfilmizlesene.org","digitalprivacyalert.org","jstor.org","service-public.fr","wikibooks.org","ubuntuforums.org","lexpress.fr","tlootas.org","collegeboard.org","tvtropes.org","impots.gouv.fr","syosetu.org","larousse.fr","wikimapia.org","new-rutor.org","hbr.org","washwasha.org","marmiton.org","4cdn.org","doctissimo.fr","britishcouncil.org","cic.fr","fdj.fr","airbnb.fr","media-fire.org","thinkprogress.org","oxfordjournals.org","dyndns.org","worldcat.org","raspberrypi.org","eclipse.org","ouest-france.fr","viamichelin.fr","megafilmeshd20.org","jooble.org","lichess.org","pixhost.org","malwarebytes.org","ets.org","hattrick.org","paultan.org","indeed.fr","6play.fr","rueducommerce.fr","joomla.org","worldbank.org","arxiv.org","archlinux.org","castorama.fr","decathlon.fr","huffingtonpost.fr","lacentrale.fr","lesechos.fr","vidal.fr","lepoint.fr","zalando.fr","worldoftanks.eu","pmu.fr","asos.fr","successfactors.eu","blablacar.fr","liberation.fr","urssaf.fr","mycanal.fr","auchan.fr","conforama.fr","meteociel.fr","carrefour.fr","canalplus.fr","letudiant.fr","groupon.fr","3suisses.fr","leclercdrive.fr","ratp.fr","ooreka.fr","rtl.fr","airfrance.fr","meetic.fr","francetv.fr","mobile.free.fr","ladepeche.fr","paruvendu.fr","rfi.fr","spaggiari.eu","metronews.fr","worldofwarships.eu","sudouest.fr","colissimo.fr","keeplinks.eu","onelife.eu","hardware.fr","coco.fr","imp.free.fr","melty.fr","jeux.fr","europe1.fr","education.fr","bricodepot.fr","edf.fr","maxifoot.fr","pap.fr","education.gouv.fr","dnvod.eu","elle.fr","letour.fr","cmb.fr","dfiles.eu","onecoin.eu","gls-group.eu","seedpeer.eu","dramanice.eu","sia.eu","filmezz.eu","vshare.eu","torrentbutler.eu","watchcartoonsonline.eu","politico.eu","torrentking.eu","feed2allnow.eu","rockfile.eu","yamaha-motor.eu","tusciaweb.eu","sexyadults.eu","fidelityhouse.eu","chainfire.eu","ping.eu","unibet.eu","mastersportal.eu","uploadfiles.eu","ifirstrow.eu","watchmovienow.eu","xenesglosses.eu","gayforit.eu","streamcomplet.eu","muzofox.eu","jpfiles.eu","df.eu","kickasstorrents.eu","autobazar.eu","swisscoin.eu","perfektdamen.eu","echodnia.eu","bombuj.eu","funmix.eu","safeurls.eu","increas.eu","luxexpress.eu","gamecopyworld.eu","cucirca.eu","guess.eu","ifirstrowus.eu","nets.eu","hostinger.eu","immunicity.eu","europsl.eu","myenglishteacher.eu","tme.eu","payzen.eu","jpopsuki.eu","5dimes.eu","xiaomi.eu","magiccardmarket.eu","romanews.eu","mp3xd.eu","fellent.eu","livenewschat.eu","ccc.eu","bitminer.eu","thenude.eu","wufoo.eu","firstrowas.eu","minecraft-server.eu","catawiki.eu","firstsrowsports.eu","omni-cash.eu","buzzblog.eu","ancient.eu","pornoserver.eu","xspeeds.eu","skydsl.eu","interrail.eu","bonprixshop.eu","harrisinteractive.eu","ls-portal.eu","nasze-kino.eu","valueactive.eu","meteoweb.eu","serialonline.eu","clickedu.eu","bosettiegatti.eu","mydailydose.eu","gap.eu","myadpack.eu","iptorrents.eu","aaate2016.eu"],x=document.getElementById("domains");I.forEach(function(t){var e=document.createElement("option");e.value=t,x.appendChild(e)}),document.getElementById("displayHelpButton").addEventListener("click",m),document.getElementById("nextHelpButton").addEventListener("click",y),document.getElementById("closeHelpButton").addEventListener("click",v);var A,S,T,P},function(t,e,r){(function(t,n){/*! +!function(t){function e(n){if(r[n])return r[n].exports;var o=r[n]={exports:{},id:n,loaded:!1};return t[n].call(o.exports,o,o.exports,e),o.loaded=!0,o.exports}var r={};return e.m=t,e.c=r,e.p="/dist/",e(0)}([function(t,e,r){"use strict";function n(t){return t&&t.__esModule?t:{"default":t}}function o(t,e){var r=t.className;t.setAttribute("class",r+" hint--top"),t.setAttribute("aria-label",e),setTimeout(function(){t.setAttribute("class",r)},2e3)}function i(t){var e=["EBBB56","59E0EB","E8F464","D2B4ED","BBE96D","EF9FC8","8EE083","DCBFD6","DDD15A","A1C8E8","C4D977","F1A49E","79E8A0","E9A970","60E3B4","D4C47D","73DDCA","C4EAA7","A7D6D4","9CC795"],r=parseInt(t,16)%e.length;return"#"+e[r]}function a(){var t=document.getElementById("login").value,e=document.getElementById("masterPassword").value,r=document.getElementById("fingerprint"),n=document.getElementById("displayMasterPasswordButton");return t&&e?void m["default"].encryptLogin(t,e).then(function(t){d=t;var e=t.substring(0,6),o=i(e);r.innerText=e,r.style.display="inline",n.style.backgroundColor=o,c()}):(r.innerText="",r.style.display="none",void(n.style.backgroundColor="#FFFFFF"))}function s(){for(var t={login:document.getElementById("login").value,counter:document.getElementById("passwordCounter").value,password:{length:document.getElementById("passwordLength").value,settings:[]}},e=["lowercase","uppercase","numbers","symbols"],r=0;r * @license MIT */ -"use strict";function o(){function t(){}try{var e=new Uint8Array(1);return e.foo=function(){return 42},e.constructor=t,42===e.foo()&&e.constructor===t&&"function"==typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(r){return!1}}function i(){return t.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function t(e){return this instanceof t?(t.TYPED_ARRAY_SUPPORT||(this.length=0,this.parent=void 0),"number"==typeof e?a(this,e):"string"==typeof e?s(this,e,arguments.length>1?arguments[1]:"utf8"):u(this,e)):arguments.length>1?new t(e,arguments[1]):new t(e)}function a(e,r){if(e=g(e,r<0?0:0|m(r)),!t.TYPED_ARRAY_SUPPORT)for(var n=0;n>>1;return n&&(e.parent=K),e}function m(t){if(t>=i())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i().toString(16)+" bytes");return 0|t}function y(e,r){if(!(this instanceof y))return new y(e,r);var n=new t(e,r);return delete n.parent,n}function v(t,e){"string"!=typeof t&&(t=""+t);var r=t.length;if(0===r)return 0;for(var n=!1;;)switch(e){case"ascii":case"binary":case"raw":case"raws":return r;case"utf8":case"utf-8":return H(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return V(t).length;default:if(n)return H(t).length;e=(""+e).toLowerCase(),n=!0}}function w(t,e,r){var n=!1;if(e=0|e,r=void 0===r||r===1/0?this.length:0|r,t||(t="utf8"),e<0&&(e=0),r>this.length&&(r=this.length),r<=e)return"";for(;;)switch(t){case"hex":return R(this,e,r);case"utf8":case"utf-8":return A(this,e,r);case"ascii":return T(this,e,r);case"binary":return P(this,e,r);case"base64":return x(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return L(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function b(t,e,r,n){r=Number(r)||0;var o=t.length-r;n?(n=Number(n),n>o&&(n=o)):n=o;var i=e.length;if(i%2!==0)throw new Error("Invalid hex string");n>i/2&&(n=i/2);for(var a=0;a239?4:i>223?3:i>191?2:1;if(o+s<=r){var u,c,f,l;switch(s){case 1:i<128&&(a=i);break;case 2:u=t[o+1],128===(192&u)&&(l=(31&i)<<6|63&u,l>127&&(a=l));break;case 3:u=t[o+1],c=t[o+2],128===(192&u)&&128===(192&c)&&(l=(15&i)<<12|(63&u)<<6|63&c,l>2047&&(l<55296||l>57343)&&(a=l));break;case 4:u=t[o+1],c=t[o+2],f=t[o+3],128===(192&u)&&128===(192&c)&&128===(192&f)&&(l=(15&i)<<18|(63&u)<<12|(63&c)<<6|63&f,l>65535&&l<1114112&&(a=l))}}null===a?(a=65533,s=1):a>65535&&(a-=65536,n.push(a>>>10&1023|55296),a=56320|1023&a),n.push(a),o+=s}return S(n)}function S(t){var e=t.length;if(e<=Q)return String.fromCharCode.apply(String,t);for(var r="",n=0;nn)&&(r=n);for(var o="",i=e;ir)throw new RangeError("Trying to access beyond buffer length")}function C(e,r,n,o,i,a){if(!t.isBuffer(e))throw new TypeError("buffer must be a Buffer instance");if(r>i||re.length)throw new RangeError("index out of range")}function O(t,e,r,n){e<0&&(e=65535+e+1);for(var o=0,i=Math.min(t.length-r,2);o>>8*(n?o:1-o)}function z(t,e,r,n){e<0&&(e=4294967295+e+1);for(var o=0,i=Math.min(t.length-r,4);o>>8*(n?o:3-o)&255}function D(t,e,r,n,o,i){if(e>o||et.length)throw new RangeError("index out of range");if(r<0)throw new RangeError("index out of range")}function j(t,e,r,n,o){return o||D(t,e,r,4,3.4028234663852886e38,-3.4028234663852886e38),Z.write(t,e,r,n,23,4),r+4}function M(t,e,r,n,o){return o||D(t,e,r,8,1.7976931348623157e308,-1.7976931348623157e308),Z.write(t,e,r,n,52,8),r+8}function Y(t){if(t=F(t).replace(tt,""),t.length<2)return"";for(;t.length%4!==0;)t+="=";return t}function F(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function N(t){return t<16?"0"+t.toString(16):t.toString(16)}function H(t,e){e=e||1/0;for(var r,n=t.length,o=null,i=[],a=0;a55295&&r<57344){if(!o){if(r>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(a+1===n){(e-=3)>-1&&i.push(239,191,189);continue}o=r;continue}if(r<56320){(e-=3)>-1&&i.push(239,191,189),o=r;continue}r=(o-55296<<10|r-56320)+65536}else o&&(e-=3)>-1&&i.push(239,191,189);if(o=null,r<128){if((e-=1)<0)break;i.push(r)}else if(r<2048){if((e-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;i.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function q(t){for(var e=[],r=0;r>8,o=r%256,i.push(o),i.push(n);return i}function V(t){return X.toByteArray(Y(t))}function G(t,e,r,n){for(var o=0;o=e.length||o>=t.length);o++)e[o+r]=t[o];return o}var X=r(4),Z=r(20),$=r(5);e.Buffer=t,e.SlowBuffer=y,e.INSPECT_MAX_BYTES=50,t.poolSize=8192;var K={};t.TYPED_ARRAY_SUPPORT=void 0!==n.TYPED_ARRAY_SUPPORT?n.TYPED_ARRAY_SUPPORT:o(),t.TYPED_ARRAY_SUPPORT?(t.prototype.__proto__=Uint8Array.prototype,t.__proto__=Uint8Array):(t.prototype.length=void 0,t.prototype.parent=void 0),t.isBuffer=function(t){return!(null==t||!t._isBuffer)},t.compare=function(e,r){if(!t.isBuffer(e)||!t.isBuffer(r))throw new TypeError("Arguments must be Buffers");if(e===r)return 0;for(var n=e.length,o=r.length,i=0,a=Math.min(n,o);i0&&(t=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(t+=" ... ")),""},t.prototype.compare=function(e){if(!t.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e?0:t.compare(this,e)},t.prototype.indexOf=function(e,r){function n(t,e,r){for(var n=-1,o=0;r+o2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r>>=0,0===this.length)return-1;if(r>=this.length)return-1;if(r<0&&(r=Math.max(this.length+r,0)),"string"==typeof e)return 0===e.length?-1:String.prototype.indexOf.call(this,e,r);if(t.isBuffer(e))return n(this,e,r);if("number"==typeof e)return t.TYPED_ARRAY_SUPPORT&&"function"===Uint8Array.prototype.indexOf?Uint8Array.prototype.indexOf.call(this,e,r):n(this,[e],r);throw new TypeError("val must be string, number or Buffer")},t.prototype.get=function(t){return console.log(".get() is deprecated. Access using array indexes instead."),this.readUInt8(t)},t.prototype.set=function(t,e){return console.log(".set() is deprecated. Access using array indexes instead."),this.writeUInt8(t,e)},t.prototype.write=function(t,e,r,n){if(void 0===e)n="utf8",r=this.length,e=0;else if(void 0===r&&"string"==typeof e)n=e,r=this.length,e=0;else if(isFinite(e))e=0|e,isFinite(r)?(r=0|r,void 0===n&&(n="utf8")):(n=r,r=void 0);else{var o=n;n=e,e=0|r,r=o}var i=this.length-e;if((void 0===r||r>i)&&(r=i),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return b(this,t,e,r);case"utf8":case"utf-8":return E(this,t,e,r);case"ascii":return _(this,t,e,r);case"binary":return B(this,t,e,r);case"base64":return k(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,t,e,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},t.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var Q=4096;t.prototype.slice=function(e,r){var n=this.length;e=~~e,r=void 0===r?n:~~r,e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),r<0?(r+=n,r<0&&(r=0)):r>n&&(r=n),r0&&(o*=256);)n+=this[t+--e]*o;return n},t.prototype.readUInt8=function(t,e){return e||U(t,1,this.length),this[t]},t.prototype.readUInt16LE=function(t,e){return e||U(t,2,this.length),this[t]|this[t+1]<<8},t.prototype.readUInt16BE=function(t,e){return e||U(t,2,this.length),this[t]<<8|this[t+1]},t.prototype.readUInt32LE=function(t,e){return e||U(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},t.prototype.readUInt32BE=function(t,e){return e||U(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},t.prototype.readIntLE=function(t,e,r){t=0|t,e=0|e,r||U(t,e,this.length);for(var n=this[t],o=1,i=0;++i=o&&(n-=Math.pow(2,8*e)),n},t.prototype.readIntBE=function(t,e,r){t=0|t,e=0|e,r||U(t,e,this.length);for(var n=e,o=1,i=this[t+--n];n>0&&(o*=256);)i+=this[t+--n]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*e)),i},t.prototype.readInt8=function(t,e){return e||U(t,1,this.length),128&this[t]?(255-this[t]+1)*-1:this[t]},t.prototype.readInt16LE=function(t,e){e||U(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},t.prototype.readInt16BE=function(t,e){e||U(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},t.prototype.readInt32LE=function(t,e){return e||U(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},t.prototype.readInt32BE=function(t,e){return e||U(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},t.prototype.readFloatLE=function(t,e){return e||U(t,4,this.length),Z.read(this,t,!0,23,4)},t.prototype.readFloatBE=function(t,e){return e||U(t,4,this.length),Z.read(this,t,!1,23,4)},t.prototype.readDoubleLE=function(t,e){return e||U(t,8,this.length),Z.read(this,t,!0,52,8)},t.prototype.readDoubleBE=function(t,e){return e||U(t,8,this.length),Z.read(this,t,!1,52,8)},t.prototype.writeUIntLE=function(t,e,r,n){t=+t,e=0|e,r=0|r,n||C(this,t,e,r,Math.pow(2,8*r),0);var o=1,i=0;for(this[e]=255&t;++i=0&&(i*=256);)this[e+o]=t/i&255;return e+r},t.prototype.writeUInt8=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,1,255,0),t.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[r]=255&e,r+1},t.prototype.writeUInt16LE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,2,65535,0),t.TYPED_ARRAY_SUPPORT?(this[r]=255&e,this[r+1]=e>>>8):O(this,e,r,!0),r+2},t.prototype.writeUInt16BE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,2,65535,0),t.TYPED_ARRAY_SUPPORT?(this[r]=e>>>8,this[r+1]=255&e):O(this,e,r,!1),r+2},t.prototype.writeUInt32LE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,4,4294967295,0),t.TYPED_ARRAY_SUPPORT?(this[r+3]=e>>>24,this[r+2]=e>>>16,this[r+1]=e>>>8,this[r]=255&e):z(this,e,r,!0),r+4},t.prototype.writeUInt32BE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,4,4294967295,0),t.TYPED_ARRAY_SUPPORT?(this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=255&e):z(this,e,r,!1),r+4},t.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e=0|e,!n){var o=Math.pow(2,8*r-1);C(this,t,e,r,o-1,-o)}var i=0,a=1,s=t<0?1:0;for(this[e]=255&t;++i>0)-s&255;return e+r},t.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e=0|e,!n){var o=Math.pow(2,8*r-1);C(this,t,e,r,o-1,-o)}var i=r-1,a=1,s=t<0?1:0;for(this[e+i]=255&t;--i>=0&&(a*=256);)this[e+i]=(t/a>>0)-s&255;return e+r},t.prototype.writeInt8=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,1,127,-128),t.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[r]=255&e,r+1},t.prototype.writeInt16LE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,2,32767,-32768),t.TYPED_ARRAY_SUPPORT?(this[r]=255&e,this[r+1]=e>>>8):O(this,e,r,!0),r+2},t.prototype.writeInt16BE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,2,32767,-32768),t.TYPED_ARRAY_SUPPORT?(this[r]=e>>>8,this[r+1]=255&e):O(this,e,r,!1),r+2},t.prototype.writeInt32LE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,4,2147483647,-2147483648),t.TYPED_ARRAY_SUPPORT?(this[r]=255&e,this[r+1]=e>>>8,this[r+2]=e>>>16,this[r+3]=e>>>24):z(this,e,r,!0),r+4},t.prototype.writeInt32BE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),t.TYPED_ARRAY_SUPPORT?(this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=255&e):z(this,e,r,!1),r+4},t.prototype.writeFloatLE=function(t,e,r){return j(this,t,e,!0,r)},t.prototype.writeFloatBE=function(t,e,r){return j(this,t,e,!1,r)},t.prototype.writeDoubleLE=function(t,e,r){return M(this,t,e,!0,r)},t.prototype.writeDoubleBE=function(t,e,r){return M(this,t,e,!1,r)},t.prototype.copy=function(e,r,n,o){if(n||(n=0),o||0===o||(o=this.length),r>=e.length&&(r=e.length),r||(r=0),o>0&&o=this.length)throw new RangeError("sourceStart out of bounds");if(o<0)throw new RangeError("sourceEnd out of bounds");o>this.length&&(o=this.length),e.length-r=0;i--)e[i+r]=this[i+n];else if(a<1e3||!t.TYPED_ARRAY_SUPPORT)for(i=0;i=this.length)throw new RangeError("start out of bounds");if(r<0||r>this.length)throw new RangeError("end out of bounds");var n;if("number"==typeof t)for(n=e;n=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),g(r)?n.showHidden=r:r&&e._extend(n,r),E(n.showHidden)&&(n.showHidden=!1),E(n.depth)&&(n.depth=2),E(n.colors)&&(n.colors=!1),E(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=i),u(n,t,n.depth)}function i(t,e){var r=o.styles[e];return r?"["+o.colors[r][0]+"m"+t+"["+o.colors[r][1]+"m":t}function a(t,e){return t}function s(t){var e={};return t.forEach(function(t,r){e[t]=!0}),e}function u(t,r,n){if(t.customInspect&&r&&x(r.inspect)&&r.inspect!==e.inspect&&(!r.constructor||r.constructor.prototype!==r)){var o=r.inspect(n,t);return w(o)||(o=u(t,o,n)),o}var i=c(t,r);if(i)return i;var a=Object.keys(r),g=s(a);if(t.showHidden&&(a=Object.getOwnPropertyNames(r)),I(r)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return f(r);if(0===a.length){if(x(r)){var m=r.name?": "+r.name:"";return t.stylize("[Function"+m+"]","special")}if(_(r))return t.stylize(RegExp.prototype.toString.call(r),"regexp");if(k(r))return t.stylize(Date.prototype.toString.call(r),"date");if(I(r))return f(r)}var y="",v=!1,b=["{","}"];if(d(r)&&(v=!0,b=["[","]"]),x(r)){var E=r.name?": "+r.name:"";y=" [Function"+E+"]"}if(_(r)&&(y=" "+RegExp.prototype.toString.call(r)),k(r)&&(y=" "+Date.prototype.toUTCString.call(r)),I(r)&&(y=" "+f(r)),0===a.length&&(!v||0==r.length))return b[0]+y+b[1];if(n<0)return _(r)?t.stylize(RegExp.prototype.toString.call(r),"regexp"):t.stylize("[Object]","special");t.seen.push(r);var B;return B=v?l(t,r,n,g,a):a.map(function(e){return h(t,r,n,g,e,v)}),t.seen.pop(),p(B,y,b)}function c(t,e){if(E(e))return t.stylize("undefined","undefined");if(w(e)){var r="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(r,"string")}return v(e)?t.stylize(""+e,"number"):g(e)?t.stylize(""+e,"boolean"):m(e)?t.stylize("null","null"):void 0}function f(t){return"["+Error.prototype.toString.call(t)+"]"}function l(t,e,r,n,o){for(var i=[],a=0,s=e.length;a-1&&(s=i?s.split("\n").map(function(t){return" "+t}).join("\n").substr(2):"\n"+s.split("\n").map(function(t){return" "+t}).join("\n"))):s=t.stylize("[Circular]","special")),E(a)){if(i&&o.match(/^\d+$/))return s;a=JSON.stringify(""+o),a.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=t.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=t.stylize(a,"string"))}return a+": "+s}function p(t,e,r){var n=0,o=t.reduce(function(t,e){return n++,e.indexOf("\n")>=0&&n++,t+e.replace(/\u001b\[\d\d?m/g,"").length+1},0);return o>60?r[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+r[1]:r[0]+e+" "+t.join(", ")+" "+r[1]}function d(t){return Array.isArray(t)}function g(t){return"boolean"==typeof t}function m(t){return null===t}function y(t){return null==t}function v(t){return"number"==typeof t}function w(t){return"string"==typeof t}function b(t){return"symbol"==typeof t}function E(t){return void 0===t}function _(t){return B(t)&&"[object RegExp]"===S(t)}function B(t){return"object"==typeof t&&null!==t}function k(t){return B(t)&&"[object Date]"===S(t)}function I(t){return B(t)&&("[object Error]"===S(t)||t instanceof Error)}function x(t){return"function"==typeof t}function A(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"==typeof t||"undefined"==typeof t}function S(t){return Object.prototype.toString.call(t)}function T(t){return t<10?"0"+t.toString(10):t.toString(10)}function P(){var t=new Date,e=[T(t.getHours()),T(t.getMinutes()),T(t.getSeconds())].join(":");return[t.getDate(),O[t.getMonth()],e].join(" ")}function R(t,e){return Object.prototype.hasOwnProperty.call(t,e)}var L=/%[sdj%]/g;e.format=function(t){if(!w(t)){for(var e=[],r=0;r=i)return t;switch(t){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(e){return"[Circular]"}default:return t}}),s=n[r];r0)throw new Error("Invalid string. Length must be a multiple of 4");var f=t.length;u="="===t.charAt(f-2)?2:"="===t.charAt(f-1)?1:0,c=new i(3*t.length/4-u),a=u>0?t.length-4:t.length;var l=0;for(n=0,o=0;n>16),r((65280&s)>>8),r(255&s);return 2===u?(s=e(t.charAt(n))<<2|e(t.charAt(n+1))>>4,r(255&s)):1===u&&(s=e(t.charAt(n))<<10|e(t.charAt(n+1))<<4|e(t.charAt(n+2))>>2,r(s>>8&255),r(255&s)),c}function o(t){function e(t){return n.charAt(t)}function r(t){return e(t>>18&63)+e(t>>12&63)+e(t>>6&63)+e(63&t)}var o,i,a,s=t.length%3,u="";for(o=0,a=t.length-s;o>2),u+=e(i<<4&63),u+="==";break;case 2:i=(t[t.length-2]<<8)+t[t.length-1],u+=e(i>>10),u+=e(i>>4&63),u+=e(i<<2&63),u+="="}return u}var i="undefined"!=typeof Uint8Array?Uint8Array:Array,a="+".charCodeAt(0),s="/".charCodeAt(0),u="0".charCodeAt(0),c="a".charCodeAt(0),f="A".charCodeAt(0),l="-".charCodeAt(0),h="_".charCodeAt(0);t.toByteArray=r,t.fromByteArray=o}(e)},function(t,e){var r={}.toString;t.exports=Array.isArray||function(t){return"[object Array]"==r.call(t)}},function(t,e,r){var n,o,i;!function(a,s){o=[t,r(27)],n=s,i="function"==typeof n?n.apply(e,o):n,!(void 0!==i&&(t.exports=i))}(this,function(t,e){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var o=r(e),i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},a=function(){function t(t,e){for(var r=0;ra?r=o(t).update(r).digest():r.length>5]|=128<>>9<<4)+14]=e;for(var r=1732584193,n=-271733879,o=-1732584194,f=271733878,l=0;l>16)+(e>>16)+(r>>16);return n<<16|65535&r}function f(t,e){return t<>>32-e}var l=r(10);t.exports=function(t){return l.hash(t,n,16)}},function(t,e,r){var n=r(24);t.exports=function(t,e){e=e||{};var r=n(t);return e.pbkdf2=r.pbkdf2,e.pbkdf2Sync=r.pbkdf2Sync,e}},function(t,e,r){(function(e,n){!function(){var o=("undefined"==typeof window?e:window)||{};_crypto=o.crypto||o.msCrypto||r(35),t.exports=function(t){if(_crypto.getRandomValues){var e=new n(t);return _crypto.getRandomValues(e),e}if(_crypto.randomBytes)return _crypto.randomBytes(t);throw new Error("secure random number generation not supported by this browser\nuse chrome, FireFox or Internet Explorer 11")}}()}).call(e,function(){return this}(),r(1).Buffer)},function(t,e,r){function n(t,e,r,n,i){var a=o.apply(this,arguments);return t.addEventListener(r,a,i),{destroy:function(){t.removeEventListener(r,a,i)}}}function o(t,e,r,n){return function(r){r.delegateTarget=i(r.target,e,!0),r.delegateTarget&&n.call(t,r)}}var i=r(8);t.exports=n},function(t,e){},,function(t,e){e.node=function(t){return void 0!==t&&t instanceof HTMLElement&&1===t.nodeType},e.nodeList=function(t){var r=Object.prototype.toString.call(t);return void 0!==t&&("[object NodeList]"===r||"[object HTMLCollection]"===r)&&"length"in t&&(0===t.length||e.node(t[0]))},e.string=function(t){return"string"==typeof t||t instanceof String},e.fn=function(t){var e=Object.prototype.toString.call(t);return"[object Function]"===e}},function(t,e,r){function n(t,e,r){if(!t&&!e&&!r)throw new Error("Missing required arguments");if(!s.string(e))throw new TypeError("Second argument must be a String");if(!s.fn(r))throw new TypeError("Third argument must be a Function");if(s.node(t))return o(t,e,r);if(s.nodeList(t))return i(t,e,r);if(s.string(t))return a(t,e,r);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function o(t,e,r){return t.addEventListener(e,r),{destroy:function(){t.removeEventListener(e,r)}}}function i(t,e,r){return Array.prototype.forEach.call(t,function(t){t.addEventListener(e,r)}),{destroy:function(){Array.prototype.forEach.call(t,function(t){t.removeEventListener(e,r)})}}}function a(t,e,r){return u(document.body,t,e,r)}var s=r(18),u=r(15);t.exports=n},function(t,e){e.read=function(t,e,r,n,o){var i,a,s=8*o-n-1,u=(1<>1,f=-7,l=r?o-1:0,h=r?-1:1,p=t[e+l];for(l+=h,i=p&(1<<-f)-1,p>>=-f,f+=s;f>0;i=256*i+t[e+l],l+=h,f-=8);for(a=i&(1<<-f)-1,i>>=-f,f+=n;f>0;a=256*a+t[e+l],l+=h,f-=8);if(0===i)i=1-c;else{if(i===u)return a?NaN:(p?-1:1)*(1/0);a+=Math.pow(2,n),i-=c}return(p?-1:1)*a*Math.pow(2,i-n)},e.write=function(t,e,r,n,o,i){var a,s,u,c=8*i-o-1,f=(1<>1,h=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:i-1,d=n?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=f):(a=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-a))<1&&(a--,u*=2),e+=a+l>=1?h/u:h*Math.pow(2,1-l),e*u>=2&&(a++,u/=2),a+l>=f?(s=0,a=f):a+l>=1?(s=(e*u-1)*Math.pow(2,o),a+=l):(s=e*Math.pow(2,l-1)*Math.pow(2,o),a=0));o>=8;t[r+p]=255&s,p+=d,s/=256,o-=8);for(a=a<0;t[r+p]=255&a,p+=d,a/=256,c-=8);t[r+p-d]|=128*g}},function(t,e){"function"==typeof Object.create?t.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:t.exports=function(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}},function(t,e,r){"use strict";function n(t){return t&&t.__esModule?t:{"default":t}}function o(t,e,r,n){return new Promise(function(o,s){t&&e&&r||s("generatePassword invalid parameter"),a(t,e).then(function(t){o(i(t,r,n))})})}function i(t,e,r){var n=s(t,e,r),o=u(r.password.settings);return c(n,o)}function a(t,e){return new Promise(function(r,n){t&&e||n("encryptLogin parameter could not be empty");var o=8192,i=32;d["default"].pbkdf2(e,t,o,i,"sha256",function(t,e){t?n("error in pbkdf2"):r(e.toString("hex"))})})}function s(t,e){var r=arguments.length<=2||void 0===arguments[2]?{}:arguments[2],n=r.password,o=void 0===n?{length:12}:n,i=r.counter,a=void 0===i?1:i,s=e+a.toString(),u=d["default"].createHmac("sha256",t).update(s).digest("hex");return u.substring(0,o.length)}function u(){var t=arguments.length<=0||void 0===arguments[0]?["strong"]:arguments[0],e={lowercase:{value:"vc",order:1},uppercase:{value:"VC",order:2},numbers:{value:"n",order:3},symbols:{value:"s",order:4},strong:{value:"Cvcvns",order:5}};return t.map(function(t){return e[t]}).sort(function(t,e){return t.order>e.order}).map(function(t){return t.value}).join("")}function c(t,e){var r="";return f(t).forEach(function(t,n){var o=l(e,n);r+=h(o,t)}),r}function f(t){for(var e=[],r=0;r(Math.pow(2,32)-1)*s))throw new TypeError("keylen exceeds maximum length");d.copy(c,0,0,s);for(var g=1;g1)for(var r=1;r>>32-e}function u(t){var r=[1732584193,4023233417,2562383102,271733878,3285377520];"string"==typeof t&&(t=new e(t,"utf8"));var n=g(t),o=8*t.length,i=8*t.length;n[o>>>5]|=128<<24-o%32,n[(o+64>>>9<<4)+14]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8);for(var a=0;a>>24)|4278255360&(s<<24|s>>>8)}var u=m(r);return new e(u)}t.exports=u;/** @preserve +"use strict";function o(){function t(){}try{var e=new Uint8Array(1);return e.foo=function(){return 42},e.constructor=t,42===e.foo()&&e.constructor===t&&"function"==typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(r){return!1}}function i(){return t.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function t(e){return this instanceof t?(t.TYPED_ARRAY_SUPPORT||(this.length=0,this.parent=void 0),"number"==typeof e?a(this,e):"string"==typeof e?s(this,e,arguments.length>1?arguments[1]:"utf8"):u(this,e)):arguments.length>1?new t(e,arguments[1]):new t(e)}function a(e,r){if(e=g(e,r<0?0:0|m(r)),!t.TYPED_ARRAY_SUPPORT)for(var n=0;n>>1;return n&&(e.parent=K),e}function m(t){if(t>=i())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i().toString(16)+" bytes");return 0|t}function y(e,r){if(!(this instanceof y))return new y(e,r);var n=new t(e,r);return delete n.parent,n}function w(t,e){"string"!=typeof t&&(t=""+t);var r=t.length;if(0===r)return 0;for(var n=!1;;)switch(e){case"ascii":case"binary":case"raw":case"raws":return r;case"utf8":case"utf-8":return H(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return V(t).length;default:if(n)return H(t).length;e=(""+e).toLowerCase(),n=!0}}function v(t,e,r){var n=!1;if(e=0|e,r=void 0===r||r===1/0?this.length:0|r,t||(t="utf8"),e<0&&(e=0),r>this.length&&(r=this.length),r<=e)return"";for(;;)switch(t){case"hex":return R(this,e,r);case"utf8":case"utf-8":return x(this,e,r);case"ascii":return T(this,e,r);case"binary":return P(this,e,r);case"base64":return I(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return L(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function b(t,e,r,n){r=Number(r)||0;var o=t.length-r;n?(n=Number(n),n>o&&(n=o)):n=o;var i=e.length;if(i%2!==0)throw new Error("Invalid hex string");n>i/2&&(n=i/2);for(var a=0;a239?4:i>223?3:i>191?2:1;if(o+s<=r){var u,c,f,l;switch(s){case 1:i<128&&(a=i);break;case 2:u=t[o+1],128===(192&u)&&(l=(31&i)<<6|63&u,l>127&&(a=l));break;case 3:u=t[o+1],c=t[o+2],128===(192&u)&&128===(192&c)&&(l=(15&i)<<12|(63&u)<<6|63&c,l>2047&&(l<55296||l>57343)&&(a=l));break;case 4:u=t[o+1],c=t[o+2],f=t[o+3],128===(192&u)&&128===(192&c)&&128===(192&f)&&(l=(15&i)<<18|(63&u)<<12|(63&c)<<6|63&f,l>65535&&l<1114112&&(a=l))}}null===a?(a=65533,s=1):a>65535&&(a-=65536,n.push(a>>>10&1023|55296),a=56320|1023&a),n.push(a),o+=s}return S(n)}function S(t){var e=t.length;if(e<=Q)return String.fromCharCode.apply(String,t);for(var r="",n=0;nn)&&(r=n);for(var o="",i=e;ir)throw new RangeError("Trying to access beyond buffer length")}function C(e,r,n,o,i,a){if(!t.isBuffer(e))throw new TypeError("buffer must be a Buffer instance");if(r>i||re.length)throw new RangeError("index out of range")}function O(t,e,r,n){e<0&&(e=65535+e+1);for(var o=0,i=Math.min(t.length-r,2);o>>8*(n?o:1-o)}function z(t,e,r,n){e<0&&(e=4294967295+e+1);for(var o=0,i=Math.min(t.length-r,4);o>>8*(n?o:3-o)&255}function D(t,e,r,n,o,i){if(e>o||et.length)throw new RangeError("index out of range");if(r<0)throw new RangeError("index out of range")}function j(t,e,r,n,o){return o||D(t,e,r,4,3.4028234663852886e38,-3.4028234663852886e38),Z.write(t,e,r,n,23,4),r+4}function M(t,e,r,n,o){return o||D(t,e,r,8,1.7976931348623157e308,-1.7976931348623157e308),Z.write(t,e,r,n,52,8),r+8}function Y(t){if(t=F(t).replace(tt,""),t.length<2)return"";for(;t.length%4!==0;)t+="=";return t}function F(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function N(t){return t<16?"0"+t.toString(16):t.toString(16)}function H(t,e){e=e||1/0;for(var r,n=t.length,o=null,i=[],a=0;a55295&&r<57344){if(!o){if(r>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(a+1===n){(e-=3)>-1&&i.push(239,191,189);continue}o=r;continue}if(r<56320){(e-=3)>-1&&i.push(239,191,189),o=r;continue}r=(o-55296<<10|r-56320)+65536}else o&&(e-=3)>-1&&i.push(239,191,189);if(o=null,r<128){if((e-=1)<0)break;i.push(r)}else if(r<2048){if((e-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;i.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function q(t){for(var e=[],r=0;r>8,o=r%256,i.push(o),i.push(n);return i}function V(t){return X.toByteArray(Y(t))}function G(t,e,r,n){for(var o=0;o=e.length||o>=t.length);o++)e[o+r]=t[o];return o}var X=r(4),Z=r(20),$=r(5);e.Buffer=t,e.SlowBuffer=y,e.INSPECT_MAX_BYTES=50,t.poolSize=8192;var K={};t.TYPED_ARRAY_SUPPORT=void 0!==n.TYPED_ARRAY_SUPPORT?n.TYPED_ARRAY_SUPPORT:o(),t.TYPED_ARRAY_SUPPORT?(t.prototype.__proto__=Uint8Array.prototype,t.__proto__=Uint8Array):(t.prototype.length=void 0,t.prototype.parent=void 0),t.isBuffer=function(t){return!(null==t||!t._isBuffer)},t.compare=function(e,r){if(!t.isBuffer(e)||!t.isBuffer(r))throw new TypeError("Arguments must be Buffers");if(e===r)return 0;for(var n=e.length,o=r.length,i=0,a=Math.min(n,o);i0&&(t=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(t+=" ... ")),""},t.prototype.compare=function(e){if(!t.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e?0:t.compare(this,e)},t.prototype.indexOf=function(e,r){function n(t,e,r){for(var n=-1,o=0;r+o2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r>>=0,0===this.length)return-1;if(r>=this.length)return-1;if(r<0&&(r=Math.max(this.length+r,0)),"string"==typeof e)return 0===e.length?-1:String.prototype.indexOf.call(this,e,r);if(t.isBuffer(e))return n(this,e,r);if("number"==typeof e)return t.TYPED_ARRAY_SUPPORT&&"function"===Uint8Array.prototype.indexOf?Uint8Array.prototype.indexOf.call(this,e,r):n(this,[e],r);throw new TypeError("val must be string, number or Buffer")},t.prototype.get=function(t){return console.log(".get() is deprecated. Access using array indexes instead."),this.readUInt8(t)},t.prototype.set=function(t,e){return console.log(".set() is deprecated. Access using array indexes instead."),this.writeUInt8(t,e)},t.prototype.write=function(t,e,r,n){if(void 0===e)n="utf8",r=this.length,e=0;else if(void 0===r&&"string"==typeof e)n=e,r=this.length,e=0;else if(isFinite(e))e=0|e,isFinite(r)?(r=0|r,void 0===n&&(n="utf8")):(n=r,r=void 0);else{var o=n;n=e,e=0|r,r=o}var i=this.length-e;if((void 0===r||r>i)&&(r=i),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return b(this,t,e,r);case"utf8":case"utf-8":return _(this,t,e,r);case"ascii":return E(this,t,e,r);case"binary":return k(this,t,e,r);case"base64":return B(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return A(this,t,e,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},t.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var Q=4096;t.prototype.slice=function(e,r){var n=this.length;e=~~e,r=void 0===r?n:~~r,e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),r<0?(r+=n,r<0&&(r=0)):r>n&&(r=n),r0&&(o*=256);)n+=this[t+--e]*o;return n},t.prototype.readUInt8=function(t,e){return e||U(t,1,this.length),this[t]},t.prototype.readUInt16LE=function(t,e){return e||U(t,2,this.length),this[t]|this[t+1]<<8},t.prototype.readUInt16BE=function(t,e){return e||U(t,2,this.length),this[t]<<8|this[t+1]},t.prototype.readUInt32LE=function(t,e){return e||U(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},t.prototype.readUInt32BE=function(t,e){return e||U(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},t.prototype.readIntLE=function(t,e,r){t=0|t,e=0|e,r||U(t,e,this.length);for(var n=this[t],o=1,i=0;++i=o&&(n-=Math.pow(2,8*e)),n},t.prototype.readIntBE=function(t,e,r){t=0|t,e=0|e,r||U(t,e,this.length);for(var n=e,o=1,i=this[t+--n];n>0&&(o*=256);)i+=this[t+--n]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*e)),i},t.prototype.readInt8=function(t,e){return e||U(t,1,this.length),128&this[t]?(255-this[t]+1)*-1:this[t]},t.prototype.readInt16LE=function(t,e){e||U(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},t.prototype.readInt16BE=function(t,e){e||U(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},t.prototype.readInt32LE=function(t,e){return e||U(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},t.prototype.readInt32BE=function(t,e){return e||U(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},t.prototype.readFloatLE=function(t,e){return e||U(t,4,this.length),Z.read(this,t,!0,23,4)},t.prototype.readFloatBE=function(t,e){return e||U(t,4,this.length),Z.read(this,t,!1,23,4)},t.prototype.readDoubleLE=function(t,e){return e||U(t,8,this.length),Z.read(this,t,!0,52,8)},t.prototype.readDoubleBE=function(t,e){return e||U(t,8,this.length),Z.read(this,t,!1,52,8)},t.prototype.writeUIntLE=function(t,e,r,n){t=+t,e=0|e,r=0|r,n||C(this,t,e,r,Math.pow(2,8*r),0);var o=1,i=0;for(this[e]=255&t;++i=0&&(i*=256);)this[e+o]=t/i&255;return e+r},t.prototype.writeUInt8=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,1,255,0),t.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[r]=255&e,r+1},t.prototype.writeUInt16LE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,2,65535,0),t.TYPED_ARRAY_SUPPORT?(this[r]=255&e,this[r+1]=e>>>8):O(this,e,r,!0),r+2},t.prototype.writeUInt16BE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,2,65535,0),t.TYPED_ARRAY_SUPPORT?(this[r]=e>>>8,this[r+1]=255&e):O(this,e,r,!1),r+2},t.prototype.writeUInt32LE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,4,4294967295,0),t.TYPED_ARRAY_SUPPORT?(this[r+3]=e>>>24,this[r+2]=e>>>16,this[r+1]=e>>>8,this[r]=255&e):z(this,e,r,!0),r+4},t.prototype.writeUInt32BE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,4,4294967295,0),t.TYPED_ARRAY_SUPPORT?(this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=255&e):z(this,e,r,!1),r+4},t.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e=0|e,!n){var o=Math.pow(2,8*r-1);C(this,t,e,r,o-1,-o)}var i=0,a=1,s=t<0?1:0;for(this[e]=255&t;++i>0)-s&255;return e+r},t.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e=0|e,!n){var o=Math.pow(2,8*r-1);C(this,t,e,r,o-1,-o)}var i=r-1,a=1,s=t<0?1:0;for(this[e+i]=255&t;--i>=0&&(a*=256);)this[e+i]=(t/a>>0)-s&255;return e+r},t.prototype.writeInt8=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,1,127,-128),t.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[r]=255&e,r+1},t.prototype.writeInt16LE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,2,32767,-32768),t.TYPED_ARRAY_SUPPORT?(this[r]=255&e,this[r+1]=e>>>8):O(this,e,r,!0),r+2},t.prototype.writeInt16BE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,2,32767,-32768),t.TYPED_ARRAY_SUPPORT?(this[r]=e>>>8,this[r+1]=255&e):O(this,e,r,!1),r+2},t.prototype.writeInt32LE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,4,2147483647,-2147483648),t.TYPED_ARRAY_SUPPORT?(this[r]=255&e,this[r+1]=e>>>8,this[r+2]=e>>>16,this[r+3]=e>>>24):z(this,e,r,!0),r+4},t.prototype.writeInt32BE=function(e,r,n){return e=+e,r=0|r,n||C(this,e,r,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),t.TYPED_ARRAY_SUPPORT?(this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=255&e):z(this,e,r,!1),r+4},t.prototype.writeFloatLE=function(t,e,r){return j(this,t,e,!0,r)},t.prototype.writeFloatBE=function(t,e,r){return j(this,t,e,!1,r)},t.prototype.writeDoubleLE=function(t,e,r){return M(this,t,e,!0,r)},t.prototype.writeDoubleBE=function(t,e,r){return M(this,t,e,!1,r)},t.prototype.copy=function(e,r,n,o){if(n||(n=0),o||0===o||(o=this.length),r>=e.length&&(r=e.length),r||(r=0),o>0&&o=this.length)throw new RangeError("sourceStart out of bounds");if(o<0)throw new RangeError("sourceEnd out of bounds");o>this.length&&(o=this.length),e.length-r=0;i--)e[i+r]=this[i+n];else if(a<1e3||!t.TYPED_ARRAY_SUPPORT)for(i=0;i=this.length)throw new RangeError("start out of bounds");if(r<0||r>this.length)throw new RangeError("end out of bounds");var n;if("number"==typeof t)for(n=e;n=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),g(r)?n.showHidden=r:r&&e._extend(n,r),_(n.showHidden)&&(n.showHidden=!1),_(n.depth)&&(n.depth=2),_(n.colors)&&(n.colors=!1),_(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=i),u(n,t,n.depth)}function i(t,e){var r=o.styles[e];return r?"["+o.colors[r][0]+"m"+t+"["+o.colors[r][1]+"m":t}function a(t,e){return t}function s(t){var e={};return t.forEach(function(t,r){e[t]=!0}),e}function u(t,r,n){if(t.customInspect&&r&&I(r.inspect)&&r.inspect!==e.inspect&&(!r.constructor||r.constructor.prototype!==r)){var o=r.inspect(n,t);return v(o)||(o=u(t,o,n)),o}var i=c(t,r);if(i)return i;var a=Object.keys(r),g=s(a);if(t.showHidden&&(a=Object.getOwnPropertyNames(r)),A(r)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return f(r);if(0===a.length){if(I(r)){var m=r.name?": "+r.name:"";return t.stylize("[Function"+m+"]","special")}if(E(r))return t.stylize(RegExp.prototype.toString.call(r),"regexp");if(B(r))return t.stylize(Date.prototype.toString.call(r),"date");if(A(r))return f(r)}var y="",w=!1,b=["{","}"];if(d(r)&&(w=!0,b=["[","]"]),I(r)){var _=r.name?": "+r.name:"";y=" [Function"+_+"]"}if(E(r)&&(y=" "+RegExp.prototype.toString.call(r)),B(r)&&(y=" "+Date.prototype.toUTCString.call(r)),A(r)&&(y=" "+f(r)),0===a.length&&(!w||0==r.length))return b[0]+y+b[1];if(n<0)return E(r)?t.stylize(RegExp.prototype.toString.call(r),"regexp"):t.stylize("[Object]","special");t.seen.push(r);var k;return k=w?l(t,r,n,g,a):a.map(function(e){return h(t,r,n,g,e,w)}),t.seen.pop(),p(k,y,b)}function c(t,e){if(_(e))return t.stylize("undefined","undefined");if(v(e)){var r="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(r,"string")}return w(e)?t.stylize(""+e,"number"):g(e)?t.stylize(""+e,"boolean"):m(e)?t.stylize("null","null"):void 0}function f(t){return"["+Error.prototype.toString.call(t)+"]"}function l(t,e,r,n,o){for(var i=[],a=0,s=e.length;a-1&&(s=i?s.split("\n").map(function(t){return" "+t}).join("\n").substr(2):"\n"+s.split("\n").map(function(t){return" "+t}).join("\n"))):s=t.stylize("[Circular]","special")),_(a)){if(i&&o.match(/^\d+$/))return s;a=JSON.stringify(""+o),a.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=t.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=t.stylize(a,"string"))}return a+": "+s}function p(t,e,r){var n=0,o=t.reduce(function(t,e){return n++,e.indexOf("\n")>=0&&n++,t+e.replace(/\u001b\[\d\d?m/g,"").length+1},0);return o>60?r[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+r[1]:r[0]+e+" "+t.join(", ")+" "+r[1]}function d(t){return Array.isArray(t)}function g(t){return"boolean"==typeof t}function m(t){return null===t}function y(t){return null==t}function w(t){return"number"==typeof t}function v(t){return"string"==typeof t}function b(t){return"symbol"==typeof t}function _(t){return void 0===t}function E(t){return k(t)&&"[object RegExp]"===S(t)}function k(t){return"object"==typeof t&&null!==t}function B(t){return k(t)&&"[object Date]"===S(t)}function A(t){return k(t)&&("[object Error]"===S(t)||t instanceof Error)}function I(t){return"function"==typeof t}function x(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"==typeof t||"undefined"==typeof t}function S(t){return Object.prototype.toString.call(t)}function T(t){return t<10?"0"+t.toString(10):t.toString(10)}function P(){var t=new Date,e=[T(t.getHours()),T(t.getMinutes()),T(t.getSeconds())].join(":");return[t.getDate(),O[t.getMonth()],e].join(" ")}function R(t,e){return Object.prototype.hasOwnProperty.call(t,e)}var L=/%[sdj%]/g;e.format=function(t){if(!v(t)){for(var e=[],r=0;r=i)return t;switch(t){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(e){return"[Circular]"}default:return t}}),s=n[r];r0)throw new Error("Invalid string. Length must be a multiple of 4");var f=t.length;u="="===t.charAt(f-2)?2:"="===t.charAt(f-1)?1:0,c=new i(3*t.length/4-u),a=u>0?t.length-4:t.length;var l=0;for(n=0,o=0;n>16),r((65280&s)>>8),r(255&s);return 2===u?(s=e(t.charAt(n))<<2|e(t.charAt(n+1))>>4,r(255&s)):1===u&&(s=e(t.charAt(n))<<10|e(t.charAt(n+1))<<4|e(t.charAt(n+2))>>2,r(s>>8&255),r(255&s)),c}function o(t){function e(t){return n.charAt(t)}function r(t){return e(t>>18&63)+e(t>>12&63)+e(t>>6&63)+e(63&t)}var o,i,a,s=t.length%3,u="";for(o=0,a=t.length-s;o>2),u+=e(i<<4&63),u+="==";break;case 2:i=(t[t.length-2]<<8)+t[t.length-1],u+=e(i>>10),u+=e(i>>4&63),u+=e(i<<2&63),u+="="}return u}var i="undefined"!=typeof Uint8Array?Uint8Array:Array,a="+".charCodeAt(0),s="/".charCodeAt(0),u="0".charCodeAt(0),c="a".charCodeAt(0),f="A".charCodeAt(0),l="-".charCodeAt(0),h="_".charCodeAt(0);t.toByteArray=r,t.fromByteArray=o}(e)},function(t,e){var r={}.toString;t.exports=Array.isArray||function(t){return"[object Array]"==r.call(t)}},function(t,e,r){var n,o,i;!function(a,s){o=[t,r(27)],n=s,i="function"==typeof n?n.apply(e,o):n,!(void 0!==i&&(t.exports=i))}(this,function(t,e){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var o=r(e),i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},a=function(){function t(t,e){for(var r=0;ra?r=o(t).update(r).digest():r.length>5]|=128<>>9<<4)+14]=e;for(var r=1732584193,n=-271733879,o=-1732584194,f=271733878,l=0;l>16)+(e>>16)+(r>>16);return n<<16|65535&r}function f(t,e){return t<>>32-e}var l=r(10);t.exports=function(t){return l.hash(t,n,16)}},function(t,e,r){var n=r(24);t.exports=function(t,e){e=e||{};var r=n(t);return e.pbkdf2=r.pbkdf2,e.pbkdf2Sync=r.pbkdf2Sync,e}},function(t,e,r){(function(e,n){!function(){var o=("undefined"==typeof window?e:window)||{};_crypto=o.crypto||o.msCrypto||r(35),t.exports=function(t){if(_crypto.getRandomValues){var e=new n(t);return _crypto.getRandomValues(e),e}if(_crypto.randomBytes)return _crypto.randomBytes(t);throw new Error("secure random number generation not supported by this browser\nuse chrome, FireFox or Internet Explorer 11")}}()}).call(e,function(){return this}(),r(1).Buffer)},function(t,e,r){function n(t,e,r,n,i){var a=o.apply(this,arguments);return t.addEventListener(r,a,i),{destroy:function(){t.removeEventListener(r,a,i)}}}function o(t,e,r,n){return function(r){r.delegateTarget=i(r.target,e,!0),r.delegateTarget&&n.call(t,r)}}var i=r(8);t.exports=n},function(t,e){},,function(t,e){e.node=function(t){return void 0!==t&&t instanceof HTMLElement&&1===t.nodeType},e.nodeList=function(t){var r=Object.prototype.toString.call(t);return void 0!==t&&("[object NodeList]"===r||"[object HTMLCollection]"===r)&&"length"in t&&(0===t.length||e.node(t[0]))},e.string=function(t){return"string"==typeof t||t instanceof String},e.fn=function(t){var e=Object.prototype.toString.call(t);return"[object Function]"===e}},function(t,e,r){function n(t,e,r){if(!t&&!e&&!r)throw new Error("Missing required arguments");if(!s.string(e))throw new TypeError("Second argument must be a String");if(!s.fn(r))throw new TypeError("Third argument must be a Function");if(s.node(t))return o(t,e,r);if(s.nodeList(t))return i(t,e,r);if(s.string(t))return a(t,e,r);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function o(t,e,r){return t.addEventListener(e,r),{destroy:function(){t.removeEventListener(e,r)}}}function i(t,e,r){return Array.prototype.forEach.call(t,function(t){t.addEventListener(e,r)}),{destroy:function(){Array.prototype.forEach.call(t,function(t){t.removeEventListener(e,r)})}}}function a(t,e,r){return u(document.body,t,e,r)}var s=r(18),u=r(15);t.exports=n},function(t,e){e.read=function(t,e,r,n,o){var i,a,s=8*o-n-1,u=(1<>1,f=-7,l=r?o-1:0,h=r?-1:1,p=t[e+l];for(l+=h,i=p&(1<<-f)-1,p>>=-f,f+=s;f>0;i=256*i+t[e+l],l+=h,f-=8);for(a=i&(1<<-f)-1,i>>=-f,f+=n;f>0;a=256*a+t[e+l],l+=h,f-=8);if(0===i)i=1-c;else{if(i===u)return a?NaN:(p?-1:1)*(1/0);a+=Math.pow(2,n),i-=c}return(p?-1:1)*a*Math.pow(2,i-n)},e.write=function(t,e,r,n,o,i){var a,s,u,c=8*i-o-1,f=(1<>1,h=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:i-1,d=n?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=f):(a=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-a))<1&&(a--,u*=2),e+=a+l>=1?h/u:h*Math.pow(2,1-l),e*u>=2&&(a++,u/=2),a+l>=f?(s=0,a=f):a+l>=1?(s=(e*u-1)*Math.pow(2,o),a+=l):(s=e*Math.pow(2,l-1)*Math.pow(2,o),a=0));o>=8;t[r+p]=255&s,p+=d,s/=256,o-=8);for(a=a<0;t[r+p]=255&a,p+=d,a/=256,c-=8);t[r+p-d]|=128*g}},function(t,e){"function"==typeof Object.create?t.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:t.exports=function(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}},function(t,e,r){"use strict";function n(t){return t&&t.__esModule?t:{"default":t}}function o(t,e,r,n){return new Promise(function(o,s){t&&e&&r||s("generatePassword invalid parameter"),a(t,e).then(function(t){o(i(t,r,n))})})}function i(t,e,r){var n=s(t,e,r),o=u(r.password.settings);return c(n,o)}function a(t,e){return new Promise(function(r,n){t&&e||n("encryptLogin parameter could not be empty");var o=8192,i=32;d["default"].pbkdf2(e,t,o,i,"sha256",function(t,e){t?n("error in pbkdf2"):r(e.toString("hex"))})})}function s(t,e){var r=arguments.length<=2||void 0===arguments[2]?{}:arguments[2],n=r.password,o=void 0===n?{length:12}:n,i=r.counter,a=void 0===i?1:i,s=e+a.toString(),u=d["default"].createHmac("sha256",t).update(s).digest("hex");return u.substring(0,o.length)}function u(){var t=arguments.length<=0||void 0===arguments[0]?["strong"]:arguments[0],e={lowercase:{value:"vc",order:1},uppercase:{value:"VC",order:2},numbers:{value:"n",order:3},symbols:{value:"s",order:4},strong:{value:"Cvcvns",order:5}};return t.map(function(t){return e[t]}).sort(function(t,e){return t.order>e.order}).map(function(t){return t.value}).join("")}function c(t,e){var r="";return f(t).forEach(function(t,n){var o=l(e,n);r+=h(o,t)}),r}function f(t){for(var e=[],r=0;r(Math.pow(2,32)-1)*s))throw new TypeError("keylen exceeds maximum length");d.copy(c,0,0,s);for(var g=1;g1)for(var r=1;r>>32-e}function u(t){var r=[1732584193,4023233417,2562383102,271733878,3285377520];"string"==typeof t&&(t=new e(t,"utf8"));var n=g(t),o=8*t.length,i=8*t.length;n[o>>>5]|=128<<24-o%32,n[(o+64>>>9<<4)+14]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8);for(var a=0;a>>24)|4278255360&(s<<24|s>>>8)}var u=m(r);return new e(u)}t.exports=u;/** @preserve (c) 2012 by Cédric Mesnil. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: @@ -15,5 +15,5 @@ target:this.target(e),text:this.text(e),trigger:e,emitter:this})},e.prototype.de THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -var c=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],f=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],l=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],h=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],p=[0,1518500249,1859775393,2400959708,2840853838],d=[1352829926,1548603684,1836072691,2053994217,0],g=function(t){for(var e=[],r=0,n=0;r>>5]|=t[r]<<24-n%32;return e},m=function(t){for(var e=[],r=0;r<32*t.length;r+=8)e.push(t[r>>>5]>>>24-r%32&255);return e},y=function(t,e,u){for(var g=0;g<16;g++){var m=u+g,y=e[m];e[m]=16711935&(y<<8|y>>>24)|4278255360&(y<<24|y>>>8)}var v,w,b,E,_,B,k,I,x,A;B=v=t[0],k=w=t[1],I=b=t[2],x=E=t[3],A=_=t[4];for(var S,g=0;g<80;g+=1)S=v+e[u+c[g]]|0,S+=g<16?r(w,b,E)+p[0]:g<32?n(w,b,E)+p[1]:g<48?o(w,b,E)+p[2]:g<64?i(w,b,E)+p[3]:a(w,b,E)+p[4],S=0|S,S=s(S,l[g]),S=S+_|0,v=_,_=E,E=s(b,10),b=w,w=S,S=B+e[u+f[g]]|0,S+=g<16?a(k,I,x)+d[0]:g<32?i(k,I,x)+d[1]:g<48?o(k,I,x)+d[2]:g<64?n(k,I,x)+d[3]:r(k,I,x)+d[4],S=0|S,S=s(S,h[g]),S=S+A|0,B=A,A=x,x=s(I,10),I=k,k=S;S=t[1]+b+x|0,t[1]=t[2]+E+A|0,t[2]=t[3]+_+B|0,t[3]=t[4]+v+k|0,t[4]=t[0]+w+I|0,t[0]=S}}).call(e,r(1).Buffer)},function(t,e){function r(t){var e;if("INPUT"===t.nodeName||"TEXTAREA"===t.nodeName)t.focus(),t.setSelectionRange(0,t.value.length),e=t.value;else{t.hasAttribute("contenteditable")&&t.focus();var r=window.getSelection(),n=document.createRange();n.selectNodeContents(t),r.removeAllRanges(),r.addRange(n),e=r.toString()}return e}t.exports=r},function(t,e){t.exports=function(t){function e(e,r){this._block=new t(e),this._finalSize=r,this._blockSize=e,this._len=0,this._s=0}return e.prototype.init=function(){this._s=0,this._len=0},e.prototype.update=function(e,r){"string"==typeof e&&(r=r||"utf8",e=new t(e,r));for(var n=this._len+=e.length,o=this._s=this._s||0,i=0,a=this._block;o=8*this._finalSize&&(this._update(this._block),this._block.fill(0)),this._block.writeInt32BE(e,this._blockSize-4);var r=this._update(this._block)||this._hash();return t?r.toString(t):r},e.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e}},function(t,e,r){var e=t.exports=function(t){var r=e[t];if(!r)throw new Error(t+" is not supported (we accept pull requests)");return new r},n=r(1).Buffer,o=r(28)(n);e.sha1=r(30)(n,o),e.sha256=r(31)(n,o),e.sha512=r(32)(n,o)},function(t,e,r){var n=r(2).inherits;t.exports=function(t,e){function r(){return d.length?d.pop().init():this instanceof r?(this._w=p,e.call(this,64,56),this._h=null,void this.init()):new r}function o(t,e,r,n){return t<20?e&r|~e&n:t<40?e^r^n:t<60?e&r|e&n|r&n:e^r^n}function i(t){return t<20?1518500249:t<40?1859775393:t<60?-1894007588:-899497514}function a(t,e){return t+e|0}function s(t,e){return t<>>32-e}var u=0,c=4,f=8,l=12,h=16,p=new("undefined"==typeof Int32Array?Array:Int32Array)(80),d=[];return n(r,e),r.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,e.prototype.init.call(this),this},r.prototype._POOL=d,r.prototype._update=function(t){var e,r,n,u,c,f,l,h,p,d;e=f=this._a,r=l=this._b,n=h=this._c,u=p=this._d,c=d=this._e;for(var g=this._w,m=0;m<80;m++){var y=g[m]=m<16?t.readInt32BE(4*m):s(g[m-3]^g[m-8]^g[m-14]^g[m-16],1),v=a(a(s(e,5),o(m,r,n,u)),a(a(c,y),i(m)));c=u,u=n,n=s(r,30),r=e,e=v}this._a=a(e,f),this._b=a(r,l),this._c=a(n,h),this._d=a(u,p),this._e=a(c,d)},r.prototype._hash=function(){d.length<100&&d.push(this);var e=new t(20);return e.writeInt32BE(0|this._a,u),e.writeInt32BE(0|this._b,c),e.writeInt32BE(0|this._c,f),e.writeInt32BE(0|this._d,l),e.writeInt32BE(0|this._e,h),e},r}},function(t,e,r){var n=r(2).inherits;t.exports=function(t,e){function r(){this.init(),this._w=p,e.call(this,64,56)}function o(t,e){return t>>>e|t<<32-e}function i(t,e){return t>>>e}function a(t,e,r){return t&e^~t&r}function s(t,e,r){return t&e^t&r^e&r}function u(t){return o(t,2)^o(t,13)^o(t,22)}function c(t){return o(t,6)^o(t,11)^o(t,25)}function f(t){return o(t,7)^o(t,18)^i(t,3)}function l(t){return o(t,17)^o(t,19)^i(t,10)}var h=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],p=new Array(64);return n(r,e),r.prototype.init=function(){return this._a=1779033703,this._b=-1150833019,this._c=1013904242,this._d=-1521486534,this._e=1359893119,this._f=-1694144372,this._g=528734635,this._h=1541459225,this._len=this._s=0,this},r.prototype._update=function(t){var e,r,n,o,i,p,d,g,m,y,v=this._w;e=0|this._a,r=0|this._b,n=0|this._c,o=0|this._d,i=0|this._e,p=0|this._f,d=0|this._g,g=0|this._h;for(var w=0;w<64;w++){var b=v[w]=w<16?t.readInt32BE(4*w):l(v[w-2])+v[w-7]+f(v[w-15])+v[w-16];m=g+c(i)+a(i,p,d)+h[w]+b,y=u(e)+s(e,r,n),g=d,d=p,p=i,i=o+m,o=n,n=r,r=e,e=m+y}this._a=e+this._a|0,this._b=r+this._b|0,this._c=n+this._c|0,this._d=o+this._d|0,this._e=i+this._e|0,this._f=p+this._f|0,this._g=d+this._g|0,this._h=g+this._h|0},r.prototype._hash=function(){var e=new t(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},r}},function(t,e,r){var n=r(2).inherits;t.exports=function(t,e){function r(){this.init(),this._w=u,e.call(this,128,112)}function o(t,e,r){return t>>>r|e<<32-r}function i(t,e,r){return t&e^~t&r}function a(t,e,r){return t&e^t&r^e&r}var s=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],u=new Array(160);return n(r,e),r.prototype.init=function(){return this._a=1779033703,this._b=-1150833019,this._c=1013904242,this._d=-1521486534,this._e=1359893119,this._f=-1694144372,this._g=528734635,this._h=1541459225,this._al=-205731576,this._bl=-2067093701,this._cl=-23791573,this._dl=1595750129,this._el=-1377402159,this._fl=725511199,this._gl=-79577749,this._hl=327033209,this._len=this._s=0,this},r.prototype._update=function(t){var e,r,n,u,c,f,l,h,p,d,g,m,y,v,w,b,E=this._w;e=0|this._a,r=0|this._b,n=0|this._c,u=0|this._d,c=0|this._e,f=0|this._f,l=0|this._g,h=0|this._h,p=0|this._al,d=0|this._bl,g=0|this._cl,m=0|this._dl,y=0|this._el,v=0|this._fl,w=0|this._gl,b=0|this._hl;for(var _=0;_<80;_++){var B,k,I=2*_;if(_<16)B=E[I]=t.readInt32BE(4*I),k=E[I+1]=t.readInt32BE(4*I+4);else{var x=E[I-30],A=E[I-30+1],S=o(x,A,1)^o(x,A,8)^x>>>7,T=o(A,x,1)^o(A,x,8)^o(A,x,7);x=E[I-4],A=E[I-4+1];var P=o(x,A,19)^o(A,x,29)^x>>>6,R=o(A,x,19)^o(x,A,29)^o(A,x,6),L=E[I-14],U=E[I-14+1],C=E[I-32],O=E[I-32+1];k=T+U,B=S+L+(k>>>0>>0?1:0),k+=R,B=B+P+(k>>>0>>0?1:0),k+=O,B=B+C+(k>>>0>>0?1:0),E[I]=B,E[I+1]=k}var z=a(e,r,n),D=a(p,d,g),j=o(e,p,28)^o(p,e,2)^o(p,e,7),M=o(p,e,28)^o(e,p,2)^o(e,p,7),Y=o(c,y,14)^o(c,y,18)^o(y,c,9),F=o(y,c,14)^o(y,c,18)^o(c,y,9),N=s[I],H=s[I+1],q=i(c,f,l),J=i(y,v,w),V=b+F,G=h+Y+(V>>>0>>0?1:0);V+=J,G=G+q+(V>>>0>>0?1:0),V+=H,G=G+N+(V>>>0>>0?1:0),V+=k,G=G+B+(V>>>0>>0?1:0);var X=M+D,Z=j+z+(X>>>0>>0?1:0);h=l,b=w,l=f,w=v,f=c,v=y,y=m+V|0,c=u+G+(y>>>0>>0?1:0)|0,u=n,m=g,n=r,g=d,r=e,d=p,p=V+X|0,e=G+Z+(p>>>0>>0?1:0)|0}this._al=this._al+p|0,this._bl=this._bl+d|0,this._cl=this._cl+g|0,this._dl=this._dl+m|0,this._el=this._el+y|0,this._fl=this._fl+v|0,this._gl=this._gl+w|0,this._hl=this._hl+b|0,this._a=this._a+e+(this._al>>>0

>>0?1:0)|0,this._b=this._b+r+(this._bl>>>0>>0?1:0)|0,this._c=this._c+n+(this._cl>>>0>>0?1:0)|0,this._d=this._d+u+(this._dl>>>0>>0?1:0)|0,this._e=this._e+c+(this._el>>>0>>0?1:0)|0,this._f=this._f+f+(this._fl>>>0>>0?1:0)|0,this._g=this._g+l+(this._gl>>>0>>0?1:0)|0,this._h=this._h+h+(this._hl>>>0>>0?1:0)|0},r.prototype._hash=function(){function e(t,e,n){r.writeInt32BE(t,n),r.writeInt32BE(e,n+4)}var r=new t(64);return e(this._a,this._al,0),e(this._b,this._bl,8),e(this._c,this._cl,16),e(this._d,this._dl,24),e(this._e,this._el,32),e(this._f,this._fl,40),e(this._g,this._gl,48),e(this._h,this._hl,56),r},r}},function(t,e){function r(){}r.prototype={on:function(t,e,r){var n=this.e||(this.e={});return(n[t]||(n[t]=[])).push({fn:e,ctx:r}),this},once:function(t,e,r){function n(){o.off(t,n),e.apply(r,arguments)}var o=this;return n._=e,this.on(t,n,r)},emit:function(t){var e=[].slice.call(arguments,1),r=((this.e||(this.e={}))[t]||[]).slice(),n=0,o=r.length;for(n;n>>5]|=t[r]<<24-n%32;return e},m=function(t){for(var e=[],r=0;r<32*t.length;r+=8)e.push(t[r>>>5]>>>24-r%32&255);return e},y=function(t,e,u){for(var g=0;g<16;g++){var m=u+g,y=e[m];e[m]=16711935&(y<<8|y>>>24)|4278255360&(y<<24|y>>>8)}var w,v,b,_,E,k,B,A,I,x;k=w=t[0],B=v=t[1],A=b=t[2],I=_=t[3],x=E=t[4];for(var S,g=0;g<80;g+=1)S=w+e[u+c[g]]|0,S+=g<16?r(v,b,_)+p[0]:g<32?n(v,b,_)+p[1]:g<48?o(v,b,_)+p[2]:g<64?i(v,b,_)+p[3]:a(v,b,_)+p[4],S=0|S,S=s(S,l[g]),S=S+E|0,w=E,E=_,_=s(b,10),b=v,v=S,S=k+e[u+f[g]]|0,S+=g<16?a(B,A,I)+d[0]:g<32?i(B,A,I)+d[1]:g<48?o(B,A,I)+d[2]:g<64?n(B,A,I)+d[3]:r(B,A,I)+d[4],S=0|S,S=s(S,h[g]),S=S+x|0,k=x,x=I,I=s(A,10),A=B,B=S;S=t[1]+b+I|0,t[1]=t[2]+_+x|0,t[2]=t[3]+E+k|0,t[3]=t[4]+w+B|0,t[4]=t[0]+v+A|0,t[0]=S}}).call(e,r(1).Buffer)},function(t,e){function r(t){var e;if("INPUT"===t.nodeName||"TEXTAREA"===t.nodeName)t.focus(),t.setSelectionRange(0,t.value.length),e=t.value;else{t.hasAttribute("contenteditable")&&t.focus();var r=window.getSelection(),n=document.createRange();n.selectNodeContents(t),r.removeAllRanges(),r.addRange(n),e=r.toString()}return e}t.exports=r},function(t,e){t.exports=function(t){function e(e,r){this._block=new t(e),this._finalSize=r,this._blockSize=e,this._len=0,this._s=0}return e.prototype.init=function(){this._s=0,this._len=0},e.prototype.update=function(e,r){"string"==typeof e&&(r=r||"utf8",e=new t(e,r));for(var n=this._len+=e.length,o=this._s=this._s||0,i=0,a=this._block;o=8*this._finalSize&&(this._update(this._block),this._block.fill(0)),this._block.writeInt32BE(e,this._blockSize-4);var r=this._update(this._block)||this._hash();return t?r.toString(t):r},e.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e}},function(t,e,r){var e=t.exports=function(t){var r=e[t];if(!r)throw new Error(t+" is not supported (we accept pull requests)");return new r},n=r(1).Buffer,o=r(28)(n);e.sha1=r(30)(n,o),e.sha256=r(31)(n,o),e.sha512=r(32)(n,o)},function(t,e,r){var n=r(2).inherits;t.exports=function(t,e){function r(){return d.length?d.pop().init():this instanceof r?(this._w=p,e.call(this,64,56),this._h=null,void this.init()):new r}function o(t,e,r,n){return t<20?e&r|~e&n:t<40?e^r^n:t<60?e&r|e&n|r&n:e^r^n}function i(t){return t<20?1518500249:t<40?1859775393:t<60?-1894007588:-899497514}function a(t,e){return t+e|0}function s(t,e){return t<>>32-e}var u=0,c=4,f=8,l=12,h=16,p=new("undefined"==typeof Int32Array?Array:Int32Array)(80),d=[];return n(r,e),r.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,e.prototype.init.call(this),this},r.prototype._POOL=d,r.prototype._update=function(t){var e,r,n,u,c,f,l,h,p,d;e=f=this._a,r=l=this._b,n=h=this._c,u=p=this._d,c=d=this._e;for(var g=this._w,m=0;m<80;m++){var y=g[m]=m<16?t.readInt32BE(4*m):s(g[m-3]^g[m-8]^g[m-14]^g[m-16],1),w=a(a(s(e,5),o(m,r,n,u)),a(a(c,y),i(m)));c=u,u=n,n=s(r,30),r=e,e=w}this._a=a(e,f),this._b=a(r,l),this._c=a(n,h),this._d=a(u,p),this._e=a(c,d)},r.prototype._hash=function(){d.length<100&&d.push(this);var e=new t(20);return e.writeInt32BE(0|this._a,u),e.writeInt32BE(0|this._b,c),e.writeInt32BE(0|this._c,f),e.writeInt32BE(0|this._d,l),e.writeInt32BE(0|this._e,h),e},r}},function(t,e,r){var n=r(2).inherits;t.exports=function(t,e){function r(){this.init(),this._w=p,e.call(this,64,56)}function o(t,e){return t>>>e|t<<32-e}function i(t,e){return t>>>e}function a(t,e,r){return t&e^~t&r}function s(t,e,r){return t&e^t&r^e&r}function u(t){return o(t,2)^o(t,13)^o(t,22)}function c(t){return o(t,6)^o(t,11)^o(t,25)}function f(t){return o(t,7)^o(t,18)^i(t,3)}function l(t){return o(t,17)^o(t,19)^i(t,10)}var h=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],p=new Array(64);return n(r,e),r.prototype.init=function(){return this._a=1779033703,this._b=-1150833019,this._c=1013904242,this._d=-1521486534,this._e=1359893119,this._f=-1694144372,this._g=528734635,this._h=1541459225,this._len=this._s=0,this},r.prototype._update=function(t){var e,r,n,o,i,p,d,g,m,y,w=this._w;e=0|this._a,r=0|this._b,n=0|this._c,o=0|this._d,i=0|this._e,p=0|this._f,d=0|this._g,g=0|this._h;for(var v=0;v<64;v++){var b=w[v]=v<16?t.readInt32BE(4*v):l(w[v-2])+w[v-7]+f(w[v-15])+w[v-16];m=g+c(i)+a(i,p,d)+h[v]+b,y=u(e)+s(e,r,n),g=d,d=p,p=i,i=o+m,o=n,n=r,r=e,e=m+y}this._a=e+this._a|0,this._b=r+this._b|0,this._c=n+this._c|0,this._d=o+this._d|0,this._e=i+this._e|0,this._f=p+this._f|0,this._g=d+this._g|0,this._h=g+this._h|0},r.prototype._hash=function(){var e=new t(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},r}},function(t,e,r){var n=r(2).inherits;t.exports=function(t,e){function r(){this.init(),this._w=u,e.call(this,128,112)}function o(t,e,r){return t>>>r|e<<32-r}function i(t,e,r){return t&e^~t&r}function a(t,e,r){return t&e^t&r^e&r}var s=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],u=new Array(160);return n(r,e),r.prototype.init=function(){return this._a=1779033703,this._b=-1150833019,this._c=1013904242,this._d=-1521486534,this._e=1359893119,this._f=-1694144372,this._g=528734635,this._h=1541459225,this._al=-205731576,this._bl=-2067093701,this._cl=-23791573,this._dl=1595750129,this._el=-1377402159,this._fl=725511199,this._gl=-79577749,this._hl=327033209,this._len=this._s=0,this},r.prototype._update=function(t){var e,r,n,u,c,f,l,h,p,d,g,m,y,w,v,b,_=this._w;e=0|this._a,r=0|this._b,n=0|this._c,u=0|this._d,c=0|this._e,f=0|this._f,l=0|this._g,h=0|this._h,p=0|this._al,d=0|this._bl,g=0|this._cl,m=0|this._dl,y=0|this._el,w=0|this._fl,v=0|this._gl,b=0|this._hl;for(var E=0;E<80;E++){var k,B,A=2*E;if(E<16)k=_[A]=t.readInt32BE(4*A),B=_[A+1]=t.readInt32BE(4*A+4);else{var I=_[A-30],x=_[A-30+1],S=o(I,x,1)^o(I,x,8)^I>>>7,T=o(x,I,1)^o(x,I,8)^o(x,I,7);I=_[A-4],x=_[A-4+1];var P=o(I,x,19)^o(x,I,29)^I>>>6,R=o(x,I,19)^o(I,x,29)^o(x,I,6),L=_[A-14],U=_[A-14+1],C=_[A-32],O=_[A-32+1];B=T+U,k=S+L+(B>>>0>>0?1:0),B+=R,k=k+P+(B>>>0>>0?1:0),B+=O,k=k+C+(B>>>0>>0?1:0),_[A]=k,_[A+1]=B}var z=a(e,r,n),D=a(p,d,g),j=o(e,p,28)^o(p,e,2)^o(p,e,7),M=o(p,e,28)^o(e,p,2)^o(e,p,7),Y=o(c,y,14)^o(c,y,18)^o(y,c,9),F=o(y,c,14)^o(y,c,18)^o(c,y,9),N=s[A],H=s[A+1],q=i(c,f,l),J=i(y,w,v),V=b+F,G=h+Y+(V>>>0>>0?1:0);V+=J,G=G+q+(V>>>0>>0?1:0),V+=H,G=G+N+(V>>>0>>0?1:0),V+=B,G=G+k+(V>>>0>>0?1:0);var X=M+D,Z=j+z+(X>>>0>>0?1:0);h=l,b=v,l=f,v=w,f=c,w=y,y=m+V|0,c=u+G+(y>>>0>>0?1:0)|0,u=n,m=g,n=r,g=d,r=e,d=p,p=V+X|0,e=G+Z+(p>>>0>>0?1:0)|0}this._al=this._al+p|0,this._bl=this._bl+d|0,this._cl=this._cl+g|0,this._dl=this._dl+m|0,this._el=this._el+y|0,this._fl=this._fl+w|0,this._gl=this._gl+v|0,this._hl=this._hl+b|0,this._a=this._a+e+(this._al>>>0

>>0?1:0)|0,this._b=this._b+r+(this._bl>>>0>>0?1:0)|0,this._c=this._c+n+(this._cl>>>0>>0?1:0)|0,this._d=this._d+u+(this._dl>>>0>>0?1:0)|0,this._e=this._e+c+(this._el>>>0>>0?1:0)|0,this._f=this._f+f+(this._fl>>>0>>0?1:0)|0,this._g=this._g+l+(this._gl>>>0>>0?1:0)|0,this._h=this._h+h+(this._hl>>>0>>0?1:0)|0},r.prototype._hash=function(){function e(t,e,n){r.writeInt32BE(t,n),r.writeInt32BE(e,n+4)}var r=new t(64);return e(this._a,this._al,0),e(this._b,this._bl,8),e(this._c,this._cl,16),e(this._d,this._dl,24),e(this._e,this._el,32),e(this._f,this._fl,40),e(this._g,this._gl,48),e(this._h,this._hl,56),r},r}},function(t,e){function r(){}r.prototype={on:function(t,e,r){var n=this.e||(this.e={});return(n[t]||(n[t]=[])).push({fn:e,ctx:r}),this},once:function(t,e,r){function n(){o.off(t,n),e.apply(r,arguments)}var o=this;return n._=e,this.on(t,n,r)},emit:function(t){var e=[].slice.call(arguments,1),r=((this.e||(this.e={}))[t]||[]).slice(),n=0,o=r.length;for(n;n 3) {\n\t closeHelp();\n\t return;\n\t }\n\t if (index == 3) {\n\t document.getElementById('nextHelpButton').innerText = 'LET\\'S TRY';\n\t }\n\t currentBlock.style.display = 'none';\n\t nextBlock.style.display = 'block';\n\t previousBlock = currentBlock;\n\t currentBlock = nextBlock;\n\t index += 1;\n\t nextBlock = document.getElementById('help-block-' + index.toString());\n\t}\n\t\n\tfunction closeHelp() {\n\t hide('help-block');\n\t hide('help-slide');\n\t resetHelp();\n\t document.getElementById('passwordGenerator').style.display = 'block';\n\t document.getElementById('login').focus();\n\t}\n\n/***/ },\n/* 1 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(Buffer, global) {/*!\n\t * The buffer module from node.js, for the browser.\n\t *\n\t * @author Feross Aboukhadijeh \n\t * @license MIT\n\t */\n\t/* eslint-disable no-proto */\n\t\n\t'use strict'\n\t\n\tvar base64 = __webpack_require__(4)\n\tvar ieee754 = __webpack_require__(20)\n\tvar isArray = __webpack_require__(5)\n\t\n\texports.Buffer = Buffer\n\texports.SlowBuffer = SlowBuffer\n\texports.INSPECT_MAX_BYTES = 50\n\tBuffer.poolSize = 8192 // not used by this implementation\n\t\n\tvar rootParent = {}\n\t\n\t/**\n\t * If `Buffer.TYPED_ARRAY_SUPPORT`:\n\t * === true Use Uint8Array implementation (fastest)\n\t * === false Use Object implementation (most compatible, even IE6)\n\t *\n\t * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n\t * Opera 11.6+, iOS 4.2+.\n\t *\n\t * Due to various browser bugs, sometimes the Object implementation will be used even\n\t * when the browser supports typed arrays.\n\t *\n\t * Note:\n\t *\n\t * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,\n\t * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.\n\t *\n\t * - Safari 5-7 lacks support for changing the `Object.prototype.constructor` property\n\t * on objects.\n\t *\n\t * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.\n\t *\n\t * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of\n\t * incorrect length in some situations.\n\t\n\t * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they\n\t * get the Object implementation, which is slower but behaves correctly.\n\t */\n\tBuffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined\n\t ? global.TYPED_ARRAY_SUPPORT\n\t : typedArraySupport()\n\t\n\tfunction typedArraySupport () {\n\t function Bar () {}\n\t try {\n\t var arr = new Uint8Array(1)\n\t arr.foo = function () { return 42 }\n\t arr.constructor = Bar\n\t return arr.foo() === 42 && // typed array instances can be augmented\n\t arr.constructor === Bar && // constructor can be set\n\t typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`\n\t arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`\n\t } catch (e) {\n\t return false\n\t }\n\t}\n\t\n\tfunction kMaxLength () {\n\t return Buffer.TYPED_ARRAY_SUPPORT\n\t ? 0x7fffffff\n\t : 0x3fffffff\n\t}\n\t\n\t/**\n\t * Class: Buffer\n\t * =============\n\t *\n\t * The Buffer constructor returns instances of `Uint8Array` that are augmented\n\t * with function properties for all the node `Buffer` API functions. We use\n\t * `Uint8Array` so that square bracket notation works as expected -- it returns\n\t * a single octet.\n\t *\n\t * By augmenting the instances, we can avoid modifying the `Uint8Array`\n\t * prototype.\n\t */\n\tfunction Buffer (arg) {\n\t if (!(this instanceof Buffer)) {\n\t // Avoid going through an ArgumentsAdaptorTrampoline in the common case.\n\t if (arguments.length > 1) return new Buffer(arg, arguments[1])\n\t return new Buffer(arg)\n\t }\n\t\n\t if (!Buffer.TYPED_ARRAY_SUPPORT) {\n\t this.length = 0\n\t this.parent = undefined\n\t }\n\t\n\t // Common case.\n\t if (typeof arg === 'number') {\n\t return fromNumber(this, arg)\n\t }\n\t\n\t // Slightly less common case.\n\t if (typeof arg === 'string') {\n\t return fromString(this, arg, arguments.length > 1 ? arguments[1] : 'utf8')\n\t }\n\t\n\t // Unusual.\n\t return fromObject(this, arg)\n\t}\n\t\n\tfunction fromNumber (that, length) {\n\t that = allocate(that, length < 0 ? 0 : checked(length) | 0)\n\t if (!Buffer.TYPED_ARRAY_SUPPORT) {\n\t for (var i = 0; i < length; i++) {\n\t that[i] = 0\n\t }\n\t }\n\t return that\n\t}\n\t\n\tfunction fromString (that, string, encoding) {\n\t if (typeof encoding !== 'string' || encoding === '') encoding = 'utf8'\n\t\n\t // Assumption: byteLength() return value is always < kMaxLength.\n\t var length = byteLength(string, encoding) | 0\n\t that = allocate(that, length)\n\t\n\t that.write(string, encoding)\n\t return that\n\t}\n\t\n\tfunction fromObject (that, object) {\n\t if (Buffer.isBuffer(object)) return fromBuffer(that, object)\n\t\n\t if (isArray(object)) return fromArray(that, object)\n\t\n\t if (object == null) {\n\t throw new TypeError('must start with number, buffer, array or string')\n\t }\n\t\n\t if (typeof ArrayBuffer !== 'undefined') {\n\t if (object.buffer instanceof ArrayBuffer) {\n\t return fromTypedArray(that, object)\n\t }\n\t if (object instanceof ArrayBuffer) {\n\t return fromArrayBuffer(that, object)\n\t }\n\t }\n\t\n\t if (object.length) return fromArrayLike(that, object)\n\t\n\t return fromJsonObject(that, object)\n\t}\n\t\n\tfunction fromBuffer (that, buffer) {\n\t var length = checked(buffer.length) | 0\n\t that = allocate(that, length)\n\t buffer.copy(that, 0, 0, length)\n\t return that\n\t}\n\t\n\tfunction fromArray (that, array) {\n\t var length = checked(array.length) | 0\n\t that = allocate(that, length)\n\t for (var i = 0; i < length; i += 1) {\n\t that[i] = array[i] & 255\n\t }\n\t return that\n\t}\n\t\n\t// Duplicate of fromArray() to keep fromArray() monomorphic.\n\tfunction fromTypedArray (that, array) {\n\t var length = checked(array.length) | 0\n\t that = allocate(that, length)\n\t // Truncating the elements is probably not what people expect from typed\n\t // arrays with BYTES_PER_ELEMENT > 1 but it's compatible with the behavior\n\t // of the old Buffer constructor.\n\t for (var i = 0; i < length; i += 1) {\n\t that[i] = array[i] & 255\n\t }\n\t return that\n\t}\n\t\n\tfunction fromArrayBuffer (that, array) {\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t // Return an augmented `Uint8Array` instance, for best performance\n\t array.byteLength\n\t that = Buffer._augment(new Uint8Array(array))\n\t } else {\n\t // Fallback: Return an object instance of the Buffer class\n\t that = fromTypedArray(that, new Uint8Array(array))\n\t }\n\t return that\n\t}\n\t\n\tfunction fromArrayLike (that, array) {\n\t var length = checked(array.length) | 0\n\t that = allocate(that, length)\n\t for (var i = 0; i < length; i += 1) {\n\t that[i] = array[i] & 255\n\t }\n\t return that\n\t}\n\t\n\t// Deserialize { type: 'Buffer', data: [1,2,3,...] } into a Buffer object.\n\t// Returns a zero-length buffer for inputs that don't conform to the spec.\n\tfunction fromJsonObject (that, object) {\n\t var array\n\t var length = 0\n\t\n\t if (object.type === 'Buffer' && isArray(object.data)) {\n\t array = object.data\n\t length = checked(array.length) | 0\n\t }\n\t that = allocate(that, length)\n\t\n\t for (var i = 0; i < length; i += 1) {\n\t that[i] = array[i] & 255\n\t }\n\t return that\n\t}\n\t\n\tif (Buffer.TYPED_ARRAY_SUPPORT) {\n\t Buffer.prototype.__proto__ = Uint8Array.prototype\n\t Buffer.__proto__ = Uint8Array\n\t} else {\n\t // pre-set for values that may exist in the future\n\t Buffer.prototype.length = undefined\n\t Buffer.prototype.parent = undefined\n\t}\n\t\n\tfunction allocate (that, length) {\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t // Return an augmented `Uint8Array` instance, for best performance\n\t that = Buffer._augment(new Uint8Array(length))\n\t that.__proto__ = Buffer.prototype\n\t } else {\n\t // Fallback: Return an object instance of the Buffer class\n\t that.length = length\n\t that._isBuffer = true\n\t }\n\t\n\t var fromPool = length !== 0 && length <= Buffer.poolSize >>> 1\n\t if (fromPool) that.parent = rootParent\n\t\n\t return that\n\t}\n\t\n\tfunction checked (length) {\n\t // Note: cannot use `length < kMaxLength` here because that fails when\n\t // length is NaN (which is otherwise coerced to zero.)\n\t if (length >= kMaxLength()) {\n\t throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n\t 'size: 0x' + kMaxLength().toString(16) + ' bytes')\n\t }\n\t return length | 0\n\t}\n\t\n\tfunction SlowBuffer (subject, encoding) {\n\t if (!(this instanceof SlowBuffer)) return new SlowBuffer(subject, encoding)\n\t\n\t var buf = new Buffer(subject, encoding)\n\t delete buf.parent\n\t return buf\n\t}\n\t\n\tBuffer.isBuffer = function isBuffer (b) {\n\t return !!(b != null && b._isBuffer)\n\t}\n\t\n\tBuffer.compare = function compare (a, b) {\n\t if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n\t throw new TypeError('Arguments must be Buffers')\n\t }\n\t\n\t if (a === b) return 0\n\t\n\t var x = a.length\n\t var y = b.length\n\t\n\t var i = 0\n\t var len = Math.min(x, y)\n\t while (i < len) {\n\t if (a[i] !== b[i]) break\n\t\n\t ++i\n\t }\n\t\n\t if (i !== len) {\n\t x = a[i]\n\t y = b[i]\n\t }\n\t\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t}\n\t\n\tBuffer.isEncoding = function isEncoding (encoding) {\n\t switch (String(encoding).toLowerCase()) {\n\t case 'hex':\n\t case 'utf8':\n\t case 'utf-8':\n\t case 'ascii':\n\t case 'binary':\n\t case 'base64':\n\t case 'raw':\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return true\n\t default:\n\t return false\n\t }\n\t}\n\t\n\tBuffer.concat = function concat (list, length) {\n\t if (!isArray(list)) throw new TypeError('list argument must be an Array of Buffers.')\n\t\n\t if (list.length === 0) {\n\t return new Buffer(0)\n\t }\n\t\n\t var i\n\t if (length === undefined) {\n\t length = 0\n\t for (i = 0; i < list.length; i++) {\n\t length += list[i].length\n\t }\n\t }\n\t\n\t var buf = new Buffer(length)\n\t var pos = 0\n\t for (i = 0; i < list.length; i++) {\n\t var item = list[i]\n\t item.copy(buf, pos)\n\t pos += item.length\n\t }\n\t return buf\n\t}\n\t\n\tfunction byteLength (string, encoding) {\n\t if (typeof string !== 'string') string = '' + string\n\t\n\t var len = string.length\n\t if (len === 0) return 0\n\t\n\t // Use a for loop to avoid recursion\n\t var loweredCase = false\n\t for (;;) {\n\t switch (encoding) {\n\t case 'ascii':\n\t case 'binary':\n\t // Deprecated\n\t case 'raw':\n\t case 'raws':\n\t return len\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8ToBytes(string).length\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return len * 2\n\t case 'hex':\n\t return len >>> 1\n\t case 'base64':\n\t return base64ToBytes(string).length\n\t default:\n\t if (loweredCase) return utf8ToBytes(string).length // assume utf8\n\t encoding = ('' + encoding).toLowerCase()\n\t loweredCase = true\n\t }\n\t }\n\t}\n\tBuffer.byteLength = byteLength\n\t\n\tfunction slowToString (encoding, start, end) {\n\t var loweredCase = false\n\t\n\t start = start | 0\n\t end = end === undefined || end === Infinity ? this.length : end | 0\n\t\n\t if (!encoding) encoding = 'utf8'\n\t if (start < 0) start = 0\n\t if (end > this.length) end = this.length\n\t if (end <= start) return ''\n\t\n\t while (true) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexSlice(this, start, end)\n\t\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Slice(this, start, end)\n\t\n\t case 'ascii':\n\t return asciiSlice(this, start, end)\n\t\n\t case 'binary':\n\t return binarySlice(this, start, end)\n\t\n\t case 'base64':\n\t return base64Slice(this, start, end)\n\t\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return utf16leSlice(this, start, end)\n\t\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = (encoding + '').toLowerCase()\n\t loweredCase = true\n\t }\n\t }\n\t}\n\t\n\tBuffer.prototype.toString = function toString () {\n\t var length = this.length | 0\n\t if (length === 0) return ''\n\t if (arguments.length === 0) return utf8Slice(this, 0, length)\n\t return slowToString.apply(this, arguments)\n\t}\n\t\n\tBuffer.prototype.equals = function equals (b) {\n\t if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n\t if (this === b) return true\n\t return Buffer.compare(this, b) === 0\n\t}\n\t\n\tBuffer.prototype.inspect = function inspect () {\n\t var str = ''\n\t var max = exports.INSPECT_MAX_BYTES\n\t if (this.length > 0) {\n\t str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')\n\t if (this.length > max) str += ' ... '\n\t }\n\t return ''\n\t}\n\t\n\tBuffer.prototype.compare = function compare (b) {\n\t if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n\t if (this === b) return 0\n\t return Buffer.compare(this, b)\n\t}\n\t\n\tBuffer.prototype.indexOf = function indexOf (val, byteOffset) {\n\t if (byteOffset > 0x7fffffff) byteOffset = 0x7fffffff\n\t else if (byteOffset < -0x80000000) byteOffset = -0x80000000\n\t byteOffset >>= 0\n\t\n\t if (this.length === 0) return -1\n\t if (byteOffset >= this.length) return -1\n\t\n\t // Negative offsets start from the end of the buffer\n\t if (byteOffset < 0) byteOffset = Math.max(this.length + byteOffset, 0)\n\t\n\t if (typeof val === 'string') {\n\t if (val.length === 0) return -1 // special case: looking for empty string always fails\n\t return String.prototype.indexOf.call(this, val, byteOffset)\n\t }\n\t if (Buffer.isBuffer(val)) {\n\t return arrayIndexOf(this, val, byteOffset)\n\t }\n\t if (typeof val === 'number') {\n\t if (Buffer.TYPED_ARRAY_SUPPORT && Uint8Array.prototype.indexOf === 'function') {\n\t return Uint8Array.prototype.indexOf.call(this, val, byteOffset)\n\t }\n\t return arrayIndexOf(this, [ val ], byteOffset)\n\t }\n\t\n\t function arrayIndexOf (arr, val, byteOffset) {\n\t var foundIndex = -1\n\t for (var i = 0; byteOffset + i < arr.length; i++) {\n\t if (arr[byteOffset + i] === val[foundIndex === -1 ? 0 : i - foundIndex]) {\n\t if (foundIndex === -1) foundIndex = i\n\t if (i - foundIndex + 1 === val.length) return byteOffset + foundIndex\n\t } else {\n\t foundIndex = -1\n\t }\n\t }\n\t return -1\n\t }\n\t\n\t throw new TypeError('val must be string, number or Buffer')\n\t}\n\t\n\t// `get` is deprecated\n\tBuffer.prototype.get = function get (offset) {\n\t console.log('.get() is deprecated. Access using array indexes instead.')\n\t return this.readUInt8(offset)\n\t}\n\t\n\t// `set` is deprecated\n\tBuffer.prototype.set = function set (v, offset) {\n\t console.log('.set() is deprecated. Access using array indexes instead.')\n\t return this.writeUInt8(v, offset)\n\t}\n\t\n\tfunction hexWrite (buf, string, offset, length) {\n\t offset = Number(offset) || 0\n\t var remaining = buf.length - offset\n\t if (!length) {\n\t length = remaining\n\t } else {\n\t length = Number(length)\n\t if (length > remaining) {\n\t length = remaining\n\t }\n\t }\n\t\n\t // must be an even number of digits\n\t var strLen = string.length\n\t if (strLen % 2 !== 0) throw new Error('Invalid hex string')\n\t\n\t if (length > strLen / 2) {\n\t length = strLen / 2\n\t }\n\t for (var i = 0; i < length; i++) {\n\t var parsed = parseInt(string.substr(i * 2, 2), 16)\n\t if (isNaN(parsed)) throw new Error('Invalid hex string')\n\t buf[offset + i] = parsed\n\t }\n\t return i\n\t}\n\t\n\tfunction utf8Write (buf, string, offset, length) {\n\t return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\t\n\tfunction asciiWrite (buf, string, offset, length) {\n\t return blitBuffer(asciiToBytes(string), buf, offset, length)\n\t}\n\t\n\tfunction binaryWrite (buf, string, offset, length) {\n\t return asciiWrite(buf, string, offset, length)\n\t}\n\t\n\tfunction base64Write (buf, string, offset, length) {\n\t return blitBuffer(base64ToBytes(string), buf, offset, length)\n\t}\n\t\n\tfunction ucs2Write (buf, string, offset, length) {\n\t return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\t\n\tBuffer.prototype.write = function write (string, offset, length, encoding) {\n\t // Buffer#write(string)\n\t if (offset === undefined) {\n\t encoding = 'utf8'\n\t length = this.length\n\t offset = 0\n\t // Buffer#write(string, encoding)\n\t } else if (length === undefined && typeof offset === 'string') {\n\t encoding = offset\n\t length = this.length\n\t offset = 0\n\t // Buffer#write(string, offset[, length][, encoding])\n\t } else if (isFinite(offset)) {\n\t offset = offset | 0\n\t if (isFinite(length)) {\n\t length = length | 0\n\t if (encoding === undefined) encoding = 'utf8'\n\t } else {\n\t encoding = length\n\t length = undefined\n\t }\n\t // legacy write(string, encoding, offset, length) - remove in v0.13\n\t } else {\n\t var swap = encoding\n\t encoding = offset\n\t offset = length | 0\n\t length = swap\n\t }\n\t\n\t var remaining = this.length - offset\n\t if (length === undefined || length > remaining) length = remaining\n\t\n\t if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n\t throw new RangeError('attempt to write outside buffer bounds')\n\t }\n\t\n\t if (!encoding) encoding = 'utf8'\n\t\n\t var loweredCase = false\n\t for (;;) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexWrite(this, string, offset, length)\n\t\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Write(this, string, offset, length)\n\t\n\t case 'ascii':\n\t return asciiWrite(this, string, offset, length)\n\t\n\t case 'binary':\n\t return binaryWrite(this, string, offset, length)\n\t\n\t case 'base64':\n\t // Warning: maxLength not taken into account in base64Write\n\t return base64Write(this, string, offset, length)\n\t\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return ucs2Write(this, string, offset, length)\n\t\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = ('' + encoding).toLowerCase()\n\t loweredCase = true\n\t }\n\t }\n\t}\n\t\n\tBuffer.prototype.toJSON = function toJSON () {\n\t return {\n\t type: 'Buffer',\n\t data: Array.prototype.slice.call(this._arr || this, 0)\n\t }\n\t}\n\t\n\tfunction base64Slice (buf, start, end) {\n\t if (start === 0 && end === buf.length) {\n\t return base64.fromByteArray(buf)\n\t } else {\n\t return base64.fromByteArray(buf.slice(start, end))\n\t }\n\t}\n\t\n\tfunction utf8Slice (buf, start, end) {\n\t end = Math.min(buf.length, end)\n\t var res = []\n\t\n\t var i = start\n\t while (i < end) {\n\t var firstByte = buf[i]\n\t var codePoint = null\n\t var bytesPerSequence = (firstByte > 0xEF) ? 4\n\t : (firstByte > 0xDF) ? 3\n\t : (firstByte > 0xBF) ? 2\n\t : 1\n\t\n\t if (i + bytesPerSequence <= end) {\n\t var secondByte, thirdByte, fourthByte, tempCodePoint\n\t\n\t switch (bytesPerSequence) {\n\t case 1:\n\t if (firstByte < 0x80) {\n\t codePoint = firstByte\n\t }\n\t break\n\t case 2:\n\t secondByte = buf[i + 1]\n\t if ((secondByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n\t if (tempCodePoint > 0x7F) {\n\t codePoint = tempCodePoint\n\t }\n\t }\n\t break\n\t case 3:\n\t secondByte = buf[i + 1]\n\t thirdByte = buf[i + 2]\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n\t if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n\t codePoint = tempCodePoint\n\t }\n\t }\n\t break\n\t case 4:\n\t secondByte = buf[i + 1]\n\t thirdByte = buf[i + 2]\n\t fourthByte = buf[i + 3]\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n\t if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n\t codePoint = tempCodePoint\n\t }\n\t }\n\t }\n\t }\n\t\n\t if (codePoint === null) {\n\t // we did not generate a valid codePoint so insert a\n\t // replacement char (U+FFFD) and advance only 1 byte\n\t codePoint = 0xFFFD\n\t bytesPerSequence = 1\n\t } else if (codePoint > 0xFFFF) {\n\t // encode to utf16 (surrogate pair dance)\n\t codePoint -= 0x10000\n\t res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n\t codePoint = 0xDC00 | codePoint & 0x3FF\n\t }\n\t\n\t res.push(codePoint)\n\t i += bytesPerSequence\n\t }\n\t\n\t return decodeCodePointsArray(res)\n\t}\n\t\n\t// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n\t// the lowest limit is Chrome, with 0x10000 args.\n\t// We go 1 magnitude less, for safety\n\tvar MAX_ARGUMENTS_LENGTH = 0x1000\n\t\n\tfunction decodeCodePointsArray (codePoints) {\n\t var len = codePoints.length\n\t if (len <= MAX_ARGUMENTS_LENGTH) {\n\t return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n\t }\n\t\n\t // Decode in chunks to avoid \"call stack size exceeded\".\n\t var res = ''\n\t var i = 0\n\t while (i < len) {\n\t res += String.fromCharCode.apply(\n\t String,\n\t codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n\t )\n\t }\n\t return res\n\t}\n\t\n\tfunction asciiSlice (buf, start, end) {\n\t var ret = ''\n\t end = Math.min(buf.length, end)\n\t\n\t for (var i = start; i < end; i++) {\n\t ret += String.fromCharCode(buf[i] & 0x7F)\n\t }\n\t return ret\n\t}\n\t\n\tfunction binarySlice (buf, start, end) {\n\t var ret = ''\n\t end = Math.min(buf.length, end)\n\t\n\t for (var i = start; i < end; i++) {\n\t ret += String.fromCharCode(buf[i])\n\t }\n\t return ret\n\t}\n\t\n\tfunction hexSlice (buf, start, end) {\n\t var len = buf.length\n\t\n\t if (!start || start < 0) start = 0\n\t if (!end || end < 0 || end > len) end = len\n\t\n\t var out = ''\n\t for (var i = start; i < end; i++) {\n\t out += toHex(buf[i])\n\t }\n\t return out\n\t}\n\t\n\tfunction utf16leSlice (buf, start, end) {\n\t var bytes = buf.slice(start, end)\n\t var res = ''\n\t for (var i = 0; i < bytes.length; i += 2) {\n\t res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)\n\t }\n\t return res\n\t}\n\t\n\tBuffer.prototype.slice = function slice (start, end) {\n\t var len = this.length\n\t start = ~~start\n\t end = end === undefined ? len : ~~end\n\t\n\t if (start < 0) {\n\t start += len\n\t if (start < 0) start = 0\n\t } else if (start > len) {\n\t start = len\n\t }\n\t\n\t if (end < 0) {\n\t end += len\n\t if (end < 0) end = 0\n\t } else if (end > len) {\n\t end = len\n\t }\n\t\n\t if (end < start) end = start\n\t\n\t var newBuf\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t newBuf = Buffer._augment(this.subarray(start, end))\n\t } else {\n\t var sliceLen = end - start\n\t newBuf = new Buffer(sliceLen, undefined)\n\t for (var i = 0; i < sliceLen; i++) {\n\t newBuf[i] = this[i + start]\n\t }\n\t }\n\t\n\t if (newBuf.length) newBuf.parent = this.parent || this\n\t\n\t return newBuf\n\t}\n\t\n\t/*\n\t * Need to make sure that buffer isn't trying to write out of bounds.\n\t */\n\tfunction checkOffset (offset, ext, length) {\n\t if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n\t if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n\t}\n\t\n\tBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) checkOffset(offset, byteLength, this.length)\n\t\n\t var val = this[offset]\n\t var mul = 1\n\t var i = 0\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul\n\t }\n\t\n\t return val\n\t}\n\t\n\tBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) {\n\t checkOffset(offset, byteLength, this.length)\n\t }\n\t\n\t var val = this[offset + --byteLength]\n\t var mul = 1\n\t while (byteLength > 0 && (mul *= 0x100)) {\n\t val += this[offset + --byteLength] * mul\n\t }\n\t\n\t return val\n\t}\n\t\n\tBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 1, this.length)\n\t return this[offset]\n\t}\n\t\n\tBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 2, this.length)\n\t return this[offset] | (this[offset + 1] << 8)\n\t}\n\t\n\tBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 2, this.length)\n\t return (this[offset] << 8) | this[offset + 1]\n\t}\n\t\n\tBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t\n\t return ((this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16)) +\n\t (this[offset + 3] * 0x1000000)\n\t}\n\t\n\tBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t\n\t return (this[offset] * 0x1000000) +\n\t ((this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t this[offset + 3])\n\t}\n\t\n\tBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) checkOffset(offset, byteLength, this.length)\n\t\n\t var val = this[offset]\n\t var mul = 1\n\t var i = 0\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul\n\t }\n\t mul *= 0x80\n\t\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\t\n\t return val\n\t}\n\t\n\tBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) checkOffset(offset, byteLength, this.length)\n\t\n\t var i = byteLength\n\t var mul = 1\n\t var val = this[offset + --i]\n\t while (i > 0 && (mul *= 0x100)) {\n\t val += this[offset + --i] * mul\n\t }\n\t mul *= 0x80\n\t\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\t\n\t return val\n\t}\n\t\n\tBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 1, this.length)\n\t if (!(this[offset] & 0x80)) return (this[offset])\n\t return ((0xff - this[offset] + 1) * -1)\n\t}\n\t\n\tBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 2, this.length)\n\t var val = this[offset] | (this[offset + 1] << 8)\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t}\n\t\n\tBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 2, this.length)\n\t var val = this[offset + 1] | (this[offset] << 8)\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t}\n\t\n\tBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t\n\t return (this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16) |\n\t (this[offset + 3] << 24)\n\t}\n\t\n\tBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t\n\t return (this[offset] << 24) |\n\t (this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t (this[offset + 3])\n\t}\n\t\n\tBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t return ieee754.read(this, offset, true, 23, 4)\n\t}\n\t\n\tBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t return ieee754.read(this, offset, false, 23, 4)\n\t}\n\t\n\tBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 8, this.length)\n\t return ieee754.read(this, offset, true, 52, 8)\n\t}\n\t\n\tBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 8, this.length)\n\t return ieee754.read(this, offset, false, 52, 8)\n\t}\n\t\n\tfunction checkInt (buf, value, offset, ext, max, min) {\n\t if (!Buffer.isBuffer(buf)) throw new TypeError('buffer must be a Buffer instance')\n\t if (value > max || value < min) throw new RangeError('value is out of bounds')\n\t if (offset + ext > buf.length) throw new RangeError('index out of range')\n\t}\n\t\n\tBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) checkInt(this, value, offset, byteLength, Math.pow(2, 8 * byteLength), 0)\n\t\n\t var mul = 1\n\t var i = 0\n\t this[offset] = value & 0xFF\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF\n\t }\n\t\n\t return offset + byteLength\n\t}\n\t\n\tBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) checkInt(this, value, offset, byteLength, Math.pow(2, 8 * byteLength), 0)\n\t\n\t var i = byteLength - 1\n\t var mul = 1\n\t this[offset + i] = value & 0xFF\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF\n\t }\n\t\n\t return offset + byteLength\n\t}\n\t\n\tBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n\t if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n\t this[offset] = (value & 0xff)\n\t return offset + 1\n\t}\n\t\n\tfunction objectWriteUInt16 (buf, value, offset, littleEndian) {\n\t if (value < 0) value = 0xffff + value + 1\n\t for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; i++) {\n\t buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>\n\t (littleEndian ? i : 1 - i) * 8\n\t }\n\t}\n\t\n\tBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value & 0xff)\n\t this[offset + 1] = (value >>> 8)\n\t } else {\n\t objectWriteUInt16(this, value, offset, true)\n\t }\n\t return offset + 2\n\t}\n\t\n\tBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value >>> 8)\n\t this[offset + 1] = (value & 0xff)\n\t } else {\n\t objectWriteUInt16(this, value, offset, false)\n\t }\n\t return offset + 2\n\t}\n\t\n\tfunction objectWriteUInt32 (buf, value, offset, littleEndian) {\n\t if (value < 0) value = 0xffffffff + value + 1\n\t for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; i++) {\n\t buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff\n\t }\n\t}\n\t\n\tBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset + 3] = (value >>> 24)\n\t this[offset + 2] = (value >>> 16)\n\t this[offset + 1] = (value >>> 8)\n\t this[offset] = (value & 0xff)\n\t } else {\n\t objectWriteUInt32(this, value, offset, true)\n\t }\n\t return offset + 4\n\t}\n\t\n\tBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value >>> 24)\n\t this[offset + 1] = (value >>> 16)\n\t this[offset + 2] = (value >>> 8)\n\t this[offset + 3] = (value & 0xff)\n\t } else {\n\t objectWriteUInt32(this, value, offset, false)\n\t }\n\t return offset + 4\n\t}\n\t\n\tBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) {\n\t var limit = Math.pow(2, 8 * byteLength - 1)\n\t\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit)\n\t }\n\t\n\t var i = 0\n\t var mul = 1\n\t var sub = value < 0 ? 1 : 0\n\t this[offset] = value & 0xFF\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n\t }\n\t\n\t return offset + byteLength\n\t}\n\t\n\tBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) {\n\t var limit = Math.pow(2, 8 * byteLength - 1)\n\t\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit)\n\t }\n\t\n\t var i = byteLength - 1\n\t var mul = 1\n\t var sub = value < 0 ? 1 : 0\n\t this[offset + i] = value & 0xFF\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n\t }\n\t\n\t return offset + byteLength\n\t}\n\t\n\tBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n\t if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n\t if (value < 0) value = 0xff + value + 1\n\t this[offset] = (value & 0xff)\n\t return offset + 1\n\t}\n\t\n\tBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value & 0xff)\n\t this[offset + 1] = (value >>> 8)\n\t } else {\n\t objectWriteUInt16(this, value, offset, true)\n\t }\n\t return offset + 2\n\t}\n\t\n\tBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value >>> 8)\n\t this[offset + 1] = (value & 0xff)\n\t } else {\n\t objectWriteUInt16(this, value, offset, false)\n\t }\n\t return offset + 2\n\t}\n\t\n\tBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value & 0xff)\n\t this[offset + 1] = (value >>> 8)\n\t this[offset + 2] = (value >>> 16)\n\t this[offset + 3] = (value >>> 24)\n\t } else {\n\t objectWriteUInt32(this, value, offset, true)\n\t }\n\t return offset + 4\n\t}\n\t\n\tBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n\t if (value < 0) value = 0xffffffff + value + 1\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value >>> 24)\n\t this[offset + 1] = (value >>> 16)\n\t this[offset + 2] = (value >>> 8)\n\t this[offset + 3] = (value & 0xff)\n\t } else {\n\t objectWriteUInt32(this, value, offset, false)\n\t }\n\t return offset + 4\n\t}\n\t\n\tfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n\t if (value > max || value < min) throw new RangeError('value is out of bounds')\n\t if (offset + ext > buf.length) throw new RangeError('index out of range')\n\t if (offset < 0) throw new RangeError('index out of range')\n\t}\n\t\n\tfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n\t }\n\t ieee754.write(buf, value, offset, littleEndian, 23, 4)\n\t return offset + 4\n\t}\n\t\n\tBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, true, noAssert)\n\t}\n\t\n\tBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, false, noAssert)\n\t}\n\t\n\tfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n\t }\n\t ieee754.write(buf, value, offset, littleEndian, 52, 8)\n\t return offset + 8\n\t}\n\t\n\tBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, true, noAssert)\n\t}\n\t\n\tBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, false, noAssert)\n\t}\n\t\n\t// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\n\tBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n\t if (!start) start = 0\n\t if (!end && end !== 0) end = this.length\n\t if (targetStart >= target.length) targetStart = target.length\n\t if (!targetStart) targetStart = 0\n\t if (end > 0 && end < start) end = start\n\t\n\t // Copy 0 bytes; we're done\n\t if (end === start) return 0\n\t if (target.length === 0 || this.length === 0) return 0\n\t\n\t // Fatal error conditions\n\t if (targetStart < 0) {\n\t throw new RangeError('targetStart out of bounds')\n\t }\n\t if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n\t if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\t\n\t // Are we oob?\n\t if (end > this.length) end = this.length\n\t if (target.length - targetStart < end - start) {\n\t end = target.length - targetStart + start\n\t }\n\t\n\t var len = end - start\n\t var i\n\t\n\t if (this === target && start < targetStart && targetStart < end) {\n\t // descending copy from end\n\t for (i = len - 1; i >= 0; i--) {\n\t target[i + targetStart] = this[i + start]\n\t }\n\t } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n\t // ascending copy from start\n\t for (i = 0; i < len; i++) {\n\t target[i + targetStart] = this[i + start]\n\t }\n\t } else {\n\t target._set(this.subarray(start, start + len), targetStart)\n\t }\n\t\n\t return len\n\t}\n\t\n\t// fill(value, start=0, end=buffer.length)\n\tBuffer.prototype.fill = function fill (value, start, end) {\n\t if (!value) value = 0\n\t if (!start) start = 0\n\t if (!end) end = this.length\n\t\n\t if (end < start) throw new RangeError('end < start')\n\t\n\t // Fill 0 bytes; we're done\n\t if (end === start) return\n\t if (this.length === 0) return\n\t\n\t if (start < 0 || start >= this.length) throw new RangeError('start out of bounds')\n\t if (end < 0 || end > this.length) throw new RangeError('end out of bounds')\n\t\n\t var i\n\t if (typeof value === 'number') {\n\t for (i = start; i < end; i++) {\n\t this[i] = value\n\t }\n\t } else {\n\t var bytes = utf8ToBytes(value.toString())\n\t var len = bytes.length\n\t for (i = start; i < end; i++) {\n\t this[i] = bytes[i % len]\n\t }\n\t }\n\t\n\t return this\n\t}\n\t\n\t/**\n\t * Creates a new `ArrayBuffer` with the *copied* memory of the buffer instance.\n\t * Added in Node 0.12. Only available in browsers that support ArrayBuffer.\n\t */\n\tBuffer.prototype.toArrayBuffer = function toArrayBuffer () {\n\t if (typeof Uint8Array !== 'undefined') {\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t return (new Buffer(this)).buffer\n\t } else {\n\t var buf = new Uint8Array(this.length)\n\t for (var i = 0, len = buf.length; i < len; i += 1) {\n\t buf[i] = this[i]\n\t }\n\t return buf.buffer\n\t }\n\t } else {\n\t throw new TypeError('Buffer.toArrayBuffer not supported in this browser')\n\t }\n\t}\n\t\n\t// HELPER FUNCTIONS\n\t// ================\n\t\n\tvar BP = Buffer.prototype\n\t\n\t/**\n\t * Augment a Uint8Array *instance* (not the Uint8Array class!) with Buffer methods\n\t */\n\tBuffer._augment = function _augment (arr) {\n\t arr.constructor = Buffer\n\t arr._isBuffer = true\n\t\n\t // save reference to original Uint8Array set method before overwriting\n\t arr._set = arr.set\n\t\n\t // deprecated\n\t arr.get = BP.get\n\t arr.set = BP.set\n\t\n\t arr.write = BP.write\n\t arr.toString = BP.toString\n\t arr.toLocaleString = BP.toString\n\t arr.toJSON = BP.toJSON\n\t arr.equals = BP.equals\n\t arr.compare = BP.compare\n\t arr.indexOf = BP.indexOf\n\t arr.copy = BP.copy\n\t arr.slice = BP.slice\n\t arr.readUIntLE = BP.readUIntLE\n\t arr.readUIntBE = BP.readUIntBE\n\t arr.readUInt8 = BP.readUInt8\n\t arr.readUInt16LE = BP.readUInt16LE\n\t arr.readUInt16BE = BP.readUInt16BE\n\t arr.readUInt32LE = BP.readUInt32LE\n\t arr.readUInt32BE = BP.readUInt32BE\n\t arr.readIntLE = BP.readIntLE\n\t arr.readIntBE = BP.readIntBE\n\t arr.readInt8 = BP.readInt8\n\t arr.readInt16LE = BP.readInt16LE\n\t arr.readInt16BE = BP.readInt16BE\n\t arr.readInt32LE = BP.readInt32LE\n\t arr.readInt32BE = BP.readInt32BE\n\t arr.readFloatLE = BP.readFloatLE\n\t arr.readFloatBE = BP.readFloatBE\n\t arr.readDoubleLE = BP.readDoubleLE\n\t arr.readDoubleBE = BP.readDoubleBE\n\t arr.writeUInt8 = BP.writeUInt8\n\t arr.writeUIntLE = BP.writeUIntLE\n\t arr.writeUIntBE = BP.writeUIntBE\n\t arr.writeUInt16LE = BP.writeUInt16LE\n\t arr.writeUInt16BE = BP.writeUInt16BE\n\t arr.writeUInt32LE = BP.writeUInt32LE\n\t arr.writeUInt32BE = BP.writeUInt32BE\n\t arr.writeIntLE = BP.writeIntLE\n\t arr.writeIntBE = BP.writeIntBE\n\t arr.writeInt8 = BP.writeInt8\n\t arr.writeInt16LE = BP.writeInt16LE\n\t arr.writeInt16BE = BP.writeInt16BE\n\t arr.writeInt32LE = BP.writeInt32LE\n\t arr.writeInt32BE = BP.writeInt32BE\n\t arr.writeFloatLE = BP.writeFloatLE\n\t arr.writeFloatBE = BP.writeFloatBE\n\t arr.writeDoubleLE = BP.writeDoubleLE\n\t arr.writeDoubleBE = BP.writeDoubleBE\n\t arr.fill = BP.fill\n\t arr.inspect = BP.inspect\n\t arr.toArrayBuffer = BP.toArrayBuffer\n\t\n\t return arr\n\t}\n\t\n\tvar INVALID_BASE64_RE = /[^+\\/0-9A-Za-z-_]/g\n\t\n\tfunction base64clean (str) {\n\t // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n\t str = stringtrim(str).replace(INVALID_BASE64_RE, '')\n\t // Node converts strings with length < 2 to ''\n\t if (str.length < 2) return ''\n\t // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n\t while (str.length % 4 !== 0) {\n\t str = str + '='\n\t }\n\t return str\n\t}\n\t\n\tfunction stringtrim (str) {\n\t if (str.trim) return str.trim()\n\t return str.replace(/^\\s+|\\s+$/g, '')\n\t}\n\t\n\tfunction toHex (n) {\n\t if (n < 16) return '0' + n.toString(16)\n\t return n.toString(16)\n\t}\n\t\n\tfunction utf8ToBytes (string, units) {\n\t units = units || Infinity\n\t var codePoint\n\t var length = string.length\n\t var leadSurrogate = null\n\t var bytes = []\n\t\n\t for (var i = 0; i < length; i++) {\n\t codePoint = string.charCodeAt(i)\n\t\n\t // is surrogate component\n\t if (codePoint > 0xD7FF && codePoint < 0xE000) {\n\t // last char was a lead\n\t if (!leadSurrogate) {\n\t // no lead yet\n\t if (codePoint > 0xDBFF) {\n\t // unexpected trail\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n\t continue\n\t } else if (i + 1 === length) {\n\t // unpaired lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n\t continue\n\t }\n\t\n\t // valid lead\n\t leadSurrogate = codePoint\n\t\n\t continue\n\t }\n\t\n\t // 2 leads in a row\n\t if (codePoint < 0xDC00) {\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n\t leadSurrogate = codePoint\n\t continue\n\t }\n\t\n\t // valid surrogate pair\n\t codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n\t } else if (leadSurrogate) {\n\t // valid bmp char, but last char was a lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n\t }\n\t\n\t leadSurrogate = null\n\t\n\t // encode utf8\n\t if (codePoint < 0x80) {\n\t if ((units -= 1) < 0) break\n\t bytes.push(codePoint)\n\t } else if (codePoint < 0x800) {\n\t if ((units -= 2) < 0) break\n\t bytes.push(\n\t codePoint >> 0x6 | 0xC0,\n\t codePoint & 0x3F | 0x80\n\t )\n\t } else if (codePoint < 0x10000) {\n\t if ((units -= 3) < 0) break\n\t bytes.push(\n\t codePoint >> 0xC | 0xE0,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t )\n\t } else if (codePoint < 0x110000) {\n\t if ((units -= 4) < 0) break\n\t bytes.push(\n\t codePoint >> 0x12 | 0xF0,\n\t codePoint >> 0xC & 0x3F | 0x80,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t )\n\t } else {\n\t throw new Error('Invalid code point')\n\t }\n\t }\n\t\n\t return bytes\n\t}\n\t\n\tfunction asciiToBytes (str) {\n\t var byteArray = []\n\t for (var i = 0; i < str.length; i++) {\n\t // Node's code seems to be doing this and not & 0x7F..\n\t byteArray.push(str.charCodeAt(i) & 0xFF)\n\t }\n\t return byteArray\n\t}\n\t\n\tfunction utf16leToBytes (str, units) {\n\t var c, hi, lo\n\t var byteArray = []\n\t for (var i = 0; i < str.length; i++) {\n\t if ((units -= 2) < 0) break\n\t\n\t c = str.charCodeAt(i)\n\t hi = c >> 8\n\t lo = c % 256\n\t byteArray.push(lo)\n\t byteArray.push(hi)\n\t }\n\t\n\t return byteArray\n\t}\n\t\n\tfunction base64ToBytes (str) {\n\t return base64.toByteArray(base64clean(str))\n\t}\n\t\n\tfunction blitBuffer (src, dst, offset, length) {\n\t for (var i = 0; i < length; i++) {\n\t if ((i + offset >= dst.length) || (i >= src.length)) break\n\t dst[i + offset] = src[i]\n\t }\n\t return i\n\t}\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1).Buffer, (function() { return this; }())))\n\n/***/ },\n/* 2 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(global, process) {// Copyright Joyent, Inc. and other Node contributors.\n\t//\n\t// Permission is hereby granted, free of charge, to any person obtaining a\n\t// copy of this software and associated documentation files (the\n\t// \"Software\"), to deal in the Software without restriction, including\n\t// without limitation the rights to use, copy, modify, merge, publish,\n\t// distribute, sublicense, and/or sell copies of the Software, and to permit\n\t// persons to whom the Software is furnished to do so, subject to the\n\t// following conditions:\n\t//\n\t// The above copyright notice and this permission notice shall be included\n\t// in all copies or substantial portions of the Software.\n\t//\n\t// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n\t// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n\t// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n\t// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n\t// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n\t// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n\t// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\t\n\tvar formatRegExp = /%[sdj%]/g;\n\texports.format = function(f) {\n\t if (!isString(f)) {\n\t var objects = [];\n\t for (var i = 0; i < arguments.length; i++) {\n\t objects.push(inspect(arguments[i]));\n\t }\n\t return objects.join(' ');\n\t }\n\t\n\t var i = 1;\n\t var args = arguments;\n\t var len = args.length;\n\t var str = String(f).replace(formatRegExp, function(x) {\n\t if (x === '%%') return '%';\n\t if (i >= len) return x;\n\t switch (x) {\n\t case '%s': return String(args[i++]);\n\t case '%d': return Number(args[i++]);\n\t case '%j':\n\t try {\n\t return JSON.stringify(args[i++]);\n\t } catch (_) {\n\t return '[Circular]';\n\t }\n\t default:\n\t return x;\n\t }\n\t });\n\t for (var x = args[i]; i < len; x = args[++i]) {\n\t if (isNull(x) || !isObject(x)) {\n\t str += ' ' + x;\n\t } else {\n\t str += ' ' + inspect(x);\n\t }\n\t }\n\t return str;\n\t};\n\t\n\t\n\t// Mark that a method should not be used.\n\t// Returns a modified function which warns once by default.\n\t// If --no-deprecation is set, then it is a no-op.\n\texports.deprecate = function(fn, msg) {\n\t // Allow for deprecating things in the process of starting up.\n\t if (isUndefined(global.process)) {\n\t return function() {\n\t return exports.deprecate(fn, msg).apply(this, arguments);\n\t };\n\t }\n\t\n\t if (process.noDeprecation === true) {\n\t return fn;\n\t }\n\t\n\t var warned = false;\n\t function deprecated() {\n\t if (!warned) {\n\t if (process.throwDeprecation) {\n\t throw new Error(msg);\n\t } else if (process.traceDeprecation) {\n\t console.trace(msg);\n\t } else {\n\t console.error(msg);\n\t }\n\t warned = true;\n\t }\n\t return fn.apply(this, arguments);\n\t }\n\t\n\t return deprecated;\n\t};\n\t\n\t\n\tvar debugs = {};\n\tvar debugEnviron;\n\texports.debuglog = function(set) {\n\t if (isUndefined(debugEnviron))\n\t debugEnviron = ({\"NODE_ENV\":\"production\"}).NODE_DEBUG || '';\n\t set = set.toUpperCase();\n\t if (!debugs[set]) {\n\t if (new RegExp('\\\\b' + set + '\\\\b', 'i').test(debugEnviron)) {\n\t var pid = process.pid;\n\t debugs[set] = function() {\n\t var msg = exports.format.apply(exports, arguments);\n\t console.error('%s %d: %s', set, pid, msg);\n\t };\n\t } else {\n\t debugs[set] = function() {};\n\t }\n\t }\n\t return debugs[set];\n\t};\n\t\n\t\n\t/**\n\t * Echos the value of a value. Trys to print the value out\n\t * in the best way possible given the different types.\n\t *\n\t * @param {Object} obj The object to print out.\n\t * @param {Object} opts Optional options object that alters the output.\n\t */\n\t/* legacy: obj, showHidden, depth, colors*/\n\tfunction inspect(obj, opts) {\n\t // default options\n\t var ctx = {\n\t seen: [],\n\t stylize: stylizeNoColor\n\t };\n\t // legacy...\n\t if (arguments.length >= 3) ctx.depth = arguments[2];\n\t if (arguments.length >= 4) ctx.colors = arguments[3];\n\t if (isBoolean(opts)) {\n\t // legacy...\n\t ctx.showHidden = opts;\n\t } else if (opts) {\n\t // got an \"options\" object\n\t exports._extend(ctx, opts);\n\t }\n\t // set default options\n\t if (isUndefined(ctx.showHidden)) ctx.showHidden = false;\n\t if (isUndefined(ctx.depth)) ctx.depth = 2;\n\t if (isUndefined(ctx.colors)) ctx.colors = false;\n\t if (isUndefined(ctx.customInspect)) ctx.customInspect = true;\n\t if (ctx.colors) ctx.stylize = stylizeWithColor;\n\t return formatValue(ctx, obj, ctx.depth);\n\t}\n\texports.inspect = inspect;\n\t\n\t\n\t// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics\n\tinspect.colors = {\n\t 'bold' : [1, 22],\n\t 'italic' : [3, 23],\n\t 'underline' : [4, 24],\n\t 'inverse' : [7, 27],\n\t 'white' : [37, 39],\n\t 'grey' : [90, 39],\n\t 'black' : [30, 39],\n\t 'blue' : [34, 39],\n\t 'cyan' : [36, 39],\n\t 'green' : [32, 39],\n\t 'magenta' : [35, 39],\n\t 'red' : [31, 39],\n\t 'yellow' : [33, 39]\n\t};\n\t\n\t// Don't use 'blue' not visible on cmd.exe\n\tinspect.styles = {\n\t 'special': 'cyan',\n\t 'number': 'yellow',\n\t 'boolean': 'yellow',\n\t 'undefined': 'grey',\n\t 'null': 'bold',\n\t 'string': 'green',\n\t 'date': 'magenta',\n\t // \"name\": intentionally not styling\n\t 'regexp': 'red'\n\t};\n\t\n\t\n\tfunction stylizeWithColor(str, styleType) {\n\t var style = inspect.styles[styleType];\n\t\n\t if (style) {\n\t return '\\u001b[' + inspect.colors[style][0] + 'm' + str +\n\t '\\u001b[' + inspect.colors[style][1] + 'm';\n\t } else {\n\t return str;\n\t }\n\t}\n\t\n\t\n\tfunction stylizeNoColor(str, styleType) {\n\t return str;\n\t}\n\t\n\t\n\tfunction arrayToHash(array) {\n\t var hash = {};\n\t\n\t array.forEach(function(val, idx) {\n\t hash[val] = true;\n\t });\n\t\n\t return hash;\n\t}\n\t\n\t\n\tfunction formatValue(ctx, value, recurseTimes) {\n\t // Provide a hook for user-specified inspect functions.\n\t // Check that value is an object with an inspect function on it\n\t if (ctx.customInspect &&\n\t value &&\n\t isFunction(value.inspect) &&\n\t // Filter out the util module, it's inspect function is special\n\t value.inspect !== exports.inspect &&\n\t // Also filter out any prototype objects using the circular check.\n\t !(value.constructor && value.constructor.prototype === value)) {\n\t var ret = value.inspect(recurseTimes, ctx);\n\t if (!isString(ret)) {\n\t ret = formatValue(ctx, ret, recurseTimes);\n\t }\n\t return ret;\n\t }\n\t\n\t // Primitive types cannot have properties\n\t var primitive = formatPrimitive(ctx, value);\n\t if (primitive) {\n\t return primitive;\n\t }\n\t\n\t // Look up the keys of the object.\n\t var keys = Object.keys(value);\n\t var visibleKeys = arrayToHash(keys);\n\t\n\t if (ctx.showHidden) {\n\t keys = Object.getOwnPropertyNames(value);\n\t }\n\t\n\t // IE doesn't make error fields non-enumerable\n\t // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx\n\t if (isError(value)\n\t && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {\n\t return formatError(value);\n\t }\n\t\n\t // Some type of object without properties can be shortcutted.\n\t if (keys.length === 0) {\n\t if (isFunction(value)) {\n\t var name = value.name ? ': ' + value.name : '';\n\t return ctx.stylize('[Function' + name + ']', 'special');\n\t }\n\t if (isRegExp(value)) {\n\t return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n\t }\n\t if (isDate(value)) {\n\t return ctx.stylize(Date.prototype.toString.call(value), 'date');\n\t }\n\t if (isError(value)) {\n\t return formatError(value);\n\t }\n\t }\n\t\n\t var base = '', array = false, braces = ['{', '}'];\n\t\n\t // Make Array say that they are Array\n\t if (isArray(value)) {\n\t array = true;\n\t braces = ['[', ']'];\n\t }\n\t\n\t // Make functions say that they are functions\n\t if (isFunction(value)) {\n\t var n = value.name ? ': ' + value.name : '';\n\t base = ' [Function' + n + ']';\n\t }\n\t\n\t // Make RegExps say that they are RegExps\n\t if (isRegExp(value)) {\n\t base = ' ' + RegExp.prototype.toString.call(value);\n\t }\n\t\n\t // Make dates with properties first say the date\n\t if (isDate(value)) {\n\t base = ' ' + Date.prototype.toUTCString.call(value);\n\t }\n\t\n\t // Make error with message first say the error\n\t if (isError(value)) {\n\t base = ' ' + formatError(value);\n\t }\n\t\n\t if (keys.length === 0 && (!array || value.length == 0)) {\n\t return braces[0] + base + braces[1];\n\t }\n\t\n\t if (recurseTimes < 0) {\n\t if (isRegExp(value)) {\n\t return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n\t } else {\n\t return ctx.stylize('[Object]', 'special');\n\t }\n\t }\n\t\n\t ctx.seen.push(value);\n\t\n\t var output;\n\t if (array) {\n\t output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);\n\t } else {\n\t output = keys.map(function(key) {\n\t return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);\n\t });\n\t }\n\t\n\t ctx.seen.pop();\n\t\n\t return reduceToSingleString(output, base, braces);\n\t}\n\t\n\t\n\tfunction formatPrimitive(ctx, value) {\n\t if (isUndefined(value))\n\t return ctx.stylize('undefined', 'undefined');\n\t if (isString(value)) {\n\t var simple = '\\'' + JSON.stringify(value).replace(/^\"|\"$/g, '')\n\t .replace(/'/g, \"\\\\'\")\n\t .replace(/\\\\\"/g, '\"') + '\\'';\n\t return ctx.stylize(simple, 'string');\n\t }\n\t if (isNumber(value))\n\t return ctx.stylize('' + value, 'number');\n\t if (isBoolean(value))\n\t return ctx.stylize('' + value, 'boolean');\n\t // For some reason typeof null is \"object\", so special case here.\n\t if (isNull(value))\n\t return ctx.stylize('null', 'null');\n\t}\n\t\n\t\n\tfunction formatError(value) {\n\t return '[' + Error.prototype.toString.call(value) + ']';\n\t}\n\t\n\t\n\tfunction formatArray(ctx, value, recurseTimes, visibleKeys, keys) {\n\t var output = [];\n\t for (var i = 0, l = value.length; i < l; ++i) {\n\t if (hasOwnProperty(value, String(i))) {\n\t output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n\t String(i), true));\n\t } else {\n\t output.push('');\n\t }\n\t }\n\t keys.forEach(function(key) {\n\t if (!key.match(/^\\d+$/)) {\n\t output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n\t key, true));\n\t }\n\t });\n\t return output;\n\t}\n\t\n\t\n\tfunction formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {\n\t var name, str, desc;\n\t desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };\n\t if (desc.get) {\n\t if (desc.set) {\n\t str = ctx.stylize('[Getter/Setter]', 'special');\n\t } else {\n\t str = ctx.stylize('[Getter]', 'special');\n\t }\n\t } else {\n\t if (desc.set) {\n\t str = ctx.stylize('[Setter]', 'special');\n\t }\n\t }\n\t if (!hasOwnProperty(visibleKeys, key)) {\n\t name = '[' + key + ']';\n\t }\n\t if (!str) {\n\t if (ctx.seen.indexOf(desc.value) < 0) {\n\t if (isNull(recurseTimes)) {\n\t str = formatValue(ctx, desc.value, null);\n\t } else {\n\t str = formatValue(ctx, desc.value, recurseTimes - 1);\n\t }\n\t if (str.indexOf('\\n') > -1) {\n\t if (array) {\n\t str = str.split('\\n').map(function(line) {\n\t return ' ' + line;\n\t }).join('\\n').substr(2);\n\t } else {\n\t str = '\\n' + str.split('\\n').map(function(line) {\n\t return ' ' + line;\n\t }).join('\\n');\n\t }\n\t }\n\t } else {\n\t str = ctx.stylize('[Circular]', 'special');\n\t }\n\t }\n\t if (isUndefined(name)) {\n\t if (array && key.match(/^\\d+$/)) {\n\t return str;\n\t }\n\t name = JSON.stringify('' + key);\n\t if (name.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)) {\n\t name = name.substr(1, name.length - 2);\n\t name = ctx.stylize(name, 'name');\n\t } else {\n\t name = name.replace(/'/g, \"\\\\'\")\n\t .replace(/\\\\\"/g, '\"')\n\t .replace(/(^\"|\"$)/g, \"'\");\n\t name = ctx.stylize(name, 'string');\n\t }\n\t }\n\t\n\t return name + ': ' + str;\n\t}\n\t\n\t\n\tfunction reduceToSingleString(output, base, braces) {\n\t var numLinesEst = 0;\n\t var length = output.reduce(function(prev, cur) {\n\t numLinesEst++;\n\t if (cur.indexOf('\\n') >= 0) numLinesEst++;\n\t return prev + cur.replace(/\\u001b\\[\\d\\d?m/g, '').length + 1;\n\t }, 0);\n\t\n\t if (length > 60) {\n\t return braces[0] +\n\t (base === '' ? '' : base + '\\n ') +\n\t ' ' +\n\t output.join(',\\n ') +\n\t ' ' +\n\t braces[1];\n\t }\n\t\n\t return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];\n\t}\n\t\n\t\n\t// NOTE: These type checking functions intentionally don't use `instanceof`\n\t// because it is fragile and can be easily faked with `Object.create()`.\n\tfunction isArray(ar) {\n\t return Array.isArray(ar);\n\t}\n\texports.isArray = isArray;\n\t\n\tfunction isBoolean(arg) {\n\t return typeof arg === 'boolean';\n\t}\n\texports.isBoolean = isBoolean;\n\t\n\tfunction isNull(arg) {\n\t return arg === null;\n\t}\n\texports.isNull = isNull;\n\t\n\tfunction isNullOrUndefined(arg) {\n\t return arg == null;\n\t}\n\texports.isNullOrUndefined = isNullOrUndefined;\n\t\n\tfunction isNumber(arg) {\n\t return typeof arg === 'number';\n\t}\n\texports.isNumber = isNumber;\n\t\n\tfunction isString(arg) {\n\t return typeof arg === 'string';\n\t}\n\texports.isString = isString;\n\t\n\tfunction isSymbol(arg) {\n\t return typeof arg === 'symbol';\n\t}\n\texports.isSymbol = isSymbol;\n\t\n\tfunction isUndefined(arg) {\n\t return arg === void 0;\n\t}\n\texports.isUndefined = isUndefined;\n\t\n\tfunction isRegExp(re) {\n\t return isObject(re) && objectToString(re) === '[object RegExp]';\n\t}\n\texports.isRegExp = isRegExp;\n\t\n\tfunction isObject(arg) {\n\t return typeof arg === 'object' && arg !== null;\n\t}\n\texports.isObject = isObject;\n\t\n\tfunction isDate(d) {\n\t return isObject(d) && objectToString(d) === '[object Date]';\n\t}\n\texports.isDate = isDate;\n\t\n\tfunction isError(e) {\n\t return isObject(e) &&\n\t (objectToString(e) === '[object Error]' || e instanceof Error);\n\t}\n\texports.isError = isError;\n\t\n\tfunction isFunction(arg) {\n\t return typeof arg === 'function';\n\t}\n\texports.isFunction = isFunction;\n\t\n\tfunction isPrimitive(arg) {\n\t return arg === null ||\n\t typeof arg === 'boolean' ||\n\t typeof arg === 'number' ||\n\t typeof arg === 'string' ||\n\t typeof arg === 'symbol' || // ES6 symbol\n\t typeof arg === 'undefined';\n\t}\n\texports.isPrimitive = isPrimitive;\n\t\n\texports.isBuffer = __webpack_require__(34);\n\t\n\tfunction objectToString(o) {\n\t return Object.prototype.toString.call(o);\n\t}\n\t\n\t\n\tfunction pad(n) {\n\t return n < 10 ? '0' + n.toString(10) : n.toString(10);\n\t}\n\t\n\t\n\tvar months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',\n\t 'Oct', 'Nov', 'Dec'];\n\t\n\t// 26 Feb 16:19:34\n\tfunction timestamp() {\n\t var d = new Date();\n\t var time = [pad(d.getHours()),\n\t pad(d.getMinutes()),\n\t pad(d.getSeconds())].join(':');\n\t return [d.getDate(), months[d.getMonth()], time].join(' ');\n\t}\n\t\n\t\n\t// log is just a thin wrapper to console.log that prepends a timestamp\n\texports.log = function() {\n\t console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));\n\t};\n\t\n\t\n\t/**\n\t * Inherit the prototype methods from one constructor into another.\n\t *\n\t * The Function.prototype.inherits from lang.js rewritten as a standalone\n\t * function (not on Function.prototype). NOTE: If this file is to be loaded\n\t * during bootstrapping this function needs to be rewritten using some native\n\t * functions as prototype setup using normal JavaScript does not work as\n\t * expected during bootstrapping (see mirror.js in r114903).\n\t *\n\t * @param {function} ctor Constructor function which needs to inherit the\n\t * prototype.\n\t * @param {function} superCtor Constructor function to inherit prototype from.\n\t */\n\texports.inherits = __webpack_require__(21);\n\t\n\texports._extend = function(origin, add) {\n\t // Don't do anything if add isn't an object\n\t if (!add || !isObject(add)) return origin;\n\t\n\t var keys = Object.keys(add);\n\t var i = keys.length;\n\t while (i--) {\n\t origin[keys[i]] = add[keys[i]];\n\t }\n\t return origin;\n\t};\n\t\n\tfunction hasOwnProperty(obj, prop) {\n\t return Object.prototype.hasOwnProperty.call(obj, prop);\n\t}\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()), __webpack_require__(25)))\n\n/***/ },\n/* 3 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(Buffer) {var createHash = __webpack_require__(29)\n\t\n\tvar md5 = toConstructor(__webpack_require__(12))\n\tvar rmd160 = toConstructor(__webpack_require__(26))\n\t\n\tfunction toConstructor (fn) {\n\t return function () {\n\t var buffers = []\n\t var m= {\n\t update: function (data, enc) {\n\t if(!Buffer.isBuffer(data)) data = new Buffer(data, enc)\n\t buffers.push(data)\n\t return this\n\t },\n\t digest: function (enc) {\n\t var buf = Buffer.concat(buffers)\n\t var r = fn(buf)\n\t buffers = null\n\t return enc ? r.toString(enc) : r\n\t }\n\t }\n\t return m\n\t }\n\t}\n\t\n\tmodule.exports = function (alg) {\n\t if('md5' === alg) return new md5()\n\t if('rmd160' === alg) return new rmd160()\n\t return createHash(alg)\n\t}\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1).Buffer))\n\n/***/ },\n/* 4 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar lookup = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\t\n\t;(function (exports) {\n\t\t'use strict';\n\t\n\t var Arr = (typeof Uint8Array !== 'undefined')\n\t ? Uint8Array\n\t : Array\n\t\n\t\tvar PLUS = '+'.charCodeAt(0)\n\t\tvar SLASH = '/'.charCodeAt(0)\n\t\tvar NUMBER = '0'.charCodeAt(0)\n\t\tvar LOWER = 'a'.charCodeAt(0)\n\t\tvar UPPER = 'A'.charCodeAt(0)\n\t\tvar PLUS_URL_SAFE = '-'.charCodeAt(0)\n\t\tvar SLASH_URL_SAFE = '_'.charCodeAt(0)\n\t\n\t\tfunction decode (elt) {\n\t\t\tvar code = elt.charCodeAt(0)\n\t\t\tif (code === PLUS ||\n\t\t\t code === PLUS_URL_SAFE)\n\t\t\t\treturn 62 // '+'\n\t\t\tif (code === SLASH ||\n\t\t\t code === SLASH_URL_SAFE)\n\t\t\t\treturn 63 // '/'\n\t\t\tif (code < NUMBER)\n\t\t\t\treturn -1 //no match\n\t\t\tif (code < NUMBER + 10)\n\t\t\t\treturn code - NUMBER + 26 + 26\n\t\t\tif (code < UPPER + 26)\n\t\t\t\treturn code - UPPER\n\t\t\tif (code < LOWER + 26)\n\t\t\t\treturn code - LOWER + 26\n\t\t}\n\t\n\t\tfunction b64ToByteArray (b64) {\n\t\t\tvar i, j, l, tmp, placeHolders, arr\n\t\n\t\t\tif (b64.length % 4 > 0) {\n\t\t\t\tthrow new Error('Invalid string. Length must be a multiple of 4')\n\t\t\t}\n\t\n\t\t\t// the number of equal signs (place holders)\n\t\t\t// if there are two placeholders, than the two characters before it\n\t\t\t// represent one byte\n\t\t\t// if there is only one, then the three characters before it represent 2 bytes\n\t\t\t// this is just a cheap hack to not do indexOf twice\n\t\t\tvar len = b64.length\n\t\t\tplaceHolders = '=' === b64.charAt(len - 2) ? 2 : '=' === b64.charAt(len - 1) ? 1 : 0\n\t\n\t\t\t// base64 is 4/3 + up to two characters of the original data\n\t\t\tarr = new Arr(b64.length * 3 / 4 - placeHolders)\n\t\n\t\t\t// if there are placeholders, only get up to the last complete 4 chars\n\t\t\tl = placeHolders > 0 ? b64.length - 4 : b64.length\n\t\n\t\t\tvar L = 0\n\t\n\t\t\tfunction push (v) {\n\t\t\t\tarr[L++] = v\n\t\t\t}\n\t\n\t\t\tfor (i = 0, j = 0; i < l; i += 4, j += 3) {\n\t\t\t\ttmp = (decode(b64.charAt(i)) << 18) | (decode(b64.charAt(i + 1)) << 12) | (decode(b64.charAt(i + 2)) << 6) | decode(b64.charAt(i + 3))\n\t\t\t\tpush((tmp & 0xFF0000) >> 16)\n\t\t\t\tpush((tmp & 0xFF00) >> 8)\n\t\t\t\tpush(tmp & 0xFF)\n\t\t\t}\n\t\n\t\t\tif (placeHolders === 2) {\n\t\t\t\ttmp = (decode(b64.charAt(i)) << 2) | (decode(b64.charAt(i + 1)) >> 4)\n\t\t\t\tpush(tmp & 0xFF)\n\t\t\t} else if (placeHolders === 1) {\n\t\t\t\ttmp = (decode(b64.charAt(i)) << 10) | (decode(b64.charAt(i + 1)) << 4) | (decode(b64.charAt(i + 2)) >> 2)\n\t\t\t\tpush((tmp >> 8) & 0xFF)\n\t\t\t\tpush(tmp & 0xFF)\n\t\t\t}\n\t\n\t\t\treturn arr\n\t\t}\n\t\n\t\tfunction uint8ToBase64 (uint8) {\n\t\t\tvar i,\n\t\t\t\textraBytes = uint8.length % 3, // if we have 1 byte left, pad 2 bytes\n\t\t\t\toutput = \"\",\n\t\t\t\ttemp, length\n\t\n\t\t\tfunction encode (num) {\n\t\t\t\treturn lookup.charAt(num)\n\t\t\t}\n\t\n\t\t\tfunction tripletToBase64 (num) {\n\t\t\t\treturn encode(num >> 18 & 0x3F) + encode(num >> 12 & 0x3F) + encode(num >> 6 & 0x3F) + encode(num & 0x3F)\n\t\t\t}\n\t\n\t\t\t// go through the array every three bytes, we'll deal with trailing stuff later\n\t\t\tfor (i = 0, length = uint8.length - extraBytes; i < length; i += 3) {\n\t\t\t\ttemp = (uint8[i] << 16) + (uint8[i + 1] << 8) + (uint8[i + 2])\n\t\t\t\toutput += tripletToBase64(temp)\n\t\t\t}\n\t\n\t\t\t// pad the end with zeros, but make sure to not forget the extra bytes\n\t\t\tswitch (extraBytes) {\n\t\t\t\tcase 1:\n\t\t\t\t\ttemp = uint8[uint8.length - 1]\n\t\t\t\t\toutput += encode(temp >> 2)\n\t\t\t\t\toutput += encode((temp << 4) & 0x3F)\n\t\t\t\t\toutput += '=='\n\t\t\t\t\tbreak\n\t\t\t\tcase 2:\n\t\t\t\t\ttemp = (uint8[uint8.length - 2] << 8) + (uint8[uint8.length - 1])\n\t\t\t\t\toutput += encode(temp >> 10)\n\t\t\t\t\toutput += encode((temp >> 4) & 0x3F)\n\t\t\t\t\toutput += encode((temp << 2) & 0x3F)\n\t\t\t\t\toutput += '='\n\t\t\t\t\tbreak\n\t\t\t}\n\t\n\t\t\treturn output\n\t\t}\n\t\n\t\texports.toByteArray = b64ToByteArray\n\t\texports.fromByteArray = uint8ToBase64\n\t}( false ? (this.base64js = {}) : exports))\n\n\n/***/ },\n/* 5 */\n/***/ function(module, exports) {\n\n\tvar toString = {}.toString;\n\t\n\tmodule.exports = Array.isArray || function (arr) {\n\t return toString.call(arr) == '[object Array]';\n\t};\n\n\n/***/ },\n/* 6 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;(function (global, factory) {\n\t if (true) {\n\t !(__WEBPACK_AMD_DEFINE_ARRAY__ = [module, __webpack_require__(27)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t } else if (typeof exports !== \"undefined\") {\n\t factory(module, require('select'));\n\t } else {\n\t var mod = {\n\t exports: {}\n\t };\n\t factory(mod, global.select);\n\t global.clipboardAction = mod.exports;\n\t }\n\t})(this, function (module, _select) {\n\t 'use strict';\n\t\n\t var _select2 = _interopRequireDefault(_select);\n\t\n\t function _interopRequireDefault(obj) {\n\t return obj && obj.__esModule ? obj : {\n\t default: obj\n\t };\n\t }\n\t\n\t var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n\t return typeof obj;\n\t } : function (obj) {\n\t return obj && typeof Symbol === \"function\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n\t };\n\t\n\t function _classCallCheck(instance, Constructor) {\n\t if (!(instance instanceof Constructor)) {\n\t throw new TypeError(\"Cannot call a class as a function\");\n\t }\n\t }\n\t\n\t var _createClass = function () {\n\t function defineProperties(target, props) {\n\t for (var i = 0; i < props.length; i++) {\n\t var descriptor = props[i];\n\t descriptor.enumerable = descriptor.enumerable || false;\n\t descriptor.configurable = true;\n\t if (\"value\" in descriptor) descriptor.writable = true;\n\t Object.defineProperty(target, descriptor.key, descriptor);\n\t }\n\t }\n\t\n\t return function (Constructor, protoProps, staticProps) {\n\t if (protoProps) defineProperties(Constructor.prototype, protoProps);\n\t if (staticProps) defineProperties(Constructor, staticProps);\n\t return Constructor;\n\t };\n\t }();\n\t\n\t var ClipboardAction = function () {\n\t /**\n\t * @param {Object} options\n\t */\n\t\n\t function ClipboardAction(options) {\n\t _classCallCheck(this, ClipboardAction);\n\t\n\t this.resolveOptions(options);\n\t this.initSelection();\n\t }\n\t\n\t /**\n\t * Defines base properties passed from constructor.\n\t * @param {Object} options\n\t */\n\t\n\t\n\t ClipboardAction.prototype.resolveOptions = function resolveOptions() {\n\t var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\t\n\t this.action = options.action;\n\t this.emitter = options.emitter;\n\t this.target = options.target;\n\t this.text = options.text;\n\t this.trigger = options.trigger;\n\t\n\t this.selectedText = '';\n\t };\n\t\n\t ClipboardAction.prototype.initSelection = function initSelection() {\n\t if (this.text) {\n\t this.selectFake();\n\t } else if (this.target) {\n\t this.selectTarget();\n\t }\n\t };\n\t\n\t ClipboardAction.prototype.selectFake = function selectFake() {\n\t var _this = this;\n\t\n\t var isRTL = document.documentElement.getAttribute('dir') == 'rtl';\n\t\n\t this.removeFake();\n\t\n\t this.fakeHandlerCallback = function () {\n\t return _this.removeFake();\n\t };\n\t this.fakeHandler = document.body.addEventListener('click', this.fakeHandlerCallback) || true;\n\t\n\t this.fakeElem = document.createElement('textarea');\n\t // Prevent zooming on iOS\n\t this.fakeElem.style.fontSize = '12pt';\n\t // Reset box model\n\t this.fakeElem.style.border = '0';\n\t this.fakeElem.style.padding = '0';\n\t this.fakeElem.style.margin = '0';\n\t // Move element out of screen horizontally\n\t this.fakeElem.style.position = 'absolute';\n\t this.fakeElem.style[isRTL ? 'right' : 'left'] = '-9999px';\n\t // Move element to the same position vertically\n\t this.fakeElem.style.top = (window.pageYOffset || document.documentElement.scrollTop) + 'px';\n\t this.fakeElem.setAttribute('readonly', '');\n\t this.fakeElem.value = this.text;\n\t\n\t document.body.appendChild(this.fakeElem);\n\t\n\t this.selectedText = (0, _select2.default)(this.fakeElem);\n\t this.copyText();\n\t };\n\t\n\t ClipboardAction.prototype.removeFake = function removeFake() {\n\t if (this.fakeHandler) {\n\t document.body.removeEventListener('click', this.fakeHandlerCallback);\n\t this.fakeHandler = null;\n\t this.fakeHandlerCallback = null;\n\t }\n\t\n\t if (this.fakeElem) {\n\t document.body.removeChild(this.fakeElem);\n\t this.fakeElem = null;\n\t }\n\t };\n\t\n\t ClipboardAction.prototype.selectTarget = function selectTarget() {\n\t this.selectedText = (0, _select2.default)(this.target);\n\t this.copyText();\n\t };\n\t\n\t ClipboardAction.prototype.copyText = function copyText() {\n\t var succeeded = undefined;\n\t\n\t try {\n\t succeeded = document.execCommand(this.action);\n\t } catch (err) {\n\t succeeded = false;\n\t }\n\t\n\t this.handleResult(succeeded);\n\t };\n\t\n\t ClipboardAction.prototype.handleResult = function handleResult(succeeded) {\n\t if (succeeded) {\n\t this.emitter.emit('success', {\n\t action: this.action,\n\t text: this.selectedText,\n\t trigger: this.trigger,\n\t clearSelection: this.clearSelection.bind(this)\n\t });\n\t } else {\n\t this.emitter.emit('error', {\n\t action: this.action,\n\t trigger: this.trigger,\n\t clearSelection: this.clearSelection.bind(this)\n\t });\n\t }\n\t };\n\t\n\t ClipboardAction.prototype.clearSelection = function clearSelection() {\n\t if (this.target) {\n\t this.target.blur();\n\t }\n\t\n\t window.getSelection().removeAllRanges();\n\t };\n\t\n\t ClipboardAction.prototype.destroy = function destroy() {\n\t this.removeFake();\n\t };\n\t\n\t _createClass(ClipboardAction, [{\n\t key: 'action',\n\t set: function set() {\n\t var action = arguments.length <= 0 || arguments[0] === undefined ? 'copy' : arguments[0];\n\t\n\t this._action = action;\n\t\n\t if (this._action !== 'copy' && this._action !== 'cut') {\n\t throw new Error('Invalid \"action\" value, use either \"copy\" or \"cut\"');\n\t }\n\t },\n\t get: function get() {\n\t return this._action;\n\t }\n\t }, {\n\t key: 'target',\n\t set: function set(target) {\n\t if (target !== undefined) {\n\t if (target && (typeof target === 'undefined' ? 'undefined' : _typeof(target)) === 'object' && target.nodeType === 1) {\n\t if (this.action === 'copy' && target.hasAttribute('disabled')) {\n\t throw new Error('Invalid \"target\" attribute. Please use \"readonly\" instead of \"disabled\" attribute');\n\t }\n\t\n\t if (this.action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {\n\t throw new Error('Invalid \"target\" attribute. You can\\'t cut text from elements with \"readonly\" or \"disabled\" attributes');\n\t }\n\t\n\t this._target = target;\n\t } else {\n\t throw new Error('Invalid \"target\" value, use a valid Element');\n\t }\n\t }\n\t },\n\t get: function get() {\n\t return this._target;\n\t }\n\t }]);\n\t\n\t return ClipboardAction;\n\t }();\n\t\n\t module.exports = ClipboardAction;\n\t});\n\n/***/ },\n/* 7 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;(function (global, factory) {\n\t if (true) {\n\t !(__WEBPACK_AMD_DEFINE_ARRAY__ = [module, __webpack_require__(6), __webpack_require__(33), __webpack_require__(19)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t } else if (typeof exports !== \"undefined\") {\n\t factory(module, require('./clipboard-action'), require('tiny-emitter'), require('good-listener'));\n\t } else {\n\t var mod = {\n\t exports: {}\n\t };\n\t factory(mod, global.clipboardAction, global.tinyEmitter, global.goodListener);\n\t global.clipboard = mod.exports;\n\t }\n\t})(this, function (module, _clipboardAction, _tinyEmitter, _goodListener) {\n\t 'use strict';\n\t\n\t var _clipboardAction2 = _interopRequireDefault(_clipboardAction);\n\t\n\t var _tinyEmitter2 = _interopRequireDefault(_tinyEmitter);\n\t\n\t var _goodListener2 = _interopRequireDefault(_goodListener);\n\t\n\t function _interopRequireDefault(obj) {\n\t return obj && obj.__esModule ? obj : {\n\t default: obj\n\t };\n\t }\n\t\n\t function _classCallCheck(instance, Constructor) {\n\t if (!(instance instanceof Constructor)) {\n\t throw new TypeError(\"Cannot call a class as a function\");\n\t }\n\t }\n\t\n\t function _possibleConstructorReturn(self, call) {\n\t if (!self) {\n\t throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n\t }\n\t\n\t return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n\t }\n\t\n\t function _inherits(subClass, superClass) {\n\t if (typeof superClass !== \"function\" && superClass !== null) {\n\t throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n\t }\n\t\n\t subClass.prototype = Object.create(superClass && superClass.prototype, {\n\t constructor: {\n\t value: subClass,\n\t enumerable: false,\n\t writable: true,\n\t configurable: true\n\t }\n\t });\n\t if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n\t }\n\t\n\t var Clipboard = function (_Emitter) {\n\t _inherits(Clipboard, _Emitter);\n\t\n\t /**\n\t * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n\t * @param {Object} options\n\t */\n\t\n\t function Clipboard(trigger, options) {\n\t _classCallCheck(this, Clipboard);\n\t\n\t var _this = _possibleConstructorReturn(this, _Emitter.call(this));\n\t\n\t _this.resolveOptions(options);\n\t _this.listenClick(trigger);\n\t return _this;\n\t }\n\t\n\t /**\n\t * Defines if attributes would be resolved using internal setter functions\n\t * or custom functions that were passed in the constructor.\n\t * @param {Object} options\n\t */\n\t\n\t\n\t Clipboard.prototype.resolveOptions = function resolveOptions() {\n\t var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\t\n\t this.action = typeof options.action === 'function' ? options.action : this.defaultAction;\n\t this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;\n\t this.text = typeof options.text === 'function' ? options.text : this.defaultText;\n\t };\n\t\n\t Clipboard.prototype.listenClick = function listenClick(trigger) {\n\t var _this2 = this;\n\t\n\t this.listener = (0, _goodListener2.default)(trigger, 'click', function (e) {\n\t return _this2.onClick(e);\n\t });\n\t };\n\t\n\t Clipboard.prototype.onClick = function onClick(e) {\n\t var trigger = e.delegateTarget || e.currentTarget;\n\t\n\t if (this.clipboardAction) {\n\t this.clipboardAction = null;\n\t }\n\t\n\t this.clipboardAction = new _clipboardAction2.default({\n\t action: this.action(trigger),\n\t target: this.target(trigger),\n\t text: this.text(trigger),\n\t trigger: trigger,\n\t emitter: this\n\t });\n\t };\n\t\n\t Clipboard.prototype.defaultAction = function defaultAction(trigger) {\n\t return getAttributeValue('action', trigger);\n\t };\n\t\n\t Clipboard.prototype.defaultTarget = function defaultTarget(trigger) {\n\t var selector = getAttributeValue('target', trigger);\n\t\n\t if (selector) {\n\t return document.querySelector(selector);\n\t }\n\t };\n\t\n\t Clipboard.prototype.defaultText = function defaultText(trigger) {\n\t return getAttributeValue('text', trigger);\n\t };\n\t\n\t Clipboard.prototype.destroy = function destroy() {\n\t this.listener.destroy();\n\t\n\t if (this.clipboardAction) {\n\t this.clipboardAction.destroy();\n\t this.clipboardAction = null;\n\t }\n\t };\n\t\n\t return Clipboard;\n\t }(_tinyEmitter2.default);\n\t\n\t /**\n\t * Helper function to retrieve attribute value.\n\t * @param {String} suffix\n\t * @param {Element} element\n\t */\n\t function getAttributeValue(suffix, element) {\n\t var attribute = 'data-clipboard-' + suffix;\n\t\n\t if (!element.hasAttribute(attribute)) {\n\t return;\n\t }\n\t\n\t return element.getAttribute(attribute);\n\t }\n\t\n\t module.exports = Clipboard;\n\t});\n\n/***/ },\n/* 8 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar matches = __webpack_require__(23)\r\n\t\r\n\tmodule.exports = function (element, selector, checkYoSelf) {\r\n\t var parent = checkYoSelf ? element : element.parentNode\r\n\t\r\n\t while (parent && parent !== document) {\r\n\t if (matches(parent, selector)) return parent;\r\n\t parent = parent.parentNode\r\n\t }\r\n\t}\r\n\n\n/***/ },\n/* 9 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(Buffer) {var createHash = __webpack_require__(3)\n\t\n\tvar zeroBuffer = new Buffer(128)\n\tzeroBuffer.fill(0)\n\t\n\tmodule.exports = Hmac\n\t\n\tfunction Hmac (alg, key) {\n\t if(!(this instanceof Hmac)) return new Hmac(alg, key)\n\t this._opad = opad\n\t this._alg = alg\n\t\n\t var blocksize = (alg === 'sha512') ? 128 : 64\n\t\n\t key = this._key = !Buffer.isBuffer(key) ? new Buffer(key) : key\n\t\n\t if(key.length > blocksize) {\n\t key = createHash(alg).update(key).digest()\n\t } else if(key.length < blocksize) {\n\t key = Buffer.concat([key, zeroBuffer], blocksize)\n\t }\n\t\n\t var ipad = this._ipad = new Buffer(blocksize)\n\t var opad = this._opad = new Buffer(blocksize)\n\t\n\t for(var i = 0; i < blocksize; i++) {\n\t ipad[i] = key[i] ^ 0x36\n\t opad[i] = key[i] ^ 0x5C\n\t }\n\t\n\t this._hash = createHash(alg).update(ipad)\n\t}\n\t\n\tHmac.prototype.update = function (data, enc) {\n\t this._hash.update(data, enc)\n\t return this\n\t}\n\t\n\tHmac.prototype.digest = function (enc) {\n\t var h = this._hash.digest()\n\t return createHash(this._alg).update(this._opad).update(h).digest(enc)\n\t}\n\t\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1).Buffer))\n\n/***/ },\n/* 10 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(Buffer) {var intSize = 4;\n\tvar zeroBuffer = new Buffer(intSize); zeroBuffer.fill(0);\n\tvar chrsz = 8;\n\t\n\tfunction toArray(buf, bigEndian) {\n\t if ((buf.length % intSize) !== 0) {\n\t var len = buf.length + (intSize - (buf.length % intSize));\n\t buf = Buffer.concat([buf, zeroBuffer], len);\n\t }\n\t\n\t var arr = [];\n\t var fn = bigEndian ? buf.readInt32BE : buf.readInt32LE;\n\t for (var i = 0; i < buf.length; i += intSize) {\n\t arr.push(fn.call(buf, i));\n\t }\n\t return arr;\n\t}\n\t\n\tfunction toBuffer(arr, size, bigEndian) {\n\t var buf = new Buffer(size);\n\t var fn = bigEndian ? buf.writeInt32BE : buf.writeInt32LE;\n\t for (var i = 0; i < arr.length; i++) {\n\t fn.call(buf, arr[i], i * 4, true);\n\t }\n\t return buf;\n\t}\n\t\n\tfunction hash(buf, fn, hashSize, bigEndian) {\n\t if (!Buffer.isBuffer(buf)) buf = new Buffer(buf);\n\t var arr = fn(toArray(buf, bigEndian), buf.length * chrsz);\n\t return toBuffer(arr, hashSize, bigEndian);\n\t}\n\t\n\tmodule.exports = { hash: hash };\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1).Buffer))\n\n/***/ },\n/* 11 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(Buffer) {var rng = __webpack_require__(14)\n\t\n\tfunction error () {\n\t var m = [].slice.call(arguments).join(' ')\n\t throw new Error([\n\t m,\n\t 'we accept pull requests',\n\t 'http://github.com/dominictarr/crypto-browserify'\n\t ].join('\\n'))\n\t}\n\t\n\texports.createHash = __webpack_require__(3)\n\t\n\texports.createHmac = __webpack_require__(9)\n\t\n\texports.randomBytes = function(size, callback) {\n\t if (callback && callback.call) {\n\t try {\n\t callback.call(this, undefined, new Buffer(rng(size)))\n\t } catch (err) { callback(err) }\n\t } else {\n\t return new Buffer(rng(size))\n\t }\n\t}\n\t\n\tfunction each(a, f) {\n\t for(var i in a)\n\t f(a[i], i)\n\t}\n\t\n\texports.getHashes = function () {\n\t return ['sha1', 'sha256', 'sha512', 'md5', 'rmd160']\n\t}\n\t\n\tvar p = __webpack_require__(13)(exports)\n\texports.pbkdf2 = p.pbkdf2\n\texports.pbkdf2Sync = p.pbkdf2Sync\n\t\n\t\n\t// the least I can do is make error messages for the rest of the node.js/crypto api.\n\teach(['createCredentials'\n\t, 'createCipher'\n\t, 'createCipheriv'\n\t, 'createDecipher'\n\t, 'createDecipheriv'\n\t, 'createSign'\n\t, 'createVerify'\n\t, 'createDiffieHellman'\n\t], function (name) {\n\t exports[name] = function () {\n\t error('sorry,', name, 'is not implemented yet')\n\t }\n\t})\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1).Buffer))\n\n/***/ },\n/* 12 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/*\n\t * A JavaScript implementation of the RSA Data Security, Inc. MD5 Message\n\t * Digest Algorithm, as defined in RFC 1321.\n\t * Version 2.1 Copyright (C) Paul Johnston 1999 - 2002.\n\t * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n\t * Distributed under the BSD License\n\t * See http://pajhome.org.uk/crypt/md5 for more info.\n\t */\n\t\n\tvar helpers = __webpack_require__(10);\n\t\n\t/*\n\t * Calculate the MD5 of an array of little-endian words, and a bit length\n\t */\n\tfunction core_md5(x, len)\n\t{\n\t /* append padding */\n\t x[len >> 5] |= 0x80 << ((len) % 32);\n\t x[(((len + 64) >>> 9) << 4) + 14] = len;\n\t\n\t var a = 1732584193;\n\t var b = -271733879;\n\t var c = -1732584194;\n\t var d = 271733878;\n\t\n\t for(var i = 0; i < x.length; i += 16)\n\t {\n\t var olda = a;\n\t var oldb = b;\n\t var oldc = c;\n\t var oldd = d;\n\t\n\t a = md5_ff(a, b, c, d, x[i+ 0], 7 , -680876936);\n\t d = md5_ff(d, a, b, c, x[i+ 1], 12, -389564586);\n\t c = md5_ff(c, d, a, b, x[i+ 2], 17, 606105819);\n\t b = md5_ff(b, c, d, a, x[i+ 3], 22, -1044525330);\n\t a = md5_ff(a, b, c, d, x[i+ 4], 7 , -176418897);\n\t d = md5_ff(d, a, b, c, x[i+ 5], 12, 1200080426);\n\t c = md5_ff(c, d, a, b, x[i+ 6], 17, -1473231341);\n\t b = md5_ff(b, c, d, a, x[i+ 7], 22, -45705983);\n\t a = md5_ff(a, b, c, d, x[i+ 8], 7 , 1770035416);\n\t d = md5_ff(d, a, b, c, x[i+ 9], 12, -1958414417);\n\t c = md5_ff(c, d, a, b, x[i+10], 17, -42063);\n\t b = md5_ff(b, c, d, a, x[i+11], 22, -1990404162);\n\t a = md5_ff(a, b, c, d, x[i+12], 7 , 1804603682);\n\t d = md5_ff(d, a, b, c, x[i+13], 12, -40341101);\n\t c = md5_ff(c, d, a, b, x[i+14], 17, -1502002290);\n\t b = md5_ff(b, c, d, a, x[i+15], 22, 1236535329);\n\t\n\t a = md5_gg(a, b, c, d, x[i+ 1], 5 , -165796510);\n\t d = md5_gg(d, a, b, c, x[i+ 6], 9 , -1069501632);\n\t c = md5_gg(c, d, a, b, x[i+11], 14, 643717713);\n\t b = md5_gg(b, c, d, a, x[i+ 0], 20, -373897302);\n\t a = md5_gg(a, b, c, d, x[i+ 5], 5 , -701558691);\n\t d = md5_gg(d, a, b, c, x[i+10], 9 , 38016083);\n\t c = md5_gg(c, d, a, b, x[i+15], 14, -660478335);\n\t b = md5_gg(b, c, d, a, x[i+ 4], 20, -405537848);\n\t a = md5_gg(a, b, c, d, x[i+ 9], 5 , 568446438);\n\t d = md5_gg(d, a, b, c, x[i+14], 9 , -1019803690);\n\t c = md5_gg(c, d, a, b, x[i+ 3], 14, -187363961);\n\t b = md5_gg(b, c, d, a, x[i+ 8], 20, 1163531501);\n\t a = md5_gg(a, b, c, d, x[i+13], 5 , -1444681467);\n\t d = md5_gg(d, a, b, c, x[i+ 2], 9 , -51403784);\n\t c = md5_gg(c, d, a, b, x[i+ 7], 14, 1735328473);\n\t b = md5_gg(b, c, d, a, x[i+12], 20, -1926607734);\n\t\n\t a = md5_hh(a, b, c, d, x[i+ 5], 4 , -378558);\n\t d = md5_hh(d, a, b, c, x[i+ 8], 11, -2022574463);\n\t c = md5_hh(c, d, a, b, x[i+11], 16, 1839030562);\n\t b = md5_hh(b, c, d, a, x[i+14], 23, -35309556);\n\t a = md5_hh(a, b, c, d, x[i+ 1], 4 , -1530992060);\n\t d = md5_hh(d, a, b, c, x[i+ 4], 11, 1272893353);\n\t c = md5_hh(c, d, a, b, x[i+ 7], 16, -155497632);\n\t b = md5_hh(b, c, d, a, x[i+10], 23, -1094730640);\n\t a = md5_hh(a, b, c, d, x[i+13], 4 , 681279174);\n\t d = md5_hh(d, a, b, c, x[i+ 0], 11, -358537222);\n\t c = md5_hh(c, d, a, b, x[i+ 3], 16, -722521979);\n\t b = md5_hh(b, c, d, a, x[i+ 6], 23, 76029189);\n\t a = md5_hh(a, b, c, d, x[i+ 9], 4 , -640364487);\n\t d = md5_hh(d, a, b, c, x[i+12], 11, -421815835);\n\t c = md5_hh(c, d, a, b, x[i+15], 16, 530742520);\n\t b = md5_hh(b, c, d, a, x[i+ 2], 23, -995338651);\n\t\n\t a = md5_ii(a, b, c, d, x[i+ 0], 6 , -198630844);\n\t d = md5_ii(d, a, b, c, x[i+ 7], 10, 1126891415);\n\t c = md5_ii(c, d, a, b, x[i+14], 15, -1416354905);\n\t b = md5_ii(b, c, d, a, x[i+ 5], 21, -57434055);\n\t a = md5_ii(a, b, c, d, x[i+12], 6 , 1700485571);\n\t d = md5_ii(d, a, b, c, x[i+ 3], 10, -1894986606);\n\t c = md5_ii(c, d, a, b, x[i+10], 15, -1051523);\n\t b = md5_ii(b, c, d, a, x[i+ 1], 21, -2054922799);\n\t a = md5_ii(a, b, c, d, x[i+ 8], 6 , 1873313359);\n\t d = md5_ii(d, a, b, c, x[i+15], 10, -30611744);\n\t c = md5_ii(c, d, a, b, x[i+ 6], 15, -1560198380);\n\t b = md5_ii(b, c, d, a, x[i+13], 21, 1309151649);\n\t a = md5_ii(a, b, c, d, x[i+ 4], 6 , -145523070);\n\t d = md5_ii(d, a, b, c, x[i+11], 10, -1120210379);\n\t c = md5_ii(c, d, a, b, x[i+ 2], 15, 718787259);\n\t b = md5_ii(b, c, d, a, x[i+ 9], 21, -343485551);\n\t\n\t a = safe_add(a, olda);\n\t b = safe_add(b, oldb);\n\t c = safe_add(c, oldc);\n\t d = safe_add(d, oldd);\n\t }\n\t return Array(a, b, c, d);\n\t\n\t}\n\t\n\t/*\n\t * These functions implement the four basic operations the algorithm uses.\n\t */\n\tfunction md5_cmn(q, a, b, x, s, t)\n\t{\n\t return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),b);\n\t}\n\tfunction md5_ff(a, b, c, d, x, s, t)\n\t{\n\t return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t);\n\t}\n\tfunction md5_gg(a, b, c, d, x, s, t)\n\t{\n\t return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t);\n\t}\n\tfunction md5_hh(a, b, c, d, x, s, t)\n\t{\n\t return md5_cmn(b ^ c ^ d, a, b, x, s, t);\n\t}\n\tfunction md5_ii(a, b, c, d, x, s, t)\n\t{\n\t return md5_cmn(c ^ (b | (~d)), a, b, x, s, t);\n\t}\n\t\n\t/*\n\t * Add integers, wrapping at 2^32. This uses 16-bit operations internally\n\t * to work around bugs in some JS interpreters.\n\t */\n\tfunction safe_add(x, y)\n\t{\n\t var lsw = (x & 0xFFFF) + (y & 0xFFFF);\n\t var msw = (x >> 16) + (y >> 16) + (lsw >> 16);\n\t return (msw << 16) | (lsw & 0xFFFF);\n\t}\n\t\n\t/*\n\t * Bitwise rotate a 32-bit number to the left.\n\t */\n\tfunction bit_rol(num, cnt)\n\t{\n\t return (num << cnt) | (num >>> (32 - cnt));\n\t}\n\t\n\tmodule.exports = function md5(buf) {\n\t return helpers.hash(buf, core_md5, 16);\n\t};\n\n\n/***/ },\n/* 13 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar pbkdf2Export = __webpack_require__(24)\n\t\n\tmodule.exports = function (crypto, exports) {\n\t exports = exports || {}\n\t\n\t var exported = pbkdf2Export(crypto)\n\t\n\t exports.pbkdf2 = exported.pbkdf2\n\t exports.pbkdf2Sync = exported.pbkdf2Sync\n\t\n\t return exports\n\t}\n\n\n/***/ },\n/* 14 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(global, Buffer) {(function() {\n\t var g = ('undefined' === typeof window ? global : window) || {}\n\t _crypto = (\n\t g.crypto || g.msCrypto || __webpack_require__(35)\n\t )\n\t module.exports = function(size) {\n\t // Modern Browsers\n\t if(_crypto.getRandomValues) {\n\t var bytes = new Buffer(size); //in browserify, this is an extended Uint8Array\n\t /* This will not work in older browsers.\n\t * See https://developer.mozilla.org/en-US/docs/Web/API/window.crypto.getRandomValues\n\t */\n\t \n\t _crypto.getRandomValues(bytes);\n\t return bytes;\n\t }\n\t else if (_crypto.randomBytes) {\n\t return _crypto.randomBytes(size)\n\t }\n\t else\n\t throw new Error(\n\t 'secure random number generation not supported by this browser\\n'+\n\t 'use chrome, FireFox or Internet Explorer 11'\n\t )\n\t }\n\t}())\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()), __webpack_require__(1).Buffer))\n\n/***/ },\n/* 15 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar closest = __webpack_require__(8);\n\t\n\t/**\n\t * Delegates event to a selector.\n\t *\n\t * @param {Element} element\n\t * @param {String} selector\n\t * @param {String} type\n\t * @param {Function} callback\n\t * @param {Boolean} useCapture\n\t * @return {Object}\n\t */\n\tfunction delegate(element, selector, type, callback, useCapture) {\n\t var listenerFn = listener.apply(this, arguments);\n\t\n\t element.addEventListener(type, listenerFn, useCapture);\n\t\n\t return {\n\t destroy: function() {\n\t element.removeEventListener(type, listenerFn, useCapture);\n\t }\n\t }\n\t}\n\t\n\t/**\n\t * Finds closest match and invokes callback.\n\t *\n\t * @param {Element} element\n\t * @param {String} selector\n\t * @param {String} type\n\t * @param {Function} callback\n\t * @return {Function}\n\t */\n\tfunction listener(element, selector, type, callback) {\n\t return function(e) {\n\t e.delegateTarget = closest(e.target, selector, true);\n\t\n\t if (e.delegateTarget) {\n\t callback.call(element, e);\n\t }\n\t }\n\t}\n\t\n\tmodule.exports = delegate;\n\n\n/***/ },\n/* 16 */\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ },\n/* 17 */,\n/* 18 */\n/***/ function(module, exports) {\n\n\t/**\n\t * Check if argument is a HTML element.\n\t *\n\t * @param {Object} value\n\t * @return {Boolean}\n\t */\n\texports.node = function(value) {\n\t return value !== undefined\n\t && value instanceof HTMLElement\n\t && value.nodeType === 1;\n\t};\n\t\n\t/**\n\t * Check if argument is a list of HTML elements.\n\t *\n\t * @param {Object} value\n\t * @return {Boolean}\n\t */\n\texports.nodeList = function(value) {\n\t var type = Object.prototype.toString.call(value);\n\t\n\t return value !== undefined\n\t && (type === '[object NodeList]' || type === '[object HTMLCollection]')\n\t && ('length' in value)\n\t && (value.length === 0 || exports.node(value[0]));\n\t};\n\t\n\t/**\n\t * Check if argument is a string.\n\t *\n\t * @param {Object} value\n\t * @return {Boolean}\n\t */\n\texports.string = function(value) {\n\t return typeof value === 'string'\n\t || value instanceof String;\n\t};\n\t\n\t/**\n\t * Check if argument is a function.\n\t *\n\t * @param {Object} value\n\t * @return {Boolean}\n\t */\n\texports.fn = function(value) {\n\t var type = Object.prototype.toString.call(value);\n\t\n\t return type === '[object Function]';\n\t};\n\n\n/***/ },\n/* 19 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar is = __webpack_require__(18);\n\tvar delegate = __webpack_require__(15);\n\t\n\t/**\n\t * Validates all params and calls the right\n\t * listener function based on its target type.\n\t *\n\t * @param {String|HTMLElement|HTMLCollection|NodeList} target\n\t * @param {String} type\n\t * @param {Function} callback\n\t * @return {Object}\n\t */\n\tfunction listen(target, type, callback) {\n\t if (!target && !type && !callback) {\n\t throw new Error('Missing required arguments');\n\t }\n\t\n\t if (!is.string(type)) {\n\t throw new TypeError('Second argument must be a String');\n\t }\n\t\n\t if (!is.fn(callback)) {\n\t throw new TypeError('Third argument must be a Function');\n\t }\n\t\n\t if (is.node(target)) {\n\t return listenNode(target, type, callback);\n\t }\n\t else if (is.nodeList(target)) {\n\t return listenNodeList(target, type, callback);\n\t }\n\t else if (is.string(target)) {\n\t return listenSelector(target, type, callback);\n\t }\n\t else {\n\t throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');\n\t }\n\t}\n\t\n\t/**\n\t * Adds an event listener to a HTML element\n\t * and returns a remove listener function.\n\t *\n\t * @param {HTMLElement} node\n\t * @param {String} type\n\t * @param {Function} callback\n\t * @return {Object}\n\t */\n\tfunction listenNode(node, type, callback) {\n\t node.addEventListener(type, callback);\n\t\n\t return {\n\t destroy: function() {\n\t node.removeEventListener(type, callback);\n\t }\n\t }\n\t}\n\t\n\t/**\n\t * Add an event listener to a list of HTML elements\n\t * and returns a remove listener function.\n\t *\n\t * @param {NodeList|HTMLCollection} nodeList\n\t * @param {String} type\n\t * @param {Function} callback\n\t * @return {Object}\n\t */\n\tfunction listenNodeList(nodeList, type, callback) {\n\t Array.prototype.forEach.call(nodeList, function(node) {\n\t node.addEventListener(type, callback);\n\t });\n\t\n\t return {\n\t destroy: function() {\n\t Array.prototype.forEach.call(nodeList, function(node) {\n\t node.removeEventListener(type, callback);\n\t });\n\t }\n\t }\n\t}\n\t\n\t/**\n\t * Add an event listener to a selector\n\t * and returns a remove listener function.\n\t *\n\t * @param {String} selector\n\t * @param {String} type\n\t * @param {Function} callback\n\t * @return {Object}\n\t */\n\tfunction listenSelector(selector, type, callback) {\n\t return delegate(document.body, selector, type, callback);\n\t}\n\t\n\tmodule.exports = listen;\n\n\n/***/ },\n/* 20 */\n/***/ function(module, exports) {\n\n\texports.read = function (buffer, offset, isLE, mLen, nBytes) {\n\t var e, m\n\t var eLen = nBytes * 8 - mLen - 1\n\t var eMax = (1 << eLen) - 1\n\t var eBias = eMax >> 1\n\t var nBits = -7\n\t var i = isLE ? (nBytes - 1) : 0\n\t var d = isLE ? -1 : 1\n\t var s = buffer[offset + i]\n\t\n\t i += d\n\t\n\t e = s & ((1 << (-nBits)) - 1)\n\t s >>= (-nBits)\n\t nBits += eLen\n\t for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\t\n\t m = e & ((1 << (-nBits)) - 1)\n\t e >>= (-nBits)\n\t nBits += mLen\n\t for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\t\n\t if (e === 0) {\n\t e = 1 - eBias\n\t } else if (e === eMax) {\n\t return m ? NaN : ((s ? -1 : 1) * Infinity)\n\t } else {\n\t m = m + Math.pow(2, mLen)\n\t e = e - eBias\n\t }\n\t return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n\t}\n\t\n\texports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n\t var e, m, c\n\t var eLen = nBytes * 8 - mLen - 1\n\t var eMax = (1 << eLen) - 1\n\t var eBias = eMax >> 1\n\t var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n\t var i = isLE ? 0 : (nBytes - 1)\n\t var d = isLE ? 1 : -1\n\t var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\t\n\t value = Math.abs(value)\n\t\n\t if (isNaN(value) || value === Infinity) {\n\t m = isNaN(value) ? 1 : 0\n\t e = eMax\n\t } else {\n\t e = Math.floor(Math.log(value) / Math.LN2)\n\t if (value * (c = Math.pow(2, -e)) < 1) {\n\t e--\n\t c *= 2\n\t }\n\t if (e + eBias >= 1) {\n\t value += rt / c\n\t } else {\n\t value += rt * Math.pow(2, 1 - eBias)\n\t }\n\t if (value * c >= 2) {\n\t e++\n\t c /= 2\n\t }\n\t\n\t if (e + eBias >= eMax) {\n\t m = 0\n\t e = eMax\n\t } else if (e + eBias >= 1) {\n\t m = (value * c - 1) * Math.pow(2, mLen)\n\t e = e + eBias\n\t } else {\n\t m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n\t e = 0\n\t }\n\t }\n\t\n\t for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\t\n\t e = (e << mLen) | m\n\t eLen += mLen\n\t for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\t\n\t buffer[offset + i - d] |= s * 128\n\t}\n\n\n/***/ },\n/* 21 */\n/***/ function(module, exports) {\n\n\tif (typeof Object.create === 'function') {\n\t // implementation from standard node.js 'util' module\n\t module.exports = function inherits(ctor, superCtor) {\n\t ctor.super_ = superCtor\n\t ctor.prototype = Object.create(superCtor.prototype, {\n\t constructor: {\n\t value: ctor,\n\t enumerable: false,\n\t writable: true,\n\t configurable: true\n\t }\n\t });\n\t };\n\t} else {\n\t // old school shim for old browsers\n\t module.exports = function inherits(ctor, superCtor) {\n\t ctor.super_ = superCtor\n\t var TempCtor = function () {}\n\t TempCtor.prototype = superCtor.prototype\n\t ctor.prototype = new TempCtor()\n\t ctor.prototype.constructor = ctor\n\t }\n\t}\n\n\n/***/ },\n/* 22 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tvar _crypto = __webpack_require__(11);\n\t\n\tvar _crypto2 = _interopRequireDefault(_crypto);\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\t\n\tmodule.exports = {\n\t generatePassword: _generatePassword,\n\t encryptLogin: _encryptLogin,\n\t renderPassword: _renderPassword,\n\t _deriveHash: _deriveHash,\n\t _prettyPrint: _prettyPrint,\n\t _getTemplate: _getTemplate,\n\t _getCharType: _getCharType,\n\t _getPasswordChar: _getPasswordChar,\n\t _string2charCodes: _string2charCodes\n\t};\n\t\n\tfunction _generatePassword(login, masterPassword, site, options) {\n\t return new Promise(function (resolve, reject) {\n\t if (!login || !masterPassword || !site) {\n\t reject('generatePassword invalid parameter');\n\t }\n\t\n\t _encryptLogin(login, masterPassword).then(function (hash) {\n\t resolve(_renderPassword(hash, site, options));\n\t });\n\t });\n\t}\n\t\n\tfunction _renderPassword(hash, site, options) {\n\t var derivedHash = _deriveHash(hash, site, options);\n\t var template = _getTemplate(options.password.settings);\n\t return _prettyPrint(derivedHash, template);\n\t}\n\t\n\tfunction _encryptLogin(login, masterPassword) {\n\t return new Promise(function (resolve, reject) {\n\t if (!login || !masterPassword) {\n\t reject('encryptLogin parameter could not be empty');\n\t }\n\t var iterations = 8192;\n\t var keylen = 32;\n\t _crypto2.default.pbkdf2(masterPassword, login, iterations, keylen, 'sha256', function (error, key) {\n\t if (error) {\n\t reject('error in pbkdf2');\n\t } else {\n\t resolve(key.toString('hex'));\n\t }\n\t });\n\t });\n\t}\n\t\n\tfunction _deriveHash(hash, site) {\n\t var _ref = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2];\n\t\n\t var _ref$password = _ref.password;\n\t var password = _ref$password === undefined ? { length: 12 } : _ref$password;\n\t var _ref$counter = _ref.counter;\n\t var counter = _ref$counter === undefined ? 1 : _ref$counter;\n\t\n\t var salt = site + counter.toString();\n\t var derivedHash = _crypto2.default.createHmac('sha256', hash).update(salt).digest('hex');\n\t return derivedHash.substring(0, password.length);\n\t}\n\t\n\tfunction _getTemplate() {\n\t var passwordTypes = arguments.length <= 0 || arguments[0] === undefined ? ['strong'] : arguments[0];\n\t\n\t var passwordTypesInfo = {\n\t lowercase: { value: 'vc', order: 1 },\n\t uppercase: { value: 'VC', order: 2 },\n\t numbers: { value: 'n', order: 3 },\n\t symbols: { value: 's', order: 4 },\n\t strong: { value: 'Cvcvns', order: 5 }\n\t };\n\t return passwordTypes.map(function (passwordType) {\n\t return passwordTypesInfo[passwordType];\n\t }).sort(function (passwordType1, passwordType2) {\n\t return passwordType1.order > passwordType2.order;\n\t }).map(function (passwordType) {\n\t return passwordType.value;\n\t }).join('');\n\t}\n\t\n\tfunction _prettyPrint(hash, template) {\n\t var password = '';\n\t\n\t _string2charCodes(hash).forEach(function (charCode, index) {\n\t var charType = _getCharType(template, index);\n\t password += _getPasswordChar(charType, charCode);\n\t });\n\t return password;\n\t}\n\t\n\tfunction _string2charCodes(text) {\n\t var charCodes = [];\n\t for (var i = 0; i < text.length; i++) {\n\t charCodes.push(text.charCodeAt(i));\n\t }\n\t return charCodes;\n\t}\n\t\n\tfunction _getCharType(template, index) {\n\t return template[index % template.length];\n\t}\n\t\n\tfunction _getPasswordChar(charType, index) {\n\t var passwordsChars = {\n\t V: 'AEIOUY',\n\t C: 'BCDFGHJKLMNPQRSTVWXZ',\n\t v: 'aeiouy',\n\t c: 'bcdfghjklmnpqrstvwxz',\n\t A: 'AEIOUYBCDFGHJKLMNPQRSTVWXZ',\n\t a: 'AEIOUYaeiouyBCDFGHJKLMNPQRSTVWXZbcdfghjklmnpqrstvwxz',\n\t n: '0123456789',\n\t s: '@&%?,=[]_:-+*$#!\\'^~;()/.',\n\t x: 'AEIOUYaeiouyBCDFGHJKLMNPQRSTVWXZbcdfghjklmnpqrstvwxz0123456789@&%?,=[]_:-+*$#!\\'^~;()/.'\n\t };\n\t var passwordChar = passwordsChars[charType];\n\t return passwordChar[index % passwordChar.length];\n\t}\n\n\n/***/ },\n/* 23 */\n/***/ function(module, exports) {\n\n\t\r\n\t/**\r\n\t * Element prototype.\r\n\t */\r\n\t\r\n\tvar proto = Element.prototype;\r\n\t\r\n\t/**\r\n\t * Vendor function.\r\n\t */\r\n\t\r\n\tvar vendor = proto.matchesSelector\r\n\t || proto.webkitMatchesSelector\r\n\t || proto.mozMatchesSelector\r\n\t || proto.msMatchesSelector\r\n\t || proto.oMatchesSelector;\r\n\t\r\n\t/**\r\n\t * Expose `match()`.\r\n\t */\r\n\t\r\n\tmodule.exports = match;\r\n\t\r\n\t/**\r\n\t * Match `el` to `selector`.\r\n\t *\r\n\t * @param {Element} el\r\n\t * @param {String} selector\r\n\t * @return {Boolean}\r\n\t * @api public\r\n\t */\r\n\t\r\n\tfunction match(el, selector) {\r\n\t if (vendor) return vendor.call(el, selector);\r\n\t var nodes = el.parentNode.querySelectorAll(selector);\r\n\t for (var i = 0; i < nodes.length; ++i) {\r\n\t if (nodes[i] == el) return true;\r\n\t }\r\n\t return false;\r\n\t}\n\n/***/ },\n/* 24 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(Buffer) {module.exports = function(crypto) {\n\t function pbkdf2(password, salt, iterations, keylen, digest, callback) {\n\t if ('function' === typeof digest) {\n\t callback = digest\n\t digest = undefined\n\t }\n\t\n\t if ('function' !== typeof callback)\n\t throw new Error('No callback provided to pbkdf2')\n\t\n\t setTimeout(function() {\n\t var result\n\t\n\t try {\n\t result = pbkdf2Sync(password, salt, iterations, keylen, digest)\n\t } catch (e) {\n\t return callback(e)\n\t }\n\t\n\t callback(undefined, result)\n\t })\n\t }\n\t\n\t function pbkdf2Sync(password, salt, iterations, keylen, digest) {\n\t if ('number' !== typeof iterations)\n\t throw new TypeError('Iterations not a number')\n\t\n\t if (iterations < 0)\n\t throw new TypeError('Bad iterations')\n\t\n\t if ('number' !== typeof keylen)\n\t throw new TypeError('Key length not a number')\n\t\n\t if (keylen < 0)\n\t throw new TypeError('Bad key length')\n\t\n\t digest = digest || 'sha1'\n\t\n\t if (!Buffer.isBuffer(password)) password = new Buffer(password)\n\t if (!Buffer.isBuffer(salt)) salt = new Buffer(salt)\n\t\n\t var hLen, l = 1, r, T\n\t var DK = new Buffer(keylen)\n\t var block1 = new Buffer(salt.length + 4)\n\t salt.copy(block1, 0, 0, salt.length)\n\t\n\t for (var i = 1; i <= l; i++) {\n\t block1.writeUInt32BE(i, salt.length)\n\t\n\t var U = crypto.createHmac(digest, password).update(block1).digest()\n\t\n\t if (!hLen) {\n\t hLen = U.length\n\t T = new Buffer(hLen)\n\t l = Math.ceil(keylen / hLen)\n\t r = keylen - (l - 1) * hLen\n\t\n\t if (keylen > (Math.pow(2, 32) - 1) * hLen)\n\t throw new TypeError('keylen exceeds maximum length')\n\t }\n\t\n\t U.copy(T, 0, 0, hLen)\n\t\n\t for (var j = 1; j < iterations; j++) {\n\t U = crypto.createHmac(digest, password).update(U).digest()\n\t\n\t for (var k = 0; k < hLen; k++) {\n\t T[k] ^= U[k]\n\t }\n\t }\n\t\n\t var destPos = (i - 1) * hLen\n\t var len = (i == l ? r : hLen)\n\t T.copy(DK, destPos, 0, len)\n\t }\n\t\n\t return DK\n\t }\n\t\n\t return {\n\t pbkdf2: pbkdf2,\n\t pbkdf2Sync: pbkdf2Sync\n\t }\n\t}\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1).Buffer))\n\n/***/ },\n/* 25 */\n/***/ function(module, exports) {\n\n\t// shim for using process in browser\n\t\n\tvar process = module.exports = {};\n\t\n\t// cached from whatever global is present so that test runners that stub it\n\t// don't break things. But we need to wrap it in a try catch in case it is\n\t// wrapped in strict mode code which doesn't define any globals. It's inside a\n\t// function because try/catches deoptimize in certain engines.\n\t\n\tvar cachedSetTimeout;\n\tvar cachedClearTimeout;\n\t\n\t(function () {\n\t try {\n\t cachedSetTimeout = setTimeout;\n\t } catch (e) {\n\t cachedSetTimeout = function () {\n\t throw new Error('setTimeout is not defined');\n\t }\n\t }\n\t try {\n\t cachedClearTimeout = clearTimeout;\n\t } catch (e) {\n\t cachedClearTimeout = function () {\n\t throw new Error('clearTimeout is not defined');\n\t }\n\t }\n\t} ())\n\tvar queue = [];\n\tvar draining = false;\n\tvar currentQueue;\n\tvar queueIndex = -1;\n\t\n\tfunction cleanUpNextTick() {\n\t if (!draining || !currentQueue) {\n\t return;\n\t }\n\t draining = false;\n\t if (currentQueue.length) {\n\t queue = currentQueue.concat(queue);\n\t } else {\n\t queueIndex = -1;\n\t }\n\t if (queue.length) {\n\t drainQueue();\n\t }\n\t}\n\t\n\tfunction drainQueue() {\n\t if (draining) {\n\t return;\n\t }\n\t var timeout = cachedSetTimeout(cleanUpNextTick);\n\t draining = true;\n\t\n\t var len = queue.length;\n\t while(len) {\n\t currentQueue = queue;\n\t queue = [];\n\t while (++queueIndex < len) {\n\t if (currentQueue) {\n\t currentQueue[queueIndex].run();\n\t }\n\t }\n\t queueIndex = -1;\n\t len = queue.length;\n\t }\n\t currentQueue = null;\n\t draining = false;\n\t cachedClearTimeout(timeout);\n\t}\n\t\n\tprocess.nextTick = function (fun) {\n\t var args = new Array(arguments.length - 1);\n\t if (arguments.length > 1) {\n\t for (var i = 1; i < arguments.length; i++) {\n\t args[i - 1] = arguments[i];\n\t }\n\t }\n\t queue.push(new Item(fun, args));\n\t if (queue.length === 1 && !draining) {\n\t cachedSetTimeout(drainQueue, 0);\n\t }\n\t};\n\t\n\t// v8 likes predictible objects\n\tfunction Item(fun, array) {\n\t this.fun = fun;\n\t this.array = array;\n\t}\n\tItem.prototype.run = function () {\n\t this.fun.apply(null, this.array);\n\t};\n\tprocess.title = 'browser';\n\tprocess.browser = true;\n\tprocess.env = {};\n\tprocess.argv = [];\n\tprocess.version = ''; // empty string to avoid regexp issues\n\tprocess.versions = {};\n\t\n\tfunction noop() {}\n\t\n\tprocess.on = noop;\n\tprocess.addListener = noop;\n\tprocess.once = noop;\n\tprocess.off = noop;\n\tprocess.removeListener = noop;\n\tprocess.removeAllListeners = noop;\n\tprocess.emit = noop;\n\t\n\tprocess.binding = function (name) {\n\t throw new Error('process.binding is not supported');\n\t};\n\t\n\tprocess.cwd = function () { return '/' };\n\tprocess.chdir = function (dir) {\n\t throw new Error('process.chdir is not supported');\n\t};\n\tprocess.umask = function() { return 0; };\n\n\n/***/ },\n/* 26 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(Buffer) {\n\tmodule.exports = ripemd160\n\t\n\t\n\t\n\t/*\n\tCryptoJS v3.1.2\n\tcode.google.com/p/crypto-js\n\t(c) 2009-2013 by Jeff Mott. All rights reserved.\n\tcode.google.com/p/crypto-js/wiki/License\n\t*/\n\t/** @preserve\n\t(c) 2012 by Cédric Mesnil. All rights reserved.\n\t\n\tRedistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n\t\n\t - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n\t - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n\t\n\tTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\t*/\n\t\n\t// Constants table\n\tvar zl = [\n\t 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,\n\t 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8,\n\t 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12,\n\t 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2,\n\t 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13];\n\tvar zr = [\n\t 5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12,\n\t 6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2,\n\t 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13,\n\t 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14,\n\t 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11];\n\tvar sl = [\n\t 11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8,\n\t 7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12,\n\t 11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5,\n\t 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12,\n\t 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6 ];\n\tvar sr = [\n\t 8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6,\n\t 9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11,\n\t 9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5,\n\t 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8,\n\t 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11 ];\n\t\n\tvar hl = [ 0x00000000, 0x5A827999, 0x6ED9EBA1, 0x8F1BBCDC, 0xA953FD4E];\n\tvar hr = [ 0x50A28BE6, 0x5C4DD124, 0x6D703EF3, 0x7A6D76E9, 0x00000000];\n\t\n\tvar bytesToWords = function (bytes) {\n\t var words = [];\n\t for (var i = 0, b = 0; i < bytes.length; i++, b += 8) {\n\t words[b >>> 5] |= bytes[i] << (24 - b % 32);\n\t }\n\t return words;\n\t};\n\t\n\tvar wordsToBytes = function (words) {\n\t var bytes = [];\n\t for (var b = 0; b < words.length * 32; b += 8) {\n\t bytes.push((words[b >>> 5] >>> (24 - b % 32)) & 0xFF);\n\t }\n\t return bytes;\n\t};\n\t\n\tvar processBlock = function (H, M, offset) {\n\t\n\t // Swap endian\n\t for (var i = 0; i < 16; i++) {\n\t var offset_i = offset + i;\n\t var M_offset_i = M[offset_i];\n\t\n\t // Swap\n\t M[offset_i] = (\n\t (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) |\n\t (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00)\n\t );\n\t }\n\t\n\t // Working variables\n\t var al, bl, cl, dl, el;\n\t var ar, br, cr, dr, er;\n\t\n\t ar = al = H[0];\n\t br = bl = H[1];\n\t cr = cl = H[2];\n\t dr = dl = H[3];\n\t er = el = H[4];\n\t // Computation\n\t var t;\n\t for (var i = 0; i < 80; i += 1) {\n\t t = (al + M[offset+zl[i]])|0;\n\t if (i<16){\n\t t += f1(bl,cl,dl) + hl[0];\n\t } else if (i<32) {\n\t t += f2(bl,cl,dl) + hl[1];\n\t } else if (i<48) {\n\t t += f3(bl,cl,dl) + hl[2];\n\t } else if (i<64) {\n\t t += f4(bl,cl,dl) + hl[3];\n\t } else {// if (i<80) {\n\t t += f5(bl,cl,dl) + hl[4];\n\t }\n\t t = t|0;\n\t t = rotl(t,sl[i]);\n\t t = (t+el)|0;\n\t al = el;\n\t el = dl;\n\t dl = rotl(cl, 10);\n\t cl = bl;\n\t bl = t;\n\t\n\t t = (ar + M[offset+zr[i]])|0;\n\t if (i<16){\n\t t += f5(br,cr,dr) + hr[0];\n\t } else if (i<32) {\n\t t += f4(br,cr,dr) + hr[1];\n\t } else if (i<48) {\n\t t += f3(br,cr,dr) + hr[2];\n\t } else if (i<64) {\n\t t += f2(br,cr,dr) + hr[3];\n\t } else {// if (i<80) {\n\t t += f1(br,cr,dr) + hr[4];\n\t }\n\t t = t|0;\n\t t = rotl(t,sr[i]) ;\n\t t = (t+er)|0;\n\t ar = er;\n\t er = dr;\n\t dr = rotl(cr, 10);\n\t cr = br;\n\t br = t;\n\t }\n\t // Intermediate hash value\n\t t = (H[1] + cl + dr)|0;\n\t H[1] = (H[2] + dl + er)|0;\n\t H[2] = (H[3] + el + ar)|0;\n\t H[3] = (H[4] + al + br)|0;\n\t H[4] = (H[0] + bl + cr)|0;\n\t H[0] = t;\n\t};\n\t\n\tfunction f1(x, y, z) {\n\t return ((x) ^ (y) ^ (z));\n\t}\n\t\n\tfunction f2(x, y, z) {\n\t return (((x)&(y)) | ((~x)&(z)));\n\t}\n\t\n\tfunction f3(x, y, z) {\n\t return (((x) | (~(y))) ^ (z));\n\t}\n\t\n\tfunction f4(x, y, z) {\n\t return (((x) & (z)) | ((y)&(~(z))));\n\t}\n\t\n\tfunction f5(x, y, z) {\n\t return ((x) ^ ((y) |(~(z))));\n\t}\n\t\n\tfunction rotl(x,n) {\n\t return (x<>>(32-n));\n\t}\n\t\n\tfunction ripemd160(message) {\n\t var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];\n\t\n\t if (typeof message == 'string')\n\t message = new Buffer(message, 'utf8');\n\t\n\t var m = bytesToWords(message);\n\t\n\t var nBitsLeft = message.length * 8;\n\t var nBitsTotal = message.length * 8;\n\t\n\t // Add padding\n\t m[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32);\n\t m[(((nBitsLeft + 64) >>> 9) << 4) + 14] = (\n\t (((nBitsTotal << 8) | (nBitsTotal >>> 24)) & 0x00ff00ff) |\n\t (((nBitsTotal << 24) | (nBitsTotal >>> 8)) & 0xff00ff00)\n\t );\n\t\n\t for (var i=0 ; i>> 24)) & 0x00ff00ff) |\n\t (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00);\n\t }\n\t\n\t var digestbytes = wordsToBytes(H);\n\t return new Buffer(digestbytes);\n\t}\n\t\n\t\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1).Buffer))\n\n/***/ },\n/* 27 */\n/***/ function(module, exports) {\n\n\tfunction select(element) {\n\t var selectedText;\n\t\n\t if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n\t element.focus();\n\t element.setSelectionRange(0, element.value.length);\n\t\n\t selectedText = element.value;\n\t }\n\t else {\n\t if (element.hasAttribute('contenteditable')) {\n\t element.focus();\n\t }\n\t\n\t var selection = window.getSelection();\n\t var range = document.createRange();\n\t\n\t range.selectNodeContents(element);\n\t selection.removeAllRanges();\n\t selection.addRange(range);\n\t\n\t selectedText = selection.toString();\n\t }\n\t\n\t return selectedText;\n\t}\n\t\n\tmodule.exports = select;\n\n\n/***/ },\n/* 28 */\n/***/ function(module, exports) {\n\n\tmodule.exports = function (Buffer) {\n\t\n\t //prototype class for hash functions\n\t function Hash (blockSize, finalSize) {\n\t this._block = new Buffer(blockSize) //new Uint32Array(blockSize/4)\n\t this._finalSize = finalSize\n\t this._blockSize = blockSize\n\t this._len = 0\n\t this._s = 0\n\t }\n\t\n\t Hash.prototype.init = function () {\n\t this._s = 0\n\t this._len = 0\n\t }\n\t\n\t Hash.prototype.update = function (data, enc) {\n\t if (\"string\" === typeof data) {\n\t enc = enc || \"utf8\"\n\t data = new Buffer(data, enc)\n\t }\n\t\n\t var l = this._len += data.length\n\t var s = this._s = (this._s || 0)\n\t var f = 0\n\t var buffer = this._block\n\t\n\t while (s < l) {\n\t var t = Math.min(data.length, f + this._blockSize - (s % this._blockSize))\n\t var ch = (t - f)\n\t\n\t for (var i = 0; i < ch; i++) {\n\t buffer[(s % this._blockSize) + i] = data[i + f]\n\t }\n\t\n\t s += ch\n\t f += ch\n\t\n\t if ((s % this._blockSize) === 0) {\n\t this._update(buffer)\n\t }\n\t }\n\t this._s = s\n\t\n\t return this\n\t }\n\t\n\t Hash.prototype.digest = function (enc) {\n\t // Suppose the length of the message M, in bits, is l\n\t var l = this._len * 8\n\t\n\t // Append the bit 1 to the end of the message\n\t this._block[this._len % this._blockSize] = 0x80\n\t\n\t // and then k zero bits, where k is the smallest non-negative solution to the equation (l + 1 + k) === finalSize mod blockSize\n\t this._block.fill(0, this._len % this._blockSize + 1)\n\t\n\t if (l % (this._blockSize * 8) >= this._finalSize * 8) {\n\t this._update(this._block)\n\t this._block.fill(0)\n\t }\n\t\n\t // to this append the block which is equal to the number l written in binary\n\t // TODO: handle case where l is > Math.pow(2, 29)\n\t this._block.writeInt32BE(l, this._blockSize - 4)\n\t\n\t var hash = this._update(this._block) || this._hash()\n\t\n\t return enc ? hash.toString(enc) : hash\n\t }\n\t\n\t Hash.prototype._update = function () {\n\t throw new Error('_update must be implemented by subclass')\n\t }\n\t\n\t return Hash\n\t}\n\n\n/***/ },\n/* 29 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar exports = module.exports = function (alg) {\n\t var Alg = exports[alg]\n\t if(!Alg) throw new Error(alg + ' is not supported (we accept pull requests)')\n\t return new Alg()\n\t}\n\t\n\tvar Buffer = __webpack_require__(1).Buffer\n\tvar Hash = __webpack_require__(28)(Buffer)\n\t\n\texports.sha1 = __webpack_require__(30)(Buffer, Hash)\n\texports.sha256 = __webpack_require__(31)(Buffer, Hash)\n\texports.sha512 = __webpack_require__(32)(Buffer, Hash)\n\n\n/***/ },\n/* 30 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/*\n\t * A JavaScript implementation of the Secure Hash Algorithm, SHA-1, as defined\n\t * in FIPS PUB 180-1\n\t * Version 2.1a Copyright Paul Johnston 2000 - 2002.\n\t * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n\t * Distributed under the BSD License\n\t * See http://pajhome.org.uk/crypt/md5 for details.\n\t */\n\t\n\tvar inherits = __webpack_require__(2).inherits\n\t\n\tmodule.exports = function (Buffer, Hash) {\n\t\n\t var A = 0|0\n\t var B = 4|0\n\t var C = 8|0\n\t var D = 12|0\n\t var E = 16|0\n\t\n\t var W = new (typeof Int32Array === 'undefined' ? Array : Int32Array)(80)\n\t\n\t var POOL = []\n\t\n\t function Sha1 () {\n\t if(POOL.length)\n\t return POOL.pop().init()\n\t\n\t if(!(this instanceof Sha1)) return new Sha1()\n\t this._w = W\n\t Hash.call(this, 16*4, 14*4)\n\t\n\t this._h = null\n\t this.init()\n\t }\n\t\n\t inherits(Sha1, Hash)\n\t\n\t Sha1.prototype.init = function () {\n\t this._a = 0x67452301\n\t this._b = 0xefcdab89\n\t this._c = 0x98badcfe\n\t this._d = 0x10325476\n\t this._e = 0xc3d2e1f0\n\t\n\t Hash.prototype.init.call(this)\n\t return this\n\t }\n\t\n\t Sha1.prototype._POOL = POOL\n\t Sha1.prototype._update = function (X) {\n\t\n\t var a, b, c, d, e, _a, _b, _c, _d, _e\n\t\n\t a = _a = this._a\n\t b = _b = this._b\n\t c = _c = this._c\n\t d = _d = this._d\n\t e = _e = this._e\n\t\n\t var w = this._w\n\t\n\t for(var j = 0; j < 80; j++) {\n\t var W = w[j] = j < 16 ? X.readInt32BE(j*4)\n\t : rol(w[j - 3] ^ w[j - 8] ^ w[j - 14] ^ w[j - 16], 1)\n\t\n\t var t = add(\n\t add(rol(a, 5), sha1_ft(j, b, c, d)),\n\t add(add(e, W), sha1_kt(j))\n\t )\n\t\n\t e = d\n\t d = c\n\t c = rol(b, 30)\n\t b = a\n\t a = t\n\t }\n\t\n\t this._a = add(a, _a)\n\t this._b = add(b, _b)\n\t this._c = add(c, _c)\n\t this._d = add(d, _d)\n\t this._e = add(e, _e)\n\t }\n\t\n\t Sha1.prototype._hash = function () {\n\t if(POOL.length < 100) POOL.push(this)\n\t var H = new Buffer(20)\n\t //console.log(this._a|0, this._b|0, this._c|0, this._d|0, this._e|0)\n\t H.writeInt32BE(this._a|0, A)\n\t H.writeInt32BE(this._b|0, B)\n\t H.writeInt32BE(this._c|0, C)\n\t H.writeInt32BE(this._d|0, D)\n\t H.writeInt32BE(this._e|0, E)\n\t return H\n\t }\n\t\n\t /*\n\t * Perform the appropriate triplet combination function for the current\n\t * iteration\n\t */\n\t function sha1_ft(t, b, c, d) {\n\t if(t < 20) return (b & c) | ((~b) & d);\n\t if(t < 40) return b ^ c ^ d;\n\t if(t < 60) return (b & c) | (b & d) | (c & d);\n\t return b ^ c ^ d;\n\t }\n\t\n\t /*\n\t * Determine the appropriate additive constant for the current iteration\n\t */\n\t function sha1_kt(t) {\n\t return (t < 20) ? 1518500249 : (t < 40) ? 1859775393 :\n\t (t < 60) ? -1894007588 : -899497514;\n\t }\n\t\n\t /*\n\t * Add integers, wrapping at 2^32. This uses 16-bit operations internally\n\t * to work around bugs in some JS interpreters.\n\t * //dominictarr: this is 10 years old, so maybe this can be dropped?)\n\t *\n\t */\n\t function add(x, y) {\n\t return (x + y ) | 0\n\t //lets see how this goes on testling.\n\t // var lsw = (x & 0xFFFF) + (y & 0xFFFF);\n\t // var msw = (x >> 16) + (y >> 16) + (lsw >> 16);\n\t // return (msw << 16) | (lsw & 0xFFFF);\n\t }\n\t\n\t /*\n\t * Bitwise rotate a 32-bit number to the left.\n\t */\n\t function rol(num, cnt) {\n\t return (num << cnt) | (num >>> (32 - cnt));\n\t }\n\t\n\t return Sha1\n\t}\n\n\n/***/ },\n/* 31 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t\n\t/**\n\t * A JavaScript implementation of the Secure Hash Algorithm, SHA-256, as defined\n\t * in FIPS 180-2\n\t * Version 2.2-beta Copyright Angel Marin, Paul Johnston 2000 - 2009.\n\t * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n\t *\n\t */\n\t\n\tvar inherits = __webpack_require__(2).inherits\n\t\n\tmodule.exports = function (Buffer, Hash) {\n\t\n\t var K = [\n\t 0x428A2F98, 0x71374491, 0xB5C0FBCF, 0xE9B5DBA5,\n\t 0x3956C25B, 0x59F111F1, 0x923F82A4, 0xAB1C5ED5,\n\t 0xD807AA98, 0x12835B01, 0x243185BE, 0x550C7DC3,\n\t 0x72BE5D74, 0x80DEB1FE, 0x9BDC06A7, 0xC19BF174,\n\t 0xE49B69C1, 0xEFBE4786, 0x0FC19DC6, 0x240CA1CC,\n\t 0x2DE92C6F, 0x4A7484AA, 0x5CB0A9DC, 0x76F988DA,\n\t 0x983E5152, 0xA831C66D, 0xB00327C8, 0xBF597FC7,\n\t 0xC6E00BF3, 0xD5A79147, 0x06CA6351, 0x14292967,\n\t 0x27B70A85, 0x2E1B2138, 0x4D2C6DFC, 0x53380D13,\n\t 0x650A7354, 0x766A0ABB, 0x81C2C92E, 0x92722C85,\n\t 0xA2BFE8A1, 0xA81A664B, 0xC24B8B70, 0xC76C51A3,\n\t 0xD192E819, 0xD6990624, 0xF40E3585, 0x106AA070,\n\t 0x19A4C116, 0x1E376C08, 0x2748774C, 0x34B0BCB5,\n\t 0x391C0CB3, 0x4ED8AA4A, 0x5B9CCA4F, 0x682E6FF3,\n\t 0x748F82EE, 0x78A5636F, 0x84C87814, 0x8CC70208,\n\t 0x90BEFFFA, 0xA4506CEB, 0xBEF9A3F7, 0xC67178F2\n\t ]\n\t\n\t var W = new Array(64)\n\t\n\t function Sha256() {\n\t this.init()\n\t\n\t this._w = W //new Array(64)\n\t\n\t Hash.call(this, 16*4, 14*4)\n\t }\n\t\n\t inherits(Sha256, Hash)\n\t\n\t Sha256.prototype.init = function () {\n\t\n\t this._a = 0x6a09e667|0\n\t this._b = 0xbb67ae85|0\n\t this._c = 0x3c6ef372|0\n\t this._d = 0xa54ff53a|0\n\t this._e = 0x510e527f|0\n\t this._f = 0x9b05688c|0\n\t this._g = 0x1f83d9ab|0\n\t this._h = 0x5be0cd19|0\n\t\n\t this._len = this._s = 0\n\t\n\t return this\n\t }\n\t\n\t function S (X, n) {\n\t return (X >>> n) | (X << (32 - n));\n\t }\n\t\n\t function R (X, n) {\n\t return (X >>> n);\n\t }\n\t\n\t function Ch (x, y, z) {\n\t return ((x & y) ^ ((~x) & z));\n\t }\n\t\n\t function Maj (x, y, z) {\n\t return ((x & y) ^ (x & z) ^ (y & z));\n\t }\n\t\n\t function Sigma0256 (x) {\n\t return (S(x, 2) ^ S(x, 13) ^ S(x, 22));\n\t }\n\t\n\t function Sigma1256 (x) {\n\t return (S(x, 6) ^ S(x, 11) ^ S(x, 25));\n\t }\n\t\n\t function Gamma0256 (x) {\n\t return (S(x, 7) ^ S(x, 18) ^ R(x, 3));\n\t }\n\t\n\t function Gamma1256 (x) {\n\t return (S(x, 17) ^ S(x, 19) ^ R(x, 10));\n\t }\n\t\n\t Sha256.prototype._update = function(M) {\n\t\n\t var W = this._w\n\t var a, b, c, d, e, f, g, h\n\t var T1, T2\n\t\n\t a = this._a | 0\n\t b = this._b | 0\n\t c = this._c | 0\n\t d = this._d | 0\n\t e = this._e | 0\n\t f = this._f | 0\n\t g = this._g | 0\n\t h = this._h | 0\n\t\n\t for (var j = 0; j < 64; j++) {\n\t var w = W[j] = j < 16\n\t ? M.readInt32BE(j * 4)\n\t : Gamma1256(W[j - 2]) + W[j - 7] + Gamma0256(W[j - 15]) + W[j - 16]\n\t\n\t T1 = h + Sigma1256(e) + Ch(e, f, g) + K[j] + w\n\t\n\t T2 = Sigma0256(a) + Maj(a, b, c);\n\t h = g; g = f; f = e; e = d + T1; d = c; c = b; b = a; a = T1 + T2;\n\t }\n\t\n\t this._a = (a + this._a) | 0\n\t this._b = (b + this._b) | 0\n\t this._c = (c + this._c) | 0\n\t this._d = (d + this._d) | 0\n\t this._e = (e + this._e) | 0\n\t this._f = (f + this._f) | 0\n\t this._g = (g + this._g) | 0\n\t this._h = (h + this._h) | 0\n\t\n\t };\n\t\n\t Sha256.prototype._hash = function () {\n\t var H = new Buffer(32)\n\t\n\t H.writeInt32BE(this._a, 0)\n\t H.writeInt32BE(this._b, 4)\n\t H.writeInt32BE(this._c, 8)\n\t H.writeInt32BE(this._d, 12)\n\t H.writeInt32BE(this._e, 16)\n\t H.writeInt32BE(this._f, 20)\n\t H.writeInt32BE(this._g, 24)\n\t H.writeInt32BE(this._h, 28)\n\t\n\t return H\n\t }\n\t\n\t return Sha256\n\t\n\t}\n\n\n/***/ },\n/* 32 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar inherits = __webpack_require__(2).inherits\n\t\n\tmodule.exports = function (Buffer, Hash) {\n\t var K = [\n\t 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n\t 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n\t 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n\t 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n\t 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n\t 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n\t 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n\t 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n\t 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n\t 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n\t 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n\t 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n\t 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n\t 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n\t 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n\t 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n\t 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n\t 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n\t 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n\t 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n\t 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n\t 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n\t 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n\t 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n\t 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n\t 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n\t 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n\t 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n\t 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n\t 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n\t 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n\t 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n\t 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n\t 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n\t 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n\t 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n\t 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n\t 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n\t 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n\t 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n\t ]\n\t\n\t var W = new Array(160)\n\t\n\t function Sha512() {\n\t this.init()\n\t this._w = W\n\t\n\t Hash.call(this, 128, 112)\n\t }\n\t\n\t inherits(Sha512, Hash)\n\t\n\t Sha512.prototype.init = function () {\n\t\n\t this._a = 0x6a09e667|0\n\t this._b = 0xbb67ae85|0\n\t this._c = 0x3c6ef372|0\n\t this._d = 0xa54ff53a|0\n\t this._e = 0x510e527f|0\n\t this._f = 0x9b05688c|0\n\t this._g = 0x1f83d9ab|0\n\t this._h = 0x5be0cd19|0\n\t\n\t this._al = 0xf3bcc908|0\n\t this._bl = 0x84caa73b|0\n\t this._cl = 0xfe94f82b|0\n\t this._dl = 0x5f1d36f1|0\n\t this._el = 0xade682d1|0\n\t this._fl = 0x2b3e6c1f|0\n\t this._gl = 0xfb41bd6b|0\n\t this._hl = 0x137e2179|0\n\t\n\t this._len = this._s = 0\n\t\n\t return this\n\t }\n\t\n\t function S (X, Xl, n) {\n\t return (X >>> n) | (Xl << (32 - n))\n\t }\n\t\n\t function Ch (x, y, z) {\n\t return ((x & y) ^ ((~x) & z));\n\t }\n\t\n\t function Maj (x, y, z) {\n\t return ((x & y) ^ (x & z) ^ (y & z));\n\t }\n\t\n\t Sha512.prototype._update = function(M) {\n\t\n\t var W = this._w\n\t var a, b, c, d, e, f, g, h\n\t var al, bl, cl, dl, el, fl, gl, hl\n\t\n\t a = this._a | 0\n\t b = this._b | 0\n\t c = this._c | 0\n\t d = this._d | 0\n\t e = this._e | 0\n\t f = this._f | 0\n\t g = this._g | 0\n\t h = this._h | 0\n\t\n\t al = this._al | 0\n\t bl = this._bl | 0\n\t cl = this._cl | 0\n\t dl = this._dl | 0\n\t el = this._el | 0\n\t fl = this._fl | 0\n\t gl = this._gl | 0\n\t hl = this._hl | 0\n\t\n\t for (var i = 0; i < 80; i++) {\n\t var j = i * 2\n\t\n\t var Wi, Wil\n\t\n\t if (i < 16) {\n\t Wi = W[j] = M.readInt32BE(j * 4)\n\t Wil = W[j + 1] = M.readInt32BE(j * 4 + 4)\n\t\n\t } else {\n\t var x = W[j - 15*2]\n\t var xl = W[j - 15*2 + 1]\n\t var gamma0 = S(x, xl, 1) ^ S(x, xl, 8) ^ (x >>> 7)\n\t var gamma0l = S(xl, x, 1) ^ S(xl, x, 8) ^ S(xl, x, 7)\n\t\n\t x = W[j - 2*2]\n\t xl = W[j - 2*2 + 1]\n\t var gamma1 = S(x, xl, 19) ^ S(xl, x, 29) ^ (x >>> 6)\n\t var gamma1l = S(xl, x, 19) ^ S(x, xl, 29) ^ S(xl, x, 6)\n\t\n\t // W[i] = gamma0 + W[i - 7] + gamma1 + W[i - 16]\n\t var Wi7 = W[j - 7*2]\n\t var Wi7l = W[j - 7*2 + 1]\n\t\n\t var Wi16 = W[j - 16*2]\n\t var Wi16l = W[j - 16*2 + 1]\n\t\n\t Wil = gamma0l + Wi7l\n\t Wi = gamma0 + Wi7 + ((Wil >>> 0) < (gamma0l >>> 0) ? 1 : 0)\n\t Wil = Wil + gamma1l\n\t Wi = Wi + gamma1 + ((Wil >>> 0) < (gamma1l >>> 0) ? 1 : 0)\n\t Wil = Wil + Wi16l\n\t Wi = Wi + Wi16 + ((Wil >>> 0) < (Wi16l >>> 0) ? 1 : 0)\n\t\n\t W[j] = Wi\n\t W[j + 1] = Wil\n\t }\n\t\n\t var maj = Maj(a, b, c)\n\t var majl = Maj(al, bl, cl)\n\t\n\t var sigma0h = S(a, al, 28) ^ S(al, a, 2) ^ S(al, a, 7)\n\t var sigma0l = S(al, a, 28) ^ S(a, al, 2) ^ S(a, al, 7)\n\t var sigma1h = S(e, el, 14) ^ S(e, el, 18) ^ S(el, e, 9)\n\t var sigma1l = S(el, e, 14) ^ S(el, e, 18) ^ S(e, el, 9)\n\t\n\t // t1 = h + sigma1 + ch + K[i] + W[i]\n\t var Ki = K[j]\n\t var Kil = K[j + 1]\n\t\n\t var ch = Ch(e, f, g)\n\t var chl = Ch(el, fl, gl)\n\t\n\t var t1l = hl + sigma1l\n\t var t1 = h + sigma1h + ((t1l >>> 0) < (hl >>> 0) ? 1 : 0)\n\t t1l = t1l + chl\n\t t1 = t1 + ch + ((t1l >>> 0) < (chl >>> 0) ? 1 : 0)\n\t t1l = t1l + Kil\n\t t1 = t1 + Ki + ((t1l >>> 0) < (Kil >>> 0) ? 1 : 0)\n\t t1l = t1l + Wil\n\t t1 = t1 + Wi + ((t1l >>> 0) < (Wil >>> 0) ? 1 : 0)\n\t\n\t // t2 = sigma0 + maj\n\t var t2l = sigma0l + majl\n\t var t2 = sigma0h + maj + ((t2l >>> 0) < (sigma0l >>> 0) ? 1 : 0)\n\t\n\t h = g\n\t hl = gl\n\t g = f\n\t gl = fl\n\t f = e\n\t fl = el\n\t el = (dl + t1l) | 0\n\t e = (d + t1 + ((el >>> 0) < (dl >>> 0) ? 1 : 0)) | 0\n\t d = c\n\t dl = cl\n\t c = b\n\t cl = bl\n\t b = a\n\t bl = al\n\t al = (t1l + t2l) | 0\n\t a = (t1 + t2 + ((al >>> 0) < (t1l >>> 0) ? 1 : 0)) | 0\n\t }\n\t\n\t this._al = (this._al + al) | 0\n\t this._bl = (this._bl + bl) | 0\n\t this._cl = (this._cl + cl) | 0\n\t this._dl = (this._dl + dl) | 0\n\t this._el = (this._el + el) | 0\n\t this._fl = (this._fl + fl) | 0\n\t this._gl = (this._gl + gl) | 0\n\t this._hl = (this._hl + hl) | 0\n\t\n\t this._a = (this._a + a + ((this._al >>> 0) < (al >>> 0) ? 1 : 0)) | 0\n\t this._b = (this._b + b + ((this._bl >>> 0) < (bl >>> 0) ? 1 : 0)) | 0\n\t this._c = (this._c + c + ((this._cl >>> 0) < (cl >>> 0) ? 1 : 0)) | 0\n\t this._d = (this._d + d + ((this._dl >>> 0) < (dl >>> 0) ? 1 : 0)) | 0\n\t this._e = (this._e + e + ((this._el >>> 0) < (el >>> 0) ? 1 : 0)) | 0\n\t this._f = (this._f + f + ((this._fl >>> 0) < (fl >>> 0) ? 1 : 0)) | 0\n\t this._g = (this._g + g + ((this._gl >>> 0) < (gl >>> 0) ? 1 : 0)) | 0\n\t this._h = (this._h + h + ((this._hl >>> 0) < (hl >>> 0) ? 1 : 0)) | 0\n\t }\n\t\n\t Sha512.prototype._hash = function () {\n\t var H = new Buffer(64)\n\t\n\t function writeInt64BE(h, l, offset) {\n\t H.writeInt32BE(h, offset)\n\t H.writeInt32BE(l, offset + 4)\n\t }\n\t\n\t writeInt64BE(this._a, this._al, 0)\n\t writeInt64BE(this._b, this._bl, 8)\n\t writeInt64BE(this._c, this._cl, 16)\n\t writeInt64BE(this._d, this._dl, 24)\n\t writeInt64BE(this._e, this._el, 32)\n\t writeInt64BE(this._f, this._fl, 40)\n\t writeInt64BE(this._g, this._gl, 48)\n\t writeInt64BE(this._h, this._hl, 56)\n\t\n\t return H\n\t }\n\t\n\t return Sha512\n\t\n\t}\n\n\n/***/ },\n/* 33 */\n/***/ function(module, exports) {\n\n\tfunction E () {\n\t // Keep this empty so it's easier to inherit from\n\t // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n\t}\n\t\n\tE.prototype = {\n\t on: function (name, callback, ctx) {\n\t var e = this.e || (this.e = {});\n\t\n\t (e[name] || (e[name] = [])).push({\n\t fn: callback,\n\t ctx: ctx\n\t });\n\t\n\t return this;\n\t },\n\t\n\t once: function (name, callback, ctx) {\n\t var self = this;\n\t function listener () {\n\t self.off(name, listener);\n\t callback.apply(ctx, arguments);\n\t };\n\t\n\t listener._ = callback\n\t return this.on(name, listener, ctx);\n\t },\n\t\n\t emit: function (name) {\n\t var data = [].slice.call(arguments, 1);\n\t var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n\t var i = 0;\n\t var len = evtArr.length;\n\t\n\t for (i; i < len; i++) {\n\t evtArr[i].fn.apply(evtArr[i].ctx, data);\n\t }\n\t\n\t return this;\n\t },\n\t\n\t off: function (name, callback) {\n\t var e = this.e || (this.e = {});\n\t var evts = e[name];\n\t var liveEvents = [];\n\t\n\t if (evts && callback) {\n\t for (var i = 0, len = evts.length; i < len; i++) {\n\t if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n\t liveEvents.push(evts[i]);\n\t }\n\t }\n\t\n\t // Remove event from queue to prevent memory leak\n\t // Suggested by https://github.com/lazd\n\t // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\t\n\t (liveEvents.length)\n\t ? e[name] = liveEvents\n\t : delete e[name];\n\t\n\t return this;\n\t }\n\t};\n\t\n\tmodule.exports = E;\n\n\n/***/ },\n/* 34 */\n/***/ function(module, exports) {\n\n\tmodule.exports = function isBuffer(arg) {\n\t return arg && typeof arg === 'object'\n\t && typeof arg.copy === 'function'\n\t && typeof arg.fill === 'function'\n\t && typeof arg.readUInt8 === 'function';\n\t}\n\n/***/ },\n/* 35 */\n/***/ function(module, exports) {\n\n\t/* (ignored) */\n\n/***/ }\n/******/ ]);\n\n\n/** WEBPACK FOOTER **\n ** lesspass-pure.js?cb8a51337eac3980bc2a\n **/"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/dist/\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n/** WEBPACK FOOTER **\n ** webpack/bootstrap cb8a51337eac3980bc2a\n **/","import './app.scss'\nimport lesspass from 'lesspass';\nimport Clipboard from 'clipboard';\n\nvar encryptedLogin;\n\nfunction showTooltip(elem, msg) {\n var classNames = elem.className;\n elem.setAttribute('class', classNames + ' hint--top');\n elem.setAttribute('aria-label', msg);\n setTimeout(function () {\n elem.setAttribute('class', classNames);\n }, 2000);\n}\n\nwindow.onload = function () {\n document.getElementById('generatedPassword').value = '';\n};\n\nfunction getColor(color) {\n var colors = ['EBBB56', '59E0EB', 'E8F464', 'D2B4ED', 'BBE96D', 'EF9FC8', '8EE083', 'DCBFD6', 'DDD15A', 'A1C8E8', 'C4D977', 'F1A49E', '79E8A0', 'E9A970', '60E3B4', 'D4C47D', '73DDCA', 'C4EAA7', 'A7D6D4', '9CC795'];\n var index = parseInt(color, 16) % colors.length;\n return '#' + colors[index];\n}\n\ndocument.getElementById('login').onblur = displayPasswordIndication;\ndocument.getElementById('masterPassword').onblur = displayPasswordIndication;\nfunction displayPasswordIndication() {\n var login = document.getElementById('login').value;\n var masterPassword = document.getElementById('masterPassword').value;\n var fingerprint = document.getElementById('fingerprint');\n var displayMasterPasswordButton = document.getElementById('displayMasterPasswordButton');\n if (!login || !masterPassword) {\n fingerprint.innerText = '';\n fingerprint.style.display = 'none';\n displayMasterPasswordButton.style.backgroundColor = '#FFFFFF';\n return;\n }\n lesspass.encryptLogin(login, masterPassword).then(function (secretHash) {\n encryptedLogin = secretHash;\n var color = secretHash.substring(0, 6);\n var colorHex = getColor(color);\n fingerprint.innerText = color;\n fingerprint.style.display = 'inline';\n displayMasterPasswordButton.style.backgroundColor = colorHex;\n generatePassword();\n });\n}\n\ndocument.getElementById('copyPasswordButton').addEventListener('click', generatePassword);\ndocument.getElementById('generatedPasswordForm').addEventListener('change', generatePassword);\ndocument.getElementById('passwordLength').addEventListener('input', generatePassword);\ndocument.getElementById('passwordCounter').addEventListener('input', generatePassword);\ndocument.getElementById('generatedPasswordForm').oninput = generatePassword;\nfunction getData() {\n const defaultOptions = {\n login: document.getElementById('login').value,\n counter: document.getElementById('passwordCounter').value,\n password: {\n length: document.getElementById('passwordLength').value,\n settings: []\n }\n };\n const options = ['lowercase', 'uppercase', 'numbers', 'symbols'];\n\n for (let i = 0; i < options.length; i++) {\n if (document.getElementById(options[i]).checked) {\n defaultOptions.password.settings.push(options[i]);\n }\n }\n return defaultOptions;\n}\n\nfunction getFormData() {\n const initData = getData();\n initData.masterPassword = document.getElementById('masterPassword').value;\n initData.site = document.getElementById('site').value;\n return initData;\n}\n\nfunction generatePassword() {\n const data = getFormData();\n var generatedPasswordField = document.getElementById('generatedPassword');\n if (!encryptedLogin || !data.site || !data.password.settings.length) {\n generatedPasswordField.value = '';\n return;\n }\n generatedPasswordField.value = lesspass.renderPassword(encryptedLogin, data.site, data);\n}\n\ndocument.getElementById('displayMasterPasswordButton').addEventListener('click', toggleMasterPassword);\nfunction toggleMasterPassword() {\n if (document.getElementById('masterPassword').type === 'password') {\n document.getElementById('masterPassword').type = 'text';\n } else {\n document.getElementById('masterPassword').type = 'password';\n }\n}\n\nfunction cleanData() {\n setTimeout(function () {\n document.getElementById('generatedPassword').value = '';\n document.getElementById('masterPassword').value = '';\n document.getElementById('displayMasterPasswordButton').style.backgroundColor = '#FFFFFF';\n document.getElementById('fingerprint').innerText = '';\n }, 10000);\n}\n\nvar clipboard = new Clipboard('.btn-copy');\n\nclipboard.on('success', function (e) {\n if (e.text) {\n showTooltip(e.trigger, 'copied !');\n cleanData();\n }\n});\n\nclipboard.on('error', function () {\n cleanData();\n});\n\n\ndocument.getElementById('displayOptionsButton').addEventListener('click', toggleBlocks);\n\nfunction toggleVisibility(className) {\n var elements = document.getElementsByClassName(className);\n for (var i = 0; i < elements.length; i++) {\n var e = elements[i];\n if (e.style.display === 'block') {\n e.style.display = 'none';\n } else {\n e.style.display = 'block';\n }\n }\n}\n\nfunction toggleBlocks() {\n toggleVisibility('option-block');\n}\n\nvar domains = [\"lesspass.com\", \"google.com\", \"youtube.com\", \"facebook.com\", \"baidu.com\", \"yahoo.com\", \"amazon.com\", \"wikipedia.org\", \"twitter.com\", \"qq.com\", \"live.com\", \"taobao.com\", \"bing.com\", \"msn.com\", \"linkedin.com\", \"instagram.com\", \"weibo.com\", \"vk.com\", \"hao123.com\", \"ebay.com\", \"reddit.com\", \"pinterest.com\", \"google.fr\", \"netflix.com\", \"tmall.com\", \"microsoft.com\", \"onclickads.net\", \"paypal.com\", \"sohu.com\", \"wordpress.com\", \"tumblr.com\", \"imgur.com\", \"blogspot.com\", \"naver.com\", \"xvideos.com\", \"stackoverflow.com\", \"apple.com\", \"aliexpress.com\", \"fc2.com\", \"github.com\", \"imdb.com\", \"pornhub.com\", \"whatsapp.com\", \"jd.com\", \"diply.com\", \"craigslist.org\", \"office.com\", \"blogger.com\", \"alibaba.com\", \"soso.com\", \"pixnet.net\", \"go.com\", \"dropbox.com\", \"xinhuanet.com\", \"xhamster.com\", \"outbrain.com\", \"googleusercontent.com\", \"cnn.com\", \"coccoc.com\", \"booking.com\", \"ask.com\", \"popads.net\", \"microsoftonline.com\", \"wikia.com\", \"chase.com\", \"quora.com\", \"adobe.com\", \"163.com\", \"360.com\", \"haosou.com\", \"youku.com\", \"bbc.com\", \"alipay.com\", \"flipkart.com\", \"bongacams.com\", \"nytimes.com\", \"daum.net\", \"sogou.com\", \"txxx.com\", \"espn.go.com\", \"ettoday.net\", \"bankofamerica.com\", \"china.com\", \"indiatimes.com\", \"myway.com\", \"bilibili.com\", \"walmart.com\", \"godaddy.com\", \"salesforce.com\", \"buzzfeed.com\", \"zillow.com\", \"xnxx.com\", \"wellsfargo.com\", \"dailymotion.com\", \"detail.tmall.com\", \"steampowered.com\", \"steamcommunity.com\", \"theguardian.com\", \"indeed.com\", \"nametests.com\", \"aol.com\", \"etsy.com\", \"globo.com\", \"amazonaws.com\", \"yelp.com\", \"huffingtonpost.com\", \"tudou.com\", \"zhihu.com\", \"so.com\", \"tripadvisor.com\", \"soundcloud.com\", \"cnzz.com\", \"onlinesbi.com\", \"varzesh3.com\", \"vice.com\", \"directrev.com\", \"cnet.com\", \"uptodown.com\", \"weather.com\", \"bet365.com\", \"mediafire.com\", \"washingtonpost.com\", \"force.com\", \"gfycat.com\", \"stackexchange.com\", \"taboola.com\", \"tuberel.com\", \"vimeo.com\", \"feedly.com\", \"detik.com\", \"theladbible.com\", \"redtube.com\", \"pixiv.net\", \"homedepot.com\", \"slideshare.net\", \"taringa.net\", \"torrentz.eu\", \"foxnews.com\", \"target.com\", \"flickr.com\", \"hclips.com\", \"amazon.fr\", \"kakaku.com\", \"9gag.com\", \"ifeng.com\", \"udn.com\", \"ikea.com\", \"americanexpress.com\", \"iqiyi.com\", \"bp.blogspot.com\", \"terraclicks.com\", \"orange.fr\", \"fbcdn.net\", \"comcast.net\", \"youm7.com\", \"gmx.net\", \"tribunnews.com\", \"youporn.com\", \"deviantart.com\", \"hdfcbank.com\", \"tistory.com\", \"roblox.com\", \"capitalone.com\", \"doubleclick.net\", \"leboncoin.fr\", \"douyu.com\", \"ozock.com\", \"spotify.com\", \"babytree.com\", \"w3schools.com\", \"forbes.com\", \"wikihow.com\", \"wix.com\", \"upornia.com\", \"snapdeal.com\", \"mozilla.org\", \"livejournal.com\", \"bestbuy.com\", \"handycafe.com\", \"xfinity.com\", \"groupon.com\", \"skype.com\", \"adnetworkperformance.com\", \"onedio.com\", \"thepiratebay.org\", \"rdsa2013.com\", \"paytm.com\", \"icicibank.com\", \"twimg.com\", \"usps.com\", \"trello.com\", \"wikimedia.org\", \"tokopedia.com\", \"popcash.net\", \"webtretho.com\", \"xywy.com\", \"huanqiu.com\", \"yesky.com\", \"citi.com\", \"blastingnews.com\", \"shutterstock.com\", \"rediff.com\", \"ups.com\", \"eksisozluk.com\", \"1688.com\", \"bitauto.com\", \"slack.com\", \"files.wordpress.com\", \"pandora.com\", \"imzog.com\", \"speedtest.net\", \"2ch.net\", \"loading-delivery2.com\", \"about.com\", \"adexc.net\", \"chaturbate.com\", \"mbc.net\", \"goodreads.com\", \"wordpress.org\", \"softonic.com\", \"battle.net\", \"livejasmin.com\", \"accuweather.com\", \"icloud.com\", \"fedex.com\", \"slickdeals.net\", \"wittyfeed.com\", \"ndtv.com\", \"att.com\", \"giphy.com\", \"archive.org\", \"csdn.net\", \"sourceforge.net\", \"39.net\", \"youtube-mp3.org\", \"secureserver.net\", \"akamaihd.net\", \"taleo.net\", \"savefrom.net\", \"themeforest.net\", \"telegram.org\", \"rutracker.org\", \"cloudfront.net\", \"atlassian.net\", \"behance.net\", \"free.fr\", \"trackingclick.net\", \"npr.org\", \"seesaa.net\", \"coursera.org\", \"change.org\", \"researchgate.net\", \"streamcloud.eu\", \"clien.net\", \"sabq.org\", \"e-hentai.org\", \"uploaded.net\", \"inquirer.net\", \"alwafd.org\", \"4chan.org\", \"elfagr.org\", \"torcache.net\", \"buzzfil.net\", \"lequipe.fr\", \"kdnet.net\", \"gigazine.net\", \"bitbucket.org\", \"ero-video.net\", \"lemonde.fr\", \"europa.eu\", \"php.net\", \"reverso.net\", \"wiktionary.org\", \"sfr.fr\", \"eroterest.net\", \"ebay.fr\", \"fanfiction.net\", \"labanquepostale.fr\", \"bola.net\", \"credit-agricole.fr\", \"rapidgator.net\", \"vnexpress.net\", \"mayoclinic.org\", \"myanimelist.net\", \"minecraft.net\", \"pole-emploi.fr\", \"commentcamarche.net\", \"gutefrage.net\", \"archiveofourown.org\", \"ccm.net\", \"apache.org\", \"dmv.org\", \"wargaming.net\", \"lefigaro.fr\", \"eenadu.net\", \"poringa.net\", \"deviantart.net\", \"fishki.net\", \"jalan.net\", \"2ch-c.net\", \"cambridge.org\", \"convert2mp3.net\", \"pagesjaunes.fr\", \"oschina.net\", \"torrentkim3.net\", \"khanacademy.org\", \"dostor.org\", \"aljazeera.net\", \"codecanyon.net\", \"allocine.fr\", \"animeflv.net\", \"jb51.net\", \"jw.org\", \"nocookie.net\", \"pchome.net\", \"ali213.net\", \"edx.org\", \"zatnawqy.net\", \"ukr.net\", \"my-hit.org\", \"jsfiddle.net\", \"4gamer.net\", \"turbobit.net\", \"mangareader.net\", \"leo.org\", \"caf.fr\", \"windows.net\", \"comenity.net\", \"pbs.org\", \"opensubtitles.org\", \"xuite.net\", \"consumerreports.org\", \"programme-tv.net\", \"att.net\", \"python.org\", \"laposte.net\", \"p5w.net\", \"aarp.org\", \"docusign.net\", \"2chan.net\", \"caisse-epargne.fr\", \"cnki.net\", \"cityheaven.net\", \"toyokeizai.net\", \"blogspot.fr\", \"jkanime.net\", \"earthlink.net\", \"linkshrink.net\", \"oneplus.net\", \"tf1.fr\", \"cox.net\", \"seriesflv.net\", \"exhentai.org\", \"ap.org\", \"skyscanner.net\", \"sanjesh.org\", \"lds.org\", \"17track.net\", \"20minutes.fr\", \"dytt8.net\", \"shufoo.net\", \"postimg.org\", \"alaan.org\", \"navyfederal.org\", \"creditmutuel.fr\", \"zipbogo.net\", \"voirfilms.org\", \"ieee.org\", \"w3.org\", \"tripadvisor.fr\", \"societegenerale.fr\", \"kaiserpermanente.org\", \"lcl.fr\", \"bbb.org\", \"bouyguestelecom.fr\", \"lifehack.org\", \"familysearch.org\", \"monova.org\", \"laredoute.fr\", \"say-move.org\", \"banquepopulaire.fr\", \"baiducdn.org\", \"pbskids.org\", \"eurosport.fr\", \"go2cloud.org\", \"laposte.fr\", \"zimbra.free.fr\", \"ameli.fr\", \"linguee.fr\", \"westeros.org\", \"leroymerlin.fr\", \"leparisien.fr\", \"drupal.org\", \"hltv.org\", \"videolan.org\", \"slashdot.org\", \"angularjs.org\", \"francetvinfo.fr\", \"yify-torrent.org\", \"un.org\", \"acs.org\", \"fullhdfilmizlesene.org\", \"digitalprivacyalert.org\", \"jstor.org\", \"service-public.fr\", \"wikibooks.org\", \"ubuntuforums.org\", \"lexpress.fr\", \"tlootas.org\", \"collegeboard.org\", \"tvtropes.org\", \"impots.gouv.fr\", \"syosetu.org\", \"larousse.fr\", \"wikimapia.org\", \"new-rutor.org\", \"hbr.org\", \"washwasha.org\", \"marmiton.org\", \"4cdn.org\", \"doctissimo.fr\", \"britishcouncil.org\", \"cic.fr\", \"fdj.fr\", \"airbnb.fr\", \"media-fire.org\", \"thinkprogress.org\", \"oxfordjournals.org\", \"dyndns.org\", \"worldcat.org\", \"raspberrypi.org\", \"eclipse.org\", \"ouest-france.fr\", \"viamichelin.fr\", \"megafilmeshd20.org\", \"jooble.org\", \"lichess.org\", \"pixhost.org\", \"malwarebytes.org\", \"ets.org\", \"hattrick.org\", \"paultan.org\", \"indeed.fr\", \"6play.fr\", \"rueducommerce.fr\", \"joomla.org\", \"worldbank.org\", \"arxiv.org\", \"archlinux.org\", \"castorama.fr\", \"decathlon.fr\", \"huffingtonpost.fr\", \"lacentrale.fr\", \"lesechos.fr\", \"vidal.fr\", \"lepoint.fr\", \"zalando.fr\", \"worldoftanks.eu\", \"pmu.fr\", \"asos.fr\", \"successfactors.eu\", \"blablacar.fr\", \"liberation.fr\", \"urssaf.fr\", \"mycanal.fr\", \"auchan.fr\", \"conforama.fr\", \"meteociel.fr\", \"carrefour.fr\", \"canalplus.fr\", \"letudiant.fr\", \"groupon.fr\", \"3suisses.fr\", \"leclercdrive.fr\", \"ratp.fr\", \"ooreka.fr\", \"rtl.fr\", \"airfrance.fr\", \"meetic.fr\", \"francetv.fr\", \"mobile.free.fr\", \"ladepeche.fr\", \"paruvendu.fr\", \"rfi.fr\", \"spaggiari.eu\", \"metronews.fr\", \"worldofwarships.eu\", \"sudouest.fr\", \"colissimo.fr\", \"keeplinks.eu\", \"onelife.eu\", \"hardware.fr\", \"coco.fr\", \"imp.free.fr\", \"melty.fr\", \"jeux.fr\", \"europe1.fr\", \"education.fr\", \"bricodepot.fr\", \"edf.fr\", \"maxifoot.fr\", \"pap.fr\", \"education.gouv.fr\", \"dnvod.eu\", \"elle.fr\", \"letour.fr\", \"cmb.fr\", \"dfiles.eu\", \"onecoin.eu\", \"gls-group.eu\", \"seedpeer.eu\", \"dramanice.eu\", \"sia.eu\", \"filmezz.eu\", \"vshare.eu\", \"torrentbutler.eu\", \"watchcartoonsonline.eu\", \"politico.eu\", \"torrentking.eu\", \"feed2allnow.eu\", \"rockfile.eu\", \"yamaha-motor.eu\", \"tusciaweb.eu\", \"sexyadults.eu\", \"fidelityhouse.eu\", \"chainfire.eu\", \"ping.eu\", \"unibet.eu\", \"mastersportal.eu\", \"uploadfiles.eu\", \"ifirstrow.eu\", \"watchmovienow.eu\", \"xenesglosses.eu\", \"gayforit.eu\", \"streamcomplet.eu\", \"muzofox.eu\", \"jpfiles.eu\", \"df.eu\", \"kickasstorrents.eu\", \"autobazar.eu\", \"swisscoin.eu\", \"perfektdamen.eu\", \"echodnia.eu\", \"bombuj.eu\", \"funmix.eu\", \"safeurls.eu\", \"increas.eu\", \"luxexpress.eu\", \"gamecopyworld.eu\", \"cucirca.eu\", \"guess.eu\", \"ifirstrowus.eu\", \"nets.eu\", \"hostinger.eu\", \"immunicity.eu\", \"europsl.eu\", \"myenglishteacher.eu\", \"tme.eu\", \"payzen.eu\", \"jpopsuki.eu\", \"5dimes.eu\", \"xiaomi.eu\", \"magiccardmarket.eu\", \"romanews.eu\", \"mp3xd.eu\", \"fellent.eu\", \"livenewschat.eu\", \"ccc.eu\", \"bitminer.eu\", \"thenude.eu\", \"wufoo.eu\", \"firstrowas.eu\", \"minecraft-server.eu\", \"catawiki.eu\", \"firstsrowsports.eu\", \"omni-cash.eu\", \"buzzblog.eu\", \"ancient.eu\", \"pornoserver.eu\", \"xspeeds.eu\", \"skydsl.eu\", \"interrail.eu\", \"bonprixshop.eu\", \"harrisinteractive.eu\", \"ls-portal.eu\", \"nasze-kino.eu\", \"valueactive.eu\", \"meteoweb.eu\", \"serialonline.eu\", \"clickedu.eu\", \"bosettiegatti.eu\", \"mydailydose.eu\", \"gap.eu\", \"myadpack.eu\", \"iptorrents.eu\", \"aaate2016.eu\"];\nvar list = document.getElementById('domains');\n\ndomains.forEach(function (item) {\n var option = document.createElement('option');\n option.value = item;\n list.appendChild(option);\n});\n\nfunction hide(className) {\n var elements = document.getElementsByClassName(className);\n for (var i = 0; i < elements.length; i++) {\n elements[i].style.display = 'none';\n }\n}\n\ndocument.getElementById('displayHelpButton').addEventListener('click', displayHelp);\ndocument.getElementById('nextHelpButton').addEventListener('click', displayNextHelp);\ndocument.getElementById('closeHelpButton').addEventListener('click', closeHelp);\n\nvar previousBlock;\nvar currentBlock;\nvar nextBlock;\nvar index;\nfunction resetHelp() {\n previousBlock = null;\n currentBlock = document.getElementById('passwordGenerator');\n nextBlock = document.getElementById('help-block-1');\n index = 1;\n document.getElementById('nextHelpButton').innerText = 'NEXT';\n}\n\nfunction displayHelp() {\n resetHelp();\n toggleVisibility('help-block');\n displayNextHelp();\n}\n\nfunction displayNextHelp() {\n if (index > 3) {\n closeHelp();\n return;\n }\n if (index == 3) {\n document.getElementById('nextHelpButton').innerText = 'LET\\'S TRY';\n }\n currentBlock.style.display = 'none';\n nextBlock.style.display = 'block';\n previousBlock = currentBlock;\n currentBlock = nextBlock;\n index += 1;\n nextBlock = document.getElementById('help-block-' + index.toString());\n}\n\nfunction closeHelp() {\n hide('help-block');\n hide('help-slide');\n resetHelp();\n document.getElementById('passwordGenerator').style.display = 'block';\n document.getElementById('login').focus();\n}\n\n\n/** WEBPACK FOOTER **\n ** ./src/app.js\n **/","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nvar base64 = require('base64-js')\nvar ieee754 = require('ieee754')\nvar isArray = require('isarray')\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\nBuffer.poolSize = 8192 // not used by this implementation\n\nvar rootParent = {}\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Use Object implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * Due to various browser bugs, sometimes the Object implementation will be used even\n * when the browser supports typed arrays.\n *\n * Note:\n *\n * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,\n * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.\n *\n * - Safari 5-7 lacks support for changing the `Object.prototype.constructor` property\n * on objects.\n *\n * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.\n *\n * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of\n * incorrect length in some situations.\n\n * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they\n * get the Object implementation, which is slower but behaves correctly.\n */\nBuffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined\n ? global.TYPED_ARRAY_SUPPORT\n : typedArraySupport()\n\nfunction typedArraySupport () {\n function Bar () {}\n try {\n var arr = new Uint8Array(1)\n arr.foo = function () { return 42 }\n arr.constructor = Bar\n return arr.foo() === 42 && // typed array instances can be augmented\n arr.constructor === Bar && // constructor can be set\n typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`\n arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`\n } catch (e) {\n return false\n }\n}\n\nfunction kMaxLength () {\n return Buffer.TYPED_ARRAY_SUPPORT\n ? 0x7fffffff\n : 0x3fffffff\n}\n\n/**\n * Class: Buffer\n * =============\n *\n * The Buffer constructor returns instances of `Uint8Array` that are augmented\n * with function properties for all the node `Buffer` API functions. We use\n * `Uint8Array` so that square bracket notation works as expected -- it returns\n * a single octet.\n *\n * By augmenting the instances, we can avoid modifying the `Uint8Array`\n * prototype.\n */\nfunction Buffer (arg) {\n if (!(this instanceof Buffer)) {\n // Avoid going through an ArgumentsAdaptorTrampoline in the common case.\n if (arguments.length > 1) return new Buffer(arg, arguments[1])\n return new Buffer(arg)\n }\n\n if (!Buffer.TYPED_ARRAY_SUPPORT) {\n this.length = 0\n this.parent = undefined\n }\n\n // Common case.\n if (typeof arg === 'number') {\n return fromNumber(this, arg)\n }\n\n // Slightly less common case.\n if (typeof arg === 'string') {\n return fromString(this, arg, arguments.length > 1 ? arguments[1] : 'utf8')\n }\n\n // Unusual.\n return fromObject(this, arg)\n}\n\nfunction fromNumber (that, length) {\n that = allocate(that, length < 0 ? 0 : checked(length) | 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) {\n for (var i = 0; i < length; i++) {\n that[i] = 0\n }\n }\n return that\n}\n\nfunction fromString (that, string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') encoding = 'utf8'\n\n // Assumption: byteLength() return value is always < kMaxLength.\n var length = byteLength(string, encoding) | 0\n that = allocate(that, length)\n\n that.write(string, encoding)\n return that\n}\n\nfunction fromObject (that, object) {\n if (Buffer.isBuffer(object)) return fromBuffer(that, object)\n\n if (isArray(object)) return fromArray(that, object)\n\n if (object == null) {\n throw new TypeError('must start with number, buffer, array or string')\n }\n\n if (typeof ArrayBuffer !== 'undefined') {\n if (object.buffer instanceof ArrayBuffer) {\n return fromTypedArray(that, object)\n }\n if (object instanceof ArrayBuffer) {\n return fromArrayBuffer(that, object)\n }\n }\n\n if (object.length) return fromArrayLike(that, object)\n\n return fromJsonObject(that, object)\n}\n\nfunction fromBuffer (that, buffer) {\n var length = checked(buffer.length) | 0\n that = allocate(that, length)\n buffer.copy(that, 0, 0, length)\n return that\n}\n\nfunction fromArray (that, array) {\n var length = checked(array.length) | 0\n that = allocate(that, length)\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\n// Duplicate of fromArray() to keep fromArray() monomorphic.\nfunction fromTypedArray (that, array) {\n var length = checked(array.length) | 0\n that = allocate(that, length)\n // Truncating the elements is probably not what people expect from typed\n // arrays with BYTES_PER_ELEMENT > 1 but it's compatible with the behavior\n // of the old Buffer constructor.\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\nfunction fromArrayBuffer (that, array) {\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n array.byteLength\n that = Buffer._augment(new Uint8Array(array))\n } else {\n // Fallback: Return an object instance of the Buffer class\n that = fromTypedArray(that, new Uint8Array(array))\n }\n return that\n}\n\nfunction fromArrayLike (that, array) {\n var length = checked(array.length) | 0\n that = allocate(that, length)\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\n// Deserialize { type: 'Buffer', data: [1,2,3,...] } into a Buffer object.\n// Returns a zero-length buffer for inputs that don't conform to the spec.\nfunction fromJsonObject (that, object) {\n var array\n var length = 0\n\n if (object.type === 'Buffer' && isArray(object.data)) {\n array = object.data\n length = checked(array.length) | 0\n }\n that = allocate(that, length)\n\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\nif (Buffer.TYPED_ARRAY_SUPPORT) {\n Buffer.prototype.__proto__ = Uint8Array.prototype\n Buffer.__proto__ = Uint8Array\n} else {\n // pre-set for values that may exist in the future\n Buffer.prototype.length = undefined\n Buffer.prototype.parent = undefined\n}\n\nfunction allocate (that, length) {\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = Buffer._augment(new Uint8Array(length))\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n that.length = length\n that._isBuffer = true\n }\n\n var fromPool = length !== 0 && length <= Buffer.poolSize >>> 1\n if (fromPool) that.parent = rootParent\n\n return that\n}\n\nfunction checked (length) {\n // Note: cannot use `length < kMaxLength` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= kMaxLength()) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + kMaxLength().toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (subject, encoding) {\n if (!(this instanceof SlowBuffer)) return new SlowBuffer(subject, encoding)\n\n var buf = new Buffer(subject, encoding)\n delete buf.parent\n return buf\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return !!(b != null && b._isBuffer)\n}\n\nBuffer.compare = function compare (a, b) {\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError('Arguments must be Buffers')\n }\n\n if (a === b) return 0\n\n var x = a.length\n var y = b.length\n\n var i = 0\n var len = Math.min(x, y)\n while (i < len) {\n if (a[i] !== b[i]) break\n\n ++i\n }\n\n if (i !== len) {\n x = a[i]\n y = b[i]\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'binary':\n case 'base64':\n case 'raw':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!isArray(list)) throw new TypeError('list argument must be an Array of Buffers.')\n\n if (list.length === 0) {\n return new Buffer(0)\n }\n\n var i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; i++) {\n length += list[i].length\n }\n }\n\n var buf = new Buffer(length)\n var pos = 0\n for (i = 0; i < list.length; i++) {\n var item = list[i]\n item.copy(buf, pos)\n pos += item.length\n }\n return buf\n}\n\nfunction byteLength (string, encoding) {\n if (typeof string !== 'string') string = '' + string\n\n var len = string.length\n if (len === 0) return 0\n\n // Use a for loop to avoid recursion\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'binary':\n // Deprecated\n case 'raw':\n case 'raws':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) return utf8ToBytes(string).length // assume utf8\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n var loweredCase = false\n\n start = start | 0\n end = end === undefined || end === Infinity ? this.length : end | 0\n\n if (!encoding) encoding = 'utf8'\n if (start < 0) start = 0\n if (end > this.length) end = this.length\n if (end <= start) return ''\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'binary':\n return binarySlice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toString = function toString () {\n var length = this.length | 0\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n var str = ''\n var max = exports.INSPECT_MAX_BYTES\n if (this.length > 0) {\n str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')\n if (this.length > max) str += ' ... '\n }\n return ''\n}\n\nBuffer.prototype.compare = function compare (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return 0\n return Buffer.compare(this, b)\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset) {\n if (byteOffset > 0x7fffffff) byteOffset = 0x7fffffff\n else if (byteOffset < -0x80000000) byteOffset = -0x80000000\n byteOffset >>= 0\n\n if (this.length === 0) return -1\n if (byteOffset >= this.length) return -1\n\n // Negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = Math.max(this.length + byteOffset, 0)\n\n if (typeof val === 'string') {\n if (val.length === 0) return -1 // special case: looking for empty string always fails\n return String.prototype.indexOf.call(this, val, byteOffset)\n }\n if (Buffer.isBuffer(val)) {\n return arrayIndexOf(this, val, byteOffset)\n }\n if (typeof val === 'number') {\n if (Buffer.TYPED_ARRAY_SUPPORT && Uint8Array.prototype.indexOf === 'function') {\n return Uint8Array.prototype.indexOf.call(this, val, byteOffset)\n }\n return arrayIndexOf(this, [ val ], byteOffset)\n }\n\n function arrayIndexOf (arr, val, byteOffset) {\n var foundIndex = -1\n for (var i = 0; byteOffset + i < arr.length; i++) {\n if (arr[byteOffset + i] === val[foundIndex === -1 ? 0 : i - foundIndex]) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === val.length) return byteOffset + foundIndex\n } else {\n foundIndex = -1\n }\n }\n return -1\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\n// `get` is deprecated\nBuffer.prototype.get = function get (offset) {\n console.log('.get() is deprecated. Access using array indexes instead.')\n return this.readUInt8(offset)\n}\n\n// `set` is deprecated\nBuffer.prototype.set = function set (v, offset) {\n console.log('.set() is deprecated. Access using array indexes instead.')\n return this.writeUInt8(v, offset)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n var remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n // must be an even number of digits\n var strLen = string.length\n if (strLen % 2 !== 0) throw new Error('Invalid hex string')\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n for (var i = 0; i < length; i++) {\n var parsed = parseInt(string.substr(i * 2, 2), 16)\n if (isNaN(parsed)) throw new Error('Invalid hex string')\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction binaryWrite (buf, string, offset, length) {\n return asciiWrite(buf, string, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset | 0\n if (isFinite(length)) {\n length = length | 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n // legacy write(string, encoding, offset, length) - remove in v0.13\n } else {\n var swap = encoding\n encoding = offset\n offset = length | 0\n length = swap\n }\n\n var remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n return asciiWrite(this, string, offset, length)\n\n case 'binary':\n return binaryWrite(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n var res = []\n\n var i = start\n while (i < end) {\n var firstByte = buf[i]\n var codePoint = null\n var bytesPerSequence = (firstByte > 0xEF) ? 4\n : (firstByte > 0xDF) ? 3\n : (firstByte > 0xBF) ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n var secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nvar MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n var len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n var res = ''\n var i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; i++) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction binarySlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; i++) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n var len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n var out = ''\n for (var i = start; i < end; i++) {\n out += toHex(buf[i])\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n var bytes = buf.slice(start, end)\n var res = ''\n for (var i = 0; i < bytes.length; i += 2) {\n res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n var len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n var newBuf\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n newBuf = Buffer._augment(this.subarray(start, end))\n } else {\n var sliceLen = end - start\n newBuf = new Buffer(sliceLen, undefined)\n for (var i = 0; i < sliceLen; i++) {\n newBuf[i] = this[i + start]\n }\n }\n\n if (newBuf.length) newBuf.parent = this.parent || this\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n var val = this[offset + --byteLength]\n var mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var i = byteLength\n var mul = 1\n var val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('buffer must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('value is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('index out of range')\n}\n\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkInt(this, value, offset, byteLength, Math.pow(2, 8 * byteLength), 0)\n\n var mul = 1\n var i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkInt(this, value, offset, byteLength, Math.pow(2, 8 * byteLength), 0)\n\n var i = byteLength - 1\n var mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nfunction objectWriteUInt16 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; i++) {\n buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>\n (littleEndian ? i : 1 - i) * 8\n }\n}\n\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nfunction objectWriteUInt32 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffffffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; i++) {\n buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff\n }\n}\n\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = 0\n var mul = 1\n var sub = value < 0 ? 1 : 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = byteLength - 1\n var mul = 1\n var sub = value < 0 ? 1 : 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (value > max || value < min) throw new RangeError('value is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('index out of range')\n if (offset < 0) throw new RangeError('index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n var len = end - start\n var i\n\n if (this === target && start < targetStart && targetStart < end) {\n // descending copy from end\n for (i = len - 1; i >= 0; i--) {\n target[i + targetStart] = this[i + start]\n }\n } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n // ascending copy from start\n for (i = 0; i < len; i++) {\n target[i + targetStart] = this[i + start]\n }\n } else {\n target._set(this.subarray(start, start + len), targetStart)\n }\n\n return len\n}\n\n// fill(value, start=0, end=buffer.length)\nBuffer.prototype.fill = function fill (value, start, end) {\n if (!value) value = 0\n if (!start) start = 0\n if (!end) end = this.length\n\n if (end < start) throw new RangeError('end < start')\n\n // Fill 0 bytes; we're done\n if (end === start) return\n if (this.length === 0) return\n\n if (start < 0 || start >= this.length) throw new RangeError('start out of bounds')\n if (end < 0 || end > this.length) throw new RangeError('end out of bounds')\n\n var i\n if (typeof value === 'number') {\n for (i = start; i < end; i++) {\n this[i] = value\n }\n } else {\n var bytes = utf8ToBytes(value.toString())\n var len = bytes.length\n for (i = start; i < end; i++) {\n this[i] = bytes[i % len]\n }\n }\n\n return this\n}\n\n/**\n * Creates a new `ArrayBuffer` with the *copied* memory of the buffer instance.\n * Added in Node 0.12. Only available in browsers that support ArrayBuffer.\n */\nBuffer.prototype.toArrayBuffer = function toArrayBuffer () {\n if (typeof Uint8Array !== 'undefined') {\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n return (new Buffer(this)).buffer\n } else {\n var buf = new Uint8Array(this.length)\n for (var i = 0, len = buf.length; i < len; i += 1) {\n buf[i] = this[i]\n }\n return buf.buffer\n }\n } else {\n throw new TypeError('Buffer.toArrayBuffer not supported in this browser')\n }\n}\n\n// HELPER FUNCTIONS\n// ================\n\nvar BP = Buffer.prototype\n\n/**\n * Augment a Uint8Array *instance* (not the Uint8Array class!) with Buffer methods\n */\nBuffer._augment = function _augment (arr) {\n arr.constructor = Buffer\n arr._isBuffer = true\n\n // save reference to original Uint8Array set method before overwriting\n arr._set = arr.set\n\n // deprecated\n arr.get = BP.get\n arr.set = BP.set\n\n arr.write = BP.write\n arr.toString = BP.toString\n arr.toLocaleString = BP.toString\n arr.toJSON = BP.toJSON\n arr.equals = BP.equals\n arr.compare = BP.compare\n arr.indexOf = BP.indexOf\n arr.copy = BP.copy\n arr.slice = BP.slice\n arr.readUIntLE = BP.readUIntLE\n arr.readUIntBE = BP.readUIntBE\n arr.readUInt8 = BP.readUInt8\n arr.readUInt16LE = BP.readUInt16LE\n arr.readUInt16BE = BP.readUInt16BE\n arr.readUInt32LE = BP.readUInt32LE\n arr.readUInt32BE = BP.readUInt32BE\n arr.readIntLE = BP.readIntLE\n arr.readIntBE = BP.readIntBE\n arr.readInt8 = BP.readInt8\n arr.readInt16LE = BP.readInt16LE\n arr.readInt16BE = BP.readInt16BE\n arr.readInt32LE = BP.readInt32LE\n arr.readInt32BE = BP.readInt32BE\n arr.readFloatLE = BP.readFloatLE\n arr.readFloatBE = BP.readFloatBE\n arr.readDoubleLE = BP.readDoubleLE\n arr.readDoubleBE = BP.readDoubleBE\n arr.writeUInt8 = BP.writeUInt8\n arr.writeUIntLE = BP.writeUIntLE\n arr.writeUIntBE = BP.writeUIntBE\n arr.writeUInt16LE = BP.writeUInt16LE\n arr.writeUInt16BE = BP.writeUInt16BE\n arr.writeUInt32LE = BP.writeUInt32LE\n arr.writeUInt32BE = BP.writeUInt32BE\n arr.writeIntLE = BP.writeIntLE\n arr.writeIntBE = BP.writeIntBE\n arr.writeInt8 = BP.writeInt8\n arr.writeInt16LE = BP.writeInt16LE\n arr.writeInt16BE = BP.writeInt16BE\n arr.writeInt32LE = BP.writeInt32LE\n arr.writeInt32BE = BP.writeInt32BE\n arr.writeFloatLE = BP.writeFloatLE\n arr.writeFloatBE = BP.writeFloatBE\n arr.writeDoubleLE = BP.writeDoubleLE\n arr.writeDoubleBE = BP.writeDoubleBE\n arr.fill = BP.fill\n arr.inspect = BP.inspect\n arr.toArrayBuffer = BP.toArrayBuffer\n\n return arr\n}\n\nvar INVALID_BASE64_RE = /[^+\\/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = stringtrim(str).replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction stringtrim (str) {\n if (str.trim) return str.trim()\n return str.replace(/^\\s+|\\s+$/g, '')\n}\n\nfunction toHex (n) {\n if (n < 16) return '0' + n.toString(16)\n return n.toString(16)\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n var codePoint\n var length = string.length\n var leadSurrogate = null\n var bytes = []\n\n for (var i = 0; i < length; i++) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n var byteArray = []\n for (var i = 0; i < str.length; i++) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n var c, hi, lo\n var byteArray = []\n for (var i = 0; i < str.length; i++) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n for (var i = 0; i < length; i++) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/buffer/index.js\n ** module id = 1\n ** module chunks = 0\n **/","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar formatRegExp = /%[sdj%]/g;\nexports.format = function(f) {\n if (!isString(f)) {\n var objects = [];\n for (var i = 0; i < arguments.length; i++) {\n objects.push(inspect(arguments[i]));\n }\n return objects.join(' ');\n }\n\n var i = 1;\n var args = arguments;\n var len = args.length;\n var str = String(f).replace(formatRegExp, function(x) {\n if (x === '%%') return '%';\n if (i >= len) return x;\n switch (x) {\n case '%s': return String(args[i++]);\n case '%d': return Number(args[i++]);\n case '%j':\n try {\n return JSON.stringify(args[i++]);\n } catch (_) {\n return '[Circular]';\n }\n default:\n return x;\n }\n });\n for (var x = args[i]; i < len; x = args[++i]) {\n if (isNull(x) || !isObject(x)) {\n str += ' ' + x;\n } else {\n str += ' ' + inspect(x);\n }\n }\n return str;\n};\n\n\n// Mark that a method should not be used.\n// Returns a modified function which warns once by default.\n// If --no-deprecation is set, then it is a no-op.\nexports.deprecate = function(fn, msg) {\n // Allow for deprecating things in the process of starting up.\n if (isUndefined(global.process)) {\n return function() {\n return exports.deprecate(fn, msg).apply(this, arguments);\n };\n }\n\n if (process.noDeprecation === true) {\n return fn;\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (process.throwDeprecation) {\n throw new Error(msg);\n } else if (process.traceDeprecation) {\n console.trace(msg);\n } else {\n console.error(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n};\n\n\nvar debugs = {};\nvar debugEnviron;\nexports.debuglog = function(set) {\n if (isUndefined(debugEnviron))\n debugEnviron = process.env.NODE_DEBUG || '';\n set = set.toUpperCase();\n if (!debugs[set]) {\n if (new RegExp('\\\\b' + set + '\\\\b', 'i').test(debugEnviron)) {\n var pid = process.pid;\n debugs[set] = function() {\n var msg = exports.format.apply(exports, arguments);\n console.error('%s %d: %s', set, pid, msg);\n };\n } else {\n debugs[set] = function() {};\n }\n }\n return debugs[set];\n};\n\n\n/**\n * Echos the value of a value. Trys to print the value out\n * in the best way possible given the different types.\n *\n * @param {Object} obj The object to print out.\n * @param {Object} opts Optional options object that alters the output.\n */\n/* legacy: obj, showHidden, depth, colors*/\nfunction inspect(obj, opts) {\n // default options\n var ctx = {\n seen: [],\n stylize: stylizeNoColor\n };\n // legacy...\n if (arguments.length >= 3) ctx.depth = arguments[2];\n if (arguments.length >= 4) ctx.colors = arguments[3];\n if (isBoolean(opts)) {\n // legacy...\n ctx.showHidden = opts;\n } else if (opts) {\n // got an \"options\" object\n exports._extend(ctx, opts);\n }\n // set default options\n if (isUndefined(ctx.showHidden)) ctx.showHidden = false;\n if (isUndefined(ctx.depth)) ctx.depth = 2;\n if (isUndefined(ctx.colors)) ctx.colors = false;\n if (isUndefined(ctx.customInspect)) ctx.customInspect = true;\n if (ctx.colors) ctx.stylize = stylizeWithColor;\n return formatValue(ctx, obj, ctx.depth);\n}\nexports.inspect = inspect;\n\n\n// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics\ninspect.colors = {\n 'bold' : [1, 22],\n 'italic' : [3, 23],\n 'underline' : [4, 24],\n 'inverse' : [7, 27],\n 'white' : [37, 39],\n 'grey' : [90, 39],\n 'black' : [30, 39],\n 'blue' : [34, 39],\n 'cyan' : [36, 39],\n 'green' : [32, 39],\n 'magenta' : [35, 39],\n 'red' : [31, 39],\n 'yellow' : [33, 39]\n};\n\n// Don't use 'blue' not visible on cmd.exe\ninspect.styles = {\n 'special': 'cyan',\n 'number': 'yellow',\n 'boolean': 'yellow',\n 'undefined': 'grey',\n 'null': 'bold',\n 'string': 'green',\n 'date': 'magenta',\n // \"name\": intentionally not styling\n 'regexp': 'red'\n};\n\n\nfunction stylizeWithColor(str, styleType) {\n var style = inspect.styles[styleType];\n\n if (style) {\n return '\\u001b[' + inspect.colors[style][0] + 'm' + str +\n '\\u001b[' + inspect.colors[style][1] + 'm';\n } else {\n return str;\n }\n}\n\n\nfunction stylizeNoColor(str, styleType) {\n return str;\n}\n\n\nfunction arrayToHash(array) {\n var hash = {};\n\n array.forEach(function(val, idx) {\n hash[val] = true;\n });\n\n return hash;\n}\n\n\nfunction formatValue(ctx, value, recurseTimes) {\n // Provide a hook for user-specified inspect functions.\n // Check that value is an object with an inspect function on it\n if (ctx.customInspect &&\n value &&\n isFunction(value.inspect) &&\n // Filter out the util module, it's inspect function is special\n value.inspect !== exports.inspect &&\n // Also filter out any prototype objects using the circular check.\n !(value.constructor && value.constructor.prototype === value)) {\n var ret = value.inspect(recurseTimes, ctx);\n if (!isString(ret)) {\n ret = formatValue(ctx, ret, recurseTimes);\n }\n return ret;\n }\n\n // Primitive types cannot have properties\n var primitive = formatPrimitive(ctx, value);\n if (primitive) {\n return primitive;\n }\n\n // Look up the keys of the object.\n var keys = Object.keys(value);\n var visibleKeys = arrayToHash(keys);\n\n if (ctx.showHidden) {\n keys = Object.getOwnPropertyNames(value);\n }\n\n // IE doesn't make error fields non-enumerable\n // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx\n if (isError(value)\n && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {\n return formatError(value);\n }\n\n // Some type of object without properties can be shortcutted.\n if (keys.length === 0) {\n if (isFunction(value)) {\n var name = value.name ? ': ' + value.name : '';\n return ctx.stylize('[Function' + name + ']', 'special');\n }\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n }\n if (isDate(value)) {\n return ctx.stylize(Date.prototype.toString.call(value), 'date');\n }\n if (isError(value)) {\n return formatError(value);\n }\n }\n\n var base = '', array = false, braces = ['{', '}'];\n\n // Make Array say that they are Array\n if (isArray(value)) {\n array = true;\n braces = ['[', ']'];\n }\n\n // Make functions say that they are functions\n if (isFunction(value)) {\n var n = value.name ? ': ' + value.name : '';\n base = ' [Function' + n + ']';\n }\n\n // Make RegExps say that they are RegExps\n if (isRegExp(value)) {\n base = ' ' + RegExp.prototype.toString.call(value);\n }\n\n // Make dates with properties first say the date\n if (isDate(value)) {\n base = ' ' + Date.prototype.toUTCString.call(value);\n }\n\n // Make error with message first say the error\n if (isError(value)) {\n base = ' ' + formatError(value);\n }\n\n if (keys.length === 0 && (!array || value.length == 0)) {\n return braces[0] + base + braces[1];\n }\n\n if (recurseTimes < 0) {\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n } else {\n return ctx.stylize('[Object]', 'special');\n }\n }\n\n ctx.seen.push(value);\n\n var output;\n if (array) {\n output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);\n } else {\n output = keys.map(function(key) {\n return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);\n });\n }\n\n ctx.seen.pop();\n\n return reduceToSingleString(output, base, braces);\n}\n\n\nfunction formatPrimitive(ctx, value) {\n if (isUndefined(value))\n return ctx.stylize('undefined', 'undefined');\n if (isString(value)) {\n var simple = '\\'' + JSON.stringify(value).replace(/^\"|\"$/g, '')\n .replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"') + '\\'';\n return ctx.stylize(simple, 'string');\n }\n if (isNumber(value))\n return ctx.stylize('' + value, 'number');\n if (isBoolean(value))\n return ctx.stylize('' + value, 'boolean');\n // For some reason typeof null is \"object\", so special case here.\n if (isNull(value))\n return ctx.stylize('null', 'null');\n}\n\n\nfunction formatError(value) {\n return '[' + Error.prototype.toString.call(value) + ']';\n}\n\n\nfunction formatArray(ctx, value, recurseTimes, visibleKeys, keys) {\n var output = [];\n for (var i = 0, l = value.length; i < l; ++i) {\n if (hasOwnProperty(value, String(i))) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n String(i), true));\n } else {\n output.push('');\n }\n }\n keys.forEach(function(key) {\n if (!key.match(/^\\d+$/)) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n key, true));\n }\n });\n return output;\n}\n\n\nfunction formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {\n var name, str, desc;\n desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };\n if (desc.get) {\n if (desc.set) {\n str = ctx.stylize('[Getter/Setter]', 'special');\n } else {\n str = ctx.stylize('[Getter]', 'special');\n }\n } else {\n if (desc.set) {\n str = ctx.stylize('[Setter]', 'special');\n }\n }\n if (!hasOwnProperty(visibleKeys, key)) {\n name = '[' + key + ']';\n }\n if (!str) {\n if (ctx.seen.indexOf(desc.value) < 0) {\n if (isNull(recurseTimes)) {\n str = formatValue(ctx, desc.value, null);\n } else {\n str = formatValue(ctx, desc.value, recurseTimes - 1);\n }\n if (str.indexOf('\\n') > -1) {\n if (array) {\n str = str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n').substr(2);\n } else {\n str = '\\n' + str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n');\n }\n }\n } else {\n str = ctx.stylize('[Circular]', 'special');\n }\n }\n if (isUndefined(name)) {\n if (array && key.match(/^\\d+$/)) {\n return str;\n }\n name = JSON.stringify('' + key);\n if (name.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)) {\n name = name.substr(1, name.length - 2);\n name = ctx.stylize(name, 'name');\n } else {\n name = name.replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"')\n .replace(/(^\"|\"$)/g, \"'\");\n name = ctx.stylize(name, 'string');\n }\n }\n\n return name + ': ' + str;\n}\n\n\nfunction reduceToSingleString(output, base, braces) {\n var numLinesEst = 0;\n var length = output.reduce(function(prev, cur) {\n numLinesEst++;\n if (cur.indexOf('\\n') >= 0) numLinesEst++;\n return prev + cur.replace(/\\u001b\\[\\d\\d?m/g, '').length + 1;\n }, 0);\n\n if (length > 60) {\n return braces[0] +\n (base === '' ? '' : base + '\\n ') +\n ' ' +\n output.join(',\\n ') +\n ' ' +\n braces[1];\n }\n\n return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];\n}\n\n\n// NOTE: These type checking functions intentionally don't use `instanceof`\n// because it is fragile and can be easily faked with `Object.create()`.\nfunction isArray(ar) {\n return Array.isArray(ar);\n}\nexports.isArray = isArray;\n\nfunction isBoolean(arg) {\n return typeof arg === 'boolean';\n}\nexports.isBoolean = isBoolean;\n\nfunction isNull(arg) {\n return arg === null;\n}\nexports.isNull = isNull;\n\nfunction isNullOrUndefined(arg) {\n return arg == null;\n}\nexports.isNullOrUndefined = isNullOrUndefined;\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\nexports.isNumber = isNumber;\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\nexports.isString = isString;\n\nfunction isSymbol(arg) {\n return typeof arg === 'symbol';\n}\nexports.isSymbol = isSymbol;\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\nexports.isUndefined = isUndefined;\n\nfunction isRegExp(re) {\n return isObject(re) && objectToString(re) === '[object RegExp]';\n}\nexports.isRegExp = isRegExp;\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\nexports.isObject = isObject;\n\nfunction isDate(d) {\n return isObject(d) && objectToString(d) === '[object Date]';\n}\nexports.isDate = isDate;\n\nfunction isError(e) {\n return isObject(e) &&\n (objectToString(e) === '[object Error]' || e instanceof Error);\n}\nexports.isError = isError;\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nexports.isFunction = isFunction;\n\nfunction isPrimitive(arg) {\n return arg === null ||\n typeof arg === 'boolean' ||\n typeof arg === 'number' ||\n typeof arg === 'string' ||\n typeof arg === 'symbol' || // ES6 symbol\n typeof arg === 'undefined';\n}\nexports.isPrimitive = isPrimitive;\n\nexports.isBuffer = require('./support/isBuffer');\n\nfunction objectToString(o) {\n return Object.prototype.toString.call(o);\n}\n\n\nfunction pad(n) {\n return n < 10 ? '0' + n.toString(10) : n.toString(10);\n}\n\n\nvar months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',\n 'Oct', 'Nov', 'Dec'];\n\n// 26 Feb 16:19:34\nfunction timestamp() {\n var d = new Date();\n var time = [pad(d.getHours()),\n pad(d.getMinutes()),\n pad(d.getSeconds())].join(':');\n return [d.getDate(), months[d.getMonth()], time].join(' ');\n}\n\n\n// log is just a thin wrapper to console.log that prepends a timestamp\nexports.log = function() {\n console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));\n};\n\n\n/**\n * Inherit the prototype methods from one constructor into another.\n *\n * The Function.prototype.inherits from lang.js rewritten as a standalone\n * function (not on Function.prototype). NOTE: If this file is to be loaded\n * during bootstrapping this function needs to be rewritten using some native\n * functions as prototype setup using normal JavaScript does not work as\n * expected during bootstrapping (see mirror.js in r114903).\n *\n * @param {function} ctor Constructor function which needs to inherit the\n * prototype.\n * @param {function} superCtor Constructor function to inherit prototype from.\n */\nexports.inherits = require('inherits');\n\nexports._extend = function(origin, add) {\n // Don't do anything if add isn't an object\n if (!add || !isObject(add)) return origin;\n\n var keys = Object.keys(add);\n var i = keys.length;\n while (i--) {\n origin[keys[i]] = add[keys[i]];\n }\n return origin;\n};\n\nfunction hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/util/util.js\n ** module id = 2\n ** module chunks = 0\n **/","var createHash = require('sha.js')\n\nvar md5 = toConstructor(require('./md5'))\nvar rmd160 = toConstructor(require('ripemd160'))\n\nfunction toConstructor (fn) {\n return function () {\n var buffers = []\n var m= {\n update: function (data, enc) {\n if(!Buffer.isBuffer(data)) data = new Buffer(data, enc)\n buffers.push(data)\n return this\n },\n digest: function (enc) {\n var buf = Buffer.concat(buffers)\n var r = fn(buf)\n buffers = null\n return enc ? r.toString(enc) : r\n }\n }\n return m\n }\n}\n\nmodule.exports = function (alg) {\n if('md5' === alg) return new md5()\n if('rmd160' === alg) return new rmd160()\n return createHash(alg)\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/crypto-browserify/create-hash.js\n ** module id = 3\n ** module chunks = 0\n **/","var lookup = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n;(function (exports) {\n\t'use strict';\n\n var Arr = (typeof Uint8Array !== 'undefined')\n ? Uint8Array\n : Array\n\n\tvar PLUS = '+'.charCodeAt(0)\n\tvar SLASH = '/'.charCodeAt(0)\n\tvar NUMBER = '0'.charCodeAt(0)\n\tvar LOWER = 'a'.charCodeAt(0)\n\tvar UPPER = 'A'.charCodeAt(0)\n\tvar PLUS_URL_SAFE = '-'.charCodeAt(0)\n\tvar SLASH_URL_SAFE = '_'.charCodeAt(0)\n\n\tfunction decode (elt) {\n\t\tvar code = elt.charCodeAt(0)\n\t\tif (code === PLUS ||\n\t\t code === PLUS_URL_SAFE)\n\t\t\treturn 62 // '+'\n\t\tif (code === SLASH ||\n\t\t code === SLASH_URL_SAFE)\n\t\t\treturn 63 // '/'\n\t\tif (code < NUMBER)\n\t\t\treturn -1 //no match\n\t\tif (code < NUMBER + 10)\n\t\t\treturn code - NUMBER + 26 + 26\n\t\tif (code < UPPER + 26)\n\t\t\treturn code - UPPER\n\t\tif (code < LOWER + 26)\n\t\t\treturn code - LOWER + 26\n\t}\n\n\tfunction b64ToByteArray (b64) {\n\t\tvar i, j, l, tmp, placeHolders, arr\n\n\t\tif (b64.length % 4 > 0) {\n\t\t\tthrow new Error('Invalid string. Length must be a multiple of 4')\n\t\t}\n\n\t\t// the number of equal signs (place holders)\n\t\t// if there are two placeholders, than the two characters before it\n\t\t// represent one byte\n\t\t// if there is only one, then the three characters before it represent 2 bytes\n\t\t// this is just a cheap hack to not do indexOf twice\n\t\tvar len = b64.length\n\t\tplaceHolders = '=' === b64.charAt(len - 2) ? 2 : '=' === b64.charAt(len - 1) ? 1 : 0\n\n\t\t// base64 is 4/3 + up to two characters of the original data\n\t\tarr = new Arr(b64.length * 3 / 4 - placeHolders)\n\n\t\t// if there are placeholders, only get up to the last complete 4 chars\n\t\tl = placeHolders > 0 ? b64.length - 4 : b64.length\n\n\t\tvar L = 0\n\n\t\tfunction push (v) {\n\t\t\tarr[L++] = v\n\t\t}\n\n\t\tfor (i = 0, j = 0; i < l; i += 4, j += 3) {\n\t\t\ttmp = (decode(b64.charAt(i)) << 18) | (decode(b64.charAt(i + 1)) << 12) | (decode(b64.charAt(i + 2)) << 6) | decode(b64.charAt(i + 3))\n\t\t\tpush((tmp & 0xFF0000) >> 16)\n\t\t\tpush((tmp & 0xFF00) >> 8)\n\t\t\tpush(tmp & 0xFF)\n\t\t}\n\n\t\tif (placeHolders === 2) {\n\t\t\ttmp = (decode(b64.charAt(i)) << 2) | (decode(b64.charAt(i + 1)) >> 4)\n\t\t\tpush(tmp & 0xFF)\n\t\t} else if (placeHolders === 1) {\n\t\t\ttmp = (decode(b64.charAt(i)) << 10) | (decode(b64.charAt(i + 1)) << 4) | (decode(b64.charAt(i + 2)) >> 2)\n\t\t\tpush((tmp >> 8) & 0xFF)\n\t\t\tpush(tmp & 0xFF)\n\t\t}\n\n\t\treturn arr\n\t}\n\n\tfunction uint8ToBase64 (uint8) {\n\t\tvar i,\n\t\t\textraBytes = uint8.length % 3, // if we have 1 byte left, pad 2 bytes\n\t\t\toutput = \"\",\n\t\t\ttemp, length\n\n\t\tfunction encode (num) {\n\t\t\treturn lookup.charAt(num)\n\t\t}\n\n\t\tfunction tripletToBase64 (num) {\n\t\t\treturn encode(num >> 18 & 0x3F) + encode(num >> 12 & 0x3F) + encode(num >> 6 & 0x3F) + encode(num & 0x3F)\n\t\t}\n\n\t\t// go through the array every three bytes, we'll deal with trailing stuff later\n\t\tfor (i = 0, length = uint8.length - extraBytes; i < length; i += 3) {\n\t\t\ttemp = (uint8[i] << 16) + (uint8[i + 1] << 8) + (uint8[i + 2])\n\t\t\toutput += tripletToBase64(temp)\n\t\t}\n\n\t\t// pad the end with zeros, but make sure to not forget the extra bytes\n\t\tswitch (extraBytes) {\n\t\t\tcase 1:\n\t\t\t\ttemp = uint8[uint8.length - 1]\n\t\t\t\toutput += encode(temp >> 2)\n\t\t\t\toutput += encode((temp << 4) & 0x3F)\n\t\t\t\toutput += '=='\n\t\t\t\tbreak\n\t\t\tcase 2:\n\t\t\t\ttemp = (uint8[uint8.length - 2] << 8) + (uint8[uint8.length - 1])\n\t\t\t\toutput += encode(temp >> 10)\n\t\t\t\toutput += encode((temp >> 4) & 0x3F)\n\t\t\t\toutput += encode((temp << 2) & 0x3F)\n\t\t\t\toutput += '='\n\t\t\t\tbreak\n\t\t}\n\n\t\treturn output\n\t}\n\n\texports.toByteArray = b64ToByteArray\n\texports.fromByteArray = uint8ToBase64\n}(typeof exports === 'undefined' ? (this.base64js = {}) : exports))\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/base64-js/lib/b64.js\n ** module id = 4\n ** module chunks = 0\n **/","var toString = {}.toString;\n\nmodule.exports = Array.isArray || function (arr) {\n return toString.call(arr) == '[object Array]';\n};\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/buffer/~/isarray/index.js\n ** module id = 5\n ** module chunks = 0\n **/","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['module', 'select'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(module, require('select'));\n } else {\n var mod = {\n exports: {}\n };\n factory(mod, global.select);\n global.clipboardAction = mod.exports;\n }\n})(this, function (module, _select) {\n 'use strict';\n\n var _select2 = _interopRequireDefault(_select);\n\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n }\n\n var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n };\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n var _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n }();\n\n var ClipboardAction = function () {\n /**\n * @param {Object} options\n */\n\n function ClipboardAction(options) {\n _classCallCheck(this, ClipboardAction);\n\n this.resolveOptions(options);\n this.initSelection();\n }\n\n /**\n * Defines base properties passed from constructor.\n * @param {Object} options\n */\n\n\n ClipboardAction.prototype.resolveOptions = function resolveOptions() {\n var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\n this.action = options.action;\n this.emitter = options.emitter;\n this.target = options.target;\n this.text = options.text;\n this.trigger = options.trigger;\n\n this.selectedText = '';\n };\n\n ClipboardAction.prototype.initSelection = function initSelection() {\n if (this.text) {\n this.selectFake();\n } else if (this.target) {\n this.selectTarget();\n }\n };\n\n ClipboardAction.prototype.selectFake = function selectFake() {\n var _this = this;\n\n var isRTL = document.documentElement.getAttribute('dir') == 'rtl';\n\n this.removeFake();\n\n this.fakeHandlerCallback = function () {\n return _this.removeFake();\n };\n this.fakeHandler = document.body.addEventListener('click', this.fakeHandlerCallback) || true;\n\n this.fakeElem = document.createElement('textarea');\n // Prevent zooming on iOS\n this.fakeElem.style.fontSize = '12pt';\n // Reset box model\n this.fakeElem.style.border = '0';\n this.fakeElem.style.padding = '0';\n this.fakeElem.style.margin = '0';\n // Move element out of screen horizontally\n this.fakeElem.style.position = 'absolute';\n this.fakeElem.style[isRTL ? 'right' : 'left'] = '-9999px';\n // Move element to the same position vertically\n this.fakeElem.style.top = (window.pageYOffset || document.documentElement.scrollTop) + 'px';\n this.fakeElem.setAttribute('readonly', '');\n this.fakeElem.value = this.text;\n\n document.body.appendChild(this.fakeElem);\n\n this.selectedText = (0, _select2.default)(this.fakeElem);\n this.copyText();\n };\n\n ClipboardAction.prototype.removeFake = function removeFake() {\n if (this.fakeHandler) {\n document.body.removeEventListener('click', this.fakeHandlerCallback);\n this.fakeHandler = null;\n this.fakeHandlerCallback = null;\n }\n\n if (this.fakeElem) {\n document.body.removeChild(this.fakeElem);\n this.fakeElem = null;\n }\n };\n\n ClipboardAction.prototype.selectTarget = function selectTarget() {\n this.selectedText = (0, _select2.default)(this.target);\n this.copyText();\n };\n\n ClipboardAction.prototype.copyText = function copyText() {\n var succeeded = undefined;\n\n try {\n succeeded = document.execCommand(this.action);\n } catch (err) {\n succeeded = false;\n }\n\n this.handleResult(succeeded);\n };\n\n ClipboardAction.prototype.handleResult = function handleResult(succeeded) {\n if (succeeded) {\n this.emitter.emit('success', {\n action: this.action,\n text: this.selectedText,\n trigger: this.trigger,\n clearSelection: this.clearSelection.bind(this)\n });\n } else {\n this.emitter.emit('error', {\n action: this.action,\n trigger: this.trigger,\n clearSelection: this.clearSelection.bind(this)\n });\n }\n };\n\n ClipboardAction.prototype.clearSelection = function clearSelection() {\n if (this.target) {\n this.target.blur();\n }\n\n window.getSelection().removeAllRanges();\n };\n\n ClipboardAction.prototype.destroy = function destroy() {\n this.removeFake();\n };\n\n _createClass(ClipboardAction, [{\n key: 'action',\n set: function set() {\n var action = arguments.length <= 0 || arguments[0] === undefined ? 'copy' : arguments[0];\n\n this._action = action;\n\n if (this._action !== 'copy' && this._action !== 'cut') {\n throw new Error('Invalid \"action\" value, use either \"copy\" or \"cut\"');\n }\n },\n get: function get() {\n return this._action;\n }\n }, {\n key: 'target',\n set: function set(target) {\n if (target !== undefined) {\n if (target && (typeof target === 'undefined' ? 'undefined' : _typeof(target)) === 'object' && target.nodeType === 1) {\n if (this.action === 'copy' && target.hasAttribute('disabled')) {\n throw new Error('Invalid \"target\" attribute. Please use \"readonly\" instead of \"disabled\" attribute');\n }\n\n if (this.action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {\n throw new Error('Invalid \"target\" attribute. You can\\'t cut text from elements with \"readonly\" or \"disabled\" attributes');\n }\n\n this._target = target;\n } else {\n throw new Error('Invalid \"target\" value, use a valid Element');\n }\n }\n },\n get: function get() {\n return this._target;\n }\n }]);\n\n return ClipboardAction;\n }();\n\n module.exports = ClipboardAction;\n});\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/clipboard/lib/clipboard-action.js\n ** module id = 6\n ** module chunks = 0\n **/","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['module', './clipboard-action', 'tiny-emitter', 'good-listener'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(module, require('./clipboard-action'), require('tiny-emitter'), require('good-listener'));\n } else {\n var mod = {\n exports: {}\n };\n factory(mod, global.clipboardAction, global.tinyEmitter, global.goodListener);\n global.clipboard = mod.exports;\n }\n})(this, function (module, _clipboardAction, _tinyEmitter, _goodListener) {\n 'use strict';\n\n var _clipboardAction2 = _interopRequireDefault(_clipboardAction);\n\n var _tinyEmitter2 = _interopRequireDefault(_tinyEmitter);\n\n var _goodListener2 = _interopRequireDefault(_goodListener);\n\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n }\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n function _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n }\n\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n }\n\n var Clipboard = function (_Emitter) {\n _inherits(Clipboard, _Emitter);\n\n /**\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n * @param {Object} options\n */\n\n function Clipboard(trigger, options) {\n _classCallCheck(this, Clipboard);\n\n var _this = _possibleConstructorReturn(this, _Emitter.call(this));\n\n _this.resolveOptions(options);\n _this.listenClick(trigger);\n return _this;\n }\n\n /**\n * Defines if attributes would be resolved using internal setter functions\n * or custom functions that were passed in the constructor.\n * @param {Object} options\n */\n\n\n Clipboard.prototype.resolveOptions = function resolveOptions() {\n var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\n this.action = typeof options.action === 'function' ? options.action : this.defaultAction;\n this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;\n this.text = typeof options.text === 'function' ? options.text : this.defaultText;\n };\n\n Clipboard.prototype.listenClick = function listenClick(trigger) {\n var _this2 = this;\n\n this.listener = (0, _goodListener2.default)(trigger, 'click', function (e) {\n return _this2.onClick(e);\n });\n };\n\n Clipboard.prototype.onClick = function onClick(e) {\n var trigger = e.delegateTarget || e.currentTarget;\n\n if (this.clipboardAction) {\n this.clipboardAction = null;\n }\n\n this.clipboardAction = new _clipboardAction2.default({\n action: this.action(trigger),\n target: this.target(trigger),\n text: this.text(trigger),\n trigger: trigger,\n emitter: this\n });\n };\n\n Clipboard.prototype.defaultAction = function defaultAction(trigger) {\n return getAttributeValue('action', trigger);\n };\n\n Clipboard.prototype.defaultTarget = function defaultTarget(trigger) {\n var selector = getAttributeValue('target', trigger);\n\n if (selector) {\n return document.querySelector(selector);\n }\n };\n\n Clipboard.prototype.defaultText = function defaultText(trigger) {\n return getAttributeValue('text', trigger);\n };\n\n Clipboard.prototype.destroy = function destroy() {\n this.listener.destroy();\n\n if (this.clipboardAction) {\n this.clipboardAction.destroy();\n this.clipboardAction = null;\n }\n };\n\n return Clipboard;\n }(_tinyEmitter2.default);\n\n /**\n * Helper function to retrieve attribute value.\n * @param {String} suffix\n * @param {Element} element\n */\n function getAttributeValue(suffix, element) {\n var attribute = 'data-clipboard-' + suffix;\n\n if (!element.hasAttribute(attribute)) {\n return;\n }\n\n return element.getAttribute(attribute);\n }\n\n module.exports = Clipboard;\n});\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/clipboard/lib/clipboard.js\n ** module id = 7\n ** module chunks = 0\n **/","var matches = require('matches-selector')\r\n\r\nmodule.exports = function (element, selector, checkYoSelf) {\r\n var parent = checkYoSelf ? element : element.parentNode\r\n\r\n while (parent && parent !== document) {\r\n if (matches(parent, selector)) return parent;\r\n parent = parent.parentNode\r\n }\r\n}\r\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/closest/index.js\n ** module id = 8\n ** module chunks = 0\n **/","var createHash = require('./create-hash')\n\nvar zeroBuffer = new Buffer(128)\nzeroBuffer.fill(0)\n\nmodule.exports = Hmac\n\nfunction Hmac (alg, key) {\n if(!(this instanceof Hmac)) return new Hmac(alg, key)\n this._opad = opad\n this._alg = alg\n\n var blocksize = (alg === 'sha512') ? 128 : 64\n\n key = this._key = !Buffer.isBuffer(key) ? new Buffer(key) : key\n\n if(key.length > blocksize) {\n key = createHash(alg).update(key).digest()\n } else if(key.length < blocksize) {\n key = Buffer.concat([key, zeroBuffer], blocksize)\n }\n\n var ipad = this._ipad = new Buffer(blocksize)\n var opad = this._opad = new Buffer(blocksize)\n\n for(var i = 0; i < blocksize; i++) {\n ipad[i] = key[i] ^ 0x36\n opad[i] = key[i] ^ 0x5C\n }\n\n this._hash = createHash(alg).update(ipad)\n}\n\nHmac.prototype.update = function (data, enc) {\n this._hash.update(data, enc)\n return this\n}\n\nHmac.prototype.digest = function (enc) {\n var h = this._hash.digest()\n return createHash(this._alg).update(this._opad).update(h).digest(enc)\n}\n\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/crypto-browserify/create-hmac.js\n ** module id = 9\n ** module chunks = 0\n **/","var intSize = 4;\nvar zeroBuffer = new Buffer(intSize); zeroBuffer.fill(0);\nvar chrsz = 8;\n\nfunction toArray(buf, bigEndian) {\n if ((buf.length % intSize) !== 0) {\n var len = buf.length + (intSize - (buf.length % intSize));\n buf = Buffer.concat([buf, zeroBuffer], len);\n }\n\n var arr = [];\n var fn = bigEndian ? buf.readInt32BE : buf.readInt32LE;\n for (var i = 0; i < buf.length; i += intSize) {\n arr.push(fn.call(buf, i));\n }\n return arr;\n}\n\nfunction toBuffer(arr, size, bigEndian) {\n var buf = new Buffer(size);\n var fn = bigEndian ? buf.writeInt32BE : buf.writeInt32LE;\n for (var i = 0; i < arr.length; i++) {\n fn.call(buf, arr[i], i * 4, true);\n }\n return buf;\n}\n\nfunction hash(buf, fn, hashSize, bigEndian) {\n if (!Buffer.isBuffer(buf)) buf = new Buffer(buf);\n var arr = fn(toArray(buf, bigEndian), buf.length * chrsz);\n return toBuffer(arr, hashSize, bigEndian);\n}\n\nmodule.exports = { hash: hash };\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/crypto-browserify/helpers.js\n ** module id = 10\n ** module chunks = 0\n **/","var rng = require('./rng')\n\nfunction error () {\n var m = [].slice.call(arguments).join(' ')\n throw new Error([\n m,\n 'we accept pull requests',\n 'http://github.com/dominictarr/crypto-browserify'\n ].join('\\n'))\n}\n\nexports.createHash = require('./create-hash')\n\nexports.createHmac = require('./create-hmac')\n\nexports.randomBytes = function(size, callback) {\n if (callback && callback.call) {\n try {\n callback.call(this, undefined, new Buffer(rng(size)))\n } catch (err) { callback(err) }\n } else {\n return new Buffer(rng(size))\n }\n}\n\nfunction each(a, f) {\n for(var i in a)\n f(a[i], i)\n}\n\nexports.getHashes = function () {\n return ['sha1', 'sha256', 'sha512', 'md5', 'rmd160']\n}\n\nvar p = require('./pbkdf2')(exports)\nexports.pbkdf2 = p.pbkdf2\nexports.pbkdf2Sync = p.pbkdf2Sync\n\n\n// the least I can do is make error messages for the rest of the node.js/crypto api.\neach(['createCredentials'\n, 'createCipher'\n, 'createCipheriv'\n, 'createDecipher'\n, 'createDecipheriv'\n, 'createSign'\n, 'createVerify'\n, 'createDiffieHellman'\n], function (name) {\n exports[name] = function () {\n error('sorry,', name, 'is not implemented yet')\n }\n})\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/crypto-browserify/index.js\n ** module id = 11\n ** module chunks = 0\n **/","/*\n * A JavaScript implementation of the RSA Data Security, Inc. MD5 Message\n * Digest Algorithm, as defined in RFC 1321.\n * Version 2.1 Copyright (C) Paul Johnston 1999 - 2002.\n * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n * Distributed under the BSD License\n * See http://pajhome.org.uk/crypt/md5 for more info.\n */\n\nvar helpers = require('./helpers');\n\n/*\n * Calculate the MD5 of an array of little-endian words, and a bit length\n */\nfunction core_md5(x, len)\n{\n /* append padding */\n x[len >> 5] |= 0x80 << ((len) % 32);\n x[(((len + 64) >>> 9) << 4) + 14] = len;\n\n var a = 1732584193;\n var b = -271733879;\n var c = -1732584194;\n var d = 271733878;\n\n for(var i = 0; i < x.length; i += 16)\n {\n var olda = a;\n var oldb = b;\n var oldc = c;\n var oldd = d;\n\n a = md5_ff(a, b, c, d, x[i+ 0], 7 , -680876936);\n d = md5_ff(d, a, b, c, x[i+ 1], 12, -389564586);\n c = md5_ff(c, d, a, b, x[i+ 2], 17, 606105819);\n b = md5_ff(b, c, d, a, x[i+ 3], 22, -1044525330);\n a = md5_ff(a, b, c, d, x[i+ 4], 7 , -176418897);\n d = md5_ff(d, a, b, c, x[i+ 5], 12, 1200080426);\n c = md5_ff(c, d, a, b, x[i+ 6], 17, -1473231341);\n b = md5_ff(b, c, d, a, x[i+ 7], 22, -45705983);\n a = md5_ff(a, b, c, d, x[i+ 8], 7 , 1770035416);\n d = md5_ff(d, a, b, c, x[i+ 9], 12, -1958414417);\n c = md5_ff(c, d, a, b, x[i+10], 17, -42063);\n b = md5_ff(b, c, d, a, x[i+11], 22, -1990404162);\n a = md5_ff(a, b, c, d, x[i+12], 7 , 1804603682);\n d = md5_ff(d, a, b, c, x[i+13], 12, -40341101);\n c = md5_ff(c, d, a, b, x[i+14], 17, -1502002290);\n b = md5_ff(b, c, d, a, x[i+15], 22, 1236535329);\n\n a = md5_gg(a, b, c, d, x[i+ 1], 5 , -165796510);\n d = md5_gg(d, a, b, c, x[i+ 6], 9 , -1069501632);\n c = md5_gg(c, d, a, b, x[i+11], 14, 643717713);\n b = md5_gg(b, c, d, a, x[i+ 0], 20, -373897302);\n a = md5_gg(a, b, c, d, x[i+ 5], 5 , -701558691);\n d = md5_gg(d, a, b, c, x[i+10], 9 , 38016083);\n c = md5_gg(c, d, a, b, x[i+15], 14, -660478335);\n b = md5_gg(b, c, d, a, x[i+ 4], 20, -405537848);\n a = md5_gg(a, b, c, d, x[i+ 9], 5 , 568446438);\n d = md5_gg(d, a, b, c, x[i+14], 9 , -1019803690);\n c = md5_gg(c, d, a, b, x[i+ 3], 14, -187363961);\n b = md5_gg(b, c, d, a, x[i+ 8], 20, 1163531501);\n a = md5_gg(a, b, c, d, x[i+13], 5 , -1444681467);\n d = md5_gg(d, a, b, c, x[i+ 2], 9 , -51403784);\n c = md5_gg(c, d, a, b, x[i+ 7], 14, 1735328473);\n b = md5_gg(b, c, d, a, x[i+12], 20, -1926607734);\n\n a = md5_hh(a, b, c, d, x[i+ 5], 4 , -378558);\n d = md5_hh(d, a, b, c, x[i+ 8], 11, -2022574463);\n c = md5_hh(c, d, a, b, x[i+11], 16, 1839030562);\n b = md5_hh(b, c, d, a, x[i+14], 23, -35309556);\n a = md5_hh(a, b, c, d, x[i+ 1], 4 , -1530992060);\n d = md5_hh(d, a, b, c, x[i+ 4], 11, 1272893353);\n c = md5_hh(c, d, a, b, x[i+ 7], 16, -155497632);\n b = md5_hh(b, c, d, a, x[i+10], 23, -1094730640);\n a = md5_hh(a, b, c, d, x[i+13], 4 , 681279174);\n d = md5_hh(d, a, b, c, x[i+ 0], 11, -358537222);\n c = md5_hh(c, d, a, b, x[i+ 3], 16, -722521979);\n b = md5_hh(b, c, d, a, x[i+ 6], 23, 76029189);\n a = md5_hh(a, b, c, d, x[i+ 9], 4 , -640364487);\n d = md5_hh(d, a, b, c, x[i+12], 11, -421815835);\n c = md5_hh(c, d, a, b, x[i+15], 16, 530742520);\n b = md5_hh(b, c, d, a, x[i+ 2], 23, -995338651);\n\n a = md5_ii(a, b, c, d, x[i+ 0], 6 , -198630844);\n d = md5_ii(d, a, b, c, x[i+ 7], 10, 1126891415);\n c = md5_ii(c, d, a, b, x[i+14], 15, -1416354905);\n b = md5_ii(b, c, d, a, x[i+ 5], 21, -57434055);\n a = md5_ii(a, b, c, d, x[i+12], 6 , 1700485571);\n d = md5_ii(d, a, b, c, x[i+ 3], 10, -1894986606);\n c = md5_ii(c, d, a, b, x[i+10], 15, -1051523);\n b = md5_ii(b, c, d, a, x[i+ 1], 21, -2054922799);\n a = md5_ii(a, b, c, d, x[i+ 8], 6 , 1873313359);\n d = md5_ii(d, a, b, c, x[i+15], 10, -30611744);\n c = md5_ii(c, d, a, b, x[i+ 6], 15, -1560198380);\n b = md5_ii(b, c, d, a, x[i+13], 21, 1309151649);\n a = md5_ii(a, b, c, d, x[i+ 4], 6 , -145523070);\n d = md5_ii(d, a, b, c, x[i+11], 10, -1120210379);\n c = md5_ii(c, d, a, b, x[i+ 2], 15, 718787259);\n b = md5_ii(b, c, d, a, x[i+ 9], 21, -343485551);\n\n a = safe_add(a, olda);\n b = safe_add(b, oldb);\n c = safe_add(c, oldc);\n d = safe_add(d, oldd);\n }\n return Array(a, b, c, d);\n\n}\n\n/*\n * These functions implement the four basic operations the algorithm uses.\n */\nfunction md5_cmn(q, a, b, x, s, t)\n{\n return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),b);\n}\nfunction md5_ff(a, b, c, d, x, s, t)\n{\n return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t);\n}\nfunction md5_gg(a, b, c, d, x, s, t)\n{\n return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t);\n}\nfunction md5_hh(a, b, c, d, x, s, t)\n{\n return md5_cmn(b ^ c ^ d, a, b, x, s, t);\n}\nfunction md5_ii(a, b, c, d, x, s, t)\n{\n return md5_cmn(c ^ (b | (~d)), a, b, x, s, t);\n}\n\n/*\n * Add integers, wrapping at 2^32. This uses 16-bit operations internally\n * to work around bugs in some JS interpreters.\n */\nfunction safe_add(x, y)\n{\n var lsw = (x & 0xFFFF) + (y & 0xFFFF);\n var msw = (x >> 16) + (y >> 16) + (lsw >> 16);\n return (msw << 16) | (lsw & 0xFFFF);\n}\n\n/*\n * Bitwise rotate a 32-bit number to the left.\n */\nfunction bit_rol(num, cnt)\n{\n return (num << cnt) | (num >>> (32 - cnt));\n}\n\nmodule.exports = function md5(buf) {\n return helpers.hash(buf, core_md5, 16);\n};\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/crypto-browserify/md5.js\n ** module id = 12\n ** module chunks = 0\n **/","var pbkdf2Export = require('pbkdf2-compat/pbkdf2')\n\nmodule.exports = function (crypto, exports) {\n exports = exports || {}\n\n var exported = pbkdf2Export(crypto)\n\n exports.pbkdf2 = exported.pbkdf2\n exports.pbkdf2Sync = exported.pbkdf2Sync\n\n return exports\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/crypto-browserify/pbkdf2.js\n ** module id = 13\n ** module chunks = 0\n **/","(function() {\n var g = ('undefined' === typeof window ? global : window) || {}\n _crypto = (\n g.crypto || g.msCrypto || require('crypto')\n )\n module.exports = function(size) {\n // Modern Browsers\n if(_crypto.getRandomValues) {\n var bytes = new Buffer(size); //in browserify, this is an extended Uint8Array\n /* This will not work in older browsers.\n * See https://developer.mozilla.org/en-US/docs/Web/API/window.crypto.getRandomValues\n */\n \n _crypto.getRandomValues(bytes);\n return bytes;\n }\n else if (_crypto.randomBytes) {\n return _crypto.randomBytes(size)\n }\n else\n throw new Error(\n 'secure random number generation not supported by this browser\\n'+\n 'use chrome, FireFox or Internet Explorer 11'\n )\n }\n}())\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/crypto-browserify/rng.js\n ** module id = 14\n ** module chunks = 0\n **/","var closest = require('closest');\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction delegate(element, selector, type, callback, useCapture) {\n var listenerFn = listener.apply(this, arguments);\n\n element.addEventListener(type, listenerFn, useCapture);\n\n return {\n destroy: function() {\n element.removeEventListener(type, listenerFn, useCapture);\n }\n }\n}\n\n/**\n * Finds closest match and invokes callback.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Function}\n */\nfunction listener(element, selector, type, callback) {\n return function(e) {\n e.delegateTarget = closest(e.target, selector, true);\n\n if (e.delegateTarget) {\n callback.call(element, e);\n }\n }\n}\n\nmodule.exports = delegate;\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/delegate/src/delegate.js\n ** module id = 15\n ** module chunks = 0\n **/","/**\n * Check if argument is a HTML element.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.node = function(value) {\n return value !== undefined\n && value instanceof HTMLElement\n && value.nodeType === 1;\n};\n\n/**\n * Check if argument is a list of HTML elements.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.nodeList = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return value !== undefined\n && (type === '[object NodeList]' || type === '[object HTMLCollection]')\n && ('length' in value)\n && (value.length === 0 || exports.node(value[0]));\n};\n\n/**\n * Check if argument is a string.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.string = function(value) {\n return typeof value === 'string'\n || value instanceof String;\n};\n\n/**\n * Check if argument is a function.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.fn = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return type === '[object Function]';\n};\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/good-listener/src/is.js\n ** module id = 18\n ** module chunks = 0\n **/","var is = require('./is');\nvar delegate = require('delegate');\n\n/**\n * Validates all params and calls the right\n * listener function based on its target type.\n *\n * @param {String|HTMLElement|HTMLCollection|NodeList} target\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listen(target, type, callback) {\n if (!target && !type && !callback) {\n throw new Error('Missing required arguments');\n }\n\n if (!is.string(type)) {\n throw new TypeError('Second argument must be a String');\n }\n\n if (!is.fn(callback)) {\n throw new TypeError('Third argument must be a Function');\n }\n\n if (is.node(target)) {\n return listenNode(target, type, callback);\n }\n else if (is.nodeList(target)) {\n return listenNodeList(target, type, callback);\n }\n else if (is.string(target)) {\n return listenSelector(target, type, callback);\n }\n else {\n throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');\n }\n}\n\n/**\n * Adds an event listener to a HTML element\n * and returns a remove listener function.\n *\n * @param {HTMLElement} node\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNode(node, type, callback) {\n node.addEventListener(type, callback);\n\n return {\n destroy: function() {\n node.removeEventListener(type, callback);\n }\n }\n}\n\n/**\n * Add an event listener to a list of HTML elements\n * and returns a remove listener function.\n *\n * @param {NodeList|HTMLCollection} nodeList\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNodeList(nodeList, type, callback) {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.addEventListener(type, callback);\n });\n\n return {\n destroy: function() {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.removeEventListener(type, callback);\n });\n }\n }\n}\n\n/**\n * Add an event listener to a selector\n * and returns a remove listener function.\n *\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenSelector(selector, type, callback) {\n return delegate(document.body, selector, type, callback);\n}\n\nmodule.exports = listen;\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/good-listener/src/listen.js\n ** module id = 19\n ** module chunks = 0\n **/","exports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = nBytes * 8 - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = nBytes * 8 - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = (value * c - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/ieee754/index.js\n ** module id = 20\n ** module chunks = 0\n **/","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/inherits/inherits_browser.js\n ** module id = 21\n ** module chunks = 0\n **/","'use strict';\n\nvar _crypto = require('crypto');\n\nvar _crypto2 = _interopRequireDefault(_crypto);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nmodule.exports = {\n generatePassword: _generatePassword,\n encryptLogin: _encryptLogin,\n renderPassword: _renderPassword,\n _deriveHash: _deriveHash,\n _prettyPrint: _prettyPrint,\n _getTemplate: _getTemplate,\n _getCharType: _getCharType,\n _getPasswordChar: _getPasswordChar,\n _string2charCodes: _string2charCodes\n};\n\nfunction _generatePassword(login, masterPassword, site, options) {\n return new Promise(function (resolve, reject) {\n if (!login || !masterPassword || !site) {\n reject('generatePassword invalid parameter');\n }\n\n _encryptLogin(login, masterPassword).then(function (hash) {\n resolve(_renderPassword(hash, site, options));\n });\n });\n}\n\nfunction _renderPassword(hash, site, options) {\n var derivedHash = _deriveHash(hash, site, options);\n var template = _getTemplate(options.password.settings);\n return _prettyPrint(derivedHash, template);\n}\n\nfunction _encryptLogin(login, masterPassword) {\n return new Promise(function (resolve, reject) {\n if (!login || !masterPassword) {\n reject('encryptLogin parameter could not be empty');\n }\n var iterations = 8192;\n var keylen = 32;\n _crypto2.default.pbkdf2(masterPassword, login, iterations, keylen, 'sha256', function (error, key) {\n if (error) {\n reject('error in pbkdf2');\n } else {\n resolve(key.toString('hex'));\n }\n });\n });\n}\n\nfunction _deriveHash(hash, site) {\n var _ref = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2];\n\n var _ref$password = _ref.password;\n var password = _ref$password === undefined ? { length: 12 } : _ref$password;\n var _ref$counter = _ref.counter;\n var counter = _ref$counter === undefined ? 1 : _ref$counter;\n\n var salt = site + counter.toString();\n var derivedHash = _crypto2.default.createHmac('sha256', hash).update(salt).digest('hex');\n return derivedHash.substring(0, password.length);\n}\n\nfunction _getTemplate() {\n var passwordTypes = arguments.length <= 0 || arguments[0] === undefined ? ['strong'] : arguments[0];\n\n var passwordTypesInfo = {\n lowercase: { value: 'vc', order: 1 },\n uppercase: { value: 'VC', order: 2 },\n numbers: { value: 'n', order: 3 },\n symbols: { value: 's', order: 4 },\n strong: { value: 'Cvcvns', order: 5 }\n };\n return passwordTypes.map(function (passwordType) {\n return passwordTypesInfo[passwordType];\n }).sort(function (passwordType1, passwordType2) {\n return passwordType1.order > passwordType2.order;\n }).map(function (passwordType) {\n return passwordType.value;\n }).join('');\n}\n\nfunction _prettyPrint(hash, template) {\n var password = '';\n\n _string2charCodes(hash).forEach(function (charCode, index) {\n var charType = _getCharType(template, index);\n password += _getPasswordChar(charType, charCode);\n });\n return password;\n}\n\nfunction _string2charCodes(text) {\n var charCodes = [];\n for (var i = 0; i < text.length; i++) {\n charCodes.push(text.charCodeAt(i));\n }\n return charCodes;\n}\n\nfunction _getCharType(template, index) {\n return template[index % template.length];\n}\n\nfunction _getPasswordChar(charType, index) {\n var passwordsChars = {\n V: 'AEIOUY',\n C: 'BCDFGHJKLMNPQRSTVWXZ',\n v: 'aeiouy',\n c: 'bcdfghjklmnpqrstvwxz',\n A: 'AEIOUYBCDFGHJKLMNPQRSTVWXZ',\n a: 'AEIOUYaeiouyBCDFGHJKLMNPQRSTVWXZbcdfghjklmnpqrstvwxz',\n n: '0123456789',\n s: '@&%?,=[]_:-+*$#!\\'^~;()/.',\n x: 'AEIOUYaeiouyBCDFGHJKLMNPQRSTVWXZbcdfghjklmnpqrstvwxz0123456789@&%?,=[]_:-+*$#!\\'^~;()/.'\n };\n var passwordChar = passwordsChars[charType];\n return passwordChar[index % passwordChar.length];\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/lesspass/lib/lesspass.js\n ** module id = 22\n ** module chunks = 0\n **/","\r\n/**\r\n * Element prototype.\r\n */\r\n\r\nvar proto = Element.prototype;\r\n\r\n/**\r\n * Vendor function.\r\n */\r\n\r\nvar vendor = proto.matchesSelector\r\n || proto.webkitMatchesSelector\r\n || proto.mozMatchesSelector\r\n || proto.msMatchesSelector\r\n || proto.oMatchesSelector;\r\n\r\n/**\r\n * Expose `match()`.\r\n */\r\n\r\nmodule.exports = match;\r\n\r\n/**\r\n * Match `el` to `selector`.\r\n *\r\n * @param {Element} el\r\n * @param {String} selector\r\n * @return {Boolean}\r\n * @api public\r\n */\r\n\r\nfunction match(el, selector) {\r\n if (vendor) return vendor.call(el, selector);\r\n var nodes = el.parentNode.querySelectorAll(selector);\r\n for (var i = 0; i < nodes.length; ++i) {\r\n if (nodes[i] == el) return true;\r\n }\r\n return false;\r\n}\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/matches-selector/index.js\n ** module id = 23\n ** module chunks = 0\n **/","module.exports = function(crypto) {\n function pbkdf2(password, salt, iterations, keylen, digest, callback) {\n if ('function' === typeof digest) {\n callback = digest\n digest = undefined\n }\n\n if ('function' !== typeof callback)\n throw new Error('No callback provided to pbkdf2')\n\n setTimeout(function() {\n var result\n\n try {\n result = pbkdf2Sync(password, salt, iterations, keylen, digest)\n } catch (e) {\n return callback(e)\n }\n\n callback(undefined, result)\n })\n }\n\n function pbkdf2Sync(password, salt, iterations, keylen, digest) {\n if ('number' !== typeof iterations)\n throw new TypeError('Iterations not a number')\n\n if (iterations < 0)\n throw new TypeError('Bad iterations')\n\n if ('number' !== typeof keylen)\n throw new TypeError('Key length not a number')\n\n if (keylen < 0)\n throw new TypeError('Bad key length')\n\n digest = digest || 'sha1'\n\n if (!Buffer.isBuffer(password)) password = new Buffer(password)\n if (!Buffer.isBuffer(salt)) salt = new Buffer(salt)\n\n var hLen, l = 1, r, T\n var DK = new Buffer(keylen)\n var block1 = new Buffer(salt.length + 4)\n salt.copy(block1, 0, 0, salt.length)\n\n for (var i = 1; i <= l; i++) {\n block1.writeUInt32BE(i, salt.length)\n\n var U = crypto.createHmac(digest, password).update(block1).digest()\n\n if (!hLen) {\n hLen = U.length\n T = new Buffer(hLen)\n l = Math.ceil(keylen / hLen)\n r = keylen - (l - 1) * hLen\n\n if (keylen > (Math.pow(2, 32) - 1) * hLen)\n throw new TypeError('keylen exceeds maximum length')\n }\n\n U.copy(T, 0, 0, hLen)\n\n for (var j = 1; j < iterations; j++) {\n U = crypto.createHmac(digest, password).update(U).digest()\n\n for (var k = 0; k < hLen; k++) {\n T[k] ^= U[k]\n }\n }\n\n var destPos = (i - 1) * hLen\n var len = (i == l ? r : hLen)\n T.copy(DK, destPos, 0, len)\n }\n\n return DK\n }\n\n return {\n pbkdf2: pbkdf2,\n pbkdf2Sync: pbkdf2Sync\n }\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/pbkdf2-compat/pbkdf2.js\n ** module id = 24\n ** module chunks = 0\n **/","// shim for using process in browser\n\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\n(function () {\n try {\n cachedSetTimeout = setTimeout;\n } catch (e) {\n cachedSetTimeout = function () {\n throw new Error('setTimeout is not defined');\n }\n }\n try {\n cachedClearTimeout = clearTimeout;\n } catch (e) {\n cachedClearTimeout = function () {\n throw new Error('clearTimeout is not defined');\n }\n }\n} ())\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = cachedSetTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n cachedClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n cachedSetTimeout(drainQueue, 0);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/process/browser.js\n ** module id = 25\n ** module chunks = 0\n **/","\nmodule.exports = ripemd160\n\n\n\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/** @preserve\n(c) 2012 by Cédric Mesnil. All rights reserved.\n\nRedistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n\n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n*/\n\n// Constants table\nvar zl = [\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,\n 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8,\n 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12,\n 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2,\n 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13];\nvar zr = [\n 5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12,\n 6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2,\n 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13,\n 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14,\n 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11];\nvar sl = [\n 11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8,\n 7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12,\n 11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5,\n 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12,\n 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6 ];\nvar sr = [\n 8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6,\n 9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11,\n 9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5,\n 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8,\n 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11 ];\n\nvar hl = [ 0x00000000, 0x5A827999, 0x6ED9EBA1, 0x8F1BBCDC, 0xA953FD4E];\nvar hr = [ 0x50A28BE6, 0x5C4DD124, 0x6D703EF3, 0x7A6D76E9, 0x00000000];\n\nvar bytesToWords = function (bytes) {\n var words = [];\n for (var i = 0, b = 0; i < bytes.length; i++, b += 8) {\n words[b >>> 5] |= bytes[i] << (24 - b % 32);\n }\n return words;\n};\n\nvar wordsToBytes = function (words) {\n var bytes = [];\n for (var b = 0; b < words.length * 32; b += 8) {\n bytes.push((words[b >>> 5] >>> (24 - b % 32)) & 0xFF);\n }\n return bytes;\n};\n\nvar processBlock = function (H, M, offset) {\n\n // Swap endian\n for (var i = 0; i < 16; i++) {\n var offset_i = offset + i;\n var M_offset_i = M[offset_i];\n\n // Swap\n M[offset_i] = (\n (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) |\n (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00)\n );\n }\n\n // Working variables\n var al, bl, cl, dl, el;\n var ar, br, cr, dr, er;\n\n ar = al = H[0];\n br = bl = H[1];\n cr = cl = H[2];\n dr = dl = H[3];\n er = el = H[4];\n // Computation\n var t;\n for (var i = 0; i < 80; i += 1) {\n t = (al + M[offset+zl[i]])|0;\n if (i<16){\n t += f1(bl,cl,dl) + hl[0];\n } else if (i<32) {\n t += f2(bl,cl,dl) + hl[1];\n } else if (i<48) {\n t += f3(bl,cl,dl) + hl[2];\n } else if (i<64) {\n t += f4(bl,cl,dl) + hl[3];\n } else {// if (i<80) {\n t += f5(bl,cl,dl) + hl[4];\n }\n t = t|0;\n t = rotl(t,sl[i]);\n t = (t+el)|0;\n al = el;\n el = dl;\n dl = rotl(cl, 10);\n cl = bl;\n bl = t;\n\n t = (ar + M[offset+zr[i]])|0;\n if (i<16){\n t += f5(br,cr,dr) + hr[0];\n } else if (i<32) {\n t += f4(br,cr,dr) + hr[1];\n } else if (i<48) {\n t += f3(br,cr,dr) + hr[2];\n } else if (i<64) {\n t += f2(br,cr,dr) + hr[3];\n } else {// if (i<80) {\n t += f1(br,cr,dr) + hr[4];\n }\n t = t|0;\n t = rotl(t,sr[i]) ;\n t = (t+er)|0;\n ar = er;\n er = dr;\n dr = rotl(cr, 10);\n cr = br;\n br = t;\n }\n // Intermediate hash value\n t = (H[1] + cl + dr)|0;\n H[1] = (H[2] + dl + er)|0;\n H[2] = (H[3] + el + ar)|0;\n H[3] = (H[4] + al + br)|0;\n H[4] = (H[0] + bl + cr)|0;\n H[0] = t;\n};\n\nfunction f1(x, y, z) {\n return ((x) ^ (y) ^ (z));\n}\n\nfunction f2(x, y, z) {\n return (((x)&(y)) | ((~x)&(z)));\n}\n\nfunction f3(x, y, z) {\n return (((x) | (~(y))) ^ (z));\n}\n\nfunction f4(x, y, z) {\n return (((x) & (z)) | ((y)&(~(z))));\n}\n\nfunction f5(x, y, z) {\n return ((x) ^ ((y) |(~(z))));\n}\n\nfunction rotl(x,n) {\n return (x<>>(32-n));\n}\n\nfunction ripemd160(message) {\n var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];\n\n if (typeof message == 'string')\n message = new Buffer(message, 'utf8');\n\n var m = bytesToWords(message);\n\n var nBitsLeft = message.length * 8;\n var nBitsTotal = message.length * 8;\n\n // Add padding\n m[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32);\n m[(((nBitsLeft + 64) >>> 9) << 4) + 14] = (\n (((nBitsTotal << 8) | (nBitsTotal >>> 24)) & 0x00ff00ff) |\n (((nBitsTotal << 24) | (nBitsTotal >>> 8)) & 0xff00ff00)\n );\n\n for (var i=0 ; i>> 24)) & 0x00ff00ff) |\n (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00);\n }\n\n var digestbytes = wordsToBytes(H);\n return new Buffer(digestbytes);\n}\n\n\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/ripemd160/lib/ripemd160.js\n ** module id = 26\n ** module chunks = 0\n **/","function select(element) {\n var selectedText;\n\n if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n element.focus();\n element.setSelectionRange(0, element.value.length);\n\n selectedText = element.value;\n }\n else {\n if (element.hasAttribute('contenteditable')) {\n element.focus();\n }\n\n var selection = window.getSelection();\n var range = document.createRange();\n\n range.selectNodeContents(element);\n selection.removeAllRanges();\n selection.addRange(range);\n\n selectedText = selection.toString();\n }\n\n return selectedText;\n}\n\nmodule.exports = select;\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/select/src/select.js\n ** module id = 27\n ** module chunks = 0\n **/","module.exports = function (Buffer) {\n\n //prototype class for hash functions\n function Hash (blockSize, finalSize) {\n this._block = new Buffer(blockSize) //new Uint32Array(blockSize/4)\n this._finalSize = finalSize\n this._blockSize = blockSize\n this._len = 0\n this._s = 0\n }\n\n Hash.prototype.init = function () {\n this._s = 0\n this._len = 0\n }\n\n Hash.prototype.update = function (data, enc) {\n if (\"string\" === typeof data) {\n enc = enc || \"utf8\"\n data = new Buffer(data, enc)\n }\n\n var l = this._len += data.length\n var s = this._s = (this._s || 0)\n var f = 0\n var buffer = this._block\n\n while (s < l) {\n var t = Math.min(data.length, f + this._blockSize - (s % this._blockSize))\n var ch = (t - f)\n\n for (var i = 0; i < ch; i++) {\n buffer[(s % this._blockSize) + i] = data[i + f]\n }\n\n s += ch\n f += ch\n\n if ((s % this._blockSize) === 0) {\n this._update(buffer)\n }\n }\n this._s = s\n\n return this\n }\n\n Hash.prototype.digest = function (enc) {\n // Suppose the length of the message M, in bits, is l\n var l = this._len * 8\n\n // Append the bit 1 to the end of the message\n this._block[this._len % this._blockSize] = 0x80\n\n // and then k zero bits, where k is the smallest non-negative solution to the equation (l + 1 + k) === finalSize mod blockSize\n this._block.fill(0, this._len % this._blockSize + 1)\n\n if (l % (this._blockSize * 8) >= this._finalSize * 8) {\n this._update(this._block)\n this._block.fill(0)\n }\n\n // to this append the block which is equal to the number l written in binary\n // TODO: handle case where l is > Math.pow(2, 29)\n this._block.writeInt32BE(l, this._blockSize - 4)\n\n var hash = this._update(this._block) || this._hash()\n\n return enc ? hash.toString(enc) : hash\n }\n\n Hash.prototype._update = function () {\n throw new Error('_update must be implemented by subclass')\n }\n\n return Hash\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/sha.js/hash.js\n ** module id = 28\n ** module chunks = 0\n **/","var exports = module.exports = function (alg) {\n var Alg = exports[alg]\n if(!Alg) throw new Error(alg + ' is not supported (we accept pull requests)')\n return new Alg()\n}\n\nvar Buffer = require('buffer').Buffer\nvar Hash = require('./hash')(Buffer)\n\nexports.sha1 = require('./sha1')(Buffer, Hash)\nexports.sha256 = require('./sha256')(Buffer, Hash)\nexports.sha512 = require('./sha512')(Buffer, Hash)\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/sha.js/index.js\n ** module id = 29\n ** module chunks = 0\n **/","/*\n * A JavaScript implementation of the Secure Hash Algorithm, SHA-1, as defined\n * in FIPS PUB 180-1\n * Version 2.1a Copyright Paul Johnston 2000 - 2002.\n * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n * Distributed under the BSD License\n * See http://pajhome.org.uk/crypt/md5 for details.\n */\n\nvar inherits = require('util').inherits\n\nmodule.exports = function (Buffer, Hash) {\n\n var A = 0|0\n var B = 4|0\n var C = 8|0\n var D = 12|0\n var E = 16|0\n\n var W = new (typeof Int32Array === 'undefined' ? Array : Int32Array)(80)\n\n var POOL = []\n\n function Sha1 () {\n if(POOL.length)\n return POOL.pop().init()\n\n if(!(this instanceof Sha1)) return new Sha1()\n this._w = W\n Hash.call(this, 16*4, 14*4)\n\n this._h = null\n this.init()\n }\n\n inherits(Sha1, Hash)\n\n Sha1.prototype.init = function () {\n this._a = 0x67452301\n this._b = 0xefcdab89\n this._c = 0x98badcfe\n this._d = 0x10325476\n this._e = 0xc3d2e1f0\n\n Hash.prototype.init.call(this)\n return this\n }\n\n Sha1.prototype._POOL = POOL\n Sha1.prototype._update = function (X) {\n\n var a, b, c, d, e, _a, _b, _c, _d, _e\n\n a = _a = this._a\n b = _b = this._b\n c = _c = this._c\n d = _d = this._d\n e = _e = this._e\n\n var w = this._w\n\n for(var j = 0; j < 80; j++) {\n var W = w[j] = j < 16 ? X.readInt32BE(j*4)\n : rol(w[j - 3] ^ w[j - 8] ^ w[j - 14] ^ w[j - 16], 1)\n\n var t = add(\n add(rol(a, 5), sha1_ft(j, b, c, d)),\n add(add(e, W), sha1_kt(j))\n )\n\n e = d\n d = c\n c = rol(b, 30)\n b = a\n a = t\n }\n\n this._a = add(a, _a)\n this._b = add(b, _b)\n this._c = add(c, _c)\n this._d = add(d, _d)\n this._e = add(e, _e)\n }\n\n Sha1.prototype._hash = function () {\n if(POOL.length < 100) POOL.push(this)\n var H = new Buffer(20)\n //console.log(this._a|0, this._b|0, this._c|0, this._d|0, this._e|0)\n H.writeInt32BE(this._a|0, A)\n H.writeInt32BE(this._b|0, B)\n H.writeInt32BE(this._c|0, C)\n H.writeInt32BE(this._d|0, D)\n H.writeInt32BE(this._e|0, E)\n return H\n }\n\n /*\n * Perform the appropriate triplet combination function for the current\n * iteration\n */\n function sha1_ft(t, b, c, d) {\n if(t < 20) return (b & c) | ((~b) & d);\n if(t < 40) return b ^ c ^ d;\n if(t < 60) return (b & c) | (b & d) | (c & d);\n return b ^ c ^ d;\n }\n\n /*\n * Determine the appropriate additive constant for the current iteration\n */\n function sha1_kt(t) {\n return (t < 20) ? 1518500249 : (t < 40) ? 1859775393 :\n (t < 60) ? -1894007588 : -899497514;\n }\n\n /*\n * Add integers, wrapping at 2^32. This uses 16-bit operations internally\n * to work around bugs in some JS interpreters.\n * //dominictarr: this is 10 years old, so maybe this can be dropped?)\n *\n */\n function add(x, y) {\n return (x + y ) | 0\n //lets see how this goes on testling.\n // var lsw = (x & 0xFFFF) + (y & 0xFFFF);\n // var msw = (x >> 16) + (y >> 16) + (lsw >> 16);\n // return (msw << 16) | (lsw & 0xFFFF);\n }\n\n /*\n * Bitwise rotate a 32-bit number to the left.\n */\n function rol(num, cnt) {\n return (num << cnt) | (num >>> (32 - cnt));\n }\n\n return Sha1\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/sha.js/sha1.js\n ** module id = 30\n ** module chunks = 0\n **/","\n/**\n * A JavaScript implementation of the Secure Hash Algorithm, SHA-256, as defined\n * in FIPS 180-2\n * Version 2.2-beta Copyright Angel Marin, Paul Johnston 2000 - 2009.\n * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n *\n */\n\nvar inherits = require('util').inherits\n\nmodule.exports = function (Buffer, Hash) {\n\n var K = [\n 0x428A2F98, 0x71374491, 0xB5C0FBCF, 0xE9B5DBA5,\n 0x3956C25B, 0x59F111F1, 0x923F82A4, 0xAB1C5ED5,\n 0xD807AA98, 0x12835B01, 0x243185BE, 0x550C7DC3,\n 0x72BE5D74, 0x80DEB1FE, 0x9BDC06A7, 0xC19BF174,\n 0xE49B69C1, 0xEFBE4786, 0x0FC19DC6, 0x240CA1CC,\n 0x2DE92C6F, 0x4A7484AA, 0x5CB0A9DC, 0x76F988DA,\n 0x983E5152, 0xA831C66D, 0xB00327C8, 0xBF597FC7,\n 0xC6E00BF3, 0xD5A79147, 0x06CA6351, 0x14292967,\n 0x27B70A85, 0x2E1B2138, 0x4D2C6DFC, 0x53380D13,\n 0x650A7354, 0x766A0ABB, 0x81C2C92E, 0x92722C85,\n 0xA2BFE8A1, 0xA81A664B, 0xC24B8B70, 0xC76C51A3,\n 0xD192E819, 0xD6990624, 0xF40E3585, 0x106AA070,\n 0x19A4C116, 0x1E376C08, 0x2748774C, 0x34B0BCB5,\n 0x391C0CB3, 0x4ED8AA4A, 0x5B9CCA4F, 0x682E6FF3,\n 0x748F82EE, 0x78A5636F, 0x84C87814, 0x8CC70208,\n 0x90BEFFFA, 0xA4506CEB, 0xBEF9A3F7, 0xC67178F2\n ]\n\n var W = new Array(64)\n\n function Sha256() {\n this.init()\n\n this._w = W //new Array(64)\n\n Hash.call(this, 16*4, 14*4)\n }\n\n inherits(Sha256, Hash)\n\n Sha256.prototype.init = function () {\n\n this._a = 0x6a09e667|0\n this._b = 0xbb67ae85|0\n this._c = 0x3c6ef372|0\n this._d = 0xa54ff53a|0\n this._e = 0x510e527f|0\n this._f = 0x9b05688c|0\n this._g = 0x1f83d9ab|0\n this._h = 0x5be0cd19|0\n\n this._len = this._s = 0\n\n return this\n }\n\n function S (X, n) {\n return (X >>> n) | (X << (32 - n));\n }\n\n function R (X, n) {\n return (X >>> n);\n }\n\n function Ch (x, y, z) {\n return ((x & y) ^ ((~x) & z));\n }\n\n function Maj (x, y, z) {\n return ((x & y) ^ (x & z) ^ (y & z));\n }\n\n function Sigma0256 (x) {\n return (S(x, 2) ^ S(x, 13) ^ S(x, 22));\n }\n\n function Sigma1256 (x) {\n return (S(x, 6) ^ S(x, 11) ^ S(x, 25));\n }\n\n function Gamma0256 (x) {\n return (S(x, 7) ^ S(x, 18) ^ R(x, 3));\n }\n\n function Gamma1256 (x) {\n return (S(x, 17) ^ S(x, 19) ^ R(x, 10));\n }\n\n Sha256.prototype._update = function(M) {\n\n var W = this._w\n var a, b, c, d, e, f, g, h\n var T1, T2\n\n a = this._a | 0\n b = this._b | 0\n c = this._c | 0\n d = this._d | 0\n e = this._e | 0\n f = this._f | 0\n g = this._g | 0\n h = this._h | 0\n\n for (var j = 0; j < 64; j++) {\n var w = W[j] = j < 16\n ? M.readInt32BE(j * 4)\n : Gamma1256(W[j - 2]) + W[j - 7] + Gamma0256(W[j - 15]) + W[j - 16]\n\n T1 = h + Sigma1256(e) + Ch(e, f, g) + K[j] + w\n\n T2 = Sigma0256(a) + Maj(a, b, c);\n h = g; g = f; f = e; e = d + T1; d = c; c = b; b = a; a = T1 + T2;\n }\n\n this._a = (a + this._a) | 0\n this._b = (b + this._b) | 0\n this._c = (c + this._c) | 0\n this._d = (d + this._d) | 0\n this._e = (e + this._e) | 0\n this._f = (f + this._f) | 0\n this._g = (g + this._g) | 0\n this._h = (h + this._h) | 0\n\n };\n\n Sha256.prototype._hash = function () {\n var H = new Buffer(32)\n\n H.writeInt32BE(this._a, 0)\n H.writeInt32BE(this._b, 4)\n H.writeInt32BE(this._c, 8)\n H.writeInt32BE(this._d, 12)\n H.writeInt32BE(this._e, 16)\n H.writeInt32BE(this._f, 20)\n H.writeInt32BE(this._g, 24)\n H.writeInt32BE(this._h, 28)\n\n return H\n }\n\n return Sha256\n\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/sha.js/sha256.js\n ** module id = 31\n ** module chunks = 0\n **/","var inherits = require('util').inherits\n\nmodule.exports = function (Buffer, Hash) {\n var K = [\n 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n ]\n\n var W = new Array(160)\n\n function Sha512() {\n this.init()\n this._w = W\n\n Hash.call(this, 128, 112)\n }\n\n inherits(Sha512, Hash)\n\n Sha512.prototype.init = function () {\n\n this._a = 0x6a09e667|0\n this._b = 0xbb67ae85|0\n this._c = 0x3c6ef372|0\n this._d = 0xa54ff53a|0\n this._e = 0x510e527f|0\n this._f = 0x9b05688c|0\n this._g = 0x1f83d9ab|0\n this._h = 0x5be0cd19|0\n\n this._al = 0xf3bcc908|0\n this._bl = 0x84caa73b|0\n this._cl = 0xfe94f82b|0\n this._dl = 0x5f1d36f1|0\n this._el = 0xade682d1|0\n this._fl = 0x2b3e6c1f|0\n this._gl = 0xfb41bd6b|0\n this._hl = 0x137e2179|0\n\n this._len = this._s = 0\n\n return this\n }\n\n function S (X, Xl, n) {\n return (X >>> n) | (Xl << (32 - n))\n }\n\n function Ch (x, y, z) {\n return ((x & y) ^ ((~x) & z));\n }\n\n function Maj (x, y, z) {\n return ((x & y) ^ (x & z) ^ (y & z));\n }\n\n Sha512.prototype._update = function(M) {\n\n var W = this._w\n var a, b, c, d, e, f, g, h\n var al, bl, cl, dl, el, fl, gl, hl\n\n a = this._a | 0\n b = this._b | 0\n c = this._c | 0\n d = this._d | 0\n e = this._e | 0\n f = this._f | 0\n g = this._g | 0\n h = this._h | 0\n\n al = this._al | 0\n bl = this._bl | 0\n cl = this._cl | 0\n dl = this._dl | 0\n el = this._el | 0\n fl = this._fl | 0\n gl = this._gl | 0\n hl = this._hl | 0\n\n for (var i = 0; i < 80; i++) {\n var j = i * 2\n\n var Wi, Wil\n\n if (i < 16) {\n Wi = W[j] = M.readInt32BE(j * 4)\n Wil = W[j + 1] = M.readInt32BE(j * 4 + 4)\n\n } else {\n var x = W[j - 15*2]\n var xl = W[j - 15*2 + 1]\n var gamma0 = S(x, xl, 1) ^ S(x, xl, 8) ^ (x >>> 7)\n var gamma0l = S(xl, x, 1) ^ S(xl, x, 8) ^ S(xl, x, 7)\n\n x = W[j - 2*2]\n xl = W[j - 2*2 + 1]\n var gamma1 = S(x, xl, 19) ^ S(xl, x, 29) ^ (x >>> 6)\n var gamma1l = S(xl, x, 19) ^ S(x, xl, 29) ^ S(xl, x, 6)\n\n // W[i] = gamma0 + W[i - 7] + gamma1 + W[i - 16]\n var Wi7 = W[j - 7*2]\n var Wi7l = W[j - 7*2 + 1]\n\n var Wi16 = W[j - 16*2]\n var Wi16l = W[j - 16*2 + 1]\n\n Wil = gamma0l + Wi7l\n Wi = gamma0 + Wi7 + ((Wil >>> 0) < (gamma0l >>> 0) ? 1 : 0)\n Wil = Wil + gamma1l\n Wi = Wi + gamma1 + ((Wil >>> 0) < (gamma1l >>> 0) ? 1 : 0)\n Wil = Wil + Wi16l\n Wi = Wi + Wi16 + ((Wil >>> 0) < (Wi16l >>> 0) ? 1 : 0)\n\n W[j] = Wi\n W[j + 1] = Wil\n }\n\n var maj = Maj(a, b, c)\n var majl = Maj(al, bl, cl)\n\n var sigma0h = S(a, al, 28) ^ S(al, a, 2) ^ S(al, a, 7)\n var sigma0l = S(al, a, 28) ^ S(a, al, 2) ^ S(a, al, 7)\n var sigma1h = S(e, el, 14) ^ S(e, el, 18) ^ S(el, e, 9)\n var sigma1l = S(el, e, 14) ^ S(el, e, 18) ^ S(e, el, 9)\n\n // t1 = h + sigma1 + ch + K[i] + W[i]\n var Ki = K[j]\n var Kil = K[j + 1]\n\n var ch = Ch(e, f, g)\n var chl = Ch(el, fl, gl)\n\n var t1l = hl + sigma1l\n var t1 = h + sigma1h + ((t1l >>> 0) < (hl >>> 0) ? 1 : 0)\n t1l = t1l + chl\n t1 = t1 + ch + ((t1l >>> 0) < (chl >>> 0) ? 1 : 0)\n t1l = t1l + Kil\n t1 = t1 + Ki + ((t1l >>> 0) < (Kil >>> 0) ? 1 : 0)\n t1l = t1l + Wil\n t1 = t1 + Wi + ((t1l >>> 0) < (Wil >>> 0) ? 1 : 0)\n\n // t2 = sigma0 + maj\n var t2l = sigma0l + majl\n var t2 = sigma0h + maj + ((t2l >>> 0) < (sigma0l >>> 0) ? 1 : 0)\n\n h = g\n hl = gl\n g = f\n gl = fl\n f = e\n fl = el\n el = (dl + t1l) | 0\n e = (d + t1 + ((el >>> 0) < (dl >>> 0) ? 1 : 0)) | 0\n d = c\n dl = cl\n c = b\n cl = bl\n b = a\n bl = al\n al = (t1l + t2l) | 0\n a = (t1 + t2 + ((al >>> 0) < (t1l >>> 0) ? 1 : 0)) | 0\n }\n\n this._al = (this._al + al) | 0\n this._bl = (this._bl + bl) | 0\n this._cl = (this._cl + cl) | 0\n this._dl = (this._dl + dl) | 0\n this._el = (this._el + el) | 0\n this._fl = (this._fl + fl) | 0\n this._gl = (this._gl + gl) | 0\n this._hl = (this._hl + hl) | 0\n\n this._a = (this._a + a + ((this._al >>> 0) < (al >>> 0) ? 1 : 0)) | 0\n this._b = (this._b + b + ((this._bl >>> 0) < (bl >>> 0) ? 1 : 0)) | 0\n this._c = (this._c + c + ((this._cl >>> 0) < (cl >>> 0) ? 1 : 0)) | 0\n this._d = (this._d + d + ((this._dl >>> 0) < (dl >>> 0) ? 1 : 0)) | 0\n this._e = (this._e + e + ((this._el >>> 0) < (el >>> 0) ? 1 : 0)) | 0\n this._f = (this._f + f + ((this._fl >>> 0) < (fl >>> 0) ? 1 : 0)) | 0\n this._g = (this._g + g + ((this._gl >>> 0) < (gl >>> 0) ? 1 : 0)) | 0\n this._h = (this._h + h + ((this._hl >>> 0) < (hl >>> 0) ? 1 : 0)) | 0\n }\n\n Sha512.prototype._hash = function () {\n var H = new Buffer(64)\n\n function writeInt64BE(h, l, offset) {\n H.writeInt32BE(h, offset)\n H.writeInt32BE(l, offset + 4)\n }\n\n writeInt64BE(this._a, this._al, 0)\n writeInt64BE(this._b, this._bl, 8)\n writeInt64BE(this._c, this._cl, 16)\n writeInt64BE(this._d, this._dl, 24)\n writeInt64BE(this._e, this._el, 32)\n writeInt64BE(this._f, this._fl, 40)\n writeInt64BE(this._g, this._gl, 48)\n writeInt64BE(this._h, this._hl, 56)\n\n return H\n }\n\n return Sha512\n\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/sha.js/sha512.js\n ** module id = 32\n ** module chunks = 0\n **/","function E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/tiny-emitter/index.js\n ** module id = 33\n ** module chunks = 0\n **/","module.exports = function isBuffer(arg) {\n return arg && typeof arg === 'object'\n && typeof arg.copy === 'function'\n && typeof arg.fill === 'function'\n && typeof arg.readUInt8 === 'function';\n}\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/util/support/isBufferBrowser.js\n ** module id = 34\n ** module chunks = 0\n **/"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///lesspass-pure.js","webpack:///webpack/bootstrap dc118acc136d2b85341d","webpack:///./src/app.js","webpack:///./~/buffer/index.js","webpack:///./~/util/util.js","webpack:///./~/crypto-browserify/create-hash.js","webpack:///./~/base64-js/lib/b64.js","webpack:///./~/buffer/~/isarray/index.js","webpack:///./~/clipboard/lib/clipboard-action.js","webpack:///./~/clipboard/lib/clipboard.js","webpack:///./~/closest/index.js","webpack:///./~/crypto-browserify/create-hmac.js","webpack:///./~/crypto-browserify/helpers.js","webpack:///./~/crypto-browserify/index.js","webpack:///./~/crypto-browserify/md5.js","webpack:///./~/crypto-browserify/pbkdf2.js","webpack:///./~/crypto-browserify/rng.js","webpack:///./~/delegate/src/delegate.js","webpack:///./~/good-listener/src/is.js","webpack:///./~/good-listener/src/listen.js","webpack:///./~/ieee754/index.js","webpack:///./~/inherits/inherits_browser.js","webpack:///./~/lesspass/lib/lesspass.js","webpack:///./~/matches-selector/index.js","webpack:///./~/pbkdf2-compat/pbkdf2.js","webpack:///./~/process/browser.js","webpack:///./~/ripemd160/lib/ripemd160.js","webpack:///./~/select/src/select.js","webpack:///./~/sha.js/hash.js","webpack:///./~/sha.js/index.js","webpack:///./~/sha.js/sha1.js","webpack:///./~/sha.js/sha256.js","webpack:///./~/sha.js/sha512.js","webpack:///./~/tiny-emitter/index.js","webpack:///./~/util/support/isBufferBrowser.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","_interopRequireDefault","obj","__esModule","default","showTooltip","elem","msg","classNames","className","setAttribute","setTimeout","getColor","color","colors","index","parseInt","length","displayPasswordIndication","login","document","getElementById","value","masterPassword","fingerprint","displayMasterPasswordButton","_lesspass2","encryptLogin","then","secretHash","encryptedLogin","substring","colorHex","innerText","style","display","backgroundColor","generatePassword","getData","defaultOptions","counter","password","settings","options","i","checked","push","getFormData","initData","site","data","generatedPasswordField","renderPassword","toggleMasterPassword","type","cleanData","toggleVisibility","elements","getElementsByClassName","e","toggleBlocks","_lesspass","_clipboard","_clipboard2","window","onload","onblur","addEventListener","oninput","clipboard","on","text","trigger","domains","list","forEach","item","option","createElement","appendChild","Buffer","global","typedArraySupport","Bar","arr","Uint8Array","foo","constructor","subarray","byteLength","kMaxLength","TYPED_ARRAY_SUPPORT","arg","this","parent","undefined","fromNumber","fromString","arguments","fromObject","that","allocate","string","encoding","write","object","isBuffer","fromBuffer","isArray","fromArray","TypeError","ArrayBuffer","buffer","fromTypedArray","fromArrayBuffer","fromArrayLike","fromJsonObject","copy","array","_augment","__proto__","prototype","_isBuffer","fromPool","poolSize","rootParent","RangeError","toString","SlowBuffer","subject","buf","len","loweredCase","utf8ToBytes","base64ToBytes","toLowerCase","slowToString","start","end","Infinity","hexSlice","utf8Slice","asciiSlice","binarySlice","base64Slice","utf16leSlice","hexWrite","offset","Number","remaining","strLen","Error","parsed","substr","isNaN","utf8Write","blitBuffer","asciiWrite","asciiToBytes","binaryWrite","base64Write","ucs2Write","utf16leToBytes","base64","fromByteArray","slice","Math","min","res","firstByte","codePoint","bytesPerSequence","secondByte","thirdByte","fourthByte","tempCodePoint","decodeCodePointsArray","codePoints","MAX_ARGUMENTS_LENGTH","String","fromCharCode","apply","ret","out","toHex","bytes","checkOffset","ext","checkInt","max","objectWriteUInt16","littleEndian","j","objectWriteUInt32","checkIEEE754","writeFloat","noAssert","ieee754","writeDouble","base64clean","str","stringtrim","replace","INVALID_BASE64_RE","trim","n","units","leadSurrogate","charCodeAt","byteArray","hi","lo","toByteArray","src","dst","INSPECT_MAX_BYTES","b","compare","a","x","y","isEncoding","concat","pos","equals","inspect","match","join","indexOf","val","byteOffset","arrayIndexOf","foundIndex","get","console","log","readUInt8","set","v","writeUInt8","isFinite","swap","toJSON","Array","_arr","newBuf","sliceLen","readUIntLE","mul","readUIntBE","readUInt16LE","readUInt16BE","readUInt32LE","readUInt32BE","readIntLE","pow","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readFloatLE","read","readFloatBE","readDoubleLE","readDoubleBE","writeUIntLE","writeUIntBE","floor","writeUInt16LE","writeUInt16BE","writeUInt32LE","writeUInt32BE","writeIntLE","limit","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","target","targetStart","_set","fill","toArrayBuffer","BP","toLocaleString","process","opts","ctx","seen","stylize","stylizeNoColor","depth","isBoolean","showHidden","_extend","isUndefined","customInspect","stylizeWithColor","formatValue","styleType","styles","arrayToHash","hash","idx","recurseTimes","isFunction","isString","primitive","formatPrimitive","keys","Object","visibleKeys","getOwnPropertyNames","isError","formatError","name","isRegExp","RegExp","isDate","Date","base","braces","toUTCString","output","formatArray","map","key","formatProperty","pop","reduceToSingleString","simple","JSON","stringify","isNumber","isNull","l","hasOwnProperty","desc","getOwnPropertyDescriptor","split","line","numLinesEst","reduce","prev","cur","ar","isNullOrUndefined","isSymbol","re","isObject","objectToString","d","isPrimitive","o","pad","timestamp","time","getHours","getMinutes","getSeconds","getDate","months","getMonth","prop","formatRegExp","format","f","objects","args","_","deprecate","fn","deprecated","warned","throwDeprecation","traceDeprecation","trace","error","noDeprecation","debugEnviron","debugs","debuglog","NODE_ENV","NODE_DEBUG","toUpperCase","test","pid","bold","italic","underline","inverse","white","grey","black","blue","cyan","green","magenta","red","yellow","special","number","boolean","null","date","regexp","inherits","origin","add","toConstructor","buffers","update","enc","digest","r","createHash","md5","rmd160","alg","lookup","decode","elt","code","PLUS","PLUS_URL_SAFE","SLASH","SLASH_URL_SAFE","NUMBER","UPPER","LOWER","b64ToByteArray","b64","L","tmp","placeHolders","charAt","Arr","uint8ToBase64","uint8","encode","num","tripletToBase64","temp","extraBytes","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","factory","_select","_classCallCheck","instance","Constructor","_select2","_typeof","Symbol","iterator","_createClass","defineProperties","props","descriptor","enumerable","configurable","writable","defineProperty","protoProps","staticProps","ClipboardAction","resolveOptions","initSelection","action","emitter","selectedText","selectFake","selectTarget","_this","isRTL","documentElement","getAttribute","removeFake","fakeHandlerCallback","fakeHandler","body","fakeElem","fontSize","border","padding","margin","position","top","pageYOffset","scrollTop","copyText","removeEventListener","removeChild","succeeded","execCommand","err","handleResult","emit","clearSelection","bind","blur","getSelection","removeAllRanges","destroy","_action","nodeType","hasAttribute","_target","_clipboardAction","_tinyEmitter","_goodListener","_possibleConstructorReturn","self","ReferenceError","_inherits","subClass","superClass","create","setPrototypeOf","getAttributeValue","suffix","element","attribute","_clipboardAction2","_tinyEmitter2","_goodListener2","Clipboard","_Emitter","listenClick","defaultAction","defaultTarget","defaultText","_this2","listener","onClick","delegateTarget","currentTarget","clipboardAction","selector","querySelector","matches","checkYoSelf","parentNode","Hmac","_opad","opad","_alg","blocksize","_key","zeroBuffer","ipad","_ipad","_hash","h","toArray","bigEndian","intSize","toBuffer","size","hashSize","chrsz","each","rng","createHmac","randomBytes","callback","getHashes","pbkdf2","pbkdf2Sync","core_md5","olda","oldb","oldc","oldd","md5_ff","md5_gg","md5_hh","md5_ii","safe_add","md5_cmn","q","s","t","bit_rol","lsw","msw","cnt","helpers","pbkdf2Export","crypto","exported","g","_crypto","msCrypto","getRandomValues","delegate","useCapture","listenerFn","closest","node","HTMLElement","nodeList","listen","is","listenNode","listenNodeList","listenSelector","isLE","mLen","nBytes","eLen","eMax","eBias","nBits","NaN","rt","abs","LN2","ctor","superCtor","super_","TempCtor","_generatePassword","Promise","resolve","reject","_encryptLogin","_renderPassword","derivedHash","_deriveHash","template","_getTemplate","_prettyPrint","iterations","keylen","_crypto2","_ref","_ref$password","_ref$counter","salt","passwordTypes","passwordTypesInfo","lowercase","order","uppercase","numbers","symbols","strong","passwordType","sort","passwordType1","passwordType2","_string2charCodes","charCode","charType","_getCharType","_getPasswordChar","charCodes","passwordsChars","V","C","A","passwordChar","el","vendor","nodes","querySelectorAll","proto","Element","matchesSelector","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","result","hLen","T","DK","block1","U","ceil","k","destPos","cleanUpNextTick","draining","currentQueue","queue","queueIndex","drainQueue","timeout","cachedSetTimeout","run","cachedClearTimeout","Item","fun","noop","clearTimeout","nextTick","title","browser","env","argv","version","versions","addListener","once","off","removeListener","removeAllListeners","binding","cwd","chdir","dir","umask","f1","z","f2","f3","f4","f5","rotl","ripemd160","message","H","bytesToWords","nBitsLeft","nBitsTotal","processBlock","H_i","digestbytes","wordsToBytes","zl","zr","sl","sr","hl","hr","words","M","offset_i","M_offset_i","al","bl","cl","dl","br","cr","dr","er","select","nodeName","focus","setSelectionRange","selection","range","createRange","selectNodeContents","addRange","Hash","blockSize","finalSize","_block","_finalSize","_blockSize","_len","_s","init","ch","_update","Alg","sha1","sha256","sha512","Sha1","POOL","_w","W","_h","sha1_ft","sha1_kt","rol","B","D","E","Int32Array","_a","_b","_c","_d","_e","_POOL","X","w","Sha256","S","R","Ch","Maj","Sigma0256","Sigma1256","Gamma0256","Gamma1256","K","_f","_g","T1","T2","Sha512","Xl","_al","_bl","_cl","_dl","_el","_fl","_gl","_hl","fl","gl","Wi","Wil","xl","gamma0","gamma0l","gamma1","gamma1l","Wi7","Wi7l","Wi16","Wi16l","maj","majl","sigma0h","sigma0l","sigma1h","sigma1l","Ki","Kil","chl","t1l","t1","t2l","t2","writeInt64BE","evtArr","evts","liveEvents"],"mappings":"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","file":"lesspass-pure.js?dc118acc136d2b85341d","sourcesContent":["/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"/dist/\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\t__webpack_require__(16);\n\t\n\tvar _lesspass = __webpack_require__(22);\n\t\n\tvar _lesspass2 = _interopRequireDefault(_lesspass);\n\t\n\tvar _clipboard = __webpack_require__(7);\n\t\n\tvar _clipboard2 = _interopRequireDefault(_clipboard);\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\t\n\tvar encryptedLogin;\n\t\n\tfunction showTooltip(elem, msg) {\n\t var classNames = elem.className;\n\t elem.setAttribute('class', classNames + ' hint--top');\n\t elem.setAttribute('aria-label', msg);\n\t setTimeout(function () {\n\t elem.setAttribute('class', classNames);\n\t }, 2000);\n\t}\n\t\n\twindow.onload = function () {\n\t document.getElementById('generatedPassword').value = '';\n\t};\n\t\n\tfunction getColor(color) {\n\t var colors = ['EBBB56', '59E0EB', 'E8F464', 'D2B4ED', 'BBE96D', 'EF9FC8', '8EE083', 'DCBFD6', 'DDD15A', 'A1C8E8', 'C4D977', 'F1A49E', '79E8A0', 'E9A970', '60E3B4', 'D4C47D', '73DDCA', 'C4EAA7', 'A7D6D4', '9CC795'];\n\t var index = parseInt(color, 16) % colors.length;\n\t return '#' + colors[index];\n\t}\n\t\n\tdocument.getElementById('login').onblur = displayPasswordIndication;\n\tdocument.getElementById('masterPassword').onblur = displayPasswordIndication;\n\tfunction displayPasswordIndication() {\n\t var login = document.getElementById('login').value;\n\t var masterPassword = document.getElementById('masterPassword').value;\n\t var fingerprint = document.getElementById('fingerprint');\n\t var displayMasterPasswordButton = document.getElementById('displayMasterPasswordButton');\n\t if (!login || !masterPassword) {\n\t fingerprint.innerText = '';\n\t fingerprint.style.display = 'none';\n\t displayMasterPasswordButton.style.backgroundColor = '#FFFFFF';\n\t return;\n\t }\n\t _lesspass2.default.encryptLogin(login, masterPassword).then(function (secretHash) {\n\t encryptedLogin = secretHash;\n\t var color = secretHash.substring(0, 6);\n\t var colorHex = getColor(color);\n\t fingerprint.innerText = color;\n\t fingerprint.style.display = 'inline';\n\t displayMasterPasswordButton.style.backgroundColor = colorHex;\n\t generatePassword();\n\t });\n\t}\n\t\n\tdocument.getElementById('copyPasswordButton').addEventListener('click', generatePassword);\n\tdocument.getElementById('generatedPasswordForm').addEventListener('change', generatePassword);\n\tdocument.getElementById('passwordLength').addEventListener('input', generatePassword);\n\tdocument.getElementById('passwordCounter').addEventListener('input', generatePassword);\n\tdocument.getElementById('generatedPasswordForm').oninput = generatePassword;\n\tfunction getData() {\n\t var defaultOptions = {\n\t login: document.getElementById('login').value,\n\t counter: document.getElementById('passwordCounter').value,\n\t password: {\n\t length: document.getElementById('passwordLength').value,\n\t settings: []\n\t }\n\t };\n\t var options = ['lowercase', 'uppercase', 'numbers', 'symbols'];\n\t\n\t for (var i = 0; i < options.length; i++) {\n\t if (document.getElementById(options[i]).checked) {\n\t defaultOptions.password.settings.push(options[i]);\n\t }\n\t }\n\t return defaultOptions;\n\t}\n\t\n\tfunction getFormData() {\n\t var initData = getData();\n\t initData.masterPassword = document.getElementById('masterPassword').value;\n\t initData.site = document.getElementById('site').value;\n\t return initData;\n\t}\n\t\n\tfunction generatePassword() {\n\t var data = getFormData();\n\t var generatedPasswordField = document.getElementById('generatedPassword');\n\t if (!encryptedLogin || !data.site || !data.password.settings.length) {\n\t generatedPasswordField.value = '';\n\t return;\n\t }\n\t generatedPasswordField.value = _lesspass2.default.renderPassword(encryptedLogin, data.site, data);\n\t}\n\t\n\tdocument.getElementById('displayMasterPasswordButton').addEventListener('click', toggleMasterPassword);\n\tfunction toggleMasterPassword() {\n\t if (document.getElementById('masterPassword').type === 'password') {\n\t document.getElementById('masterPassword').type = 'text';\n\t } else {\n\t document.getElementById('masterPassword').type = 'password';\n\t }\n\t}\n\t\n\tfunction cleanData() {\n\t setTimeout(function () {\n\t document.getElementById('generatedPassword').value = '';\n\t document.getElementById('masterPassword').value = '';\n\t document.getElementById('displayMasterPasswordButton').style.backgroundColor = '#FFFFFF';\n\t document.getElementById('fingerprint').innerText = '';\n\t }, 10000);\n\t}\n\t\n\tvar clipboard = new _clipboard2.default('.btn-copy');\n\t\n\tclipboard.on('success', function (e) {\n\t if (e.text) {\n\t showTooltip(e.trigger, 'copied !');\n\t cleanData();\n\t }\n\t});\n\t\n\tclipboard.on('error', function () {\n\t cleanData();\n\t});\n\t\n\tdocument.getElementById('displayOptionsButton').addEventListener('click', toggleBlocks);\n\t\n\tfunction toggleVisibility(className) {\n\t var elements = document.getElementsByClassName(className);\n\t for (var i = 0; i < elements.length; i++) {\n\t var e = elements[i];\n\t if (e.style.display === 'block') {\n\t e.style.display = 'none';\n\t } else {\n\t e.style.display = 'block';\n\t }\n\t }\n\t}\n\t\n\tfunction toggleBlocks() {\n\t toggleVisibility('option-block');\n\t}\n\t\n\tvar domains = [\"lesspass.com\", \"google.com\", \"youtube.com\", \"facebook.com\", \"baidu.com\", \"yahoo.com\", \"amazon.com\", \"wikipedia.org\", \"twitter.com\", \"qq.com\", \"live.com\", \"taobao.com\", \"bing.com\", \"msn.com\", \"linkedin.com\", \"instagram.com\", \"weibo.com\", \"vk.com\", \"hao123.com\", \"ebay.com\", \"reddit.com\", \"pinterest.com\", \"google.fr\", \"netflix.com\", \"tmall.com\", \"microsoft.com\", \"onclickads.net\", \"paypal.com\", \"sohu.com\", \"wordpress.com\", \"tumblr.com\", \"imgur.com\", \"blogspot.com\", \"naver.com\", \"xvideos.com\", \"stackoverflow.com\", \"apple.com\", \"aliexpress.com\", \"fc2.com\", \"github.com\", \"imdb.com\", \"pornhub.com\", \"whatsapp.com\", \"jd.com\", \"diply.com\", \"craigslist.org\", \"office.com\", \"blogger.com\", \"alibaba.com\", \"soso.com\", \"pixnet.net\", \"go.com\", \"dropbox.com\", \"xinhuanet.com\", \"xhamster.com\", \"outbrain.com\", \"googleusercontent.com\", \"cnn.com\", \"coccoc.com\", \"booking.com\", \"ask.com\", \"popads.net\", \"microsoftonline.com\", \"wikia.com\", \"chase.com\", \"quora.com\", \"adobe.com\", \"163.com\", \"360.com\", \"haosou.com\", \"youku.com\", \"bbc.com\", \"alipay.com\", \"flipkart.com\", \"bongacams.com\", \"nytimes.com\", \"daum.net\", \"sogou.com\", \"txxx.com\", \"espn.go.com\", \"ettoday.net\", \"bankofamerica.com\", \"china.com\", \"indiatimes.com\", \"myway.com\", \"bilibili.com\", \"walmart.com\", \"godaddy.com\", \"salesforce.com\", \"buzzfeed.com\", \"zillow.com\", \"xnxx.com\", \"wellsfargo.com\", \"dailymotion.com\", \"detail.tmall.com\", \"steampowered.com\", \"steamcommunity.com\", \"theguardian.com\", \"indeed.com\", \"nametests.com\", \"aol.com\", \"etsy.com\", \"globo.com\", \"amazonaws.com\", \"yelp.com\", \"huffingtonpost.com\", \"tudou.com\", \"zhihu.com\", \"so.com\", \"tripadvisor.com\", \"soundcloud.com\", \"cnzz.com\", \"onlinesbi.com\", \"varzesh3.com\", \"vice.com\", \"directrev.com\", \"cnet.com\", \"uptodown.com\", \"weather.com\", \"bet365.com\", \"mediafire.com\", \"washingtonpost.com\", \"force.com\", \"gfycat.com\", \"stackexchange.com\", \"taboola.com\", \"tuberel.com\", \"vimeo.com\", \"feedly.com\", \"detik.com\", \"theladbible.com\", \"redtube.com\", \"pixiv.net\", \"homedepot.com\", \"slideshare.net\", \"taringa.net\", \"torrentz.eu\", \"foxnews.com\", \"target.com\", \"flickr.com\", \"hclips.com\", \"amazon.fr\", \"kakaku.com\", \"9gag.com\", \"ifeng.com\", \"udn.com\", \"ikea.com\", \"americanexpress.com\", \"iqiyi.com\", \"bp.blogspot.com\", \"terraclicks.com\", \"orange.fr\", \"fbcdn.net\", \"comcast.net\", \"youm7.com\", \"gmx.net\", \"tribunnews.com\", \"youporn.com\", \"deviantart.com\", \"hdfcbank.com\", \"tistory.com\", \"roblox.com\", \"capitalone.com\", \"doubleclick.net\", \"leboncoin.fr\", \"douyu.com\", \"ozock.com\", \"spotify.com\", \"babytree.com\", \"w3schools.com\", \"forbes.com\", \"wikihow.com\", \"wix.com\", \"upornia.com\", \"snapdeal.com\", \"mozilla.org\", \"livejournal.com\", \"bestbuy.com\", \"handycafe.com\", \"xfinity.com\", \"groupon.com\", \"skype.com\", \"adnetworkperformance.com\", \"onedio.com\", \"thepiratebay.org\", \"rdsa2013.com\", \"paytm.com\", \"icicibank.com\", \"twimg.com\", \"usps.com\", \"trello.com\", \"wikimedia.org\", \"tokopedia.com\", \"popcash.net\", \"webtretho.com\", \"xywy.com\", \"huanqiu.com\", \"yesky.com\", \"citi.com\", \"blastingnews.com\", \"shutterstock.com\", \"rediff.com\", \"ups.com\", \"eksisozluk.com\", \"1688.com\", \"bitauto.com\", \"slack.com\", \"files.wordpress.com\", \"pandora.com\", \"imzog.com\", \"speedtest.net\", \"2ch.net\", \"loading-delivery2.com\", \"about.com\", \"adexc.net\", \"chaturbate.com\", \"mbc.net\", \"goodreads.com\", \"wordpress.org\", \"softonic.com\", \"battle.net\", \"livejasmin.com\", \"accuweather.com\", \"icloud.com\", \"fedex.com\", \"slickdeals.net\", \"wittyfeed.com\", \"ndtv.com\", \"att.com\", \"giphy.com\", \"archive.org\", \"csdn.net\", \"sourceforge.net\", \"39.net\", \"youtube-mp3.org\", \"secureserver.net\", \"akamaihd.net\", \"taleo.net\", \"savefrom.net\", \"themeforest.net\", \"telegram.org\", \"rutracker.org\", \"cloudfront.net\", \"atlassian.net\", \"behance.net\", \"free.fr\", \"trackingclick.net\", \"npr.org\", \"seesaa.net\", \"coursera.org\", \"change.org\", \"researchgate.net\", \"streamcloud.eu\", \"clien.net\", \"sabq.org\", \"e-hentai.org\", \"uploaded.net\", \"inquirer.net\", \"alwafd.org\", \"4chan.org\", \"elfagr.org\", \"torcache.net\", \"buzzfil.net\", \"lequipe.fr\", \"kdnet.net\", \"gigazine.net\", \"bitbucket.org\", \"ero-video.net\", \"lemonde.fr\", \"europa.eu\", \"php.net\", \"reverso.net\", \"wiktionary.org\", \"sfr.fr\", \"eroterest.net\", \"ebay.fr\", \"fanfiction.net\", \"labanquepostale.fr\", \"bola.net\", \"credit-agricole.fr\", \"rapidgator.net\", \"vnexpress.net\", \"mayoclinic.org\", \"myanimelist.net\", \"minecraft.net\", \"pole-emploi.fr\", \"commentcamarche.net\", \"gutefrage.net\", \"archiveofourown.org\", \"ccm.net\", \"apache.org\", \"dmv.org\", \"wargaming.net\", \"lefigaro.fr\", \"eenadu.net\", \"poringa.net\", \"deviantart.net\", \"fishki.net\", \"jalan.net\", \"2ch-c.net\", \"cambridge.org\", \"convert2mp3.net\", \"pagesjaunes.fr\", \"oschina.net\", \"torrentkim3.net\", \"khanacademy.org\", \"dostor.org\", \"aljazeera.net\", \"codecanyon.net\", \"allocine.fr\", \"animeflv.net\", \"jb51.net\", \"jw.org\", \"nocookie.net\", \"pchome.net\", \"ali213.net\", \"edx.org\", \"zatnawqy.net\", \"ukr.net\", \"my-hit.org\", \"jsfiddle.net\", \"4gamer.net\", \"turbobit.net\", \"mangareader.net\", \"leo.org\", \"caf.fr\", \"windows.net\", \"comenity.net\", \"pbs.org\", \"opensubtitles.org\", \"xuite.net\", \"consumerreports.org\", \"programme-tv.net\", \"att.net\", \"python.org\", \"laposte.net\", \"p5w.net\", \"aarp.org\", \"docusign.net\", \"2chan.net\", \"caisse-epargne.fr\", \"cnki.net\", \"cityheaven.net\", \"toyokeizai.net\", \"blogspot.fr\", \"jkanime.net\", \"earthlink.net\", \"linkshrink.net\", \"oneplus.net\", \"tf1.fr\", \"cox.net\", \"seriesflv.net\", \"exhentai.org\", \"ap.org\", \"skyscanner.net\", \"sanjesh.org\", \"lds.org\", \"17track.net\", \"20minutes.fr\", \"dytt8.net\", \"shufoo.net\", \"postimg.org\", \"alaan.org\", \"navyfederal.org\", \"creditmutuel.fr\", \"zipbogo.net\", \"voirfilms.org\", \"ieee.org\", \"w3.org\", \"tripadvisor.fr\", \"societegenerale.fr\", \"kaiserpermanente.org\", \"lcl.fr\", \"bbb.org\", \"bouyguestelecom.fr\", \"lifehack.org\", \"familysearch.org\", \"monova.org\", \"laredoute.fr\", \"say-move.org\", \"banquepopulaire.fr\", \"baiducdn.org\", \"pbskids.org\", \"eurosport.fr\", \"go2cloud.org\", \"laposte.fr\", \"zimbra.free.fr\", \"ameli.fr\", \"linguee.fr\", \"westeros.org\", \"leroymerlin.fr\", \"leparisien.fr\", \"drupal.org\", \"hltv.org\", \"videolan.org\", \"slashdot.org\", \"angularjs.org\", \"francetvinfo.fr\", \"yify-torrent.org\", \"un.org\", \"acs.org\", \"fullhdfilmizlesene.org\", \"digitalprivacyalert.org\", \"jstor.org\", \"service-public.fr\", \"wikibooks.org\", \"ubuntuforums.org\", \"lexpress.fr\", \"tlootas.org\", \"collegeboard.org\", \"tvtropes.org\", \"impots.gouv.fr\", \"syosetu.org\", \"larousse.fr\", \"wikimapia.org\", \"new-rutor.org\", \"hbr.org\", \"washwasha.org\", \"marmiton.org\", \"4cdn.org\", \"doctissimo.fr\", \"britishcouncil.org\", \"cic.fr\", \"fdj.fr\", \"airbnb.fr\", \"media-fire.org\", \"thinkprogress.org\", \"oxfordjournals.org\", \"dyndns.org\", \"worldcat.org\", \"raspberrypi.org\", \"eclipse.org\", \"ouest-france.fr\", \"viamichelin.fr\", \"megafilmeshd20.org\", \"jooble.org\", \"lichess.org\", \"pixhost.org\", \"malwarebytes.org\", \"ets.org\", \"hattrick.org\", \"paultan.org\", \"indeed.fr\", \"6play.fr\", \"rueducommerce.fr\", \"joomla.org\", \"worldbank.org\", \"arxiv.org\", \"archlinux.org\", \"castorama.fr\", \"decathlon.fr\", \"huffingtonpost.fr\", \"lacentrale.fr\", \"lesechos.fr\", \"vidal.fr\", \"lepoint.fr\", \"zalando.fr\", \"worldoftanks.eu\", \"pmu.fr\", \"asos.fr\", \"successfactors.eu\", \"blablacar.fr\", \"liberation.fr\", \"urssaf.fr\", \"mycanal.fr\", \"auchan.fr\", \"conforama.fr\", \"meteociel.fr\", \"carrefour.fr\", \"canalplus.fr\", \"letudiant.fr\", \"groupon.fr\", \"3suisses.fr\", \"leclercdrive.fr\", \"ratp.fr\", \"ooreka.fr\", \"rtl.fr\", \"airfrance.fr\", \"meetic.fr\", \"francetv.fr\", \"mobile.free.fr\", \"ladepeche.fr\", \"paruvendu.fr\", \"rfi.fr\", \"spaggiari.eu\", \"metronews.fr\", \"worldofwarships.eu\", \"sudouest.fr\", \"colissimo.fr\", \"keeplinks.eu\", \"onelife.eu\", \"hardware.fr\", \"coco.fr\", \"imp.free.fr\", \"melty.fr\", \"jeux.fr\", \"europe1.fr\", \"education.fr\", \"bricodepot.fr\", \"edf.fr\", \"maxifoot.fr\", \"pap.fr\", \"education.gouv.fr\", \"dnvod.eu\", \"elle.fr\", \"letour.fr\", \"cmb.fr\", \"dfiles.eu\", \"onecoin.eu\", \"gls-group.eu\", \"seedpeer.eu\", \"dramanice.eu\", \"sia.eu\", \"filmezz.eu\", \"vshare.eu\", \"torrentbutler.eu\", \"watchcartoonsonline.eu\", \"politico.eu\", \"torrentking.eu\", \"feed2allnow.eu\", \"rockfile.eu\", \"yamaha-motor.eu\", \"tusciaweb.eu\", \"sexyadults.eu\", \"fidelityhouse.eu\", \"chainfire.eu\", \"ping.eu\", \"unibet.eu\", \"mastersportal.eu\", \"uploadfiles.eu\", \"ifirstrow.eu\", \"watchmovienow.eu\", \"xenesglosses.eu\", \"gayforit.eu\", \"streamcomplet.eu\", \"muzofox.eu\", \"jpfiles.eu\", \"df.eu\", \"kickasstorrents.eu\", \"autobazar.eu\", \"swisscoin.eu\", \"perfektdamen.eu\", \"echodnia.eu\", \"bombuj.eu\", \"funmix.eu\", \"safeurls.eu\", \"increas.eu\", \"luxexpress.eu\", \"gamecopyworld.eu\", \"cucirca.eu\", \"guess.eu\", \"ifirstrowus.eu\", \"nets.eu\", \"hostinger.eu\", \"immunicity.eu\", \"europsl.eu\", \"myenglishteacher.eu\", \"tme.eu\", \"payzen.eu\", \"jpopsuki.eu\", \"5dimes.eu\", \"xiaomi.eu\", \"magiccardmarket.eu\", \"romanews.eu\", \"mp3xd.eu\", \"fellent.eu\", \"livenewschat.eu\", \"ccc.eu\", \"bitminer.eu\", \"thenude.eu\", \"wufoo.eu\", \"firstrowas.eu\", \"minecraft-server.eu\", \"catawiki.eu\", \"firstsrowsports.eu\", \"omni-cash.eu\", \"buzzblog.eu\", \"ancient.eu\", \"pornoserver.eu\", \"xspeeds.eu\", \"skydsl.eu\", \"interrail.eu\", \"bonprixshop.eu\", \"harrisinteractive.eu\", \"ls-portal.eu\", \"nasze-kino.eu\", \"valueactive.eu\", \"meteoweb.eu\", \"serialonline.eu\", \"clickedu.eu\", \"bosettiegatti.eu\", \"mydailydose.eu\", \"gap.eu\", \"myadpack.eu\", \"iptorrents.eu\", \"aaate2016.eu\"];\n\tvar list = document.getElementById('domains');\n\t\n\tdomains.forEach(function (item) {\n\t var option = document.createElement('option');\n\t option.value = item;\n\t list.appendChild(option);\n\t});\n\n/***/ },\n/* 1 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(Buffer, global) {/*!\n\t * The buffer module from node.js, for the browser.\n\t *\n\t * @author Feross Aboukhadijeh \n\t * @license MIT\n\t */\n\t/* eslint-disable no-proto */\n\t\n\t'use strict'\n\t\n\tvar base64 = __webpack_require__(4)\n\tvar ieee754 = __webpack_require__(20)\n\tvar isArray = __webpack_require__(5)\n\t\n\texports.Buffer = Buffer\n\texports.SlowBuffer = SlowBuffer\n\texports.INSPECT_MAX_BYTES = 50\n\tBuffer.poolSize = 8192 // not used by this implementation\n\t\n\tvar rootParent = {}\n\t\n\t/**\n\t * If `Buffer.TYPED_ARRAY_SUPPORT`:\n\t * === true Use Uint8Array implementation (fastest)\n\t * === false Use Object implementation (most compatible, even IE6)\n\t *\n\t * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n\t * Opera 11.6+, iOS 4.2+.\n\t *\n\t * Due to various browser bugs, sometimes the Object implementation will be used even\n\t * when the browser supports typed arrays.\n\t *\n\t * Note:\n\t *\n\t * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,\n\t * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.\n\t *\n\t * - Safari 5-7 lacks support for changing the `Object.prototype.constructor` property\n\t * on objects.\n\t *\n\t * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.\n\t *\n\t * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of\n\t * incorrect length in some situations.\n\t\n\t * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they\n\t * get the Object implementation, which is slower but behaves correctly.\n\t */\n\tBuffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined\n\t ? global.TYPED_ARRAY_SUPPORT\n\t : typedArraySupport()\n\t\n\tfunction typedArraySupport () {\n\t function Bar () {}\n\t try {\n\t var arr = new Uint8Array(1)\n\t arr.foo = function () { return 42 }\n\t arr.constructor = Bar\n\t return arr.foo() === 42 && // typed array instances can be augmented\n\t arr.constructor === Bar && // constructor can be set\n\t typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`\n\t arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`\n\t } catch (e) {\n\t return false\n\t }\n\t}\n\t\n\tfunction kMaxLength () {\n\t return Buffer.TYPED_ARRAY_SUPPORT\n\t ? 0x7fffffff\n\t : 0x3fffffff\n\t}\n\t\n\t/**\n\t * Class: Buffer\n\t * =============\n\t *\n\t * The Buffer constructor returns instances of `Uint8Array` that are augmented\n\t * with function properties for all the node `Buffer` API functions. We use\n\t * `Uint8Array` so that square bracket notation works as expected -- it returns\n\t * a single octet.\n\t *\n\t * By augmenting the instances, we can avoid modifying the `Uint8Array`\n\t * prototype.\n\t */\n\tfunction Buffer (arg) {\n\t if (!(this instanceof Buffer)) {\n\t // Avoid going through an ArgumentsAdaptorTrampoline in the common case.\n\t if (arguments.length > 1) return new Buffer(arg, arguments[1])\n\t return new Buffer(arg)\n\t }\n\t\n\t if (!Buffer.TYPED_ARRAY_SUPPORT) {\n\t this.length = 0\n\t this.parent = undefined\n\t }\n\t\n\t // Common case.\n\t if (typeof arg === 'number') {\n\t return fromNumber(this, arg)\n\t }\n\t\n\t // Slightly less common case.\n\t if (typeof arg === 'string') {\n\t return fromString(this, arg, arguments.length > 1 ? arguments[1] : 'utf8')\n\t }\n\t\n\t // Unusual.\n\t return fromObject(this, arg)\n\t}\n\t\n\tfunction fromNumber (that, length) {\n\t that = allocate(that, length < 0 ? 0 : checked(length) | 0)\n\t if (!Buffer.TYPED_ARRAY_SUPPORT) {\n\t for (var i = 0; i < length; i++) {\n\t that[i] = 0\n\t }\n\t }\n\t return that\n\t}\n\t\n\tfunction fromString (that, string, encoding) {\n\t if (typeof encoding !== 'string' || encoding === '') encoding = 'utf8'\n\t\n\t // Assumption: byteLength() return value is always < kMaxLength.\n\t var length = byteLength(string, encoding) | 0\n\t that = allocate(that, length)\n\t\n\t that.write(string, encoding)\n\t return that\n\t}\n\t\n\tfunction fromObject (that, object) {\n\t if (Buffer.isBuffer(object)) return fromBuffer(that, object)\n\t\n\t if (isArray(object)) return fromArray(that, object)\n\t\n\t if (object == null) {\n\t throw new TypeError('must start with number, buffer, array or string')\n\t }\n\t\n\t if (typeof ArrayBuffer !== 'undefined') {\n\t if (object.buffer instanceof ArrayBuffer) {\n\t return fromTypedArray(that, object)\n\t }\n\t if (object instanceof ArrayBuffer) {\n\t return fromArrayBuffer(that, object)\n\t }\n\t }\n\t\n\t if (object.length) return fromArrayLike(that, object)\n\t\n\t return fromJsonObject(that, object)\n\t}\n\t\n\tfunction fromBuffer (that, buffer) {\n\t var length = checked(buffer.length) | 0\n\t that = allocate(that, length)\n\t buffer.copy(that, 0, 0, length)\n\t return that\n\t}\n\t\n\tfunction fromArray (that, array) {\n\t var length = checked(array.length) | 0\n\t that = allocate(that, length)\n\t for (var i = 0; i < length; i += 1) {\n\t that[i] = array[i] & 255\n\t }\n\t return that\n\t}\n\t\n\t// Duplicate of fromArray() to keep fromArray() monomorphic.\n\tfunction fromTypedArray (that, array) {\n\t var length = checked(array.length) | 0\n\t that = allocate(that, length)\n\t // Truncating the elements is probably not what people expect from typed\n\t // arrays with BYTES_PER_ELEMENT > 1 but it's compatible with the behavior\n\t // of the old Buffer constructor.\n\t for (var i = 0; i < length; i += 1) {\n\t that[i] = array[i] & 255\n\t }\n\t return that\n\t}\n\t\n\tfunction fromArrayBuffer (that, array) {\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t // Return an augmented `Uint8Array` instance, for best performance\n\t array.byteLength\n\t that = Buffer._augment(new Uint8Array(array))\n\t } else {\n\t // Fallback: Return an object instance of the Buffer class\n\t that = fromTypedArray(that, new Uint8Array(array))\n\t }\n\t return that\n\t}\n\t\n\tfunction fromArrayLike (that, array) {\n\t var length = checked(array.length) | 0\n\t that = allocate(that, length)\n\t for (var i = 0; i < length; i += 1) {\n\t that[i] = array[i] & 255\n\t }\n\t return that\n\t}\n\t\n\t// Deserialize { type: 'Buffer', data: [1,2,3,...] } into a Buffer object.\n\t// Returns a zero-length buffer for inputs that don't conform to the spec.\n\tfunction fromJsonObject (that, object) {\n\t var array\n\t var length = 0\n\t\n\t if (object.type === 'Buffer' && isArray(object.data)) {\n\t array = object.data\n\t length = checked(array.length) | 0\n\t }\n\t that = allocate(that, length)\n\t\n\t for (var i = 0; i < length; i += 1) {\n\t that[i] = array[i] & 255\n\t }\n\t return that\n\t}\n\t\n\tif (Buffer.TYPED_ARRAY_SUPPORT) {\n\t Buffer.prototype.__proto__ = Uint8Array.prototype\n\t Buffer.__proto__ = Uint8Array\n\t} else {\n\t // pre-set for values that may exist in the future\n\t Buffer.prototype.length = undefined\n\t Buffer.prototype.parent = undefined\n\t}\n\t\n\tfunction allocate (that, length) {\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t // Return an augmented `Uint8Array` instance, for best performance\n\t that = Buffer._augment(new Uint8Array(length))\n\t that.__proto__ = Buffer.prototype\n\t } else {\n\t // Fallback: Return an object instance of the Buffer class\n\t that.length = length\n\t that._isBuffer = true\n\t }\n\t\n\t var fromPool = length !== 0 && length <= Buffer.poolSize >>> 1\n\t if (fromPool) that.parent = rootParent\n\t\n\t return that\n\t}\n\t\n\tfunction checked (length) {\n\t // Note: cannot use `length < kMaxLength` here because that fails when\n\t // length is NaN (which is otherwise coerced to zero.)\n\t if (length >= kMaxLength()) {\n\t throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n\t 'size: 0x' + kMaxLength().toString(16) + ' bytes')\n\t }\n\t return length | 0\n\t}\n\t\n\tfunction SlowBuffer (subject, encoding) {\n\t if (!(this instanceof SlowBuffer)) return new SlowBuffer(subject, encoding)\n\t\n\t var buf = new Buffer(subject, encoding)\n\t delete buf.parent\n\t return buf\n\t}\n\t\n\tBuffer.isBuffer = function isBuffer (b) {\n\t return !!(b != null && b._isBuffer)\n\t}\n\t\n\tBuffer.compare = function compare (a, b) {\n\t if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n\t throw new TypeError('Arguments must be Buffers')\n\t }\n\t\n\t if (a === b) return 0\n\t\n\t var x = a.length\n\t var y = b.length\n\t\n\t var i = 0\n\t var len = Math.min(x, y)\n\t while (i < len) {\n\t if (a[i] !== b[i]) break\n\t\n\t ++i\n\t }\n\t\n\t if (i !== len) {\n\t x = a[i]\n\t y = b[i]\n\t }\n\t\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t}\n\t\n\tBuffer.isEncoding = function isEncoding (encoding) {\n\t switch (String(encoding).toLowerCase()) {\n\t case 'hex':\n\t case 'utf8':\n\t case 'utf-8':\n\t case 'ascii':\n\t case 'binary':\n\t case 'base64':\n\t case 'raw':\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return true\n\t default:\n\t return false\n\t }\n\t}\n\t\n\tBuffer.concat = function concat (list, length) {\n\t if (!isArray(list)) throw new TypeError('list argument must be an Array of Buffers.')\n\t\n\t if (list.length === 0) {\n\t return new Buffer(0)\n\t }\n\t\n\t var i\n\t if (length === undefined) {\n\t length = 0\n\t for (i = 0; i < list.length; i++) {\n\t length += list[i].length\n\t }\n\t }\n\t\n\t var buf = new Buffer(length)\n\t var pos = 0\n\t for (i = 0; i < list.length; i++) {\n\t var item = list[i]\n\t item.copy(buf, pos)\n\t pos += item.length\n\t }\n\t return buf\n\t}\n\t\n\tfunction byteLength (string, encoding) {\n\t if (typeof string !== 'string') string = '' + string\n\t\n\t var len = string.length\n\t if (len === 0) return 0\n\t\n\t // Use a for loop to avoid recursion\n\t var loweredCase = false\n\t for (;;) {\n\t switch (encoding) {\n\t case 'ascii':\n\t case 'binary':\n\t // Deprecated\n\t case 'raw':\n\t case 'raws':\n\t return len\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8ToBytes(string).length\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return len * 2\n\t case 'hex':\n\t return len >>> 1\n\t case 'base64':\n\t return base64ToBytes(string).length\n\t default:\n\t if (loweredCase) return utf8ToBytes(string).length // assume utf8\n\t encoding = ('' + encoding).toLowerCase()\n\t loweredCase = true\n\t }\n\t }\n\t}\n\tBuffer.byteLength = byteLength\n\t\n\tfunction slowToString (encoding, start, end) {\n\t var loweredCase = false\n\t\n\t start = start | 0\n\t end = end === undefined || end === Infinity ? this.length : end | 0\n\t\n\t if (!encoding) encoding = 'utf8'\n\t if (start < 0) start = 0\n\t if (end > this.length) end = this.length\n\t if (end <= start) return ''\n\t\n\t while (true) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexSlice(this, start, end)\n\t\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Slice(this, start, end)\n\t\n\t case 'ascii':\n\t return asciiSlice(this, start, end)\n\t\n\t case 'binary':\n\t return binarySlice(this, start, end)\n\t\n\t case 'base64':\n\t return base64Slice(this, start, end)\n\t\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return utf16leSlice(this, start, end)\n\t\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = (encoding + '').toLowerCase()\n\t loweredCase = true\n\t }\n\t }\n\t}\n\t\n\tBuffer.prototype.toString = function toString () {\n\t var length = this.length | 0\n\t if (length === 0) return ''\n\t if (arguments.length === 0) return utf8Slice(this, 0, length)\n\t return slowToString.apply(this, arguments)\n\t}\n\t\n\tBuffer.prototype.equals = function equals (b) {\n\t if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n\t if (this === b) return true\n\t return Buffer.compare(this, b) === 0\n\t}\n\t\n\tBuffer.prototype.inspect = function inspect () {\n\t var str = ''\n\t var max = exports.INSPECT_MAX_BYTES\n\t if (this.length > 0) {\n\t str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')\n\t if (this.length > max) str += ' ... '\n\t }\n\t return ''\n\t}\n\t\n\tBuffer.prototype.compare = function compare (b) {\n\t if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n\t if (this === b) return 0\n\t return Buffer.compare(this, b)\n\t}\n\t\n\tBuffer.prototype.indexOf = function indexOf (val, byteOffset) {\n\t if (byteOffset > 0x7fffffff) byteOffset = 0x7fffffff\n\t else if (byteOffset < -0x80000000) byteOffset = -0x80000000\n\t byteOffset >>= 0\n\t\n\t if (this.length === 0) return -1\n\t if (byteOffset >= this.length) return -1\n\t\n\t // Negative offsets start from the end of the buffer\n\t if (byteOffset < 0) byteOffset = Math.max(this.length + byteOffset, 0)\n\t\n\t if (typeof val === 'string') {\n\t if (val.length === 0) return -1 // special case: looking for empty string always fails\n\t return String.prototype.indexOf.call(this, val, byteOffset)\n\t }\n\t if (Buffer.isBuffer(val)) {\n\t return arrayIndexOf(this, val, byteOffset)\n\t }\n\t if (typeof val === 'number') {\n\t if (Buffer.TYPED_ARRAY_SUPPORT && Uint8Array.prototype.indexOf === 'function') {\n\t return Uint8Array.prototype.indexOf.call(this, val, byteOffset)\n\t }\n\t return arrayIndexOf(this, [ val ], byteOffset)\n\t }\n\t\n\t function arrayIndexOf (arr, val, byteOffset) {\n\t var foundIndex = -1\n\t for (var i = 0; byteOffset + i < arr.length; i++) {\n\t if (arr[byteOffset + i] === val[foundIndex === -1 ? 0 : i - foundIndex]) {\n\t if (foundIndex === -1) foundIndex = i\n\t if (i - foundIndex + 1 === val.length) return byteOffset + foundIndex\n\t } else {\n\t foundIndex = -1\n\t }\n\t }\n\t return -1\n\t }\n\t\n\t throw new TypeError('val must be string, number or Buffer')\n\t}\n\t\n\t// `get` is deprecated\n\tBuffer.prototype.get = function get (offset) {\n\t console.log('.get() is deprecated. Access using array indexes instead.')\n\t return this.readUInt8(offset)\n\t}\n\t\n\t// `set` is deprecated\n\tBuffer.prototype.set = function set (v, offset) {\n\t console.log('.set() is deprecated. Access using array indexes instead.')\n\t return this.writeUInt8(v, offset)\n\t}\n\t\n\tfunction hexWrite (buf, string, offset, length) {\n\t offset = Number(offset) || 0\n\t var remaining = buf.length - offset\n\t if (!length) {\n\t length = remaining\n\t } else {\n\t length = Number(length)\n\t if (length > remaining) {\n\t length = remaining\n\t }\n\t }\n\t\n\t // must be an even number of digits\n\t var strLen = string.length\n\t if (strLen % 2 !== 0) throw new Error('Invalid hex string')\n\t\n\t if (length > strLen / 2) {\n\t length = strLen / 2\n\t }\n\t for (var i = 0; i < length; i++) {\n\t var parsed = parseInt(string.substr(i * 2, 2), 16)\n\t if (isNaN(parsed)) throw new Error('Invalid hex string')\n\t buf[offset + i] = parsed\n\t }\n\t return i\n\t}\n\t\n\tfunction utf8Write (buf, string, offset, length) {\n\t return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\t\n\tfunction asciiWrite (buf, string, offset, length) {\n\t return blitBuffer(asciiToBytes(string), buf, offset, length)\n\t}\n\t\n\tfunction binaryWrite (buf, string, offset, length) {\n\t return asciiWrite(buf, string, offset, length)\n\t}\n\t\n\tfunction base64Write (buf, string, offset, length) {\n\t return blitBuffer(base64ToBytes(string), buf, offset, length)\n\t}\n\t\n\tfunction ucs2Write (buf, string, offset, length) {\n\t return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\t\n\tBuffer.prototype.write = function write (string, offset, length, encoding) {\n\t // Buffer#write(string)\n\t if (offset === undefined) {\n\t encoding = 'utf8'\n\t length = this.length\n\t offset = 0\n\t // Buffer#write(string, encoding)\n\t } else if (length === undefined && typeof offset === 'string') {\n\t encoding = offset\n\t length = this.length\n\t offset = 0\n\t // Buffer#write(string, offset[, length][, encoding])\n\t } else if (isFinite(offset)) {\n\t offset = offset | 0\n\t if (isFinite(length)) {\n\t length = length | 0\n\t if (encoding === undefined) encoding = 'utf8'\n\t } else {\n\t encoding = length\n\t length = undefined\n\t }\n\t // legacy write(string, encoding, offset, length) - remove in v0.13\n\t } else {\n\t var swap = encoding\n\t encoding = offset\n\t offset = length | 0\n\t length = swap\n\t }\n\t\n\t var remaining = this.length - offset\n\t if (length === undefined || length > remaining) length = remaining\n\t\n\t if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n\t throw new RangeError('attempt to write outside buffer bounds')\n\t }\n\t\n\t if (!encoding) encoding = 'utf8'\n\t\n\t var loweredCase = false\n\t for (;;) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexWrite(this, string, offset, length)\n\t\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Write(this, string, offset, length)\n\t\n\t case 'ascii':\n\t return asciiWrite(this, string, offset, length)\n\t\n\t case 'binary':\n\t return binaryWrite(this, string, offset, length)\n\t\n\t case 'base64':\n\t // Warning: maxLength not taken into account in base64Write\n\t return base64Write(this, string, offset, length)\n\t\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return ucs2Write(this, string, offset, length)\n\t\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = ('' + encoding).toLowerCase()\n\t loweredCase = true\n\t }\n\t }\n\t}\n\t\n\tBuffer.prototype.toJSON = function toJSON () {\n\t return {\n\t type: 'Buffer',\n\t data: Array.prototype.slice.call(this._arr || this, 0)\n\t }\n\t}\n\t\n\tfunction base64Slice (buf, start, end) {\n\t if (start === 0 && end === buf.length) {\n\t return base64.fromByteArray(buf)\n\t } else {\n\t return base64.fromByteArray(buf.slice(start, end))\n\t }\n\t}\n\t\n\tfunction utf8Slice (buf, start, end) {\n\t end = Math.min(buf.length, end)\n\t var res = []\n\t\n\t var i = start\n\t while (i < end) {\n\t var firstByte = buf[i]\n\t var codePoint = null\n\t var bytesPerSequence = (firstByte > 0xEF) ? 4\n\t : (firstByte > 0xDF) ? 3\n\t : (firstByte > 0xBF) ? 2\n\t : 1\n\t\n\t if (i + bytesPerSequence <= end) {\n\t var secondByte, thirdByte, fourthByte, tempCodePoint\n\t\n\t switch (bytesPerSequence) {\n\t case 1:\n\t if (firstByte < 0x80) {\n\t codePoint = firstByte\n\t }\n\t break\n\t case 2:\n\t secondByte = buf[i + 1]\n\t if ((secondByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n\t if (tempCodePoint > 0x7F) {\n\t codePoint = tempCodePoint\n\t }\n\t }\n\t break\n\t case 3:\n\t secondByte = buf[i + 1]\n\t thirdByte = buf[i + 2]\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n\t if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n\t codePoint = tempCodePoint\n\t }\n\t }\n\t break\n\t case 4:\n\t secondByte = buf[i + 1]\n\t thirdByte = buf[i + 2]\n\t fourthByte = buf[i + 3]\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n\t if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n\t codePoint = tempCodePoint\n\t }\n\t }\n\t }\n\t }\n\t\n\t if (codePoint === null) {\n\t // we did not generate a valid codePoint so insert a\n\t // replacement char (U+FFFD) and advance only 1 byte\n\t codePoint = 0xFFFD\n\t bytesPerSequence = 1\n\t } else if (codePoint > 0xFFFF) {\n\t // encode to utf16 (surrogate pair dance)\n\t codePoint -= 0x10000\n\t res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n\t codePoint = 0xDC00 | codePoint & 0x3FF\n\t }\n\t\n\t res.push(codePoint)\n\t i += bytesPerSequence\n\t }\n\t\n\t return decodeCodePointsArray(res)\n\t}\n\t\n\t// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n\t// the lowest limit is Chrome, with 0x10000 args.\n\t// We go 1 magnitude less, for safety\n\tvar MAX_ARGUMENTS_LENGTH = 0x1000\n\t\n\tfunction decodeCodePointsArray (codePoints) {\n\t var len = codePoints.length\n\t if (len <= MAX_ARGUMENTS_LENGTH) {\n\t return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n\t }\n\t\n\t // Decode in chunks to avoid \"call stack size exceeded\".\n\t var res = ''\n\t var i = 0\n\t while (i < len) {\n\t res += String.fromCharCode.apply(\n\t String,\n\t codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n\t )\n\t }\n\t return res\n\t}\n\t\n\tfunction asciiSlice (buf, start, end) {\n\t var ret = ''\n\t end = Math.min(buf.length, end)\n\t\n\t for (var i = start; i < end; i++) {\n\t ret += String.fromCharCode(buf[i] & 0x7F)\n\t }\n\t return ret\n\t}\n\t\n\tfunction binarySlice (buf, start, end) {\n\t var ret = ''\n\t end = Math.min(buf.length, end)\n\t\n\t for (var i = start; i < end; i++) {\n\t ret += String.fromCharCode(buf[i])\n\t }\n\t return ret\n\t}\n\t\n\tfunction hexSlice (buf, start, end) {\n\t var len = buf.length\n\t\n\t if (!start || start < 0) start = 0\n\t if (!end || end < 0 || end > len) end = len\n\t\n\t var out = ''\n\t for (var i = start; i < end; i++) {\n\t out += toHex(buf[i])\n\t }\n\t return out\n\t}\n\t\n\tfunction utf16leSlice (buf, start, end) {\n\t var bytes = buf.slice(start, end)\n\t var res = ''\n\t for (var i = 0; i < bytes.length; i += 2) {\n\t res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)\n\t }\n\t return res\n\t}\n\t\n\tBuffer.prototype.slice = function slice (start, end) {\n\t var len = this.length\n\t start = ~~start\n\t end = end === undefined ? len : ~~end\n\t\n\t if (start < 0) {\n\t start += len\n\t if (start < 0) start = 0\n\t } else if (start > len) {\n\t start = len\n\t }\n\t\n\t if (end < 0) {\n\t end += len\n\t if (end < 0) end = 0\n\t } else if (end > len) {\n\t end = len\n\t }\n\t\n\t if (end < start) end = start\n\t\n\t var newBuf\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t newBuf = Buffer._augment(this.subarray(start, end))\n\t } else {\n\t var sliceLen = end - start\n\t newBuf = new Buffer(sliceLen, undefined)\n\t for (var i = 0; i < sliceLen; i++) {\n\t newBuf[i] = this[i + start]\n\t }\n\t }\n\t\n\t if (newBuf.length) newBuf.parent = this.parent || this\n\t\n\t return newBuf\n\t}\n\t\n\t/*\n\t * Need to make sure that buffer isn't trying to write out of bounds.\n\t */\n\tfunction checkOffset (offset, ext, length) {\n\t if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n\t if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n\t}\n\t\n\tBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) checkOffset(offset, byteLength, this.length)\n\t\n\t var val = this[offset]\n\t var mul = 1\n\t var i = 0\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul\n\t }\n\t\n\t return val\n\t}\n\t\n\tBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) {\n\t checkOffset(offset, byteLength, this.length)\n\t }\n\t\n\t var val = this[offset + --byteLength]\n\t var mul = 1\n\t while (byteLength > 0 && (mul *= 0x100)) {\n\t val += this[offset + --byteLength] * mul\n\t }\n\t\n\t return val\n\t}\n\t\n\tBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 1, this.length)\n\t return this[offset]\n\t}\n\t\n\tBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 2, this.length)\n\t return this[offset] | (this[offset + 1] << 8)\n\t}\n\t\n\tBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 2, this.length)\n\t return (this[offset] << 8) | this[offset + 1]\n\t}\n\t\n\tBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t\n\t return ((this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16)) +\n\t (this[offset + 3] * 0x1000000)\n\t}\n\t\n\tBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t\n\t return (this[offset] * 0x1000000) +\n\t ((this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t this[offset + 3])\n\t}\n\t\n\tBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) checkOffset(offset, byteLength, this.length)\n\t\n\t var val = this[offset]\n\t var mul = 1\n\t var i = 0\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul\n\t }\n\t mul *= 0x80\n\t\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\t\n\t return val\n\t}\n\t\n\tBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) checkOffset(offset, byteLength, this.length)\n\t\n\t var i = byteLength\n\t var mul = 1\n\t var val = this[offset + --i]\n\t while (i > 0 && (mul *= 0x100)) {\n\t val += this[offset + --i] * mul\n\t }\n\t mul *= 0x80\n\t\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\t\n\t return val\n\t}\n\t\n\tBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 1, this.length)\n\t if (!(this[offset] & 0x80)) return (this[offset])\n\t return ((0xff - this[offset] + 1) * -1)\n\t}\n\t\n\tBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 2, this.length)\n\t var val = this[offset] | (this[offset + 1] << 8)\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t}\n\t\n\tBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 2, this.length)\n\t var val = this[offset + 1] | (this[offset] << 8)\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t}\n\t\n\tBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t\n\t return (this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16) |\n\t (this[offset + 3] << 24)\n\t}\n\t\n\tBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t\n\t return (this[offset] << 24) |\n\t (this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t (this[offset + 3])\n\t}\n\t\n\tBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t return ieee754.read(this, offset, true, 23, 4)\n\t}\n\t\n\tBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t return ieee754.read(this, offset, false, 23, 4)\n\t}\n\t\n\tBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 8, this.length)\n\t return ieee754.read(this, offset, true, 52, 8)\n\t}\n\t\n\tBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 8, this.length)\n\t return ieee754.read(this, offset, false, 52, 8)\n\t}\n\t\n\tfunction checkInt (buf, value, offset, ext, max, min) {\n\t if (!Buffer.isBuffer(buf)) throw new TypeError('buffer must be a Buffer instance')\n\t if (value > max || value < min) throw new RangeError('value is out of bounds')\n\t if (offset + ext > buf.length) throw new RangeError('index out of range')\n\t}\n\t\n\tBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) checkInt(this, value, offset, byteLength, Math.pow(2, 8 * byteLength), 0)\n\t\n\t var mul = 1\n\t var i = 0\n\t this[offset] = value & 0xFF\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF\n\t }\n\t\n\t return offset + byteLength\n\t}\n\t\n\tBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) checkInt(this, value, offset, byteLength, Math.pow(2, 8 * byteLength), 0)\n\t\n\t var i = byteLength - 1\n\t var mul = 1\n\t this[offset + i] = value & 0xFF\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF\n\t }\n\t\n\t return offset + byteLength\n\t}\n\t\n\tBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n\t if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n\t this[offset] = (value & 0xff)\n\t return offset + 1\n\t}\n\t\n\tfunction objectWriteUInt16 (buf, value, offset, littleEndian) {\n\t if (value < 0) value = 0xffff + value + 1\n\t for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; i++) {\n\t buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>\n\t (littleEndian ? i : 1 - i) * 8\n\t }\n\t}\n\t\n\tBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value & 0xff)\n\t this[offset + 1] = (value >>> 8)\n\t } else {\n\t objectWriteUInt16(this, value, offset, true)\n\t }\n\t return offset + 2\n\t}\n\t\n\tBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value >>> 8)\n\t this[offset + 1] = (value & 0xff)\n\t } else {\n\t objectWriteUInt16(this, value, offset, false)\n\t }\n\t return offset + 2\n\t}\n\t\n\tfunction objectWriteUInt32 (buf, value, offset, littleEndian) {\n\t if (value < 0) value = 0xffffffff + value + 1\n\t for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; i++) {\n\t buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff\n\t }\n\t}\n\t\n\tBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset + 3] = (value >>> 24)\n\t this[offset + 2] = (value >>> 16)\n\t this[offset + 1] = (value >>> 8)\n\t this[offset] = (value & 0xff)\n\t } else {\n\t objectWriteUInt32(this, value, offset, true)\n\t }\n\t return offset + 4\n\t}\n\t\n\tBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value >>> 24)\n\t this[offset + 1] = (value >>> 16)\n\t this[offset + 2] = (value >>> 8)\n\t this[offset + 3] = (value & 0xff)\n\t } else {\n\t objectWriteUInt32(this, value, offset, false)\n\t }\n\t return offset + 4\n\t}\n\t\n\tBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) {\n\t var limit = Math.pow(2, 8 * byteLength - 1)\n\t\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit)\n\t }\n\t\n\t var i = 0\n\t var mul = 1\n\t var sub = value < 0 ? 1 : 0\n\t this[offset] = value & 0xFF\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n\t }\n\t\n\t return offset + byteLength\n\t}\n\t\n\tBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) {\n\t var limit = Math.pow(2, 8 * byteLength - 1)\n\t\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit)\n\t }\n\t\n\t var i = byteLength - 1\n\t var mul = 1\n\t var sub = value < 0 ? 1 : 0\n\t this[offset + i] = value & 0xFF\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n\t }\n\t\n\t return offset + byteLength\n\t}\n\t\n\tBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n\t if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n\t if (value < 0) value = 0xff + value + 1\n\t this[offset] = (value & 0xff)\n\t return offset + 1\n\t}\n\t\n\tBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value & 0xff)\n\t this[offset + 1] = (value >>> 8)\n\t } else {\n\t objectWriteUInt16(this, value, offset, true)\n\t }\n\t return offset + 2\n\t}\n\t\n\tBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value >>> 8)\n\t this[offset + 1] = (value & 0xff)\n\t } else {\n\t objectWriteUInt16(this, value, offset, false)\n\t }\n\t return offset + 2\n\t}\n\t\n\tBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value & 0xff)\n\t this[offset + 1] = (value >>> 8)\n\t this[offset + 2] = (value >>> 16)\n\t this[offset + 3] = (value >>> 24)\n\t } else {\n\t objectWriteUInt32(this, value, offset, true)\n\t }\n\t return offset + 4\n\t}\n\t\n\tBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n\t if (value < 0) value = 0xffffffff + value + 1\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value >>> 24)\n\t this[offset + 1] = (value >>> 16)\n\t this[offset + 2] = (value >>> 8)\n\t this[offset + 3] = (value & 0xff)\n\t } else {\n\t objectWriteUInt32(this, value, offset, false)\n\t }\n\t return offset + 4\n\t}\n\t\n\tfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n\t if (value > max || value < min) throw new RangeError('value is out of bounds')\n\t if (offset + ext > buf.length) throw new RangeError('index out of range')\n\t if (offset < 0) throw new RangeError('index out of range')\n\t}\n\t\n\tfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n\t }\n\t ieee754.write(buf, value, offset, littleEndian, 23, 4)\n\t return offset + 4\n\t}\n\t\n\tBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, true, noAssert)\n\t}\n\t\n\tBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, false, noAssert)\n\t}\n\t\n\tfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n\t }\n\t ieee754.write(buf, value, offset, littleEndian, 52, 8)\n\t return offset + 8\n\t}\n\t\n\tBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, true, noAssert)\n\t}\n\t\n\tBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, false, noAssert)\n\t}\n\t\n\t// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\n\tBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n\t if (!start) start = 0\n\t if (!end && end !== 0) end = this.length\n\t if (targetStart >= target.length) targetStart = target.length\n\t if (!targetStart) targetStart = 0\n\t if (end > 0 && end < start) end = start\n\t\n\t // Copy 0 bytes; we're done\n\t if (end === start) return 0\n\t if (target.length === 0 || this.length === 0) return 0\n\t\n\t // Fatal error conditions\n\t if (targetStart < 0) {\n\t throw new RangeError('targetStart out of bounds')\n\t }\n\t if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n\t if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\t\n\t // Are we oob?\n\t if (end > this.length) end = this.length\n\t if (target.length - targetStart < end - start) {\n\t end = target.length - targetStart + start\n\t }\n\t\n\t var len = end - start\n\t var i\n\t\n\t if (this === target && start < targetStart && targetStart < end) {\n\t // descending copy from end\n\t for (i = len - 1; i >= 0; i--) {\n\t target[i + targetStart] = this[i + start]\n\t }\n\t } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n\t // ascending copy from start\n\t for (i = 0; i < len; i++) {\n\t target[i + targetStart] = this[i + start]\n\t }\n\t } else {\n\t target._set(this.subarray(start, start + len), targetStart)\n\t }\n\t\n\t return len\n\t}\n\t\n\t// fill(value, start=0, end=buffer.length)\n\tBuffer.prototype.fill = function fill (value, start, end) {\n\t if (!value) value = 0\n\t if (!start) start = 0\n\t if (!end) end = this.length\n\t\n\t if (end < start) throw new RangeError('end < start')\n\t\n\t // Fill 0 bytes; we're done\n\t if (end === start) return\n\t if (this.length === 0) return\n\t\n\t if (start < 0 || start >= this.length) throw new RangeError('start out of bounds')\n\t if (end < 0 || end > this.length) throw new RangeError('end out of bounds')\n\t\n\t var i\n\t if (typeof value === 'number') {\n\t for (i = start; i < end; i++) {\n\t this[i] = value\n\t }\n\t } else {\n\t var bytes = utf8ToBytes(value.toString())\n\t var len = bytes.length\n\t for (i = start; i < end; i++) {\n\t this[i] = bytes[i % len]\n\t }\n\t }\n\t\n\t return this\n\t}\n\t\n\t/**\n\t * Creates a new `ArrayBuffer` with the *copied* memory of the buffer instance.\n\t * Added in Node 0.12. Only available in browsers that support ArrayBuffer.\n\t */\n\tBuffer.prototype.toArrayBuffer = function toArrayBuffer () {\n\t if (typeof Uint8Array !== 'undefined') {\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t return (new Buffer(this)).buffer\n\t } else {\n\t var buf = new Uint8Array(this.length)\n\t for (var i = 0, len = buf.length; i < len; i += 1) {\n\t buf[i] = this[i]\n\t }\n\t return buf.buffer\n\t }\n\t } else {\n\t throw new TypeError('Buffer.toArrayBuffer not supported in this browser')\n\t }\n\t}\n\t\n\t// HELPER FUNCTIONS\n\t// ================\n\t\n\tvar BP = Buffer.prototype\n\t\n\t/**\n\t * Augment a Uint8Array *instance* (not the Uint8Array class!) with Buffer methods\n\t */\n\tBuffer._augment = function _augment (arr) {\n\t arr.constructor = Buffer\n\t arr._isBuffer = true\n\t\n\t // save reference to original Uint8Array set method before overwriting\n\t arr._set = arr.set\n\t\n\t // deprecated\n\t arr.get = BP.get\n\t arr.set = BP.set\n\t\n\t arr.write = BP.write\n\t arr.toString = BP.toString\n\t arr.toLocaleString = BP.toString\n\t arr.toJSON = BP.toJSON\n\t arr.equals = BP.equals\n\t arr.compare = BP.compare\n\t arr.indexOf = BP.indexOf\n\t arr.copy = BP.copy\n\t arr.slice = BP.slice\n\t arr.readUIntLE = BP.readUIntLE\n\t arr.readUIntBE = BP.readUIntBE\n\t arr.readUInt8 = BP.readUInt8\n\t arr.readUInt16LE = BP.readUInt16LE\n\t arr.readUInt16BE = BP.readUInt16BE\n\t arr.readUInt32LE = BP.readUInt32LE\n\t arr.readUInt32BE = BP.readUInt32BE\n\t arr.readIntLE = BP.readIntLE\n\t arr.readIntBE = BP.readIntBE\n\t arr.readInt8 = BP.readInt8\n\t arr.readInt16LE = BP.readInt16LE\n\t arr.readInt16BE = BP.readInt16BE\n\t arr.readInt32LE = BP.readInt32LE\n\t arr.readInt32BE = BP.readInt32BE\n\t arr.readFloatLE = BP.readFloatLE\n\t arr.readFloatBE = BP.readFloatBE\n\t arr.readDoubleLE = BP.readDoubleLE\n\t arr.readDoubleBE = BP.readDoubleBE\n\t arr.writeUInt8 = BP.writeUInt8\n\t arr.writeUIntLE = BP.writeUIntLE\n\t arr.writeUIntBE = BP.writeUIntBE\n\t arr.writeUInt16LE = BP.writeUInt16LE\n\t arr.writeUInt16BE = BP.writeUInt16BE\n\t arr.writeUInt32LE = BP.writeUInt32LE\n\t arr.writeUInt32BE = BP.writeUInt32BE\n\t arr.writeIntLE = BP.writeIntLE\n\t arr.writeIntBE = BP.writeIntBE\n\t arr.writeInt8 = BP.writeInt8\n\t arr.writeInt16LE = BP.writeInt16LE\n\t arr.writeInt16BE = BP.writeInt16BE\n\t arr.writeInt32LE = BP.writeInt32LE\n\t arr.writeInt32BE = BP.writeInt32BE\n\t arr.writeFloatLE = BP.writeFloatLE\n\t arr.writeFloatBE = BP.writeFloatBE\n\t arr.writeDoubleLE = BP.writeDoubleLE\n\t arr.writeDoubleBE = BP.writeDoubleBE\n\t arr.fill = BP.fill\n\t arr.inspect = BP.inspect\n\t arr.toArrayBuffer = BP.toArrayBuffer\n\t\n\t return arr\n\t}\n\t\n\tvar INVALID_BASE64_RE = /[^+\\/0-9A-Za-z-_]/g\n\t\n\tfunction base64clean (str) {\n\t // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n\t str = stringtrim(str).replace(INVALID_BASE64_RE, '')\n\t // Node converts strings with length < 2 to ''\n\t if (str.length < 2) return ''\n\t // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n\t while (str.length % 4 !== 0) {\n\t str = str + '='\n\t }\n\t return str\n\t}\n\t\n\tfunction stringtrim (str) {\n\t if (str.trim) return str.trim()\n\t return str.replace(/^\\s+|\\s+$/g, '')\n\t}\n\t\n\tfunction toHex (n) {\n\t if (n < 16) return '0' + n.toString(16)\n\t return n.toString(16)\n\t}\n\t\n\tfunction utf8ToBytes (string, units) {\n\t units = units || Infinity\n\t var codePoint\n\t var length = string.length\n\t var leadSurrogate = null\n\t var bytes = []\n\t\n\t for (var i = 0; i < length; i++) {\n\t codePoint = string.charCodeAt(i)\n\t\n\t // is surrogate component\n\t if (codePoint > 0xD7FF && codePoint < 0xE000) {\n\t // last char was a lead\n\t if (!leadSurrogate) {\n\t // no lead yet\n\t if (codePoint > 0xDBFF) {\n\t // unexpected trail\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n\t continue\n\t } else if (i + 1 === length) {\n\t // unpaired lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n\t continue\n\t }\n\t\n\t // valid lead\n\t leadSurrogate = codePoint\n\t\n\t continue\n\t }\n\t\n\t // 2 leads in a row\n\t if (codePoint < 0xDC00) {\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n\t leadSurrogate = codePoint\n\t continue\n\t }\n\t\n\t // valid surrogate pair\n\t codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n\t } else if (leadSurrogate) {\n\t // valid bmp char, but last char was a lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n\t }\n\t\n\t leadSurrogate = null\n\t\n\t // encode utf8\n\t if (codePoint < 0x80) {\n\t if ((units -= 1) < 0) break\n\t bytes.push(codePoint)\n\t } else if (codePoint < 0x800) {\n\t if ((units -= 2) < 0) break\n\t bytes.push(\n\t codePoint >> 0x6 | 0xC0,\n\t codePoint & 0x3F | 0x80\n\t )\n\t } else if (codePoint < 0x10000) {\n\t if ((units -= 3) < 0) break\n\t bytes.push(\n\t codePoint >> 0xC | 0xE0,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t )\n\t } else if (codePoint < 0x110000) {\n\t if ((units -= 4) < 0) break\n\t bytes.push(\n\t codePoint >> 0x12 | 0xF0,\n\t codePoint >> 0xC & 0x3F | 0x80,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t )\n\t } else {\n\t throw new Error('Invalid code point')\n\t }\n\t }\n\t\n\t return bytes\n\t}\n\t\n\tfunction asciiToBytes (str) {\n\t var byteArray = []\n\t for (var i = 0; i < str.length; i++) {\n\t // Node's code seems to be doing this and not & 0x7F..\n\t byteArray.push(str.charCodeAt(i) & 0xFF)\n\t }\n\t return byteArray\n\t}\n\t\n\tfunction utf16leToBytes (str, units) {\n\t var c, hi, lo\n\t var byteArray = []\n\t for (var i = 0; i < str.length; i++) {\n\t if ((units -= 2) < 0) break\n\t\n\t c = str.charCodeAt(i)\n\t hi = c >> 8\n\t lo = c % 256\n\t byteArray.push(lo)\n\t byteArray.push(hi)\n\t }\n\t\n\t return byteArray\n\t}\n\t\n\tfunction base64ToBytes (str) {\n\t return base64.toByteArray(base64clean(str))\n\t}\n\t\n\tfunction blitBuffer (src, dst, offset, length) {\n\t for (var i = 0; i < length; i++) {\n\t if ((i + offset >= dst.length) || (i >= src.length)) break\n\t dst[i + offset] = src[i]\n\t }\n\t return i\n\t}\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1).Buffer, (function() { return this; }())))\n\n/***/ },\n/* 2 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(global, process) {// Copyright Joyent, Inc. and other Node contributors.\n\t//\n\t// Permission is hereby granted, free of charge, to any person obtaining a\n\t// copy of this software and associated documentation files (the\n\t// \"Software\"), to deal in the Software without restriction, including\n\t// without limitation the rights to use, copy, modify, merge, publish,\n\t// distribute, sublicense, and/or sell copies of the Software, and to permit\n\t// persons to whom the Software is furnished to do so, subject to the\n\t// following conditions:\n\t//\n\t// The above copyright notice and this permission notice shall be included\n\t// in all copies or substantial portions of the Software.\n\t//\n\t// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n\t// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n\t// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n\t// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n\t// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n\t// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n\t// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\t\n\tvar formatRegExp = /%[sdj%]/g;\n\texports.format = function(f) {\n\t if (!isString(f)) {\n\t var objects = [];\n\t for (var i = 0; i < arguments.length; i++) {\n\t objects.push(inspect(arguments[i]));\n\t }\n\t return objects.join(' ');\n\t }\n\t\n\t var i = 1;\n\t var args = arguments;\n\t var len = args.length;\n\t var str = String(f).replace(formatRegExp, function(x) {\n\t if (x === '%%') return '%';\n\t if (i >= len) return x;\n\t switch (x) {\n\t case '%s': return String(args[i++]);\n\t case '%d': return Number(args[i++]);\n\t case '%j':\n\t try {\n\t return JSON.stringify(args[i++]);\n\t } catch (_) {\n\t return '[Circular]';\n\t }\n\t default:\n\t return x;\n\t }\n\t });\n\t for (var x = args[i]; i < len; x = args[++i]) {\n\t if (isNull(x) || !isObject(x)) {\n\t str += ' ' + x;\n\t } else {\n\t str += ' ' + inspect(x);\n\t }\n\t }\n\t return str;\n\t};\n\t\n\t\n\t// Mark that a method should not be used.\n\t// Returns a modified function which warns once by default.\n\t// If --no-deprecation is set, then it is a no-op.\n\texports.deprecate = function(fn, msg) {\n\t // Allow for deprecating things in the process of starting up.\n\t if (isUndefined(global.process)) {\n\t return function() {\n\t return exports.deprecate(fn, msg).apply(this, arguments);\n\t };\n\t }\n\t\n\t if (process.noDeprecation === true) {\n\t return fn;\n\t }\n\t\n\t var warned = false;\n\t function deprecated() {\n\t if (!warned) {\n\t if (process.throwDeprecation) {\n\t throw new Error(msg);\n\t } else if (process.traceDeprecation) {\n\t console.trace(msg);\n\t } else {\n\t console.error(msg);\n\t }\n\t warned = true;\n\t }\n\t return fn.apply(this, arguments);\n\t }\n\t\n\t return deprecated;\n\t};\n\t\n\t\n\tvar debugs = {};\n\tvar debugEnviron;\n\texports.debuglog = function(set) {\n\t if (isUndefined(debugEnviron))\n\t debugEnviron = ({\"NODE_ENV\":\"production\"}).NODE_DEBUG || '';\n\t set = set.toUpperCase();\n\t if (!debugs[set]) {\n\t if (new RegExp('\\\\b' + set + '\\\\b', 'i').test(debugEnviron)) {\n\t var pid = process.pid;\n\t debugs[set] = function() {\n\t var msg = exports.format.apply(exports, arguments);\n\t console.error('%s %d: %s', set, pid, msg);\n\t };\n\t } else {\n\t debugs[set] = function() {};\n\t }\n\t }\n\t return debugs[set];\n\t};\n\t\n\t\n\t/**\n\t * Echos the value of a value. Trys to print the value out\n\t * in the best way possible given the different types.\n\t *\n\t * @param {Object} obj The object to print out.\n\t * @param {Object} opts Optional options object that alters the output.\n\t */\n\t/* legacy: obj, showHidden, depth, colors*/\n\tfunction inspect(obj, opts) {\n\t // default options\n\t var ctx = {\n\t seen: [],\n\t stylize: stylizeNoColor\n\t };\n\t // legacy...\n\t if (arguments.length >= 3) ctx.depth = arguments[2];\n\t if (arguments.length >= 4) ctx.colors = arguments[3];\n\t if (isBoolean(opts)) {\n\t // legacy...\n\t ctx.showHidden = opts;\n\t } else if (opts) {\n\t // got an \"options\" object\n\t exports._extend(ctx, opts);\n\t }\n\t // set default options\n\t if (isUndefined(ctx.showHidden)) ctx.showHidden = false;\n\t if (isUndefined(ctx.depth)) ctx.depth = 2;\n\t if (isUndefined(ctx.colors)) ctx.colors = false;\n\t if (isUndefined(ctx.customInspect)) ctx.customInspect = true;\n\t if (ctx.colors) ctx.stylize = stylizeWithColor;\n\t return formatValue(ctx, obj, ctx.depth);\n\t}\n\texports.inspect = inspect;\n\t\n\t\n\t// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics\n\tinspect.colors = {\n\t 'bold' : [1, 22],\n\t 'italic' : [3, 23],\n\t 'underline' : [4, 24],\n\t 'inverse' : [7, 27],\n\t 'white' : [37, 39],\n\t 'grey' : [90, 39],\n\t 'black' : [30, 39],\n\t 'blue' : [34, 39],\n\t 'cyan' : [36, 39],\n\t 'green' : [32, 39],\n\t 'magenta' : [35, 39],\n\t 'red' : [31, 39],\n\t 'yellow' : [33, 39]\n\t};\n\t\n\t// Don't use 'blue' not visible on cmd.exe\n\tinspect.styles = {\n\t 'special': 'cyan',\n\t 'number': 'yellow',\n\t 'boolean': 'yellow',\n\t 'undefined': 'grey',\n\t 'null': 'bold',\n\t 'string': 'green',\n\t 'date': 'magenta',\n\t // \"name\": intentionally not styling\n\t 'regexp': 'red'\n\t};\n\t\n\t\n\tfunction stylizeWithColor(str, styleType) {\n\t var style = inspect.styles[styleType];\n\t\n\t if (style) {\n\t return '\\u001b[' + inspect.colors[style][0] + 'm' + str +\n\t '\\u001b[' + inspect.colors[style][1] + 'm';\n\t } else {\n\t return str;\n\t }\n\t}\n\t\n\t\n\tfunction stylizeNoColor(str, styleType) {\n\t return str;\n\t}\n\t\n\t\n\tfunction arrayToHash(array) {\n\t var hash = {};\n\t\n\t array.forEach(function(val, idx) {\n\t hash[val] = true;\n\t });\n\t\n\t return hash;\n\t}\n\t\n\t\n\tfunction formatValue(ctx, value, recurseTimes) {\n\t // Provide a hook for user-specified inspect functions.\n\t // Check that value is an object with an inspect function on it\n\t if (ctx.customInspect &&\n\t value &&\n\t isFunction(value.inspect) &&\n\t // Filter out the util module, it's inspect function is special\n\t value.inspect !== exports.inspect &&\n\t // Also filter out any prototype objects using the circular check.\n\t !(value.constructor && value.constructor.prototype === value)) {\n\t var ret = value.inspect(recurseTimes, ctx);\n\t if (!isString(ret)) {\n\t ret = formatValue(ctx, ret, recurseTimes);\n\t }\n\t return ret;\n\t }\n\t\n\t // Primitive types cannot have properties\n\t var primitive = formatPrimitive(ctx, value);\n\t if (primitive) {\n\t return primitive;\n\t }\n\t\n\t // Look up the keys of the object.\n\t var keys = Object.keys(value);\n\t var visibleKeys = arrayToHash(keys);\n\t\n\t if (ctx.showHidden) {\n\t keys = Object.getOwnPropertyNames(value);\n\t }\n\t\n\t // IE doesn't make error fields non-enumerable\n\t // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx\n\t if (isError(value)\n\t && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {\n\t return formatError(value);\n\t }\n\t\n\t // Some type of object without properties can be shortcutted.\n\t if (keys.length === 0) {\n\t if (isFunction(value)) {\n\t var name = value.name ? ': ' + value.name : '';\n\t return ctx.stylize('[Function' + name + ']', 'special');\n\t }\n\t if (isRegExp(value)) {\n\t return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n\t }\n\t if (isDate(value)) {\n\t return ctx.stylize(Date.prototype.toString.call(value), 'date');\n\t }\n\t if (isError(value)) {\n\t return formatError(value);\n\t }\n\t }\n\t\n\t var base = '', array = false, braces = ['{', '}'];\n\t\n\t // Make Array say that they are Array\n\t if (isArray(value)) {\n\t array = true;\n\t braces = ['[', ']'];\n\t }\n\t\n\t // Make functions say that they are functions\n\t if (isFunction(value)) {\n\t var n = value.name ? ': ' + value.name : '';\n\t base = ' [Function' + n + ']';\n\t }\n\t\n\t // Make RegExps say that they are RegExps\n\t if (isRegExp(value)) {\n\t base = ' ' + RegExp.prototype.toString.call(value);\n\t }\n\t\n\t // Make dates with properties first say the date\n\t if (isDate(value)) {\n\t base = ' ' + Date.prototype.toUTCString.call(value);\n\t }\n\t\n\t // Make error with message first say the error\n\t if (isError(value)) {\n\t base = ' ' + formatError(value);\n\t }\n\t\n\t if (keys.length === 0 && (!array || value.length == 0)) {\n\t return braces[0] + base + braces[1];\n\t }\n\t\n\t if (recurseTimes < 0) {\n\t if (isRegExp(value)) {\n\t return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n\t } else {\n\t return ctx.stylize('[Object]', 'special');\n\t }\n\t }\n\t\n\t ctx.seen.push(value);\n\t\n\t var output;\n\t if (array) {\n\t output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);\n\t } else {\n\t output = keys.map(function(key) {\n\t return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);\n\t });\n\t }\n\t\n\t ctx.seen.pop();\n\t\n\t return reduceToSingleString(output, base, braces);\n\t}\n\t\n\t\n\tfunction formatPrimitive(ctx, value) {\n\t if (isUndefined(value))\n\t return ctx.stylize('undefined', 'undefined');\n\t if (isString(value)) {\n\t var simple = '\\'' + JSON.stringify(value).replace(/^\"|\"$/g, '')\n\t .replace(/'/g, \"\\\\'\")\n\t .replace(/\\\\\"/g, '\"') + '\\'';\n\t return ctx.stylize(simple, 'string');\n\t }\n\t if (isNumber(value))\n\t return ctx.stylize('' + value, 'number');\n\t if (isBoolean(value))\n\t return ctx.stylize('' + value, 'boolean');\n\t // For some reason typeof null is \"object\", so special case here.\n\t if (isNull(value))\n\t return ctx.stylize('null', 'null');\n\t}\n\t\n\t\n\tfunction formatError(value) {\n\t return '[' + Error.prototype.toString.call(value) + ']';\n\t}\n\t\n\t\n\tfunction formatArray(ctx, value, recurseTimes, visibleKeys, keys) {\n\t var output = [];\n\t for (var i = 0, l = value.length; i < l; ++i) {\n\t if (hasOwnProperty(value, String(i))) {\n\t output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n\t String(i), true));\n\t } else {\n\t output.push('');\n\t }\n\t }\n\t keys.forEach(function(key) {\n\t if (!key.match(/^\\d+$/)) {\n\t output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n\t key, true));\n\t }\n\t });\n\t return output;\n\t}\n\t\n\t\n\tfunction formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {\n\t var name, str, desc;\n\t desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };\n\t if (desc.get) {\n\t if (desc.set) {\n\t str = ctx.stylize('[Getter/Setter]', 'special');\n\t } else {\n\t str = ctx.stylize('[Getter]', 'special');\n\t }\n\t } else {\n\t if (desc.set) {\n\t str = ctx.stylize('[Setter]', 'special');\n\t }\n\t }\n\t if (!hasOwnProperty(visibleKeys, key)) {\n\t name = '[' + key + ']';\n\t }\n\t if (!str) {\n\t if (ctx.seen.indexOf(desc.value) < 0) {\n\t if (isNull(recurseTimes)) {\n\t str = formatValue(ctx, desc.value, null);\n\t } else {\n\t str = formatValue(ctx, desc.value, recurseTimes - 1);\n\t }\n\t if (str.indexOf('\\n') > -1) {\n\t if (array) {\n\t str = str.split('\\n').map(function(line) {\n\t return ' ' + line;\n\t }).join('\\n').substr(2);\n\t } else {\n\t str = '\\n' + str.split('\\n').map(function(line) {\n\t return ' ' + line;\n\t }).join('\\n');\n\t }\n\t }\n\t } else {\n\t str = ctx.stylize('[Circular]', 'special');\n\t }\n\t }\n\t if (isUndefined(name)) {\n\t if (array && key.match(/^\\d+$/)) {\n\t return str;\n\t }\n\t name = JSON.stringify('' + key);\n\t if (name.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)) {\n\t name = name.substr(1, name.length - 2);\n\t name = ctx.stylize(name, 'name');\n\t } else {\n\t name = name.replace(/'/g, \"\\\\'\")\n\t .replace(/\\\\\"/g, '\"')\n\t .replace(/(^\"|\"$)/g, \"'\");\n\t name = ctx.stylize(name, 'string');\n\t }\n\t }\n\t\n\t return name + ': ' + str;\n\t}\n\t\n\t\n\tfunction reduceToSingleString(output, base, braces) {\n\t var numLinesEst = 0;\n\t var length = output.reduce(function(prev, cur) {\n\t numLinesEst++;\n\t if (cur.indexOf('\\n') >= 0) numLinesEst++;\n\t return prev + cur.replace(/\\u001b\\[\\d\\d?m/g, '').length + 1;\n\t }, 0);\n\t\n\t if (length > 60) {\n\t return braces[0] +\n\t (base === '' ? '' : base + '\\n ') +\n\t ' ' +\n\t output.join(',\\n ') +\n\t ' ' +\n\t braces[1];\n\t }\n\t\n\t return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];\n\t}\n\t\n\t\n\t// NOTE: These type checking functions intentionally don't use `instanceof`\n\t// because it is fragile and can be easily faked with `Object.create()`.\n\tfunction isArray(ar) {\n\t return Array.isArray(ar);\n\t}\n\texports.isArray = isArray;\n\t\n\tfunction isBoolean(arg) {\n\t return typeof arg === 'boolean';\n\t}\n\texports.isBoolean = isBoolean;\n\t\n\tfunction isNull(arg) {\n\t return arg === null;\n\t}\n\texports.isNull = isNull;\n\t\n\tfunction isNullOrUndefined(arg) {\n\t return arg == null;\n\t}\n\texports.isNullOrUndefined = isNullOrUndefined;\n\t\n\tfunction isNumber(arg) {\n\t return typeof arg === 'number';\n\t}\n\texports.isNumber = isNumber;\n\t\n\tfunction isString(arg) {\n\t return typeof arg === 'string';\n\t}\n\texports.isString = isString;\n\t\n\tfunction isSymbol(arg) {\n\t return typeof arg === 'symbol';\n\t}\n\texports.isSymbol = isSymbol;\n\t\n\tfunction isUndefined(arg) {\n\t return arg === void 0;\n\t}\n\texports.isUndefined = isUndefined;\n\t\n\tfunction isRegExp(re) {\n\t return isObject(re) && objectToString(re) === '[object RegExp]';\n\t}\n\texports.isRegExp = isRegExp;\n\t\n\tfunction isObject(arg) {\n\t return typeof arg === 'object' && arg !== null;\n\t}\n\texports.isObject = isObject;\n\t\n\tfunction isDate(d) {\n\t return isObject(d) && objectToString(d) === '[object Date]';\n\t}\n\texports.isDate = isDate;\n\t\n\tfunction isError(e) {\n\t return isObject(e) &&\n\t (objectToString(e) === '[object Error]' || e instanceof Error);\n\t}\n\texports.isError = isError;\n\t\n\tfunction isFunction(arg) {\n\t return typeof arg === 'function';\n\t}\n\texports.isFunction = isFunction;\n\t\n\tfunction isPrimitive(arg) {\n\t return arg === null ||\n\t typeof arg === 'boolean' ||\n\t typeof arg === 'number' ||\n\t typeof arg === 'string' ||\n\t typeof arg === 'symbol' || // ES6 symbol\n\t typeof arg === 'undefined';\n\t}\n\texports.isPrimitive = isPrimitive;\n\t\n\texports.isBuffer = __webpack_require__(34);\n\t\n\tfunction objectToString(o) {\n\t return Object.prototype.toString.call(o);\n\t}\n\t\n\t\n\tfunction pad(n) {\n\t return n < 10 ? '0' + n.toString(10) : n.toString(10);\n\t}\n\t\n\t\n\tvar months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',\n\t 'Oct', 'Nov', 'Dec'];\n\t\n\t// 26 Feb 16:19:34\n\tfunction timestamp() {\n\t var d = new Date();\n\t var time = [pad(d.getHours()),\n\t pad(d.getMinutes()),\n\t pad(d.getSeconds())].join(':');\n\t return [d.getDate(), months[d.getMonth()], time].join(' ');\n\t}\n\t\n\t\n\t// log is just a thin wrapper to console.log that prepends a timestamp\n\texports.log = function() {\n\t console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));\n\t};\n\t\n\t\n\t/**\n\t * Inherit the prototype methods from one constructor into another.\n\t *\n\t * The Function.prototype.inherits from lang.js rewritten as a standalone\n\t * function (not on Function.prototype). NOTE: If this file is to be loaded\n\t * during bootstrapping this function needs to be rewritten using some native\n\t * functions as prototype setup using normal JavaScript does not work as\n\t * expected during bootstrapping (see mirror.js in r114903).\n\t *\n\t * @param {function} ctor Constructor function which needs to inherit the\n\t * prototype.\n\t * @param {function} superCtor Constructor function to inherit prototype from.\n\t */\n\texports.inherits = __webpack_require__(21);\n\t\n\texports._extend = function(origin, add) {\n\t // Don't do anything if add isn't an object\n\t if (!add || !isObject(add)) return origin;\n\t\n\t var keys = Object.keys(add);\n\t var i = keys.length;\n\t while (i--) {\n\t origin[keys[i]] = add[keys[i]];\n\t }\n\t return origin;\n\t};\n\t\n\tfunction hasOwnProperty(obj, prop) {\n\t return Object.prototype.hasOwnProperty.call(obj, prop);\n\t}\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()), __webpack_require__(25)))\n\n/***/ },\n/* 3 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(Buffer) {var createHash = __webpack_require__(29)\n\t\n\tvar md5 = toConstructor(__webpack_require__(12))\n\tvar rmd160 = toConstructor(__webpack_require__(26))\n\t\n\tfunction toConstructor (fn) {\n\t return function () {\n\t var buffers = []\n\t var m= {\n\t update: function (data, enc) {\n\t if(!Buffer.isBuffer(data)) data = new Buffer(data, enc)\n\t buffers.push(data)\n\t return this\n\t },\n\t digest: function (enc) {\n\t var buf = Buffer.concat(buffers)\n\t var r = fn(buf)\n\t buffers = null\n\t return enc ? r.toString(enc) : r\n\t }\n\t }\n\t return m\n\t }\n\t}\n\t\n\tmodule.exports = function (alg) {\n\t if('md5' === alg) return new md5()\n\t if('rmd160' === alg) return new rmd160()\n\t return createHash(alg)\n\t}\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1).Buffer))\n\n/***/ },\n/* 4 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar lookup = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\t\n\t;(function (exports) {\n\t\t'use strict';\n\t\n\t var Arr = (typeof Uint8Array !== 'undefined')\n\t ? Uint8Array\n\t : Array\n\t\n\t\tvar PLUS = '+'.charCodeAt(0)\n\t\tvar SLASH = '/'.charCodeAt(0)\n\t\tvar NUMBER = '0'.charCodeAt(0)\n\t\tvar LOWER = 'a'.charCodeAt(0)\n\t\tvar UPPER = 'A'.charCodeAt(0)\n\t\tvar PLUS_URL_SAFE = '-'.charCodeAt(0)\n\t\tvar SLASH_URL_SAFE = '_'.charCodeAt(0)\n\t\n\t\tfunction decode (elt) {\n\t\t\tvar code = elt.charCodeAt(0)\n\t\t\tif (code === PLUS ||\n\t\t\t code === PLUS_URL_SAFE)\n\t\t\t\treturn 62 // '+'\n\t\t\tif (code === SLASH ||\n\t\t\t code === SLASH_URL_SAFE)\n\t\t\t\treturn 63 // '/'\n\t\t\tif (code < NUMBER)\n\t\t\t\treturn -1 //no match\n\t\t\tif (code < NUMBER + 10)\n\t\t\t\treturn code - NUMBER + 26 + 26\n\t\t\tif (code < UPPER + 26)\n\t\t\t\treturn code - UPPER\n\t\t\tif (code < LOWER + 26)\n\t\t\t\treturn code - LOWER + 26\n\t\t}\n\t\n\t\tfunction b64ToByteArray (b64) {\n\t\t\tvar i, j, l, tmp, placeHolders, arr\n\t\n\t\t\tif (b64.length % 4 > 0) {\n\t\t\t\tthrow new Error('Invalid string. Length must be a multiple of 4')\n\t\t\t}\n\t\n\t\t\t// the number of equal signs (place holders)\n\t\t\t// if there are two placeholders, than the two characters before it\n\t\t\t// represent one byte\n\t\t\t// if there is only one, then the three characters before it represent 2 bytes\n\t\t\t// this is just a cheap hack to not do indexOf twice\n\t\t\tvar len = b64.length\n\t\t\tplaceHolders = '=' === b64.charAt(len - 2) ? 2 : '=' === b64.charAt(len - 1) ? 1 : 0\n\t\n\t\t\t// base64 is 4/3 + up to two characters of the original data\n\t\t\tarr = new Arr(b64.length * 3 / 4 - placeHolders)\n\t\n\t\t\t// if there are placeholders, only get up to the last complete 4 chars\n\t\t\tl = placeHolders > 0 ? b64.length - 4 : b64.length\n\t\n\t\t\tvar L = 0\n\t\n\t\t\tfunction push (v) {\n\t\t\t\tarr[L++] = v\n\t\t\t}\n\t\n\t\t\tfor (i = 0, j = 0; i < l; i += 4, j += 3) {\n\t\t\t\ttmp = (decode(b64.charAt(i)) << 18) | (decode(b64.charAt(i + 1)) << 12) | (decode(b64.charAt(i + 2)) << 6) | decode(b64.charAt(i + 3))\n\t\t\t\tpush((tmp & 0xFF0000) >> 16)\n\t\t\t\tpush((tmp & 0xFF00) >> 8)\n\t\t\t\tpush(tmp & 0xFF)\n\t\t\t}\n\t\n\t\t\tif (placeHolders === 2) {\n\t\t\t\ttmp = (decode(b64.charAt(i)) << 2) | (decode(b64.charAt(i + 1)) >> 4)\n\t\t\t\tpush(tmp & 0xFF)\n\t\t\t} else if (placeHolders === 1) {\n\t\t\t\ttmp = (decode(b64.charAt(i)) << 10) | (decode(b64.charAt(i + 1)) << 4) | (decode(b64.charAt(i + 2)) >> 2)\n\t\t\t\tpush((tmp >> 8) & 0xFF)\n\t\t\t\tpush(tmp & 0xFF)\n\t\t\t}\n\t\n\t\t\treturn arr\n\t\t}\n\t\n\t\tfunction uint8ToBase64 (uint8) {\n\t\t\tvar i,\n\t\t\t\textraBytes = uint8.length % 3, // if we have 1 byte left, pad 2 bytes\n\t\t\t\toutput = \"\",\n\t\t\t\ttemp, length\n\t\n\t\t\tfunction encode (num) {\n\t\t\t\treturn lookup.charAt(num)\n\t\t\t}\n\t\n\t\t\tfunction tripletToBase64 (num) {\n\t\t\t\treturn encode(num >> 18 & 0x3F) + encode(num >> 12 & 0x3F) + encode(num >> 6 & 0x3F) + encode(num & 0x3F)\n\t\t\t}\n\t\n\t\t\t// go through the array every three bytes, we'll deal with trailing stuff later\n\t\t\tfor (i = 0, length = uint8.length - extraBytes; i < length; i += 3) {\n\t\t\t\ttemp = (uint8[i] << 16) + (uint8[i + 1] << 8) + (uint8[i + 2])\n\t\t\t\toutput += tripletToBase64(temp)\n\t\t\t}\n\t\n\t\t\t// pad the end with zeros, but make sure to not forget the extra bytes\n\t\t\tswitch (extraBytes) {\n\t\t\t\tcase 1:\n\t\t\t\t\ttemp = uint8[uint8.length - 1]\n\t\t\t\t\toutput += encode(temp >> 2)\n\t\t\t\t\toutput += encode((temp << 4) & 0x3F)\n\t\t\t\t\toutput += '=='\n\t\t\t\t\tbreak\n\t\t\t\tcase 2:\n\t\t\t\t\ttemp = (uint8[uint8.length - 2] << 8) + (uint8[uint8.length - 1])\n\t\t\t\t\toutput += encode(temp >> 10)\n\t\t\t\t\toutput += encode((temp >> 4) & 0x3F)\n\t\t\t\t\toutput += encode((temp << 2) & 0x3F)\n\t\t\t\t\toutput += '='\n\t\t\t\t\tbreak\n\t\t\t}\n\t\n\t\t\treturn output\n\t\t}\n\t\n\t\texports.toByteArray = b64ToByteArray\n\t\texports.fromByteArray = uint8ToBase64\n\t}( false ? (this.base64js = {}) : exports))\n\n\n/***/ },\n/* 5 */\n/***/ function(module, exports) {\n\n\tvar toString = {}.toString;\n\t\n\tmodule.exports = Array.isArray || function (arr) {\n\t return toString.call(arr) == '[object Array]';\n\t};\n\n\n/***/ },\n/* 6 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;(function (global, factory) {\n\t if (true) {\n\t !(__WEBPACK_AMD_DEFINE_ARRAY__ = [module, __webpack_require__(27)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t } else if (typeof exports !== \"undefined\") {\n\t factory(module, require('select'));\n\t } else {\n\t var mod = {\n\t exports: {}\n\t };\n\t factory(mod, global.select);\n\t global.clipboardAction = mod.exports;\n\t }\n\t})(this, function (module, _select) {\n\t 'use strict';\n\t\n\t var _select2 = _interopRequireDefault(_select);\n\t\n\t function _interopRequireDefault(obj) {\n\t return obj && obj.__esModule ? obj : {\n\t default: obj\n\t };\n\t }\n\t\n\t var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n\t return typeof obj;\n\t } : function (obj) {\n\t return obj && typeof Symbol === \"function\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n\t };\n\t\n\t function _classCallCheck(instance, Constructor) {\n\t if (!(instance instanceof Constructor)) {\n\t throw new TypeError(\"Cannot call a class as a function\");\n\t }\n\t }\n\t\n\t var _createClass = function () {\n\t function defineProperties(target, props) {\n\t for (var i = 0; i < props.length; i++) {\n\t var descriptor = props[i];\n\t descriptor.enumerable = descriptor.enumerable || false;\n\t descriptor.configurable = true;\n\t if (\"value\" in descriptor) descriptor.writable = true;\n\t Object.defineProperty(target, descriptor.key, descriptor);\n\t }\n\t }\n\t\n\t return function (Constructor, protoProps, staticProps) {\n\t if (protoProps) defineProperties(Constructor.prototype, protoProps);\n\t if (staticProps) defineProperties(Constructor, staticProps);\n\t return Constructor;\n\t };\n\t }();\n\t\n\t var ClipboardAction = function () {\n\t /**\n\t * @param {Object} options\n\t */\n\t\n\t function ClipboardAction(options) {\n\t _classCallCheck(this, ClipboardAction);\n\t\n\t this.resolveOptions(options);\n\t this.initSelection();\n\t }\n\t\n\t /**\n\t * Defines base properties passed from constructor.\n\t * @param {Object} options\n\t */\n\t\n\t\n\t ClipboardAction.prototype.resolveOptions = function resolveOptions() {\n\t var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\t\n\t this.action = options.action;\n\t this.emitter = options.emitter;\n\t this.target = options.target;\n\t this.text = options.text;\n\t this.trigger = options.trigger;\n\t\n\t this.selectedText = '';\n\t };\n\t\n\t ClipboardAction.prototype.initSelection = function initSelection() {\n\t if (this.text) {\n\t this.selectFake();\n\t } else if (this.target) {\n\t this.selectTarget();\n\t }\n\t };\n\t\n\t ClipboardAction.prototype.selectFake = function selectFake() {\n\t var _this = this;\n\t\n\t var isRTL = document.documentElement.getAttribute('dir') == 'rtl';\n\t\n\t this.removeFake();\n\t\n\t this.fakeHandlerCallback = function () {\n\t return _this.removeFake();\n\t };\n\t this.fakeHandler = document.body.addEventListener('click', this.fakeHandlerCallback) || true;\n\t\n\t this.fakeElem = document.createElement('textarea');\n\t // Prevent zooming on iOS\n\t this.fakeElem.style.fontSize = '12pt';\n\t // Reset box model\n\t this.fakeElem.style.border = '0';\n\t this.fakeElem.style.padding = '0';\n\t this.fakeElem.style.margin = '0';\n\t // Move element out of screen horizontally\n\t this.fakeElem.style.position = 'absolute';\n\t this.fakeElem.style[isRTL ? 'right' : 'left'] = '-9999px';\n\t // Move element to the same position vertically\n\t this.fakeElem.style.top = (window.pageYOffset || document.documentElement.scrollTop) + 'px';\n\t this.fakeElem.setAttribute('readonly', '');\n\t this.fakeElem.value = this.text;\n\t\n\t document.body.appendChild(this.fakeElem);\n\t\n\t this.selectedText = (0, _select2.default)(this.fakeElem);\n\t this.copyText();\n\t };\n\t\n\t ClipboardAction.prototype.removeFake = function removeFake() {\n\t if (this.fakeHandler) {\n\t document.body.removeEventListener('click', this.fakeHandlerCallback);\n\t this.fakeHandler = null;\n\t this.fakeHandlerCallback = null;\n\t }\n\t\n\t if (this.fakeElem) {\n\t document.body.removeChild(this.fakeElem);\n\t this.fakeElem = null;\n\t }\n\t };\n\t\n\t ClipboardAction.prototype.selectTarget = function selectTarget() {\n\t this.selectedText = (0, _select2.default)(this.target);\n\t this.copyText();\n\t };\n\t\n\t ClipboardAction.prototype.copyText = function copyText() {\n\t var succeeded = undefined;\n\t\n\t try {\n\t succeeded = document.execCommand(this.action);\n\t } catch (err) {\n\t succeeded = false;\n\t }\n\t\n\t this.handleResult(succeeded);\n\t };\n\t\n\t ClipboardAction.prototype.handleResult = function handleResult(succeeded) {\n\t if (succeeded) {\n\t this.emitter.emit('success', {\n\t action: this.action,\n\t text: this.selectedText,\n\t trigger: this.trigger,\n\t clearSelection: this.clearSelection.bind(this)\n\t });\n\t } else {\n\t this.emitter.emit('error', {\n\t action: this.action,\n\t trigger: this.trigger,\n\t clearSelection: this.clearSelection.bind(this)\n\t });\n\t }\n\t };\n\t\n\t ClipboardAction.prototype.clearSelection = function clearSelection() {\n\t if (this.target) {\n\t this.target.blur();\n\t }\n\t\n\t window.getSelection().removeAllRanges();\n\t };\n\t\n\t ClipboardAction.prototype.destroy = function destroy() {\n\t this.removeFake();\n\t };\n\t\n\t _createClass(ClipboardAction, [{\n\t key: 'action',\n\t set: function set() {\n\t var action = arguments.length <= 0 || arguments[0] === undefined ? 'copy' : arguments[0];\n\t\n\t this._action = action;\n\t\n\t if (this._action !== 'copy' && this._action !== 'cut') {\n\t throw new Error('Invalid \"action\" value, use either \"copy\" or \"cut\"');\n\t }\n\t },\n\t get: function get() {\n\t return this._action;\n\t }\n\t }, {\n\t key: 'target',\n\t set: function set(target) {\n\t if (target !== undefined) {\n\t if (target && (typeof target === 'undefined' ? 'undefined' : _typeof(target)) === 'object' && target.nodeType === 1) {\n\t if (this.action === 'copy' && target.hasAttribute('disabled')) {\n\t throw new Error('Invalid \"target\" attribute. Please use \"readonly\" instead of \"disabled\" attribute');\n\t }\n\t\n\t if (this.action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {\n\t throw new Error('Invalid \"target\" attribute. You can\\'t cut text from elements with \"readonly\" or \"disabled\" attributes');\n\t }\n\t\n\t this._target = target;\n\t } else {\n\t throw new Error('Invalid \"target\" value, use a valid Element');\n\t }\n\t }\n\t },\n\t get: function get() {\n\t return this._target;\n\t }\n\t }]);\n\t\n\t return ClipboardAction;\n\t }();\n\t\n\t module.exports = ClipboardAction;\n\t});\n\n/***/ },\n/* 7 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;(function (global, factory) {\n\t if (true) {\n\t !(__WEBPACK_AMD_DEFINE_ARRAY__ = [module, __webpack_require__(6), __webpack_require__(33), __webpack_require__(19)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t } else if (typeof exports !== \"undefined\") {\n\t factory(module, require('./clipboard-action'), require('tiny-emitter'), require('good-listener'));\n\t } else {\n\t var mod = {\n\t exports: {}\n\t };\n\t factory(mod, global.clipboardAction, global.tinyEmitter, global.goodListener);\n\t global.clipboard = mod.exports;\n\t }\n\t})(this, function (module, _clipboardAction, _tinyEmitter, _goodListener) {\n\t 'use strict';\n\t\n\t var _clipboardAction2 = _interopRequireDefault(_clipboardAction);\n\t\n\t var _tinyEmitter2 = _interopRequireDefault(_tinyEmitter);\n\t\n\t var _goodListener2 = _interopRequireDefault(_goodListener);\n\t\n\t function _interopRequireDefault(obj) {\n\t return obj && obj.__esModule ? obj : {\n\t default: obj\n\t };\n\t }\n\t\n\t function _classCallCheck(instance, Constructor) {\n\t if (!(instance instanceof Constructor)) {\n\t throw new TypeError(\"Cannot call a class as a function\");\n\t }\n\t }\n\t\n\t function _possibleConstructorReturn(self, call) {\n\t if (!self) {\n\t throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n\t }\n\t\n\t return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n\t }\n\t\n\t function _inherits(subClass, superClass) {\n\t if (typeof superClass !== \"function\" && superClass !== null) {\n\t throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n\t }\n\t\n\t subClass.prototype = Object.create(superClass && superClass.prototype, {\n\t constructor: {\n\t value: subClass,\n\t enumerable: false,\n\t writable: true,\n\t configurable: true\n\t }\n\t });\n\t if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n\t }\n\t\n\t var Clipboard = function (_Emitter) {\n\t _inherits(Clipboard, _Emitter);\n\t\n\t /**\n\t * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n\t * @param {Object} options\n\t */\n\t\n\t function Clipboard(trigger, options) {\n\t _classCallCheck(this, Clipboard);\n\t\n\t var _this = _possibleConstructorReturn(this, _Emitter.call(this));\n\t\n\t _this.resolveOptions(options);\n\t _this.listenClick(trigger);\n\t return _this;\n\t }\n\t\n\t /**\n\t * Defines if attributes would be resolved using internal setter functions\n\t * or custom functions that were passed in the constructor.\n\t * @param {Object} options\n\t */\n\t\n\t\n\t Clipboard.prototype.resolveOptions = function resolveOptions() {\n\t var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\t\n\t this.action = typeof options.action === 'function' ? options.action : this.defaultAction;\n\t this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;\n\t this.text = typeof options.text === 'function' ? options.text : this.defaultText;\n\t };\n\t\n\t Clipboard.prototype.listenClick = function listenClick(trigger) {\n\t var _this2 = this;\n\t\n\t this.listener = (0, _goodListener2.default)(trigger, 'click', function (e) {\n\t return _this2.onClick(e);\n\t });\n\t };\n\t\n\t Clipboard.prototype.onClick = function onClick(e) {\n\t var trigger = e.delegateTarget || e.currentTarget;\n\t\n\t if (this.clipboardAction) {\n\t this.clipboardAction = null;\n\t }\n\t\n\t this.clipboardAction = new _clipboardAction2.default({\n\t action: this.action(trigger),\n\t target: this.target(trigger),\n\t text: this.text(trigger),\n\t trigger: trigger,\n\t emitter: this\n\t });\n\t };\n\t\n\t Clipboard.prototype.defaultAction = function defaultAction(trigger) {\n\t return getAttributeValue('action', trigger);\n\t };\n\t\n\t Clipboard.prototype.defaultTarget = function defaultTarget(trigger) {\n\t var selector = getAttributeValue('target', trigger);\n\t\n\t if (selector) {\n\t return document.querySelector(selector);\n\t }\n\t };\n\t\n\t Clipboard.prototype.defaultText = function defaultText(trigger) {\n\t return getAttributeValue('text', trigger);\n\t };\n\t\n\t Clipboard.prototype.destroy = function destroy() {\n\t this.listener.destroy();\n\t\n\t if (this.clipboardAction) {\n\t this.clipboardAction.destroy();\n\t this.clipboardAction = null;\n\t }\n\t };\n\t\n\t return Clipboard;\n\t }(_tinyEmitter2.default);\n\t\n\t /**\n\t * Helper function to retrieve attribute value.\n\t * @param {String} suffix\n\t * @param {Element} element\n\t */\n\t function getAttributeValue(suffix, element) {\n\t var attribute = 'data-clipboard-' + suffix;\n\t\n\t if (!element.hasAttribute(attribute)) {\n\t return;\n\t }\n\t\n\t return element.getAttribute(attribute);\n\t }\n\t\n\t module.exports = Clipboard;\n\t});\n\n/***/ },\n/* 8 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar matches = __webpack_require__(23)\r\n\t\r\n\tmodule.exports = function (element, selector, checkYoSelf) {\r\n\t var parent = checkYoSelf ? element : element.parentNode\r\n\t\r\n\t while (parent && parent !== document) {\r\n\t if (matches(parent, selector)) return parent;\r\n\t parent = parent.parentNode\r\n\t }\r\n\t}\r\n\n\n/***/ },\n/* 9 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(Buffer) {var createHash = __webpack_require__(3)\n\t\n\tvar zeroBuffer = new Buffer(128)\n\tzeroBuffer.fill(0)\n\t\n\tmodule.exports = Hmac\n\t\n\tfunction Hmac (alg, key) {\n\t if(!(this instanceof Hmac)) return new Hmac(alg, key)\n\t this._opad = opad\n\t this._alg = alg\n\t\n\t var blocksize = (alg === 'sha512') ? 128 : 64\n\t\n\t key = this._key = !Buffer.isBuffer(key) ? new Buffer(key) : key\n\t\n\t if(key.length > blocksize) {\n\t key = createHash(alg).update(key).digest()\n\t } else if(key.length < blocksize) {\n\t key = Buffer.concat([key, zeroBuffer], blocksize)\n\t }\n\t\n\t var ipad = this._ipad = new Buffer(blocksize)\n\t var opad = this._opad = new Buffer(blocksize)\n\t\n\t for(var i = 0; i < blocksize; i++) {\n\t ipad[i] = key[i] ^ 0x36\n\t opad[i] = key[i] ^ 0x5C\n\t }\n\t\n\t this._hash = createHash(alg).update(ipad)\n\t}\n\t\n\tHmac.prototype.update = function (data, enc) {\n\t this._hash.update(data, enc)\n\t return this\n\t}\n\t\n\tHmac.prototype.digest = function (enc) {\n\t var h = this._hash.digest()\n\t return createHash(this._alg).update(this._opad).update(h).digest(enc)\n\t}\n\t\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1).Buffer))\n\n/***/ },\n/* 10 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(Buffer) {var intSize = 4;\n\tvar zeroBuffer = new Buffer(intSize); zeroBuffer.fill(0);\n\tvar chrsz = 8;\n\t\n\tfunction toArray(buf, bigEndian) {\n\t if ((buf.length % intSize) !== 0) {\n\t var len = buf.length + (intSize - (buf.length % intSize));\n\t buf = Buffer.concat([buf, zeroBuffer], len);\n\t }\n\t\n\t var arr = [];\n\t var fn = bigEndian ? buf.readInt32BE : buf.readInt32LE;\n\t for (var i = 0; i < buf.length; i += intSize) {\n\t arr.push(fn.call(buf, i));\n\t }\n\t return arr;\n\t}\n\t\n\tfunction toBuffer(arr, size, bigEndian) {\n\t var buf = new Buffer(size);\n\t var fn = bigEndian ? buf.writeInt32BE : buf.writeInt32LE;\n\t for (var i = 0; i < arr.length; i++) {\n\t fn.call(buf, arr[i], i * 4, true);\n\t }\n\t return buf;\n\t}\n\t\n\tfunction hash(buf, fn, hashSize, bigEndian) {\n\t if (!Buffer.isBuffer(buf)) buf = new Buffer(buf);\n\t var arr = fn(toArray(buf, bigEndian), buf.length * chrsz);\n\t return toBuffer(arr, hashSize, bigEndian);\n\t}\n\t\n\tmodule.exports = { hash: hash };\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1).Buffer))\n\n/***/ },\n/* 11 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(Buffer) {var rng = __webpack_require__(14)\n\t\n\tfunction error () {\n\t var m = [].slice.call(arguments).join(' ')\n\t throw new Error([\n\t m,\n\t 'we accept pull requests',\n\t 'http://github.com/dominictarr/crypto-browserify'\n\t ].join('\\n'))\n\t}\n\t\n\texports.createHash = __webpack_require__(3)\n\t\n\texports.createHmac = __webpack_require__(9)\n\t\n\texports.randomBytes = function(size, callback) {\n\t if (callback && callback.call) {\n\t try {\n\t callback.call(this, undefined, new Buffer(rng(size)))\n\t } catch (err) { callback(err) }\n\t } else {\n\t return new Buffer(rng(size))\n\t }\n\t}\n\t\n\tfunction each(a, f) {\n\t for(var i in a)\n\t f(a[i], i)\n\t}\n\t\n\texports.getHashes = function () {\n\t return ['sha1', 'sha256', 'sha512', 'md5', 'rmd160']\n\t}\n\t\n\tvar p = __webpack_require__(13)(exports)\n\texports.pbkdf2 = p.pbkdf2\n\texports.pbkdf2Sync = p.pbkdf2Sync\n\t\n\t\n\t// the least I can do is make error messages for the rest of the node.js/crypto api.\n\teach(['createCredentials'\n\t, 'createCipher'\n\t, 'createCipheriv'\n\t, 'createDecipher'\n\t, 'createDecipheriv'\n\t, 'createSign'\n\t, 'createVerify'\n\t, 'createDiffieHellman'\n\t], function (name) {\n\t exports[name] = function () {\n\t error('sorry,', name, 'is not implemented yet')\n\t }\n\t})\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1).Buffer))\n\n/***/ },\n/* 12 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/*\n\t * A JavaScript implementation of the RSA Data Security, Inc. MD5 Message\n\t * Digest Algorithm, as defined in RFC 1321.\n\t * Version 2.1 Copyright (C) Paul Johnston 1999 - 2002.\n\t * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n\t * Distributed under the BSD License\n\t * See http://pajhome.org.uk/crypt/md5 for more info.\n\t */\n\t\n\tvar helpers = __webpack_require__(10);\n\t\n\t/*\n\t * Calculate the MD5 of an array of little-endian words, and a bit length\n\t */\n\tfunction core_md5(x, len)\n\t{\n\t /* append padding */\n\t x[len >> 5] |= 0x80 << ((len) % 32);\n\t x[(((len + 64) >>> 9) << 4) + 14] = len;\n\t\n\t var a = 1732584193;\n\t var b = -271733879;\n\t var c = -1732584194;\n\t var d = 271733878;\n\t\n\t for(var i = 0; i < x.length; i += 16)\n\t {\n\t var olda = a;\n\t var oldb = b;\n\t var oldc = c;\n\t var oldd = d;\n\t\n\t a = md5_ff(a, b, c, d, x[i+ 0], 7 , -680876936);\n\t d = md5_ff(d, a, b, c, x[i+ 1], 12, -389564586);\n\t c = md5_ff(c, d, a, b, x[i+ 2], 17, 606105819);\n\t b = md5_ff(b, c, d, a, x[i+ 3], 22, -1044525330);\n\t a = md5_ff(a, b, c, d, x[i+ 4], 7 , -176418897);\n\t d = md5_ff(d, a, b, c, x[i+ 5], 12, 1200080426);\n\t c = md5_ff(c, d, a, b, x[i+ 6], 17, -1473231341);\n\t b = md5_ff(b, c, d, a, x[i+ 7], 22, -45705983);\n\t a = md5_ff(a, b, c, d, x[i+ 8], 7 , 1770035416);\n\t d = md5_ff(d, a, b, c, x[i+ 9], 12, -1958414417);\n\t c = md5_ff(c, d, a, b, x[i+10], 17, -42063);\n\t b = md5_ff(b, c, d, a, x[i+11], 22, -1990404162);\n\t a = md5_ff(a, b, c, d, x[i+12], 7 , 1804603682);\n\t d = md5_ff(d, a, b, c, x[i+13], 12, -40341101);\n\t c = md5_ff(c, d, a, b, x[i+14], 17, -1502002290);\n\t b = md5_ff(b, c, d, a, x[i+15], 22, 1236535329);\n\t\n\t a = md5_gg(a, b, c, d, x[i+ 1], 5 , -165796510);\n\t d = md5_gg(d, a, b, c, x[i+ 6], 9 , -1069501632);\n\t c = md5_gg(c, d, a, b, x[i+11], 14, 643717713);\n\t b = md5_gg(b, c, d, a, x[i+ 0], 20, -373897302);\n\t a = md5_gg(a, b, c, d, x[i+ 5], 5 , -701558691);\n\t d = md5_gg(d, a, b, c, x[i+10], 9 , 38016083);\n\t c = md5_gg(c, d, a, b, x[i+15], 14, -660478335);\n\t b = md5_gg(b, c, d, a, x[i+ 4], 20, -405537848);\n\t a = md5_gg(a, b, c, d, x[i+ 9], 5 , 568446438);\n\t d = md5_gg(d, a, b, c, x[i+14], 9 , -1019803690);\n\t c = md5_gg(c, d, a, b, x[i+ 3], 14, -187363961);\n\t b = md5_gg(b, c, d, a, x[i+ 8], 20, 1163531501);\n\t a = md5_gg(a, b, c, d, x[i+13], 5 , -1444681467);\n\t d = md5_gg(d, a, b, c, x[i+ 2], 9 , -51403784);\n\t c = md5_gg(c, d, a, b, x[i+ 7], 14, 1735328473);\n\t b = md5_gg(b, c, d, a, x[i+12], 20, -1926607734);\n\t\n\t a = md5_hh(a, b, c, d, x[i+ 5], 4 , -378558);\n\t d = md5_hh(d, a, b, c, x[i+ 8], 11, -2022574463);\n\t c = md5_hh(c, d, a, b, x[i+11], 16, 1839030562);\n\t b = md5_hh(b, c, d, a, x[i+14], 23, -35309556);\n\t a = md5_hh(a, b, c, d, x[i+ 1], 4 , -1530992060);\n\t d = md5_hh(d, a, b, c, x[i+ 4], 11, 1272893353);\n\t c = md5_hh(c, d, a, b, x[i+ 7], 16, -155497632);\n\t b = md5_hh(b, c, d, a, x[i+10], 23, -1094730640);\n\t a = md5_hh(a, b, c, d, x[i+13], 4 , 681279174);\n\t d = md5_hh(d, a, b, c, x[i+ 0], 11, -358537222);\n\t c = md5_hh(c, d, a, b, x[i+ 3], 16, -722521979);\n\t b = md5_hh(b, c, d, a, x[i+ 6], 23, 76029189);\n\t a = md5_hh(a, b, c, d, x[i+ 9], 4 , -640364487);\n\t d = md5_hh(d, a, b, c, x[i+12], 11, -421815835);\n\t c = md5_hh(c, d, a, b, x[i+15], 16, 530742520);\n\t b = md5_hh(b, c, d, a, x[i+ 2], 23, -995338651);\n\t\n\t a = md5_ii(a, b, c, d, x[i+ 0], 6 , -198630844);\n\t d = md5_ii(d, a, b, c, x[i+ 7], 10, 1126891415);\n\t c = md5_ii(c, d, a, b, x[i+14], 15, -1416354905);\n\t b = md5_ii(b, c, d, a, x[i+ 5], 21, -57434055);\n\t a = md5_ii(a, b, c, d, x[i+12], 6 , 1700485571);\n\t d = md5_ii(d, a, b, c, x[i+ 3], 10, -1894986606);\n\t c = md5_ii(c, d, a, b, x[i+10], 15, -1051523);\n\t b = md5_ii(b, c, d, a, x[i+ 1], 21, -2054922799);\n\t a = md5_ii(a, b, c, d, x[i+ 8], 6 , 1873313359);\n\t d = md5_ii(d, a, b, c, x[i+15], 10, -30611744);\n\t c = md5_ii(c, d, a, b, x[i+ 6], 15, -1560198380);\n\t b = md5_ii(b, c, d, a, x[i+13], 21, 1309151649);\n\t a = md5_ii(a, b, c, d, x[i+ 4], 6 , -145523070);\n\t d = md5_ii(d, a, b, c, x[i+11], 10, -1120210379);\n\t c = md5_ii(c, d, a, b, x[i+ 2], 15, 718787259);\n\t b = md5_ii(b, c, d, a, x[i+ 9], 21, -343485551);\n\t\n\t a = safe_add(a, olda);\n\t b = safe_add(b, oldb);\n\t c = safe_add(c, oldc);\n\t d = safe_add(d, oldd);\n\t }\n\t return Array(a, b, c, d);\n\t\n\t}\n\t\n\t/*\n\t * These functions implement the four basic operations the algorithm uses.\n\t */\n\tfunction md5_cmn(q, a, b, x, s, t)\n\t{\n\t return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),b);\n\t}\n\tfunction md5_ff(a, b, c, d, x, s, t)\n\t{\n\t return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t);\n\t}\n\tfunction md5_gg(a, b, c, d, x, s, t)\n\t{\n\t return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t);\n\t}\n\tfunction md5_hh(a, b, c, d, x, s, t)\n\t{\n\t return md5_cmn(b ^ c ^ d, a, b, x, s, t);\n\t}\n\tfunction md5_ii(a, b, c, d, x, s, t)\n\t{\n\t return md5_cmn(c ^ (b | (~d)), a, b, x, s, t);\n\t}\n\t\n\t/*\n\t * Add integers, wrapping at 2^32. This uses 16-bit operations internally\n\t * to work around bugs in some JS interpreters.\n\t */\n\tfunction safe_add(x, y)\n\t{\n\t var lsw = (x & 0xFFFF) + (y & 0xFFFF);\n\t var msw = (x >> 16) + (y >> 16) + (lsw >> 16);\n\t return (msw << 16) | (lsw & 0xFFFF);\n\t}\n\t\n\t/*\n\t * Bitwise rotate a 32-bit number to the left.\n\t */\n\tfunction bit_rol(num, cnt)\n\t{\n\t return (num << cnt) | (num >>> (32 - cnt));\n\t}\n\t\n\tmodule.exports = function md5(buf) {\n\t return helpers.hash(buf, core_md5, 16);\n\t};\n\n\n/***/ },\n/* 13 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar pbkdf2Export = __webpack_require__(24)\n\t\n\tmodule.exports = function (crypto, exports) {\n\t exports = exports || {}\n\t\n\t var exported = pbkdf2Export(crypto)\n\t\n\t exports.pbkdf2 = exported.pbkdf2\n\t exports.pbkdf2Sync = exported.pbkdf2Sync\n\t\n\t return exports\n\t}\n\n\n/***/ },\n/* 14 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(global, Buffer) {(function() {\n\t var g = ('undefined' === typeof window ? global : window) || {}\n\t _crypto = (\n\t g.crypto || g.msCrypto || __webpack_require__(35)\n\t )\n\t module.exports = function(size) {\n\t // Modern Browsers\n\t if(_crypto.getRandomValues) {\n\t var bytes = new Buffer(size); //in browserify, this is an extended Uint8Array\n\t /* This will not work in older browsers.\n\t * See https://developer.mozilla.org/en-US/docs/Web/API/window.crypto.getRandomValues\n\t */\n\t \n\t _crypto.getRandomValues(bytes);\n\t return bytes;\n\t }\n\t else if (_crypto.randomBytes) {\n\t return _crypto.randomBytes(size)\n\t }\n\t else\n\t throw new Error(\n\t 'secure random number generation not supported by this browser\\n'+\n\t 'use chrome, FireFox or Internet Explorer 11'\n\t )\n\t }\n\t}())\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()), __webpack_require__(1).Buffer))\n\n/***/ },\n/* 15 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar closest = __webpack_require__(8);\n\t\n\t/**\n\t * Delegates event to a selector.\n\t *\n\t * @param {Element} element\n\t * @param {String} selector\n\t * @param {String} type\n\t * @param {Function} callback\n\t * @param {Boolean} useCapture\n\t * @return {Object}\n\t */\n\tfunction delegate(element, selector, type, callback, useCapture) {\n\t var listenerFn = listener.apply(this, arguments);\n\t\n\t element.addEventListener(type, listenerFn, useCapture);\n\t\n\t return {\n\t destroy: function() {\n\t element.removeEventListener(type, listenerFn, useCapture);\n\t }\n\t }\n\t}\n\t\n\t/**\n\t * Finds closest match and invokes callback.\n\t *\n\t * @param {Element} element\n\t * @param {String} selector\n\t * @param {String} type\n\t * @param {Function} callback\n\t * @return {Function}\n\t */\n\tfunction listener(element, selector, type, callback) {\n\t return function(e) {\n\t e.delegateTarget = closest(e.target, selector, true);\n\t\n\t if (e.delegateTarget) {\n\t callback.call(element, e);\n\t }\n\t }\n\t}\n\t\n\tmodule.exports = delegate;\n\n\n/***/ },\n/* 16 */\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ },\n/* 17 */,\n/* 18 */\n/***/ function(module, exports) {\n\n\t/**\n\t * Check if argument is a HTML element.\n\t *\n\t * @param {Object} value\n\t * @return {Boolean}\n\t */\n\texports.node = function(value) {\n\t return value !== undefined\n\t && value instanceof HTMLElement\n\t && value.nodeType === 1;\n\t};\n\t\n\t/**\n\t * Check if argument is a list of HTML elements.\n\t *\n\t * @param {Object} value\n\t * @return {Boolean}\n\t */\n\texports.nodeList = function(value) {\n\t var type = Object.prototype.toString.call(value);\n\t\n\t return value !== undefined\n\t && (type === '[object NodeList]' || type === '[object HTMLCollection]')\n\t && ('length' in value)\n\t && (value.length === 0 || exports.node(value[0]));\n\t};\n\t\n\t/**\n\t * Check if argument is a string.\n\t *\n\t * @param {Object} value\n\t * @return {Boolean}\n\t */\n\texports.string = function(value) {\n\t return typeof value === 'string'\n\t || value instanceof String;\n\t};\n\t\n\t/**\n\t * Check if argument is a function.\n\t *\n\t * @param {Object} value\n\t * @return {Boolean}\n\t */\n\texports.fn = function(value) {\n\t var type = Object.prototype.toString.call(value);\n\t\n\t return type === '[object Function]';\n\t};\n\n\n/***/ },\n/* 19 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar is = __webpack_require__(18);\n\tvar delegate = __webpack_require__(15);\n\t\n\t/**\n\t * Validates all params and calls the right\n\t * listener function based on its target type.\n\t *\n\t * @param {String|HTMLElement|HTMLCollection|NodeList} target\n\t * @param {String} type\n\t * @param {Function} callback\n\t * @return {Object}\n\t */\n\tfunction listen(target, type, callback) {\n\t if (!target && !type && !callback) {\n\t throw new Error('Missing required arguments');\n\t }\n\t\n\t if (!is.string(type)) {\n\t throw new TypeError('Second argument must be a String');\n\t }\n\t\n\t if (!is.fn(callback)) {\n\t throw new TypeError('Third argument must be a Function');\n\t }\n\t\n\t if (is.node(target)) {\n\t return listenNode(target, type, callback);\n\t }\n\t else if (is.nodeList(target)) {\n\t return listenNodeList(target, type, callback);\n\t }\n\t else if (is.string(target)) {\n\t return listenSelector(target, type, callback);\n\t }\n\t else {\n\t throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');\n\t }\n\t}\n\t\n\t/**\n\t * Adds an event listener to a HTML element\n\t * and returns a remove listener function.\n\t *\n\t * @param {HTMLElement} node\n\t * @param {String} type\n\t * @param {Function} callback\n\t * @return {Object}\n\t */\n\tfunction listenNode(node, type, callback) {\n\t node.addEventListener(type, callback);\n\t\n\t return {\n\t destroy: function() {\n\t node.removeEventListener(type, callback);\n\t }\n\t }\n\t}\n\t\n\t/**\n\t * Add an event listener to a list of HTML elements\n\t * and returns a remove listener function.\n\t *\n\t * @param {NodeList|HTMLCollection} nodeList\n\t * @param {String} type\n\t * @param {Function} callback\n\t * @return {Object}\n\t */\n\tfunction listenNodeList(nodeList, type, callback) {\n\t Array.prototype.forEach.call(nodeList, function(node) {\n\t node.addEventListener(type, callback);\n\t });\n\t\n\t return {\n\t destroy: function() {\n\t Array.prototype.forEach.call(nodeList, function(node) {\n\t node.removeEventListener(type, callback);\n\t });\n\t }\n\t }\n\t}\n\t\n\t/**\n\t * Add an event listener to a selector\n\t * and returns a remove listener function.\n\t *\n\t * @param {String} selector\n\t * @param {String} type\n\t * @param {Function} callback\n\t * @return {Object}\n\t */\n\tfunction listenSelector(selector, type, callback) {\n\t return delegate(document.body, selector, type, callback);\n\t}\n\t\n\tmodule.exports = listen;\n\n\n/***/ },\n/* 20 */\n/***/ function(module, exports) {\n\n\texports.read = function (buffer, offset, isLE, mLen, nBytes) {\n\t var e, m\n\t var eLen = nBytes * 8 - mLen - 1\n\t var eMax = (1 << eLen) - 1\n\t var eBias = eMax >> 1\n\t var nBits = -7\n\t var i = isLE ? (nBytes - 1) : 0\n\t var d = isLE ? -1 : 1\n\t var s = buffer[offset + i]\n\t\n\t i += d\n\t\n\t e = s & ((1 << (-nBits)) - 1)\n\t s >>= (-nBits)\n\t nBits += eLen\n\t for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\t\n\t m = e & ((1 << (-nBits)) - 1)\n\t e >>= (-nBits)\n\t nBits += mLen\n\t for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\t\n\t if (e === 0) {\n\t e = 1 - eBias\n\t } else if (e === eMax) {\n\t return m ? NaN : ((s ? -1 : 1) * Infinity)\n\t } else {\n\t m = m + Math.pow(2, mLen)\n\t e = e - eBias\n\t }\n\t return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n\t}\n\t\n\texports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n\t var e, m, c\n\t var eLen = nBytes * 8 - mLen - 1\n\t var eMax = (1 << eLen) - 1\n\t var eBias = eMax >> 1\n\t var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n\t var i = isLE ? 0 : (nBytes - 1)\n\t var d = isLE ? 1 : -1\n\t var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\t\n\t value = Math.abs(value)\n\t\n\t if (isNaN(value) || value === Infinity) {\n\t m = isNaN(value) ? 1 : 0\n\t e = eMax\n\t } else {\n\t e = Math.floor(Math.log(value) / Math.LN2)\n\t if (value * (c = Math.pow(2, -e)) < 1) {\n\t e--\n\t c *= 2\n\t }\n\t if (e + eBias >= 1) {\n\t value += rt / c\n\t } else {\n\t value += rt * Math.pow(2, 1 - eBias)\n\t }\n\t if (value * c >= 2) {\n\t e++\n\t c /= 2\n\t }\n\t\n\t if (e + eBias >= eMax) {\n\t m = 0\n\t e = eMax\n\t } else if (e + eBias >= 1) {\n\t m = (value * c - 1) * Math.pow(2, mLen)\n\t e = e + eBias\n\t } else {\n\t m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n\t e = 0\n\t }\n\t }\n\t\n\t for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\t\n\t e = (e << mLen) | m\n\t eLen += mLen\n\t for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\t\n\t buffer[offset + i - d] |= s * 128\n\t}\n\n\n/***/ },\n/* 21 */\n/***/ function(module, exports) {\n\n\tif (typeof Object.create === 'function') {\n\t // implementation from standard node.js 'util' module\n\t module.exports = function inherits(ctor, superCtor) {\n\t ctor.super_ = superCtor\n\t ctor.prototype = Object.create(superCtor.prototype, {\n\t constructor: {\n\t value: ctor,\n\t enumerable: false,\n\t writable: true,\n\t configurable: true\n\t }\n\t });\n\t };\n\t} else {\n\t // old school shim for old browsers\n\t module.exports = function inherits(ctor, superCtor) {\n\t ctor.super_ = superCtor\n\t var TempCtor = function () {}\n\t TempCtor.prototype = superCtor.prototype\n\t ctor.prototype = new TempCtor()\n\t ctor.prototype.constructor = ctor\n\t }\n\t}\n\n\n/***/ },\n/* 22 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tvar _crypto = __webpack_require__(11);\n\t\n\tvar _crypto2 = _interopRequireDefault(_crypto);\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\t\n\tmodule.exports = {\n\t generatePassword: _generatePassword,\n\t encryptLogin: _encryptLogin,\n\t renderPassword: _renderPassword,\n\t _deriveHash: _deriveHash,\n\t _prettyPrint: _prettyPrint,\n\t _getTemplate: _getTemplate,\n\t _getCharType: _getCharType,\n\t _getPasswordChar: _getPasswordChar,\n\t _string2charCodes: _string2charCodes\n\t};\n\t\n\tfunction _generatePassword(login, masterPassword, site, options) {\n\t return new Promise(function (resolve, reject) {\n\t if (!login || !masterPassword || !site) {\n\t reject('generatePassword invalid parameter');\n\t }\n\t\n\t _encryptLogin(login, masterPassword).then(function (hash) {\n\t resolve(_renderPassword(hash, site, options));\n\t });\n\t });\n\t}\n\t\n\tfunction _renderPassword(hash, site, options) {\n\t var derivedHash = _deriveHash(hash, site, options);\n\t var template = _getTemplate(options.password.settings);\n\t return _prettyPrint(derivedHash, template);\n\t}\n\t\n\tfunction _encryptLogin(login, masterPassword) {\n\t return new Promise(function (resolve, reject) {\n\t if (!login || !masterPassword) {\n\t reject('encryptLogin parameter could not be empty');\n\t }\n\t var iterations = 8192;\n\t var keylen = 32;\n\t _crypto2.default.pbkdf2(masterPassword, login, iterations, keylen, 'sha256', function (error, key) {\n\t if (error) {\n\t reject('error in pbkdf2');\n\t } else {\n\t resolve(key.toString('hex'));\n\t }\n\t });\n\t });\n\t}\n\t\n\tfunction _deriveHash(hash, site) {\n\t var _ref = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2];\n\t\n\t var _ref$password = _ref.password;\n\t var password = _ref$password === undefined ? { length: 12 } : _ref$password;\n\t var _ref$counter = _ref.counter;\n\t var counter = _ref$counter === undefined ? 1 : _ref$counter;\n\t\n\t var salt = site + counter.toString();\n\t var derivedHash = _crypto2.default.createHmac('sha256', hash).update(salt).digest('hex');\n\t return derivedHash.substring(0, password.length);\n\t}\n\t\n\tfunction _getTemplate() {\n\t var passwordTypes = arguments.length <= 0 || arguments[0] === undefined ? ['strong'] : arguments[0];\n\t\n\t var passwordTypesInfo = {\n\t lowercase: { value: 'vc', order: 1 },\n\t uppercase: { value: 'VC', order: 2 },\n\t numbers: { value: 'n', order: 3 },\n\t symbols: { value: 's', order: 4 },\n\t strong: { value: 'Cvcvns', order: 5 }\n\t };\n\t return passwordTypes.map(function (passwordType) {\n\t return passwordTypesInfo[passwordType];\n\t }).sort(function (passwordType1, passwordType2) {\n\t return passwordType1.order > passwordType2.order;\n\t }).map(function (passwordType) {\n\t return passwordType.value;\n\t }).join('');\n\t}\n\t\n\tfunction _prettyPrint(hash, template) {\n\t var password = '';\n\t\n\t _string2charCodes(hash).forEach(function (charCode, index) {\n\t var charType = _getCharType(template, index);\n\t password += _getPasswordChar(charType, charCode);\n\t });\n\t return password;\n\t}\n\t\n\tfunction _string2charCodes(text) {\n\t var charCodes = [];\n\t for (var i = 0; i < text.length; i++) {\n\t charCodes.push(text.charCodeAt(i));\n\t }\n\t return charCodes;\n\t}\n\t\n\tfunction _getCharType(template, index) {\n\t return template[index % template.length];\n\t}\n\t\n\tfunction _getPasswordChar(charType, index) {\n\t var passwordsChars = {\n\t V: 'AEIOUY',\n\t C: 'BCDFGHJKLMNPQRSTVWXZ',\n\t v: 'aeiouy',\n\t c: 'bcdfghjklmnpqrstvwxz',\n\t A: 'AEIOUYBCDFGHJKLMNPQRSTVWXZ',\n\t a: 'AEIOUYaeiouyBCDFGHJKLMNPQRSTVWXZbcdfghjklmnpqrstvwxz',\n\t n: '0123456789',\n\t s: '@&%?,=[]_:-+*$#!\\'^~;()/.',\n\t x: 'AEIOUYaeiouyBCDFGHJKLMNPQRSTVWXZbcdfghjklmnpqrstvwxz0123456789@&%?,=[]_:-+*$#!\\'^~;()/.'\n\t };\n\t var passwordChar = passwordsChars[charType];\n\t return passwordChar[index % passwordChar.length];\n\t}\n\n\n/***/ },\n/* 23 */\n/***/ function(module, exports) {\n\n\t\r\n\t/**\r\n\t * Element prototype.\r\n\t */\r\n\t\r\n\tvar proto = Element.prototype;\r\n\t\r\n\t/**\r\n\t * Vendor function.\r\n\t */\r\n\t\r\n\tvar vendor = proto.matchesSelector\r\n\t || proto.webkitMatchesSelector\r\n\t || proto.mozMatchesSelector\r\n\t || proto.msMatchesSelector\r\n\t || proto.oMatchesSelector;\r\n\t\r\n\t/**\r\n\t * Expose `match()`.\r\n\t */\r\n\t\r\n\tmodule.exports = match;\r\n\t\r\n\t/**\r\n\t * Match `el` to `selector`.\r\n\t *\r\n\t * @param {Element} el\r\n\t * @param {String} selector\r\n\t * @return {Boolean}\r\n\t * @api public\r\n\t */\r\n\t\r\n\tfunction match(el, selector) {\r\n\t if (vendor) return vendor.call(el, selector);\r\n\t var nodes = el.parentNode.querySelectorAll(selector);\r\n\t for (var i = 0; i < nodes.length; ++i) {\r\n\t if (nodes[i] == el) return true;\r\n\t }\r\n\t return false;\r\n\t}\n\n/***/ },\n/* 24 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(Buffer) {module.exports = function(crypto) {\n\t function pbkdf2(password, salt, iterations, keylen, digest, callback) {\n\t if ('function' === typeof digest) {\n\t callback = digest\n\t digest = undefined\n\t }\n\t\n\t if ('function' !== typeof callback)\n\t throw new Error('No callback provided to pbkdf2')\n\t\n\t setTimeout(function() {\n\t var result\n\t\n\t try {\n\t result = pbkdf2Sync(password, salt, iterations, keylen, digest)\n\t } catch (e) {\n\t return callback(e)\n\t }\n\t\n\t callback(undefined, result)\n\t })\n\t }\n\t\n\t function pbkdf2Sync(password, salt, iterations, keylen, digest) {\n\t if ('number' !== typeof iterations)\n\t throw new TypeError('Iterations not a number')\n\t\n\t if (iterations < 0)\n\t throw new TypeError('Bad iterations')\n\t\n\t if ('number' !== typeof keylen)\n\t throw new TypeError('Key length not a number')\n\t\n\t if (keylen < 0)\n\t throw new TypeError('Bad key length')\n\t\n\t digest = digest || 'sha1'\n\t\n\t if (!Buffer.isBuffer(password)) password = new Buffer(password)\n\t if (!Buffer.isBuffer(salt)) salt = new Buffer(salt)\n\t\n\t var hLen, l = 1, r, T\n\t var DK = new Buffer(keylen)\n\t var block1 = new Buffer(salt.length + 4)\n\t salt.copy(block1, 0, 0, salt.length)\n\t\n\t for (var i = 1; i <= l; i++) {\n\t block1.writeUInt32BE(i, salt.length)\n\t\n\t var U = crypto.createHmac(digest, password).update(block1).digest()\n\t\n\t if (!hLen) {\n\t hLen = U.length\n\t T = new Buffer(hLen)\n\t l = Math.ceil(keylen / hLen)\n\t r = keylen - (l - 1) * hLen\n\t\n\t if (keylen > (Math.pow(2, 32) - 1) * hLen)\n\t throw new TypeError('keylen exceeds maximum length')\n\t }\n\t\n\t U.copy(T, 0, 0, hLen)\n\t\n\t for (var j = 1; j < iterations; j++) {\n\t U = crypto.createHmac(digest, password).update(U).digest()\n\t\n\t for (var k = 0; k < hLen; k++) {\n\t T[k] ^= U[k]\n\t }\n\t }\n\t\n\t var destPos = (i - 1) * hLen\n\t var len = (i == l ? r : hLen)\n\t T.copy(DK, destPos, 0, len)\n\t }\n\t\n\t return DK\n\t }\n\t\n\t return {\n\t pbkdf2: pbkdf2,\n\t pbkdf2Sync: pbkdf2Sync\n\t }\n\t}\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1).Buffer))\n\n/***/ },\n/* 25 */\n/***/ function(module, exports) {\n\n\t// shim for using process in browser\n\t\n\tvar process = module.exports = {};\n\t\n\t// cached from whatever global is present so that test runners that stub it\n\t// don't break things. But we need to wrap it in a try catch in case it is\n\t// wrapped in strict mode code which doesn't define any globals. It's inside a\n\t// function because try/catches deoptimize in certain engines.\n\t\n\tvar cachedSetTimeout;\n\tvar cachedClearTimeout;\n\t\n\t(function () {\n\t try {\n\t cachedSetTimeout = setTimeout;\n\t } catch (e) {\n\t cachedSetTimeout = function () {\n\t throw new Error('setTimeout is not defined');\n\t }\n\t }\n\t try {\n\t cachedClearTimeout = clearTimeout;\n\t } catch (e) {\n\t cachedClearTimeout = function () {\n\t throw new Error('clearTimeout is not defined');\n\t }\n\t }\n\t} ())\n\tvar queue = [];\n\tvar draining = false;\n\tvar currentQueue;\n\tvar queueIndex = -1;\n\t\n\tfunction cleanUpNextTick() {\n\t if (!draining || !currentQueue) {\n\t return;\n\t }\n\t draining = false;\n\t if (currentQueue.length) {\n\t queue = currentQueue.concat(queue);\n\t } else {\n\t queueIndex = -1;\n\t }\n\t if (queue.length) {\n\t drainQueue();\n\t }\n\t}\n\t\n\tfunction drainQueue() {\n\t if (draining) {\n\t return;\n\t }\n\t var timeout = cachedSetTimeout(cleanUpNextTick);\n\t draining = true;\n\t\n\t var len = queue.length;\n\t while(len) {\n\t currentQueue = queue;\n\t queue = [];\n\t while (++queueIndex < len) {\n\t if (currentQueue) {\n\t currentQueue[queueIndex].run();\n\t }\n\t }\n\t queueIndex = -1;\n\t len = queue.length;\n\t }\n\t currentQueue = null;\n\t draining = false;\n\t cachedClearTimeout(timeout);\n\t}\n\t\n\tprocess.nextTick = function (fun) {\n\t var args = new Array(arguments.length - 1);\n\t if (arguments.length > 1) {\n\t for (var i = 1; i < arguments.length; i++) {\n\t args[i - 1] = arguments[i];\n\t }\n\t }\n\t queue.push(new Item(fun, args));\n\t if (queue.length === 1 && !draining) {\n\t cachedSetTimeout(drainQueue, 0);\n\t }\n\t};\n\t\n\t// v8 likes predictible objects\n\tfunction Item(fun, array) {\n\t this.fun = fun;\n\t this.array = array;\n\t}\n\tItem.prototype.run = function () {\n\t this.fun.apply(null, this.array);\n\t};\n\tprocess.title = 'browser';\n\tprocess.browser = true;\n\tprocess.env = {};\n\tprocess.argv = [];\n\tprocess.version = ''; // empty string to avoid regexp issues\n\tprocess.versions = {};\n\t\n\tfunction noop() {}\n\t\n\tprocess.on = noop;\n\tprocess.addListener = noop;\n\tprocess.once = noop;\n\tprocess.off = noop;\n\tprocess.removeListener = noop;\n\tprocess.removeAllListeners = noop;\n\tprocess.emit = noop;\n\t\n\tprocess.binding = function (name) {\n\t throw new Error('process.binding is not supported');\n\t};\n\t\n\tprocess.cwd = function () { return '/' };\n\tprocess.chdir = function (dir) {\n\t throw new Error('process.chdir is not supported');\n\t};\n\tprocess.umask = function() { return 0; };\n\n\n/***/ },\n/* 26 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(Buffer) {\n\tmodule.exports = ripemd160\n\t\n\t\n\t\n\t/*\n\tCryptoJS v3.1.2\n\tcode.google.com/p/crypto-js\n\t(c) 2009-2013 by Jeff Mott. All rights reserved.\n\tcode.google.com/p/crypto-js/wiki/License\n\t*/\n\t/** @preserve\n\t(c) 2012 by Cédric Mesnil. All rights reserved.\n\t\n\tRedistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n\t\n\t - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n\t - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n\t\n\tTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\t*/\n\t\n\t// Constants table\n\tvar zl = [\n\t 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,\n\t 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8,\n\t 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12,\n\t 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2,\n\t 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13];\n\tvar zr = [\n\t 5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12,\n\t 6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2,\n\t 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13,\n\t 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14,\n\t 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11];\n\tvar sl = [\n\t 11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8,\n\t 7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12,\n\t 11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5,\n\t 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12,\n\t 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6 ];\n\tvar sr = [\n\t 8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6,\n\t 9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11,\n\t 9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5,\n\t 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8,\n\t 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11 ];\n\t\n\tvar hl = [ 0x00000000, 0x5A827999, 0x6ED9EBA1, 0x8F1BBCDC, 0xA953FD4E];\n\tvar hr = [ 0x50A28BE6, 0x5C4DD124, 0x6D703EF3, 0x7A6D76E9, 0x00000000];\n\t\n\tvar bytesToWords = function (bytes) {\n\t var words = [];\n\t for (var i = 0, b = 0; i < bytes.length; i++, b += 8) {\n\t words[b >>> 5] |= bytes[i] << (24 - b % 32);\n\t }\n\t return words;\n\t};\n\t\n\tvar wordsToBytes = function (words) {\n\t var bytes = [];\n\t for (var b = 0; b < words.length * 32; b += 8) {\n\t bytes.push((words[b >>> 5] >>> (24 - b % 32)) & 0xFF);\n\t }\n\t return bytes;\n\t};\n\t\n\tvar processBlock = function (H, M, offset) {\n\t\n\t // Swap endian\n\t for (var i = 0; i < 16; i++) {\n\t var offset_i = offset + i;\n\t var M_offset_i = M[offset_i];\n\t\n\t // Swap\n\t M[offset_i] = (\n\t (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) |\n\t (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00)\n\t );\n\t }\n\t\n\t // Working variables\n\t var al, bl, cl, dl, el;\n\t var ar, br, cr, dr, er;\n\t\n\t ar = al = H[0];\n\t br = bl = H[1];\n\t cr = cl = H[2];\n\t dr = dl = H[3];\n\t er = el = H[4];\n\t // Computation\n\t var t;\n\t for (var i = 0; i < 80; i += 1) {\n\t t = (al + M[offset+zl[i]])|0;\n\t if (i<16){\n\t t += f1(bl,cl,dl) + hl[0];\n\t } else if (i<32) {\n\t t += f2(bl,cl,dl) + hl[1];\n\t } else if (i<48) {\n\t t += f3(bl,cl,dl) + hl[2];\n\t } else if (i<64) {\n\t t += f4(bl,cl,dl) + hl[3];\n\t } else {// if (i<80) {\n\t t += f5(bl,cl,dl) + hl[4];\n\t }\n\t t = t|0;\n\t t = rotl(t,sl[i]);\n\t t = (t+el)|0;\n\t al = el;\n\t el = dl;\n\t dl = rotl(cl, 10);\n\t cl = bl;\n\t bl = t;\n\t\n\t t = (ar + M[offset+zr[i]])|0;\n\t if (i<16){\n\t t += f5(br,cr,dr) + hr[0];\n\t } else if (i<32) {\n\t t += f4(br,cr,dr) + hr[1];\n\t } else if (i<48) {\n\t t += f3(br,cr,dr) + hr[2];\n\t } else if (i<64) {\n\t t += f2(br,cr,dr) + hr[3];\n\t } else {// if (i<80) {\n\t t += f1(br,cr,dr) + hr[4];\n\t }\n\t t = t|0;\n\t t = rotl(t,sr[i]) ;\n\t t = (t+er)|0;\n\t ar = er;\n\t er = dr;\n\t dr = rotl(cr, 10);\n\t cr = br;\n\t br = t;\n\t }\n\t // Intermediate hash value\n\t t = (H[1] + cl + dr)|0;\n\t H[1] = (H[2] + dl + er)|0;\n\t H[2] = (H[3] + el + ar)|0;\n\t H[3] = (H[4] + al + br)|0;\n\t H[4] = (H[0] + bl + cr)|0;\n\t H[0] = t;\n\t};\n\t\n\tfunction f1(x, y, z) {\n\t return ((x) ^ (y) ^ (z));\n\t}\n\t\n\tfunction f2(x, y, z) {\n\t return (((x)&(y)) | ((~x)&(z)));\n\t}\n\t\n\tfunction f3(x, y, z) {\n\t return (((x) | (~(y))) ^ (z));\n\t}\n\t\n\tfunction f4(x, y, z) {\n\t return (((x) & (z)) | ((y)&(~(z))));\n\t}\n\t\n\tfunction f5(x, y, z) {\n\t return ((x) ^ ((y) |(~(z))));\n\t}\n\t\n\tfunction rotl(x,n) {\n\t return (x<>>(32-n));\n\t}\n\t\n\tfunction ripemd160(message) {\n\t var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];\n\t\n\t if (typeof message == 'string')\n\t message = new Buffer(message, 'utf8');\n\t\n\t var m = bytesToWords(message);\n\t\n\t var nBitsLeft = message.length * 8;\n\t var nBitsTotal = message.length * 8;\n\t\n\t // Add padding\n\t m[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32);\n\t m[(((nBitsLeft + 64) >>> 9) << 4) + 14] = (\n\t (((nBitsTotal << 8) | (nBitsTotal >>> 24)) & 0x00ff00ff) |\n\t (((nBitsTotal << 24) | (nBitsTotal >>> 8)) & 0xff00ff00)\n\t );\n\t\n\t for (var i=0 ; i>> 24)) & 0x00ff00ff) |\n\t (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00);\n\t }\n\t\n\t var digestbytes = wordsToBytes(H);\n\t return new Buffer(digestbytes);\n\t}\n\t\n\t\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1).Buffer))\n\n/***/ },\n/* 27 */\n/***/ function(module, exports) {\n\n\tfunction select(element) {\n\t var selectedText;\n\t\n\t if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n\t element.focus();\n\t element.setSelectionRange(0, element.value.length);\n\t\n\t selectedText = element.value;\n\t }\n\t else {\n\t if (element.hasAttribute('contenteditable')) {\n\t element.focus();\n\t }\n\t\n\t var selection = window.getSelection();\n\t var range = document.createRange();\n\t\n\t range.selectNodeContents(element);\n\t selection.removeAllRanges();\n\t selection.addRange(range);\n\t\n\t selectedText = selection.toString();\n\t }\n\t\n\t return selectedText;\n\t}\n\t\n\tmodule.exports = select;\n\n\n/***/ },\n/* 28 */\n/***/ function(module, exports) {\n\n\tmodule.exports = function (Buffer) {\n\t\n\t //prototype class for hash functions\n\t function Hash (blockSize, finalSize) {\n\t this._block = new Buffer(blockSize) //new Uint32Array(blockSize/4)\n\t this._finalSize = finalSize\n\t this._blockSize = blockSize\n\t this._len = 0\n\t this._s = 0\n\t }\n\t\n\t Hash.prototype.init = function () {\n\t this._s = 0\n\t this._len = 0\n\t }\n\t\n\t Hash.prototype.update = function (data, enc) {\n\t if (\"string\" === typeof data) {\n\t enc = enc || \"utf8\"\n\t data = new Buffer(data, enc)\n\t }\n\t\n\t var l = this._len += data.length\n\t var s = this._s = (this._s || 0)\n\t var f = 0\n\t var buffer = this._block\n\t\n\t while (s < l) {\n\t var t = Math.min(data.length, f + this._blockSize - (s % this._blockSize))\n\t var ch = (t - f)\n\t\n\t for (var i = 0; i < ch; i++) {\n\t buffer[(s % this._blockSize) + i] = data[i + f]\n\t }\n\t\n\t s += ch\n\t f += ch\n\t\n\t if ((s % this._blockSize) === 0) {\n\t this._update(buffer)\n\t }\n\t }\n\t this._s = s\n\t\n\t return this\n\t }\n\t\n\t Hash.prototype.digest = function (enc) {\n\t // Suppose the length of the message M, in bits, is l\n\t var l = this._len * 8\n\t\n\t // Append the bit 1 to the end of the message\n\t this._block[this._len % this._blockSize] = 0x80\n\t\n\t // and then k zero bits, where k is the smallest non-negative solution to the equation (l + 1 + k) === finalSize mod blockSize\n\t this._block.fill(0, this._len % this._blockSize + 1)\n\t\n\t if (l % (this._blockSize * 8) >= this._finalSize * 8) {\n\t this._update(this._block)\n\t this._block.fill(0)\n\t }\n\t\n\t // to this append the block which is equal to the number l written in binary\n\t // TODO: handle case where l is > Math.pow(2, 29)\n\t this._block.writeInt32BE(l, this._blockSize - 4)\n\t\n\t var hash = this._update(this._block) || this._hash()\n\t\n\t return enc ? hash.toString(enc) : hash\n\t }\n\t\n\t Hash.prototype._update = function () {\n\t throw new Error('_update must be implemented by subclass')\n\t }\n\t\n\t return Hash\n\t}\n\n\n/***/ },\n/* 29 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar exports = module.exports = function (alg) {\n\t var Alg = exports[alg]\n\t if(!Alg) throw new Error(alg + ' is not supported (we accept pull requests)')\n\t return new Alg()\n\t}\n\t\n\tvar Buffer = __webpack_require__(1).Buffer\n\tvar Hash = __webpack_require__(28)(Buffer)\n\t\n\texports.sha1 = __webpack_require__(30)(Buffer, Hash)\n\texports.sha256 = __webpack_require__(31)(Buffer, Hash)\n\texports.sha512 = __webpack_require__(32)(Buffer, Hash)\n\n\n/***/ },\n/* 30 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/*\n\t * A JavaScript implementation of the Secure Hash Algorithm, SHA-1, as defined\n\t * in FIPS PUB 180-1\n\t * Version 2.1a Copyright Paul Johnston 2000 - 2002.\n\t * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n\t * Distributed under the BSD License\n\t * See http://pajhome.org.uk/crypt/md5 for details.\n\t */\n\t\n\tvar inherits = __webpack_require__(2).inherits\n\t\n\tmodule.exports = function (Buffer, Hash) {\n\t\n\t var A = 0|0\n\t var B = 4|0\n\t var C = 8|0\n\t var D = 12|0\n\t var E = 16|0\n\t\n\t var W = new (typeof Int32Array === 'undefined' ? Array : Int32Array)(80)\n\t\n\t var POOL = []\n\t\n\t function Sha1 () {\n\t if(POOL.length)\n\t return POOL.pop().init()\n\t\n\t if(!(this instanceof Sha1)) return new Sha1()\n\t this._w = W\n\t Hash.call(this, 16*4, 14*4)\n\t\n\t this._h = null\n\t this.init()\n\t }\n\t\n\t inherits(Sha1, Hash)\n\t\n\t Sha1.prototype.init = function () {\n\t this._a = 0x67452301\n\t this._b = 0xefcdab89\n\t this._c = 0x98badcfe\n\t this._d = 0x10325476\n\t this._e = 0xc3d2e1f0\n\t\n\t Hash.prototype.init.call(this)\n\t return this\n\t }\n\t\n\t Sha1.prototype._POOL = POOL\n\t Sha1.prototype._update = function (X) {\n\t\n\t var a, b, c, d, e, _a, _b, _c, _d, _e\n\t\n\t a = _a = this._a\n\t b = _b = this._b\n\t c = _c = this._c\n\t d = _d = this._d\n\t e = _e = this._e\n\t\n\t var w = this._w\n\t\n\t for(var j = 0; j < 80; j++) {\n\t var W = w[j] = j < 16 ? X.readInt32BE(j*4)\n\t : rol(w[j - 3] ^ w[j - 8] ^ w[j - 14] ^ w[j - 16], 1)\n\t\n\t var t = add(\n\t add(rol(a, 5), sha1_ft(j, b, c, d)),\n\t add(add(e, W), sha1_kt(j))\n\t )\n\t\n\t e = d\n\t d = c\n\t c = rol(b, 30)\n\t b = a\n\t a = t\n\t }\n\t\n\t this._a = add(a, _a)\n\t this._b = add(b, _b)\n\t this._c = add(c, _c)\n\t this._d = add(d, _d)\n\t this._e = add(e, _e)\n\t }\n\t\n\t Sha1.prototype._hash = function () {\n\t if(POOL.length < 100) POOL.push(this)\n\t var H = new Buffer(20)\n\t //console.log(this._a|0, this._b|0, this._c|0, this._d|0, this._e|0)\n\t H.writeInt32BE(this._a|0, A)\n\t H.writeInt32BE(this._b|0, B)\n\t H.writeInt32BE(this._c|0, C)\n\t H.writeInt32BE(this._d|0, D)\n\t H.writeInt32BE(this._e|0, E)\n\t return H\n\t }\n\t\n\t /*\n\t * Perform the appropriate triplet combination function for the current\n\t * iteration\n\t */\n\t function sha1_ft(t, b, c, d) {\n\t if(t < 20) return (b & c) | ((~b) & d);\n\t if(t < 40) return b ^ c ^ d;\n\t if(t < 60) return (b & c) | (b & d) | (c & d);\n\t return b ^ c ^ d;\n\t }\n\t\n\t /*\n\t * Determine the appropriate additive constant for the current iteration\n\t */\n\t function sha1_kt(t) {\n\t return (t < 20) ? 1518500249 : (t < 40) ? 1859775393 :\n\t (t < 60) ? -1894007588 : -899497514;\n\t }\n\t\n\t /*\n\t * Add integers, wrapping at 2^32. This uses 16-bit operations internally\n\t * to work around bugs in some JS interpreters.\n\t * //dominictarr: this is 10 years old, so maybe this can be dropped?)\n\t *\n\t */\n\t function add(x, y) {\n\t return (x + y ) | 0\n\t //lets see how this goes on testling.\n\t // var lsw = (x & 0xFFFF) + (y & 0xFFFF);\n\t // var msw = (x >> 16) + (y >> 16) + (lsw >> 16);\n\t // return (msw << 16) | (lsw & 0xFFFF);\n\t }\n\t\n\t /*\n\t * Bitwise rotate a 32-bit number to the left.\n\t */\n\t function rol(num, cnt) {\n\t return (num << cnt) | (num >>> (32 - cnt));\n\t }\n\t\n\t return Sha1\n\t}\n\n\n/***/ },\n/* 31 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t\n\t/**\n\t * A JavaScript implementation of the Secure Hash Algorithm, SHA-256, as defined\n\t * in FIPS 180-2\n\t * Version 2.2-beta Copyright Angel Marin, Paul Johnston 2000 - 2009.\n\t * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n\t *\n\t */\n\t\n\tvar inherits = __webpack_require__(2).inherits\n\t\n\tmodule.exports = function (Buffer, Hash) {\n\t\n\t var K = [\n\t 0x428A2F98, 0x71374491, 0xB5C0FBCF, 0xE9B5DBA5,\n\t 0x3956C25B, 0x59F111F1, 0x923F82A4, 0xAB1C5ED5,\n\t 0xD807AA98, 0x12835B01, 0x243185BE, 0x550C7DC3,\n\t 0x72BE5D74, 0x80DEB1FE, 0x9BDC06A7, 0xC19BF174,\n\t 0xE49B69C1, 0xEFBE4786, 0x0FC19DC6, 0x240CA1CC,\n\t 0x2DE92C6F, 0x4A7484AA, 0x5CB0A9DC, 0x76F988DA,\n\t 0x983E5152, 0xA831C66D, 0xB00327C8, 0xBF597FC7,\n\t 0xC6E00BF3, 0xD5A79147, 0x06CA6351, 0x14292967,\n\t 0x27B70A85, 0x2E1B2138, 0x4D2C6DFC, 0x53380D13,\n\t 0x650A7354, 0x766A0ABB, 0x81C2C92E, 0x92722C85,\n\t 0xA2BFE8A1, 0xA81A664B, 0xC24B8B70, 0xC76C51A3,\n\t 0xD192E819, 0xD6990624, 0xF40E3585, 0x106AA070,\n\t 0x19A4C116, 0x1E376C08, 0x2748774C, 0x34B0BCB5,\n\t 0x391C0CB3, 0x4ED8AA4A, 0x5B9CCA4F, 0x682E6FF3,\n\t 0x748F82EE, 0x78A5636F, 0x84C87814, 0x8CC70208,\n\t 0x90BEFFFA, 0xA4506CEB, 0xBEF9A3F7, 0xC67178F2\n\t ]\n\t\n\t var W = new Array(64)\n\t\n\t function Sha256() {\n\t this.init()\n\t\n\t this._w = W //new Array(64)\n\t\n\t Hash.call(this, 16*4, 14*4)\n\t }\n\t\n\t inherits(Sha256, Hash)\n\t\n\t Sha256.prototype.init = function () {\n\t\n\t this._a = 0x6a09e667|0\n\t this._b = 0xbb67ae85|0\n\t this._c = 0x3c6ef372|0\n\t this._d = 0xa54ff53a|0\n\t this._e = 0x510e527f|0\n\t this._f = 0x9b05688c|0\n\t this._g = 0x1f83d9ab|0\n\t this._h = 0x5be0cd19|0\n\t\n\t this._len = this._s = 0\n\t\n\t return this\n\t }\n\t\n\t function S (X, n) {\n\t return (X >>> n) | (X << (32 - n));\n\t }\n\t\n\t function R (X, n) {\n\t return (X >>> n);\n\t }\n\t\n\t function Ch (x, y, z) {\n\t return ((x & y) ^ ((~x) & z));\n\t }\n\t\n\t function Maj (x, y, z) {\n\t return ((x & y) ^ (x & z) ^ (y & z));\n\t }\n\t\n\t function Sigma0256 (x) {\n\t return (S(x, 2) ^ S(x, 13) ^ S(x, 22));\n\t }\n\t\n\t function Sigma1256 (x) {\n\t return (S(x, 6) ^ S(x, 11) ^ S(x, 25));\n\t }\n\t\n\t function Gamma0256 (x) {\n\t return (S(x, 7) ^ S(x, 18) ^ R(x, 3));\n\t }\n\t\n\t function Gamma1256 (x) {\n\t return (S(x, 17) ^ S(x, 19) ^ R(x, 10));\n\t }\n\t\n\t Sha256.prototype._update = function(M) {\n\t\n\t var W = this._w\n\t var a, b, c, d, e, f, g, h\n\t var T1, T2\n\t\n\t a = this._a | 0\n\t b = this._b | 0\n\t c = this._c | 0\n\t d = this._d | 0\n\t e = this._e | 0\n\t f = this._f | 0\n\t g = this._g | 0\n\t h = this._h | 0\n\t\n\t for (var j = 0; j < 64; j++) {\n\t var w = W[j] = j < 16\n\t ? M.readInt32BE(j * 4)\n\t : Gamma1256(W[j - 2]) + W[j - 7] + Gamma0256(W[j - 15]) + W[j - 16]\n\t\n\t T1 = h + Sigma1256(e) + Ch(e, f, g) + K[j] + w\n\t\n\t T2 = Sigma0256(a) + Maj(a, b, c);\n\t h = g; g = f; f = e; e = d + T1; d = c; c = b; b = a; a = T1 + T2;\n\t }\n\t\n\t this._a = (a + this._a) | 0\n\t this._b = (b + this._b) | 0\n\t this._c = (c + this._c) | 0\n\t this._d = (d + this._d) | 0\n\t this._e = (e + this._e) | 0\n\t this._f = (f + this._f) | 0\n\t this._g = (g + this._g) | 0\n\t this._h = (h + this._h) | 0\n\t\n\t };\n\t\n\t Sha256.prototype._hash = function () {\n\t var H = new Buffer(32)\n\t\n\t H.writeInt32BE(this._a, 0)\n\t H.writeInt32BE(this._b, 4)\n\t H.writeInt32BE(this._c, 8)\n\t H.writeInt32BE(this._d, 12)\n\t H.writeInt32BE(this._e, 16)\n\t H.writeInt32BE(this._f, 20)\n\t H.writeInt32BE(this._g, 24)\n\t H.writeInt32BE(this._h, 28)\n\t\n\t return H\n\t }\n\t\n\t return Sha256\n\t\n\t}\n\n\n/***/ },\n/* 32 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar inherits = __webpack_require__(2).inherits\n\t\n\tmodule.exports = function (Buffer, Hash) {\n\t var K = [\n\t 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n\t 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n\t 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n\t 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n\t 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n\t 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n\t 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n\t 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n\t 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n\t 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n\t 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n\t 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n\t 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n\t 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n\t 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n\t 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n\t 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n\t 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n\t 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n\t 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n\t 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n\t 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n\t 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n\t 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n\t 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n\t 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n\t 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n\t 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n\t 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n\t 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n\t 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n\t 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n\t 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n\t 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n\t 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n\t 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n\t 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n\t 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n\t 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n\t 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n\t ]\n\t\n\t var W = new Array(160)\n\t\n\t function Sha512() {\n\t this.init()\n\t this._w = W\n\t\n\t Hash.call(this, 128, 112)\n\t }\n\t\n\t inherits(Sha512, Hash)\n\t\n\t Sha512.prototype.init = function () {\n\t\n\t this._a = 0x6a09e667|0\n\t this._b = 0xbb67ae85|0\n\t this._c = 0x3c6ef372|0\n\t this._d = 0xa54ff53a|0\n\t this._e = 0x510e527f|0\n\t this._f = 0x9b05688c|0\n\t this._g = 0x1f83d9ab|0\n\t this._h = 0x5be0cd19|0\n\t\n\t this._al = 0xf3bcc908|0\n\t this._bl = 0x84caa73b|0\n\t this._cl = 0xfe94f82b|0\n\t this._dl = 0x5f1d36f1|0\n\t this._el = 0xade682d1|0\n\t this._fl = 0x2b3e6c1f|0\n\t this._gl = 0xfb41bd6b|0\n\t this._hl = 0x137e2179|0\n\t\n\t this._len = this._s = 0\n\t\n\t return this\n\t }\n\t\n\t function S (X, Xl, n) {\n\t return (X >>> n) | (Xl << (32 - n))\n\t }\n\t\n\t function Ch (x, y, z) {\n\t return ((x & y) ^ ((~x) & z));\n\t }\n\t\n\t function Maj (x, y, z) {\n\t return ((x & y) ^ (x & z) ^ (y & z));\n\t }\n\t\n\t Sha512.prototype._update = function(M) {\n\t\n\t var W = this._w\n\t var a, b, c, d, e, f, g, h\n\t var al, bl, cl, dl, el, fl, gl, hl\n\t\n\t a = this._a | 0\n\t b = this._b | 0\n\t c = this._c | 0\n\t d = this._d | 0\n\t e = this._e | 0\n\t f = this._f | 0\n\t g = this._g | 0\n\t h = this._h | 0\n\t\n\t al = this._al | 0\n\t bl = this._bl | 0\n\t cl = this._cl | 0\n\t dl = this._dl | 0\n\t el = this._el | 0\n\t fl = this._fl | 0\n\t gl = this._gl | 0\n\t hl = this._hl | 0\n\t\n\t for (var i = 0; i < 80; i++) {\n\t var j = i * 2\n\t\n\t var Wi, Wil\n\t\n\t if (i < 16) {\n\t Wi = W[j] = M.readInt32BE(j * 4)\n\t Wil = W[j + 1] = M.readInt32BE(j * 4 + 4)\n\t\n\t } else {\n\t var x = W[j - 15*2]\n\t var xl = W[j - 15*2 + 1]\n\t var gamma0 = S(x, xl, 1) ^ S(x, xl, 8) ^ (x >>> 7)\n\t var gamma0l = S(xl, x, 1) ^ S(xl, x, 8) ^ S(xl, x, 7)\n\t\n\t x = W[j - 2*2]\n\t xl = W[j - 2*2 + 1]\n\t var gamma1 = S(x, xl, 19) ^ S(xl, x, 29) ^ (x >>> 6)\n\t var gamma1l = S(xl, x, 19) ^ S(x, xl, 29) ^ S(xl, x, 6)\n\t\n\t // W[i] = gamma0 + W[i - 7] + gamma1 + W[i - 16]\n\t var Wi7 = W[j - 7*2]\n\t var Wi7l = W[j - 7*2 + 1]\n\t\n\t var Wi16 = W[j - 16*2]\n\t var Wi16l = W[j - 16*2 + 1]\n\t\n\t Wil = gamma0l + Wi7l\n\t Wi = gamma0 + Wi7 + ((Wil >>> 0) < (gamma0l >>> 0) ? 1 : 0)\n\t Wil = Wil + gamma1l\n\t Wi = Wi + gamma1 + ((Wil >>> 0) < (gamma1l >>> 0) ? 1 : 0)\n\t Wil = Wil + Wi16l\n\t Wi = Wi + Wi16 + ((Wil >>> 0) < (Wi16l >>> 0) ? 1 : 0)\n\t\n\t W[j] = Wi\n\t W[j + 1] = Wil\n\t }\n\t\n\t var maj = Maj(a, b, c)\n\t var majl = Maj(al, bl, cl)\n\t\n\t var sigma0h = S(a, al, 28) ^ S(al, a, 2) ^ S(al, a, 7)\n\t var sigma0l = S(al, a, 28) ^ S(a, al, 2) ^ S(a, al, 7)\n\t var sigma1h = S(e, el, 14) ^ S(e, el, 18) ^ S(el, e, 9)\n\t var sigma1l = S(el, e, 14) ^ S(el, e, 18) ^ S(e, el, 9)\n\t\n\t // t1 = h + sigma1 + ch + K[i] + W[i]\n\t var Ki = K[j]\n\t var Kil = K[j + 1]\n\t\n\t var ch = Ch(e, f, g)\n\t var chl = Ch(el, fl, gl)\n\t\n\t var t1l = hl + sigma1l\n\t var t1 = h + sigma1h + ((t1l >>> 0) < (hl >>> 0) ? 1 : 0)\n\t t1l = t1l + chl\n\t t1 = t1 + ch + ((t1l >>> 0) < (chl >>> 0) ? 1 : 0)\n\t t1l = t1l + Kil\n\t t1 = t1 + Ki + ((t1l >>> 0) < (Kil >>> 0) ? 1 : 0)\n\t t1l = t1l + Wil\n\t t1 = t1 + Wi + ((t1l >>> 0) < (Wil >>> 0) ? 1 : 0)\n\t\n\t // t2 = sigma0 + maj\n\t var t2l = sigma0l + majl\n\t var t2 = sigma0h + maj + ((t2l >>> 0) < (sigma0l >>> 0) ? 1 : 0)\n\t\n\t h = g\n\t hl = gl\n\t g = f\n\t gl = fl\n\t f = e\n\t fl = el\n\t el = (dl + t1l) | 0\n\t e = (d + t1 + ((el >>> 0) < (dl >>> 0) ? 1 : 0)) | 0\n\t d = c\n\t dl = cl\n\t c = b\n\t cl = bl\n\t b = a\n\t bl = al\n\t al = (t1l + t2l) | 0\n\t a = (t1 + t2 + ((al >>> 0) < (t1l >>> 0) ? 1 : 0)) | 0\n\t }\n\t\n\t this._al = (this._al + al) | 0\n\t this._bl = (this._bl + bl) | 0\n\t this._cl = (this._cl + cl) | 0\n\t this._dl = (this._dl + dl) | 0\n\t this._el = (this._el + el) | 0\n\t this._fl = (this._fl + fl) | 0\n\t this._gl = (this._gl + gl) | 0\n\t this._hl = (this._hl + hl) | 0\n\t\n\t this._a = (this._a + a + ((this._al >>> 0) < (al >>> 0) ? 1 : 0)) | 0\n\t this._b = (this._b + b + ((this._bl >>> 0) < (bl >>> 0) ? 1 : 0)) | 0\n\t this._c = (this._c + c + ((this._cl >>> 0) < (cl >>> 0) ? 1 : 0)) | 0\n\t this._d = (this._d + d + ((this._dl >>> 0) < (dl >>> 0) ? 1 : 0)) | 0\n\t this._e = (this._e + e + ((this._el >>> 0) < (el >>> 0) ? 1 : 0)) | 0\n\t this._f = (this._f + f + ((this._fl >>> 0) < (fl >>> 0) ? 1 : 0)) | 0\n\t this._g = (this._g + g + ((this._gl >>> 0) < (gl >>> 0) ? 1 : 0)) | 0\n\t this._h = (this._h + h + ((this._hl >>> 0) < (hl >>> 0) ? 1 : 0)) | 0\n\t }\n\t\n\t Sha512.prototype._hash = function () {\n\t var H = new Buffer(64)\n\t\n\t function writeInt64BE(h, l, offset) {\n\t H.writeInt32BE(h, offset)\n\t H.writeInt32BE(l, offset + 4)\n\t }\n\t\n\t writeInt64BE(this._a, this._al, 0)\n\t writeInt64BE(this._b, this._bl, 8)\n\t writeInt64BE(this._c, this._cl, 16)\n\t writeInt64BE(this._d, this._dl, 24)\n\t writeInt64BE(this._e, this._el, 32)\n\t writeInt64BE(this._f, this._fl, 40)\n\t writeInt64BE(this._g, this._gl, 48)\n\t writeInt64BE(this._h, this._hl, 56)\n\t\n\t return H\n\t }\n\t\n\t return Sha512\n\t\n\t}\n\n\n/***/ },\n/* 33 */\n/***/ function(module, exports) {\n\n\tfunction E () {\n\t // Keep this empty so it's easier to inherit from\n\t // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n\t}\n\t\n\tE.prototype = {\n\t on: function (name, callback, ctx) {\n\t var e = this.e || (this.e = {});\n\t\n\t (e[name] || (e[name] = [])).push({\n\t fn: callback,\n\t ctx: ctx\n\t });\n\t\n\t return this;\n\t },\n\t\n\t once: function (name, callback, ctx) {\n\t var self = this;\n\t function listener () {\n\t self.off(name, listener);\n\t callback.apply(ctx, arguments);\n\t };\n\t\n\t listener._ = callback\n\t return this.on(name, listener, ctx);\n\t },\n\t\n\t emit: function (name) {\n\t var data = [].slice.call(arguments, 1);\n\t var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n\t var i = 0;\n\t var len = evtArr.length;\n\t\n\t for (i; i < len; i++) {\n\t evtArr[i].fn.apply(evtArr[i].ctx, data);\n\t }\n\t\n\t return this;\n\t },\n\t\n\t off: function (name, callback) {\n\t var e = this.e || (this.e = {});\n\t var evts = e[name];\n\t var liveEvents = [];\n\t\n\t if (evts && callback) {\n\t for (var i = 0, len = evts.length; i < len; i++) {\n\t if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n\t liveEvents.push(evts[i]);\n\t }\n\t }\n\t\n\t // Remove event from queue to prevent memory leak\n\t // Suggested by https://github.com/lazd\n\t // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\t\n\t (liveEvents.length)\n\t ? e[name] = liveEvents\n\t : delete e[name];\n\t\n\t return this;\n\t }\n\t};\n\t\n\tmodule.exports = E;\n\n\n/***/ },\n/* 34 */\n/***/ function(module, exports) {\n\n\tmodule.exports = function isBuffer(arg) {\n\t return arg && typeof arg === 'object'\n\t && typeof arg.copy === 'function'\n\t && typeof arg.fill === 'function'\n\t && typeof arg.readUInt8 === 'function';\n\t}\n\n/***/ },\n/* 35 */\n/***/ function(module, exports) {\n\n\t/* (ignored) */\n\n/***/ }\n/******/ ]);\n\n\n/** WEBPACK FOOTER **\n ** lesspass-pure.js?dc118acc136d2b85341d\n **/"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/dist/\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n/** WEBPACK FOOTER **\n ** webpack/bootstrap dc118acc136d2b85341d\n **/","import './app.scss'\nimport lesspass from 'lesspass';\nimport Clipboard from 'clipboard';\n\nvar encryptedLogin;\n\nfunction showTooltip(elem, msg) {\n var classNames = elem.className;\n elem.setAttribute('class', classNames + ' hint--top');\n elem.setAttribute('aria-label', msg);\n setTimeout(function () {\n elem.setAttribute('class', classNames);\n }, 2000);\n}\n\nwindow.onload = function () {\n document.getElementById('generatedPassword').value = '';\n};\n\nfunction getColor(color) {\n var colors = ['EBBB56', '59E0EB', 'E8F464', 'D2B4ED', 'BBE96D', 'EF9FC8', '8EE083', 'DCBFD6', 'DDD15A', 'A1C8E8', 'C4D977', 'F1A49E', '79E8A0', 'E9A970', '60E3B4', 'D4C47D', '73DDCA', 'C4EAA7', 'A7D6D4', '9CC795'];\n var index = parseInt(color, 16) % colors.length;\n return '#' + colors[index];\n}\n\ndocument.getElementById('login').onblur = displayPasswordIndication;\ndocument.getElementById('masterPassword').onblur = displayPasswordIndication;\nfunction displayPasswordIndication() {\n var login = document.getElementById('login').value;\n var masterPassword = document.getElementById('masterPassword').value;\n var fingerprint = document.getElementById('fingerprint');\n var displayMasterPasswordButton = document.getElementById('displayMasterPasswordButton');\n if (!login || !masterPassword) {\n fingerprint.innerText = '';\n fingerprint.style.display = 'none';\n displayMasterPasswordButton.style.backgroundColor = '#FFFFFF';\n return;\n }\n lesspass.encryptLogin(login, masterPassword).then(function (secretHash) {\n encryptedLogin = secretHash;\n var color = secretHash.substring(0, 6);\n var colorHex = getColor(color);\n fingerprint.innerText = color;\n fingerprint.style.display = 'inline';\n displayMasterPasswordButton.style.backgroundColor = colorHex;\n generatePassword();\n });\n}\n\ndocument.getElementById('copyPasswordButton').addEventListener('click', generatePassword);\ndocument.getElementById('generatedPasswordForm').addEventListener('change', generatePassword);\ndocument.getElementById('passwordLength').addEventListener('input', generatePassword);\ndocument.getElementById('passwordCounter').addEventListener('input', generatePassword);\ndocument.getElementById('generatedPasswordForm').oninput = generatePassword;\nfunction getData() {\n const defaultOptions = {\n login: document.getElementById('login').value,\n counter: document.getElementById('passwordCounter').value,\n password: {\n length: document.getElementById('passwordLength').value,\n settings: []\n }\n };\n const options = ['lowercase', 'uppercase', 'numbers', 'symbols'];\n\n for (let i = 0; i < options.length; i++) {\n if (document.getElementById(options[i]).checked) {\n defaultOptions.password.settings.push(options[i]);\n }\n }\n return defaultOptions;\n}\n\nfunction getFormData() {\n const initData = getData();\n initData.masterPassword = document.getElementById('masterPassword').value;\n initData.site = document.getElementById('site').value;\n return initData;\n}\n\nfunction generatePassword() {\n const data = getFormData();\n var generatedPasswordField = document.getElementById('generatedPassword');\n if (!encryptedLogin || !data.site || !data.password.settings.length) {\n generatedPasswordField.value = '';\n return;\n }\n generatedPasswordField.value = lesspass.renderPassword(encryptedLogin, data.site, data);\n}\n\ndocument.getElementById('displayMasterPasswordButton').addEventListener('click', toggleMasterPassword);\nfunction toggleMasterPassword() {\n if (document.getElementById('masterPassword').type === 'password') {\n document.getElementById('masterPassword').type = 'text';\n } else {\n document.getElementById('masterPassword').type = 'password';\n }\n}\n\nfunction cleanData() {\n setTimeout(function () {\n document.getElementById('generatedPassword').value = '';\n document.getElementById('masterPassword').value = '';\n document.getElementById('displayMasterPasswordButton').style.backgroundColor = '#FFFFFF';\n document.getElementById('fingerprint').innerText = '';\n }, 10000);\n}\n\nvar clipboard = new Clipboard('.btn-copy');\n\nclipboard.on('success', function (e) {\n if (e.text) {\n showTooltip(e.trigger, 'copied !');\n cleanData();\n }\n});\n\nclipboard.on('error', function () {\n cleanData();\n});\n\n\ndocument.getElementById('displayOptionsButton').addEventListener('click', toggleBlocks);\n\nfunction toggleVisibility(className) {\n var elements = document.getElementsByClassName(className);\n for (var i = 0; i < elements.length; i++) {\n var e = elements[i];\n if (e.style.display === 'block') {\n e.style.display = 'none';\n } else {\n e.style.display = 'block';\n }\n }\n}\n\nfunction toggleBlocks() {\n toggleVisibility('option-block');\n}\n\nvar domains = [\"lesspass.com\", \"google.com\", \"youtube.com\", \"facebook.com\", \"baidu.com\", \"yahoo.com\", \"amazon.com\", \"wikipedia.org\", \"twitter.com\", \"qq.com\", \"live.com\", \"taobao.com\", \"bing.com\", \"msn.com\", \"linkedin.com\", \"instagram.com\", \"weibo.com\", \"vk.com\", \"hao123.com\", \"ebay.com\", \"reddit.com\", \"pinterest.com\", \"google.fr\", \"netflix.com\", \"tmall.com\", \"microsoft.com\", \"onclickads.net\", \"paypal.com\", \"sohu.com\", \"wordpress.com\", \"tumblr.com\", \"imgur.com\", \"blogspot.com\", \"naver.com\", \"xvideos.com\", \"stackoverflow.com\", \"apple.com\", \"aliexpress.com\", \"fc2.com\", \"github.com\", \"imdb.com\", \"pornhub.com\", \"whatsapp.com\", \"jd.com\", \"diply.com\", \"craigslist.org\", \"office.com\", \"blogger.com\", \"alibaba.com\", \"soso.com\", \"pixnet.net\", \"go.com\", \"dropbox.com\", \"xinhuanet.com\", \"xhamster.com\", \"outbrain.com\", \"googleusercontent.com\", \"cnn.com\", \"coccoc.com\", \"booking.com\", \"ask.com\", \"popads.net\", \"microsoftonline.com\", \"wikia.com\", \"chase.com\", \"quora.com\", \"adobe.com\", \"163.com\", \"360.com\", \"haosou.com\", \"youku.com\", \"bbc.com\", \"alipay.com\", \"flipkart.com\", \"bongacams.com\", \"nytimes.com\", \"daum.net\", \"sogou.com\", \"txxx.com\", \"espn.go.com\", \"ettoday.net\", \"bankofamerica.com\", \"china.com\", \"indiatimes.com\", \"myway.com\", \"bilibili.com\", \"walmart.com\", \"godaddy.com\", \"salesforce.com\", \"buzzfeed.com\", \"zillow.com\", \"xnxx.com\", \"wellsfargo.com\", \"dailymotion.com\", \"detail.tmall.com\", \"steampowered.com\", \"steamcommunity.com\", \"theguardian.com\", \"indeed.com\", \"nametests.com\", \"aol.com\", \"etsy.com\", \"globo.com\", \"amazonaws.com\", \"yelp.com\", \"huffingtonpost.com\", \"tudou.com\", \"zhihu.com\", \"so.com\", \"tripadvisor.com\", \"soundcloud.com\", \"cnzz.com\", \"onlinesbi.com\", \"varzesh3.com\", \"vice.com\", \"directrev.com\", \"cnet.com\", \"uptodown.com\", \"weather.com\", \"bet365.com\", \"mediafire.com\", \"washingtonpost.com\", \"force.com\", \"gfycat.com\", \"stackexchange.com\", \"taboola.com\", \"tuberel.com\", \"vimeo.com\", \"feedly.com\", \"detik.com\", \"theladbible.com\", \"redtube.com\", \"pixiv.net\", \"homedepot.com\", \"slideshare.net\", \"taringa.net\", \"torrentz.eu\", \"foxnews.com\", \"target.com\", \"flickr.com\", \"hclips.com\", \"amazon.fr\", \"kakaku.com\", \"9gag.com\", \"ifeng.com\", \"udn.com\", \"ikea.com\", \"americanexpress.com\", \"iqiyi.com\", \"bp.blogspot.com\", \"terraclicks.com\", \"orange.fr\", \"fbcdn.net\", \"comcast.net\", \"youm7.com\", \"gmx.net\", \"tribunnews.com\", \"youporn.com\", \"deviantart.com\", \"hdfcbank.com\", \"tistory.com\", \"roblox.com\", \"capitalone.com\", \"doubleclick.net\", \"leboncoin.fr\", \"douyu.com\", \"ozock.com\", \"spotify.com\", \"babytree.com\", \"w3schools.com\", \"forbes.com\", \"wikihow.com\", \"wix.com\", \"upornia.com\", \"snapdeal.com\", \"mozilla.org\", \"livejournal.com\", \"bestbuy.com\", \"handycafe.com\", \"xfinity.com\", \"groupon.com\", \"skype.com\", \"adnetworkperformance.com\", \"onedio.com\", \"thepiratebay.org\", \"rdsa2013.com\", \"paytm.com\", \"icicibank.com\", \"twimg.com\", \"usps.com\", \"trello.com\", \"wikimedia.org\", \"tokopedia.com\", \"popcash.net\", \"webtretho.com\", \"xywy.com\", \"huanqiu.com\", \"yesky.com\", \"citi.com\", \"blastingnews.com\", \"shutterstock.com\", \"rediff.com\", \"ups.com\", \"eksisozluk.com\", \"1688.com\", \"bitauto.com\", \"slack.com\", \"files.wordpress.com\", \"pandora.com\", \"imzog.com\", \"speedtest.net\", \"2ch.net\", \"loading-delivery2.com\", \"about.com\", \"adexc.net\", \"chaturbate.com\", \"mbc.net\", \"goodreads.com\", \"wordpress.org\", \"softonic.com\", \"battle.net\", \"livejasmin.com\", \"accuweather.com\", \"icloud.com\", \"fedex.com\", \"slickdeals.net\", \"wittyfeed.com\", \"ndtv.com\", \"att.com\", \"giphy.com\", \"archive.org\", \"csdn.net\", \"sourceforge.net\", \"39.net\", \"youtube-mp3.org\", \"secureserver.net\", \"akamaihd.net\", \"taleo.net\", \"savefrom.net\", \"themeforest.net\", \"telegram.org\", \"rutracker.org\", \"cloudfront.net\", \"atlassian.net\", \"behance.net\", \"free.fr\", \"trackingclick.net\", \"npr.org\", \"seesaa.net\", \"coursera.org\", \"change.org\", \"researchgate.net\", \"streamcloud.eu\", \"clien.net\", \"sabq.org\", \"e-hentai.org\", \"uploaded.net\", \"inquirer.net\", \"alwafd.org\", \"4chan.org\", \"elfagr.org\", \"torcache.net\", \"buzzfil.net\", \"lequipe.fr\", \"kdnet.net\", \"gigazine.net\", \"bitbucket.org\", \"ero-video.net\", \"lemonde.fr\", \"europa.eu\", \"php.net\", \"reverso.net\", \"wiktionary.org\", \"sfr.fr\", \"eroterest.net\", \"ebay.fr\", \"fanfiction.net\", \"labanquepostale.fr\", \"bola.net\", \"credit-agricole.fr\", \"rapidgator.net\", \"vnexpress.net\", \"mayoclinic.org\", \"myanimelist.net\", \"minecraft.net\", \"pole-emploi.fr\", \"commentcamarche.net\", \"gutefrage.net\", \"archiveofourown.org\", \"ccm.net\", \"apache.org\", \"dmv.org\", \"wargaming.net\", \"lefigaro.fr\", \"eenadu.net\", \"poringa.net\", \"deviantart.net\", \"fishki.net\", \"jalan.net\", \"2ch-c.net\", \"cambridge.org\", \"convert2mp3.net\", \"pagesjaunes.fr\", \"oschina.net\", \"torrentkim3.net\", \"khanacademy.org\", \"dostor.org\", \"aljazeera.net\", \"codecanyon.net\", \"allocine.fr\", \"animeflv.net\", \"jb51.net\", \"jw.org\", \"nocookie.net\", \"pchome.net\", \"ali213.net\", \"edx.org\", \"zatnawqy.net\", \"ukr.net\", \"my-hit.org\", \"jsfiddle.net\", \"4gamer.net\", \"turbobit.net\", \"mangareader.net\", \"leo.org\", \"caf.fr\", \"windows.net\", \"comenity.net\", \"pbs.org\", \"opensubtitles.org\", \"xuite.net\", \"consumerreports.org\", \"programme-tv.net\", \"att.net\", \"python.org\", \"laposte.net\", \"p5w.net\", \"aarp.org\", \"docusign.net\", \"2chan.net\", \"caisse-epargne.fr\", \"cnki.net\", \"cityheaven.net\", \"toyokeizai.net\", \"blogspot.fr\", \"jkanime.net\", \"earthlink.net\", \"linkshrink.net\", \"oneplus.net\", \"tf1.fr\", \"cox.net\", \"seriesflv.net\", \"exhentai.org\", \"ap.org\", \"skyscanner.net\", \"sanjesh.org\", \"lds.org\", \"17track.net\", \"20minutes.fr\", \"dytt8.net\", \"shufoo.net\", \"postimg.org\", \"alaan.org\", \"navyfederal.org\", \"creditmutuel.fr\", \"zipbogo.net\", \"voirfilms.org\", \"ieee.org\", \"w3.org\", \"tripadvisor.fr\", \"societegenerale.fr\", \"kaiserpermanente.org\", \"lcl.fr\", \"bbb.org\", \"bouyguestelecom.fr\", \"lifehack.org\", \"familysearch.org\", \"monova.org\", \"laredoute.fr\", \"say-move.org\", \"banquepopulaire.fr\", \"baiducdn.org\", \"pbskids.org\", \"eurosport.fr\", \"go2cloud.org\", \"laposte.fr\", \"zimbra.free.fr\", \"ameli.fr\", \"linguee.fr\", \"westeros.org\", \"leroymerlin.fr\", \"leparisien.fr\", \"drupal.org\", \"hltv.org\", \"videolan.org\", \"slashdot.org\", \"angularjs.org\", \"francetvinfo.fr\", \"yify-torrent.org\", \"un.org\", \"acs.org\", \"fullhdfilmizlesene.org\", \"digitalprivacyalert.org\", \"jstor.org\", \"service-public.fr\", \"wikibooks.org\", \"ubuntuforums.org\", \"lexpress.fr\", \"tlootas.org\", \"collegeboard.org\", \"tvtropes.org\", \"impots.gouv.fr\", \"syosetu.org\", \"larousse.fr\", \"wikimapia.org\", \"new-rutor.org\", \"hbr.org\", \"washwasha.org\", \"marmiton.org\", \"4cdn.org\", \"doctissimo.fr\", \"britishcouncil.org\", \"cic.fr\", \"fdj.fr\", \"airbnb.fr\", \"media-fire.org\", \"thinkprogress.org\", \"oxfordjournals.org\", \"dyndns.org\", \"worldcat.org\", \"raspberrypi.org\", \"eclipse.org\", \"ouest-france.fr\", \"viamichelin.fr\", \"megafilmeshd20.org\", \"jooble.org\", \"lichess.org\", \"pixhost.org\", \"malwarebytes.org\", \"ets.org\", \"hattrick.org\", \"paultan.org\", \"indeed.fr\", \"6play.fr\", \"rueducommerce.fr\", \"joomla.org\", \"worldbank.org\", \"arxiv.org\", \"archlinux.org\", \"castorama.fr\", \"decathlon.fr\", \"huffingtonpost.fr\", \"lacentrale.fr\", \"lesechos.fr\", \"vidal.fr\", \"lepoint.fr\", \"zalando.fr\", \"worldoftanks.eu\", \"pmu.fr\", \"asos.fr\", \"successfactors.eu\", \"blablacar.fr\", \"liberation.fr\", \"urssaf.fr\", \"mycanal.fr\", \"auchan.fr\", \"conforama.fr\", \"meteociel.fr\", \"carrefour.fr\", \"canalplus.fr\", \"letudiant.fr\", \"groupon.fr\", \"3suisses.fr\", \"leclercdrive.fr\", \"ratp.fr\", \"ooreka.fr\", \"rtl.fr\", \"airfrance.fr\", \"meetic.fr\", \"francetv.fr\", \"mobile.free.fr\", \"ladepeche.fr\", \"paruvendu.fr\", \"rfi.fr\", \"spaggiari.eu\", \"metronews.fr\", \"worldofwarships.eu\", \"sudouest.fr\", \"colissimo.fr\", \"keeplinks.eu\", \"onelife.eu\", \"hardware.fr\", \"coco.fr\", \"imp.free.fr\", \"melty.fr\", \"jeux.fr\", \"europe1.fr\", \"education.fr\", \"bricodepot.fr\", \"edf.fr\", \"maxifoot.fr\", \"pap.fr\", \"education.gouv.fr\", \"dnvod.eu\", \"elle.fr\", \"letour.fr\", \"cmb.fr\", \"dfiles.eu\", \"onecoin.eu\", \"gls-group.eu\", \"seedpeer.eu\", \"dramanice.eu\", \"sia.eu\", \"filmezz.eu\", \"vshare.eu\", \"torrentbutler.eu\", \"watchcartoonsonline.eu\", \"politico.eu\", \"torrentking.eu\", \"feed2allnow.eu\", \"rockfile.eu\", \"yamaha-motor.eu\", \"tusciaweb.eu\", \"sexyadults.eu\", \"fidelityhouse.eu\", \"chainfire.eu\", \"ping.eu\", \"unibet.eu\", \"mastersportal.eu\", \"uploadfiles.eu\", \"ifirstrow.eu\", \"watchmovienow.eu\", \"xenesglosses.eu\", \"gayforit.eu\", \"streamcomplet.eu\", \"muzofox.eu\", \"jpfiles.eu\", \"df.eu\", \"kickasstorrents.eu\", \"autobazar.eu\", \"swisscoin.eu\", \"perfektdamen.eu\", \"echodnia.eu\", \"bombuj.eu\", \"funmix.eu\", \"safeurls.eu\", \"increas.eu\", \"luxexpress.eu\", \"gamecopyworld.eu\", \"cucirca.eu\", \"guess.eu\", \"ifirstrowus.eu\", \"nets.eu\", \"hostinger.eu\", \"immunicity.eu\", \"europsl.eu\", \"myenglishteacher.eu\", \"tme.eu\", \"payzen.eu\", \"jpopsuki.eu\", \"5dimes.eu\", \"xiaomi.eu\", \"magiccardmarket.eu\", \"romanews.eu\", \"mp3xd.eu\", \"fellent.eu\", \"livenewschat.eu\", \"ccc.eu\", \"bitminer.eu\", \"thenude.eu\", \"wufoo.eu\", \"firstrowas.eu\", \"minecraft-server.eu\", \"catawiki.eu\", \"firstsrowsports.eu\", \"omni-cash.eu\", \"buzzblog.eu\", \"ancient.eu\", \"pornoserver.eu\", \"xspeeds.eu\", \"skydsl.eu\", \"interrail.eu\", \"bonprixshop.eu\", \"harrisinteractive.eu\", \"ls-portal.eu\", \"nasze-kino.eu\", \"valueactive.eu\", \"meteoweb.eu\", \"serialonline.eu\", \"clickedu.eu\", \"bosettiegatti.eu\", \"mydailydose.eu\", \"gap.eu\", \"myadpack.eu\", \"iptorrents.eu\", \"aaate2016.eu\"];\nvar list = document.getElementById('domains');\n\ndomains.forEach(function (item) {\n var option = document.createElement('option');\n option.value = item;\n list.appendChild(option);\n});\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/app.js\n **/","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nvar base64 = require('base64-js')\nvar ieee754 = require('ieee754')\nvar isArray = require('isarray')\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\nBuffer.poolSize = 8192 // not used by this implementation\n\nvar rootParent = {}\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Use Object implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * Due to various browser bugs, sometimes the Object implementation will be used even\n * when the browser supports typed arrays.\n *\n * Note:\n *\n * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,\n * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.\n *\n * - Safari 5-7 lacks support for changing the `Object.prototype.constructor` property\n * on objects.\n *\n * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.\n *\n * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of\n * incorrect length in some situations.\n\n * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they\n * get the Object implementation, which is slower but behaves correctly.\n */\nBuffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined\n ? global.TYPED_ARRAY_SUPPORT\n : typedArraySupport()\n\nfunction typedArraySupport () {\n function Bar () {}\n try {\n var arr = new Uint8Array(1)\n arr.foo = function () { return 42 }\n arr.constructor = Bar\n return arr.foo() === 42 && // typed array instances can be augmented\n arr.constructor === Bar && // constructor can be set\n typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`\n arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`\n } catch (e) {\n return false\n }\n}\n\nfunction kMaxLength () {\n return Buffer.TYPED_ARRAY_SUPPORT\n ? 0x7fffffff\n : 0x3fffffff\n}\n\n/**\n * Class: Buffer\n * =============\n *\n * The Buffer constructor returns instances of `Uint8Array` that are augmented\n * with function properties for all the node `Buffer` API functions. We use\n * `Uint8Array` so that square bracket notation works as expected -- it returns\n * a single octet.\n *\n * By augmenting the instances, we can avoid modifying the `Uint8Array`\n * prototype.\n */\nfunction Buffer (arg) {\n if (!(this instanceof Buffer)) {\n // Avoid going through an ArgumentsAdaptorTrampoline in the common case.\n if (arguments.length > 1) return new Buffer(arg, arguments[1])\n return new Buffer(arg)\n }\n\n if (!Buffer.TYPED_ARRAY_SUPPORT) {\n this.length = 0\n this.parent = undefined\n }\n\n // Common case.\n if (typeof arg === 'number') {\n return fromNumber(this, arg)\n }\n\n // Slightly less common case.\n if (typeof arg === 'string') {\n return fromString(this, arg, arguments.length > 1 ? arguments[1] : 'utf8')\n }\n\n // Unusual.\n return fromObject(this, arg)\n}\n\nfunction fromNumber (that, length) {\n that = allocate(that, length < 0 ? 0 : checked(length) | 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) {\n for (var i = 0; i < length; i++) {\n that[i] = 0\n }\n }\n return that\n}\n\nfunction fromString (that, string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') encoding = 'utf8'\n\n // Assumption: byteLength() return value is always < kMaxLength.\n var length = byteLength(string, encoding) | 0\n that = allocate(that, length)\n\n that.write(string, encoding)\n return that\n}\n\nfunction fromObject (that, object) {\n if (Buffer.isBuffer(object)) return fromBuffer(that, object)\n\n if (isArray(object)) return fromArray(that, object)\n\n if (object == null) {\n throw new TypeError('must start with number, buffer, array or string')\n }\n\n if (typeof ArrayBuffer !== 'undefined') {\n if (object.buffer instanceof ArrayBuffer) {\n return fromTypedArray(that, object)\n }\n if (object instanceof ArrayBuffer) {\n return fromArrayBuffer(that, object)\n }\n }\n\n if (object.length) return fromArrayLike(that, object)\n\n return fromJsonObject(that, object)\n}\n\nfunction fromBuffer (that, buffer) {\n var length = checked(buffer.length) | 0\n that = allocate(that, length)\n buffer.copy(that, 0, 0, length)\n return that\n}\n\nfunction fromArray (that, array) {\n var length = checked(array.length) | 0\n that = allocate(that, length)\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\n// Duplicate of fromArray() to keep fromArray() monomorphic.\nfunction fromTypedArray (that, array) {\n var length = checked(array.length) | 0\n that = allocate(that, length)\n // Truncating the elements is probably not what people expect from typed\n // arrays with BYTES_PER_ELEMENT > 1 but it's compatible with the behavior\n // of the old Buffer constructor.\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\nfunction fromArrayBuffer (that, array) {\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n array.byteLength\n that = Buffer._augment(new Uint8Array(array))\n } else {\n // Fallback: Return an object instance of the Buffer class\n that = fromTypedArray(that, new Uint8Array(array))\n }\n return that\n}\n\nfunction fromArrayLike (that, array) {\n var length = checked(array.length) | 0\n that = allocate(that, length)\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\n// Deserialize { type: 'Buffer', data: [1,2,3,...] } into a Buffer object.\n// Returns a zero-length buffer for inputs that don't conform to the spec.\nfunction fromJsonObject (that, object) {\n var array\n var length = 0\n\n if (object.type === 'Buffer' && isArray(object.data)) {\n array = object.data\n length = checked(array.length) | 0\n }\n that = allocate(that, length)\n\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\nif (Buffer.TYPED_ARRAY_SUPPORT) {\n Buffer.prototype.__proto__ = Uint8Array.prototype\n Buffer.__proto__ = Uint8Array\n} else {\n // pre-set for values that may exist in the future\n Buffer.prototype.length = undefined\n Buffer.prototype.parent = undefined\n}\n\nfunction allocate (that, length) {\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = Buffer._augment(new Uint8Array(length))\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n that.length = length\n that._isBuffer = true\n }\n\n var fromPool = length !== 0 && length <= Buffer.poolSize >>> 1\n if (fromPool) that.parent = rootParent\n\n return that\n}\n\nfunction checked (length) {\n // Note: cannot use `length < kMaxLength` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= kMaxLength()) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + kMaxLength().toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (subject, encoding) {\n if (!(this instanceof SlowBuffer)) return new SlowBuffer(subject, encoding)\n\n var buf = new Buffer(subject, encoding)\n delete buf.parent\n return buf\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return !!(b != null && b._isBuffer)\n}\n\nBuffer.compare = function compare (a, b) {\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError('Arguments must be Buffers')\n }\n\n if (a === b) return 0\n\n var x = a.length\n var y = b.length\n\n var i = 0\n var len = Math.min(x, y)\n while (i < len) {\n if (a[i] !== b[i]) break\n\n ++i\n }\n\n if (i !== len) {\n x = a[i]\n y = b[i]\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'binary':\n case 'base64':\n case 'raw':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!isArray(list)) throw new TypeError('list argument must be an Array of Buffers.')\n\n if (list.length === 0) {\n return new Buffer(0)\n }\n\n var i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; i++) {\n length += list[i].length\n }\n }\n\n var buf = new Buffer(length)\n var pos = 0\n for (i = 0; i < list.length; i++) {\n var item = list[i]\n item.copy(buf, pos)\n pos += item.length\n }\n return buf\n}\n\nfunction byteLength (string, encoding) {\n if (typeof string !== 'string') string = '' + string\n\n var len = string.length\n if (len === 0) return 0\n\n // Use a for loop to avoid recursion\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'binary':\n // Deprecated\n case 'raw':\n case 'raws':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) return utf8ToBytes(string).length // assume utf8\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n var loweredCase = false\n\n start = start | 0\n end = end === undefined || end === Infinity ? this.length : end | 0\n\n if (!encoding) encoding = 'utf8'\n if (start < 0) start = 0\n if (end > this.length) end = this.length\n if (end <= start) return ''\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'binary':\n return binarySlice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toString = function toString () {\n var length = this.length | 0\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n var str = ''\n var max = exports.INSPECT_MAX_BYTES\n if (this.length > 0) {\n str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')\n if (this.length > max) str += ' ... '\n }\n return ''\n}\n\nBuffer.prototype.compare = function compare (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return 0\n return Buffer.compare(this, b)\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset) {\n if (byteOffset > 0x7fffffff) byteOffset = 0x7fffffff\n else if (byteOffset < -0x80000000) byteOffset = -0x80000000\n byteOffset >>= 0\n\n if (this.length === 0) return -1\n if (byteOffset >= this.length) return -1\n\n // Negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = Math.max(this.length + byteOffset, 0)\n\n if (typeof val === 'string') {\n if (val.length === 0) return -1 // special case: looking for empty string always fails\n return String.prototype.indexOf.call(this, val, byteOffset)\n }\n if (Buffer.isBuffer(val)) {\n return arrayIndexOf(this, val, byteOffset)\n }\n if (typeof val === 'number') {\n if (Buffer.TYPED_ARRAY_SUPPORT && Uint8Array.prototype.indexOf === 'function') {\n return Uint8Array.prototype.indexOf.call(this, val, byteOffset)\n }\n return arrayIndexOf(this, [ val ], byteOffset)\n }\n\n function arrayIndexOf (arr, val, byteOffset) {\n var foundIndex = -1\n for (var i = 0; byteOffset + i < arr.length; i++) {\n if (arr[byteOffset + i] === val[foundIndex === -1 ? 0 : i - foundIndex]) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === val.length) return byteOffset + foundIndex\n } else {\n foundIndex = -1\n }\n }\n return -1\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\n// `get` is deprecated\nBuffer.prototype.get = function get (offset) {\n console.log('.get() is deprecated. Access using array indexes instead.')\n return this.readUInt8(offset)\n}\n\n// `set` is deprecated\nBuffer.prototype.set = function set (v, offset) {\n console.log('.set() is deprecated. Access using array indexes instead.')\n return this.writeUInt8(v, offset)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n var remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n // must be an even number of digits\n var strLen = string.length\n if (strLen % 2 !== 0) throw new Error('Invalid hex string')\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n for (var i = 0; i < length; i++) {\n var parsed = parseInt(string.substr(i * 2, 2), 16)\n if (isNaN(parsed)) throw new Error('Invalid hex string')\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction binaryWrite (buf, string, offset, length) {\n return asciiWrite(buf, string, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset | 0\n if (isFinite(length)) {\n length = length | 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n // legacy write(string, encoding, offset, length) - remove in v0.13\n } else {\n var swap = encoding\n encoding = offset\n offset = length | 0\n length = swap\n }\n\n var remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n return asciiWrite(this, string, offset, length)\n\n case 'binary':\n return binaryWrite(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n var res = []\n\n var i = start\n while (i < end) {\n var firstByte = buf[i]\n var codePoint = null\n var bytesPerSequence = (firstByte > 0xEF) ? 4\n : (firstByte > 0xDF) ? 3\n : (firstByte > 0xBF) ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n var secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nvar MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n var len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n var res = ''\n var i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; i++) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction binarySlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; i++) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n var len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n var out = ''\n for (var i = start; i < end; i++) {\n out += toHex(buf[i])\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n var bytes = buf.slice(start, end)\n var res = ''\n for (var i = 0; i < bytes.length; i += 2) {\n res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n var len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n var newBuf\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n newBuf = Buffer._augment(this.subarray(start, end))\n } else {\n var sliceLen = end - start\n newBuf = new Buffer(sliceLen, undefined)\n for (var i = 0; i < sliceLen; i++) {\n newBuf[i] = this[i + start]\n }\n }\n\n if (newBuf.length) newBuf.parent = this.parent || this\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n var val = this[offset + --byteLength]\n var mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var i = byteLength\n var mul = 1\n var val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('buffer must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('value is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('index out of range')\n}\n\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkInt(this, value, offset, byteLength, Math.pow(2, 8 * byteLength), 0)\n\n var mul = 1\n var i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkInt(this, value, offset, byteLength, Math.pow(2, 8 * byteLength), 0)\n\n var i = byteLength - 1\n var mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nfunction objectWriteUInt16 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; i++) {\n buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>\n (littleEndian ? i : 1 - i) * 8\n }\n}\n\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nfunction objectWriteUInt32 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffffffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; i++) {\n buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff\n }\n}\n\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = 0\n var mul = 1\n var sub = value < 0 ? 1 : 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = byteLength - 1\n var mul = 1\n var sub = value < 0 ? 1 : 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (value > max || value < min) throw new RangeError('value is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('index out of range')\n if (offset < 0) throw new RangeError('index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n var len = end - start\n var i\n\n if (this === target && start < targetStart && targetStart < end) {\n // descending copy from end\n for (i = len - 1; i >= 0; i--) {\n target[i + targetStart] = this[i + start]\n }\n } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n // ascending copy from start\n for (i = 0; i < len; i++) {\n target[i + targetStart] = this[i + start]\n }\n } else {\n target._set(this.subarray(start, start + len), targetStart)\n }\n\n return len\n}\n\n// fill(value, start=0, end=buffer.length)\nBuffer.prototype.fill = function fill (value, start, end) {\n if (!value) value = 0\n if (!start) start = 0\n if (!end) end = this.length\n\n if (end < start) throw new RangeError('end < start')\n\n // Fill 0 bytes; we're done\n if (end === start) return\n if (this.length === 0) return\n\n if (start < 0 || start >= this.length) throw new RangeError('start out of bounds')\n if (end < 0 || end > this.length) throw new RangeError('end out of bounds')\n\n var i\n if (typeof value === 'number') {\n for (i = start; i < end; i++) {\n this[i] = value\n }\n } else {\n var bytes = utf8ToBytes(value.toString())\n var len = bytes.length\n for (i = start; i < end; i++) {\n this[i] = bytes[i % len]\n }\n }\n\n return this\n}\n\n/**\n * Creates a new `ArrayBuffer` with the *copied* memory of the buffer instance.\n * Added in Node 0.12. Only available in browsers that support ArrayBuffer.\n */\nBuffer.prototype.toArrayBuffer = function toArrayBuffer () {\n if (typeof Uint8Array !== 'undefined') {\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n return (new Buffer(this)).buffer\n } else {\n var buf = new Uint8Array(this.length)\n for (var i = 0, len = buf.length; i < len; i += 1) {\n buf[i] = this[i]\n }\n return buf.buffer\n }\n } else {\n throw new TypeError('Buffer.toArrayBuffer not supported in this browser')\n }\n}\n\n// HELPER FUNCTIONS\n// ================\n\nvar BP = Buffer.prototype\n\n/**\n * Augment a Uint8Array *instance* (not the Uint8Array class!) with Buffer methods\n */\nBuffer._augment = function _augment (arr) {\n arr.constructor = Buffer\n arr._isBuffer = true\n\n // save reference to original Uint8Array set method before overwriting\n arr._set = arr.set\n\n // deprecated\n arr.get = BP.get\n arr.set = BP.set\n\n arr.write = BP.write\n arr.toString = BP.toString\n arr.toLocaleString = BP.toString\n arr.toJSON = BP.toJSON\n arr.equals = BP.equals\n arr.compare = BP.compare\n arr.indexOf = BP.indexOf\n arr.copy = BP.copy\n arr.slice = BP.slice\n arr.readUIntLE = BP.readUIntLE\n arr.readUIntBE = BP.readUIntBE\n arr.readUInt8 = BP.readUInt8\n arr.readUInt16LE = BP.readUInt16LE\n arr.readUInt16BE = BP.readUInt16BE\n arr.readUInt32LE = BP.readUInt32LE\n arr.readUInt32BE = BP.readUInt32BE\n arr.readIntLE = BP.readIntLE\n arr.readIntBE = BP.readIntBE\n arr.readInt8 = BP.readInt8\n arr.readInt16LE = BP.readInt16LE\n arr.readInt16BE = BP.readInt16BE\n arr.readInt32LE = BP.readInt32LE\n arr.readInt32BE = BP.readInt32BE\n arr.readFloatLE = BP.readFloatLE\n arr.readFloatBE = BP.readFloatBE\n arr.readDoubleLE = BP.readDoubleLE\n arr.readDoubleBE = BP.readDoubleBE\n arr.writeUInt8 = BP.writeUInt8\n arr.writeUIntLE = BP.writeUIntLE\n arr.writeUIntBE = BP.writeUIntBE\n arr.writeUInt16LE = BP.writeUInt16LE\n arr.writeUInt16BE = BP.writeUInt16BE\n arr.writeUInt32LE = BP.writeUInt32LE\n arr.writeUInt32BE = BP.writeUInt32BE\n arr.writeIntLE = BP.writeIntLE\n arr.writeIntBE = BP.writeIntBE\n arr.writeInt8 = BP.writeInt8\n arr.writeInt16LE = BP.writeInt16LE\n arr.writeInt16BE = BP.writeInt16BE\n arr.writeInt32LE = BP.writeInt32LE\n arr.writeInt32BE = BP.writeInt32BE\n arr.writeFloatLE = BP.writeFloatLE\n arr.writeFloatBE = BP.writeFloatBE\n arr.writeDoubleLE = BP.writeDoubleLE\n arr.writeDoubleBE = BP.writeDoubleBE\n arr.fill = BP.fill\n arr.inspect = BP.inspect\n arr.toArrayBuffer = BP.toArrayBuffer\n\n return arr\n}\n\nvar INVALID_BASE64_RE = /[^+\\/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = stringtrim(str).replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction stringtrim (str) {\n if (str.trim) return str.trim()\n return str.replace(/^\\s+|\\s+$/g, '')\n}\n\nfunction toHex (n) {\n if (n < 16) return '0' + n.toString(16)\n return n.toString(16)\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n var codePoint\n var length = string.length\n var leadSurrogate = null\n var bytes = []\n\n for (var i = 0; i < length; i++) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n var byteArray = []\n for (var i = 0; i < str.length; i++) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n var c, hi, lo\n var byteArray = []\n for (var i = 0; i < str.length; i++) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n for (var i = 0; i < length; i++) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/buffer/index.js\n ** module id = 1\n ** module chunks = 0\n **/","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar formatRegExp = /%[sdj%]/g;\nexports.format = function(f) {\n if (!isString(f)) {\n var objects = [];\n for (var i = 0; i < arguments.length; i++) {\n objects.push(inspect(arguments[i]));\n }\n return objects.join(' ');\n }\n\n var i = 1;\n var args = arguments;\n var len = args.length;\n var str = String(f).replace(formatRegExp, function(x) {\n if (x === '%%') return '%';\n if (i >= len) return x;\n switch (x) {\n case '%s': return String(args[i++]);\n case '%d': return Number(args[i++]);\n case '%j':\n try {\n return JSON.stringify(args[i++]);\n } catch (_) {\n return '[Circular]';\n }\n default:\n return x;\n }\n });\n for (var x = args[i]; i < len; x = args[++i]) {\n if (isNull(x) || !isObject(x)) {\n str += ' ' + x;\n } else {\n str += ' ' + inspect(x);\n }\n }\n return str;\n};\n\n\n// Mark that a method should not be used.\n// Returns a modified function which warns once by default.\n// If --no-deprecation is set, then it is a no-op.\nexports.deprecate = function(fn, msg) {\n // Allow for deprecating things in the process of starting up.\n if (isUndefined(global.process)) {\n return function() {\n return exports.deprecate(fn, msg).apply(this, arguments);\n };\n }\n\n if (process.noDeprecation === true) {\n return fn;\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (process.throwDeprecation) {\n throw new Error(msg);\n } else if (process.traceDeprecation) {\n console.trace(msg);\n } else {\n console.error(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n};\n\n\nvar debugs = {};\nvar debugEnviron;\nexports.debuglog = function(set) {\n if (isUndefined(debugEnviron))\n debugEnviron = process.env.NODE_DEBUG || '';\n set = set.toUpperCase();\n if (!debugs[set]) {\n if (new RegExp('\\\\b' + set + '\\\\b', 'i').test(debugEnviron)) {\n var pid = process.pid;\n debugs[set] = function() {\n var msg = exports.format.apply(exports, arguments);\n console.error('%s %d: %s', set, pid, msg);\n };\n } else {\n debugs[set] = function() {};\n }\n }\n return debugs[set];\n};\n\n\n/**\n * Echos the value of a value. Trys to print the value out\n * in the best way possible given the different types.\n *\n * @param {Object} obj The object to print out.\n * @param {Object} opts Optional options object that alters the output.\n */\n/* legacy: obj, showHidden, depth, colors*/\nfunction inspect(obj, opts) {\n // default options\n var ctx = {\n seen: [],\n stylize: stylizeNoColor\n };\n // legacy...\n if (arguments.length >= 3) ctx.depth = arguments[2];\n if (arguments.length >= 4) ctx.colors = arguments[3];\n if (isBoolean(opts)) {\n // legacy...\n ctx.showHidden = opts;\n } else if (opts) {\n // got an \"options\" object\n exports._extend(ctx, opts);\n }\n // set default options\n if (isUndefined(ctx.showHidden)) ctx.showHidden = false;\n if (isUndefined(ctx.depth)) ctx.depth = 2;\n if (isUndefined(ctx.colors)) ctx.colors = false;\n if (isUndefined(ctx.customInspect)) ctx.customInspect = true;\n if (ctx.colors) ctx.stylize = stylizeWithColor;\n return formatValue(ctx, obj, ctx.depth);\n}\nexports.inspect = inspect;\n\n\n// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics\ninspect.colors = {\n 'bold' : [1, 22],\n 'italic' : [3, 23],\n 'underline' : [4, 24],\n 'inverse' : [7, 27],\n 'white' : [37, 39],\n 'grey' : [90, 39],\n 'black' : [30, 39],\n 'blue' : [34, 39],\n 'cyan' : [36, 39],\n 'green' : [32, 39],\n 'magenta' : [35, 39],\n 'red' : [31, 39],\n 'yellow' : [33, 39]\n};\n\n// Don't use 'blue' not visible on cmd.exe\ninspect.styles = {\n 'special': 'cyan',\n 'number': 'yellow',\n 'boolean': 'yellow',\n 'undefined': 'grey',\n 'null': 'bold',\n 'string': 'green',\n 'date': 'magenta',\n // \"name\": intentionally not styling\n 'regexp': 'red'\n};\n\n\nfunction stylizeWithColor(str, styleType) {\n var style = inspect.styles[styleType];\n\n if (style) {\n return '\\u001b[' + inspect.colors[style][0] + 'm' + str +\n '\\u001b[' + inspect.colors[style][1] + 'm';\n } else {\n return str;\n }\n}\n\n\nfunction stylizeNoColor(str, styleType) {\n return str;\n}\n\n\nfunction arrayToHash(array) {\n var hash = {};\n\n array.forEach(function(val, idx) {\n hash[val] = true;\n });\n\n return hash;\n}\n\n\nfunction formatValue(ctx, value, recurseTimes) {\n // Provide a hook for user-specified inspect functions.\n // Check that value is an object with an inspect function on it\n if (ctx.customInspect &&\n value &&\n isFunction(value.inspect) &&\n // Filter out the util module, it's inspect function is special\n value.inspect !== exports.inspect &&\n // Also filter out any prototype objects using the circular check.\n !(value.constructor && value.constructor.prototype === value)) {\n var ret = value.inspect(recurseTimes, ctx);\n if (!isString(ret)) {\n ret = formatValue(ctx, ret, recurseTimes);\n }\n return ret;\n }\n\n // Primitive types cannot have properties\n var primitive = formatPrimitive(ctx, value);\n if (primitive) {\n return primitive;\n }\n\n // Look up the keys of the object.\n var keys = Object.keys(value);\n var visibleKeys = arrayToHash(keys);\n\n if (ctx.showHidden) {\n keys = Object.getOwnPropertyNames(value);\n }\n\n // IE doesn't make error fields non-enumerable\n // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx\n if (isError(value)\n && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {\n return formatError(value);\n }\n\n // Some type of object without properties can be shortcutted.\n if (keys.length === 0) {\n if (isFunction(value)) {\n var name = value.name ? ': ' + value.name : '';\n return ctx.stylize('[Function' + name + ']', 'special');\n }\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n }\n if (isDate(value)) {\n return ctx.stylize(Date.prototype.toString.call(value), 'date');\n }\n if (isError(value)) {\n return formatError(value);\n }\n }\n\n var base = '', array = false, braces = ['{', '}'];\n\n // Make Array say that they are Array\n if (isArray(value)) {\n array = true;\n braces = ['[', ']'];\n }\n\n // Make functions say that they are functions\n if (isFunction(value)) {\n var n = value.name ? ': ' + value.name : '';\n base = ' [Function' + n + ']';\n }\n\n // Make RegExps say that they are RegExps\n if (isRegExp(value)) {\n base = ' ' + RegExp.prototype.toString.call(value);\n }\n\n // Make dates with properties first say the date\n if (isDate(value)) {\n base = ' ' + Date.prototype.toUTCString.call(value);\n }\n\n // Make error with message first say the error\n if (isError(value)) {\n base = ' ' + formatError(value);\n }\n\n if (keys.length === 0 && (!array || value.length == 0)) {\n return braces[0] + base + braces[1];\n }\n\n if (recurseTimes < 0) {\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n } else {\n return ctx.stylize('[Object]', 'special');\n }\n }\n\n ctx.seen.push(value);\n\n var output;\n if (array) {\n output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);\n } else {\n output = keys.map(function(key) {\n return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);\n });\n }\n\n ctx.seen.pop();\n\n return reduceToSingleString(output, base, braces);\n}\n\n\nfunction formatPrimitive(ctx, value) {\n if (isUndefined(value))\n return ctx.stylize('undefined', 'undefined');\n if (isString(value)) {\n var simple = '\\'' + JSON.stringify(value).replace(/^\"|\"$/g, '')\n .replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"') + '\\'';\n return ctx.stylize(simple, 'string');\n }\n if (isNumber(value))\n return ctx.stylize('' + value, 'number');\n if (isBoolean(value))\n return ctx.stylize('' + value, 'boolean');\n // For some reason typeof null is \"object\", so special case here.\n if (isNull(value))\n return ctx.stylize('null', 'null');\n}\n\n\nfunction formatError(value) {\n return '[' + Error.prototype.toString.call(value) + ']';\n}\n\n\nfunction formatArray(ctx, value, recurseTimes, visibleKeys, keys) {\n var output = [];\n for (var i = 0, l = value.length; i < l; ++i) {\n if (hasOwnProperty(value, String(i))) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n String(i), true));\n } else {\n output.push('');\n }\n }\n keys.forEach(function(key) {\n if (!key.match(/^\\d+$/)) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n key, true));\n }\n });\n return output;\n}\n\n\nfunction formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {\n var name, str, desc;\n desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };\n if (desc.get) {\n if (desc.set) {\n str = ctx.stylize('[Getter/Setter]', 'special');\n } else {\n str = ctx.stylize('[Getter]', 'special');\n }\n } else {\n if (desc.set) {\n str = ctx.stylize('[Setter]', 'special');\n }\n }\n if (!hasOwnProperty(visibleKeys, key)) {\n name = '[' + key + ']';\n }\n if (!str) {\n if (ctx.seen.indexOf(desc.value) < 0) {\n if (isNull(recurseTimes)) {\n str = formatValue(ctx, desc.value, null);\n } else {\n str = formatValue(ctx, desc.value, recurseTimes - 1);\n }\n if (str.indexOf('\\n') > -1) {\n if (array) {\n str = str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n').substr(2);\n } else {\n str = '\\n' + str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n');\n }\n }\n } else {\n str = ctx.stylize('[Circular]', 'special');\n }\n }\n if (isUndefined(name)) {\n if (array && key.match(/^\\d+$/)) {\n return str;\n }\n name = JSON.stringify('' + key);\n if (name.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)) {\n name = name.substr(1, name.length - 2);\n name = ctx.stylize(name, 'name');\n } else {\n name = name.replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"')\n .replace(/(^\"|\"$)/g, \"'\");\n name = ctx.stylize(name, 'string');\n }\n }\n\n return name + ': ' + str;\n}\n\n\nfunction reduceToSingleString(output, base, braces) {\n var numLinesEst = 0;\n var length = output.reduce(function(prev, cur) {\n numLinesEst++;\n if (cur.indexOf('\\n') >= 0) numLinesEst++;\n return prev + cur.replace(/\\u001b\\[\\d\\d?m/g, '').length + 1;\n }, 0);\n\n if (length > 60) {\n return braces[0] +\n (base === '' ? '' : base + '\\n ') +\n ' ' +\n output.join(',\\n ') +\n ' ' +\n braces[1];\n }\n\n return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];\n}\n\n\n// NOTE: These type checking functions intentionally don't use `instanceof`\n// because it is fragile and can be easily faked with `Object.create()`.\nfunction isArray(ar) {\n return Array.isArray(ar);\n}\nexports.isArray = isArray;\n\nfunction isBoolean(arg) {\n return typeof arg === 'boolean';\n}\nexports.isBoolean = isBoolean;\n\nfunction isNull(arg) {\n return arg === null;\n}\nexports.isNull = isNull;\n\nfunction isNullOrUndefined(arg) {\n return arg == null;\n}\nexports.isNullOrUndefined = isNullOrUndefined;\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\nexports.isNumber = isNumber;\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\nexports.isString = isString;\n\nfunction isSymbol(arg) {\n return typeof arg === 'symbol';\n}\nexports.isSymbol = isSymbol;\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\nexports.isUndefined = isUndefined;\n\nfunction isRegExp(re) {\n return isObject(re) && objectToString(re) === '[object RegExp]';\n}\nexports.isRegExp = isRegExp;\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\nexports.isObject = isObject;\n\nfunction isDate(d) {\n return isObject(d) && objectToString(d) === '[object Date]';\n}\nexports.isDate = isDate;\n\nfunction isError(e) {\n return isObject(e) &&\n (objectToString(e) === '[object Error]' || e instanceof Error);\n}\nexports.isError = isError;\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nexports.isFunction = isFunction;\n\nfunction isPrimitive(arg) {\n return arg === null ||\n typeof arg === 'boolean' ||\n typeof arg === 'number' ||\n typeof arg === 'string' ||\n typeof arg === 'symbol' || // ES6 symbol\n typeof arg === 'undefined';\n}\nexports.isPrimitive = isPrimitive;\n\nexports.isBuffer = require('./support/isBuffer');\n\nfunction objectToString(o) {\n return Object.prototype.toString.call(o);\n}\n\n\nfunction pad(n) {\n return n < 10 ? '0' + n.toString(10) : n.toString(10);\n}\n\n\nvar months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',\n 'Oct', 'Nov', 'Dec'];\n\n// 26 Feb 16:19:34\nfunction timestamp() {\n var d = new Date();\n var time = [pad(d.getHours()),\n pad(d.getMinutes()),\n pad(d.getSeconds())].join(':');\n return [d.getDate(), months[d.getMonth()], time].join(' ');\n}\n\n\n// log is just a thin wrapper to console.log that prepends a timestamp\nexports.log = function() {\n console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));\n};\n\n\n/**\n * Inherit the prototype methods from one constructor into another.\n *\n * The Function.prototype.inherits from lang.js rewritten as a standalone\n * function (not on Function.prototype). NOTE: If this file is to be loaded\n * during bootstrapping this function needs to be rewritten using some native\n * functions as prototype setup using normal JavaScript does not work as\n * expected during bootstrapping (see mirror.js in r114903).\n *\n * @param {function} ctor Constructor function which needs to inherit the\n * prototype.\n * @param {function} superCtor Constructor function to inherit prototype from.\n */\nexports.inherits = require('inherits');\n\nexports._extend = function(origin, add) {\n // Don't do anything if add isn't an object\n if (!add || !isObject(add)) return origin;\n\n var keys = Object.keys(add);\n var i = keys.length;\n while (i--) {\n origin[keys[i]] = add[keys[i]];\n }\n return origin;\n};\n\nfunction hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/util/util.js\n ** module id = 2\n ** module chunks = 0\n **/","var createHash = require('sha.js')\n\nvar md5 = toConstructor(require('./md5'))\nvar rmd160 = toConstructor(require('ripemd160'))\n\nfunction toConstructor (fn) {\n return function () {\n var buffers = []\n var m= {\n update: function (data, enc) {\n if(!Buffer.isBuffer(data)) data = new Buffer(data, enc)\n buffers.push(data)\n return this\n },\n digest: function (enc) {\n var buf = Buffer.concat(buffers)\n var r = fn(buf)\n buffers = null\n return enc ? r.toString(enc) : r\n }\n }\n return m\n }\n}\n\nmodule.exports = function (alg) {\n if('md5' === alg) return new md5()\n if('rmd160' === alg) return new rmd160()\n return createHash(alg)\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/crypto-browserify/create-hash.js\n ** module id = 3\n ** module chunks = 0\n **/","var lookup = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n;(function (exports) {\n\t'use strict';\n\n var Arr = (typeof Uint8Array !== 'undefined')\n ? Uint8Array\n : Array\n\n\tvar PLUS = '+'.charCodeAt(0)\n\tvar SLASH = '/'.charCodeAt(0)\n\tvar NUMBER = '0'.charCodeAt(0)\n\tvar LOWER = 'a'.charCodeAt(0)\n\tvar UPPER = 'A'.charCodeAt(0)\n\tvar PLUS_URL_SAFE = '-'.charCodeAt(0)\n\tvar SLASH_URL_SAFE = '_'.charCodeAt(0)\n\n\tfunction decode (elt) {\n\t\tvar code = elt.charCodeAt(0)\n\t\tif (code === PLUS ||\n\t\t code === PLUS_URL_SAFE)\n\t\t\treturn 62 // '+'\n\t\tif (code === SLASH ||\n\t\t code === SLASH_URL_SAFE)\n\t\t\treturn 63 // '/'\n\t\tif (code < NUMBER)\n\t\t\treturn -1 //no match\n\t\tif (code < NUMBER + 10)\n\t\t\treturn code - NUMBER + 26 + 26\n\t\tif (code < UPPER + 26)\n\t\t\treturn code - UPPER\n\t\tif (code < LOWER + 26)\n\t\t\treturn code - LOWER + 26\n\t}\n\n\tfunction b64ToByteArray (b64) {\n\t\tvar i, j, l, tmp, placeHolders, arr\n\n\t\tif (b64.length % 4 > 0) {\n\t\t\tthrow new Error('Invalid string. Length must be a multiple of 4')\n\t\t}\n\n\t\t// the number of equal signs (place holders)\n\t\t// if there are two placeholders, than the two characters before it\n\t\t// represent one byte\n\t\t// if there is only one, then the three characters before it represent 2 bytes\n\t\t// this is just a cheap hack to not do indexOf twice\n\t\tvar len = b64.length\n\t\tplaceHolders = '=' === b64.charAt(len - 2) ? 2 : '=' === b64.charAt(len - 1) ? 1 : 0\n\n\t\t// base64 is 4/3 + up to two characters of the original data\n\t\tarr = new Arr(b64.length * 3 / 4 - placeHolders)\n\n\t\t// if there are placeholders, only get up to the last complete 4 chars\n\t\tl = placeHolders > 0 ? b64.length - 4 : b64.length\n\n\t\tvar L = 0\n\n\t\tfunction push (v) {\n\t\t\tarr[L++] = v\n\t\t}\n\n\t\tfor (i = 0, j = 0; i < l; i += 4, j += 3) {\n\t\t\ttmp = (decode(b64.charAt(i)) << 18) | (decode(b64.charAt(i + 1)) << 12) | (decode(b64.charAt(i + 2)) << 6) | decode(b64.charAt(i + 3))\n\t\t\tpush((tmp & 0xFF0000) >> 16)\n\t\t\tpush((tmp & 0xFF00) >> 8)\n\t\t\tpush(tmp & 0xFF)\n\t\t}\n\n\t\tif (placeHolders === 2) {\n\t\t\ttmp = (decode(b64.charAt(i)) << 2) | (decode(b64.charAt(i + 1)) >> 4)\n\t\t\tpush(tmp & 0xFF)\n\t\t} else if (placeHolders === 1) {\n\t\t\ttmp = (decode(b64.charAt(i)) << 10) | (decode(b64.charAt(i + 1)) << 4) | (decode(b64.charAt(i + 2)) >> 2)\n\t\t\tpush((tmp >> 8) & 0xFF)\n\t\t\tpush(tmp & 0xFF)\n\t\t}\n\n\t\treturn arr\n\t}\n\n\tfunction uint8ToBase64 (uint8) {\n\t\tvar i,\n\t\t\textraBytes = uint8.length % 3, // if we have 1 byte left, pad 2 bytes\n\t\t\toutput = \"\",\n\t\t\ttemp, length\n\n\t\tfunction encode (num) {\n\t\t\treturn lookup.charAt(num)\n\t\t}\n\n\t\tfunction tripletToBase64 (num) {\n\t\t\treturn encode(num >> 18 & 0x3F) + encode(num >> 12 & 0x3F) + encode(num >> 6 & 0x3F) + encode(num & 0x3F)\n\t\t}\n\n\t\t// go through the array every three bytes, we'll deal with trailing stuff later\n\t\tfor (i = 0, length = uint8.length - extraBytes; i < length; i += 3) {\n\t\t\ttemp = (uint8[i] << 16) + (uint8[i + 1] << 8) + (uint8[i + 2])\n\t\t\toutput += tripletToBase64(temp)\n\t\t}\n\n\t\t// pad the end with zeros, but make sure to not forget the extra bytes\n\t\tswitch (extraBytes) {\n\t\t\tcase 1:\n\t\t\t\ttemp = uint8[uint8.length - 1]\n\t\t\t\toutput += encode(temp >> 2)\n\t\t\t\toutput += encode((temp << 4) & 0x3F)\n\t\t\t\toutput += '=='\n\t\t\t\tbreak\n\t\t\tcase 2:\n\t\t\t\ttemp = (uint8[uint8.length - 2] << 8) + (uint8[uint8.length - 1])\n\t\t\t\toutput += encode(temp >> 10)\n\t\t\t\toutput += encode((temp >> 4) & 0x3F)\n\t\t\t\toutput += encode((temp << 2) & 0x3F)\n\t\t\t\toutput += '='\n\t\t\t\tbreak\n\t\t}\n\n\t\treturn output\n\t}\n\n\texports.toByteArray = b64ToByteArray\n\texports.fromByteArray = uint8ToBase64\n}(typeof exports === 'undefined' ? (this.base64js = {}) : exports))\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/base64-js/lib/b64.js\n ** module id = 4\n ** module chunks = 0\n **/","var toString = {}.toString;\n\nmodule.exports = Array.isArray || function (arr) {\n return toString.call(arr) == '[object Array]';\n};\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/buffer/~/isarray/index.js\n ** module id = 5\n ** module chunks = 0\n **/","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['module', 'select'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(module, require('select'));\n } else {\n var mod = {\n exports: {}\n };\n factory(mod, global.select);\n global.clipboardAction = mod.exports;\n }\n})(this, function (module, _select) {\n 'use strict';\n\n var _select2 = _interopRequireDefault(_select);\n\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n }\n\n var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n };\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n var _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n }();\n\n var ClipboardAction = function () {\n /**\n * @param {Object} options\n */\n\n function ClipboardAction(options) {\n _classCallCheck(this, ClipboardAction);\n\n this.resolveOptions(options);\n this.initSelection();\n }\n\n /**\n * Defines base properties passed from constructor.\n * @param {Object} options\n */\n\n\n ClipboardAction.prototype.resolveOptions = function resolveOptions() {\n var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\n this.action = options.action;\n this.emitter = options.emitter;\n this.target = options.target;\n this.text = options.text;\n this.trigger = options.trigger;\n\n this.selectedText = '';\n };\n\n ClipboardAction.prototype.initSelection = function initSelection() {\n if (this.text) {\n this.selectFake();\n } else if (this.target) {\n this.selectTarget();\n }\n };\n\n ClipboardAction.prototype.selectFake = function selectFake() {\n var _this = this;\n\n var isRTL = document.documentElement.getAttribute('dir') == 'rtl';\n\n this.removeFake();\n\n this.fakeHandlerCallback = function () {\n return _this.removeFake();\n };\n this.fakeHandler = document.body.addEventListener('click', this.fakeHandlerCallback) || true;\n\n this.fakeElem = document.createElement('textarea');\n // Prevent zooming on iOS\n this.fakeElem.style.fontSize = '12pt';\n // Reset box model\n this.fakeElem.style.border = '0';\n this.fakeElem.style.padding = '0';\n this.fakeElem.style.margin = '0';\n // Move element out of screen horizontally\n this.fakeElem.style.position = 'absolute';\n this.fakeElem.style[isRTL ? 'right' : 'left'] = '-9999px';\n // Move element to the same position vertically\n this.fakeElem.style.top = (window.pageYOffset || document.documentElement.scrollTop) + 'px';\n this.fakeElem.setAttribute('readonly', '');\n this.fakeElem.value = this.text;\n\n document.body.appendChild(this.fakeElem);\n\n this.selectedText = (0, _select2.default)(this.fakeElem);\n this.copyText();\n };\n\n ClipboardAction.prototype.removeFake = function removeFake() {\n if (this.fakeHandler) {\n document.body.removeEventListener('click', this.fakeHandlerCallback);\n this.fakeHandler = null;\n this.fakeHandlerCallback = null;\n }\n\n if (this.fakeElem) {\n document.body.removeChild(this.fakeElem);\n this.fakeElem = null;\n }\n };\n\n ClipboardAction.prototype.selectTarget = function selectTarget() {\n this.selectedText = (0, _select2.default)(this.target);\n this.copyText();\n };\n\n ClipboardAction.prototype.copyText = function copyText() {\n var succeeded = undefined;\n\n try {\n succeeded = document.execCommand(this.action);\n } catch (err) {\n succeeded = false;\n }\n\n this.handleResult(succeeded);\n };\n\n ClipboardAction.prototype.handleResult = function handleResult(succeeded) {\n if (succeeded) {\n this.emitter.emit('success', {\n action: this.action,\n text: this.selectedText,\n trigger: this.trigger,\n clearSelection: this.clearSelection.bind(this)\n });\n } else {\n this.emitter.emit('error', {\n action: this.action,\n trigger: this.trigger,\n clearSelection: this.clearSelection.bind(this)\n });\n }\n };\n\n ClipboardAction.prototype.clearSelection = function clearSelection() {\n if (this.target) {\n this.target.blur();\n }\n\n window.getSelection().removeAllRanges();\n };\n\n ClipboardAction.prototype.destroy = function destroy() {\n this.removeFake();\n };\n\n _createClass(ClipboardAction, [{\n key: 'action',\n set: function set() {\n var action = arguments.length <= 0 || arguments[0] === undefined ? 'copy' : arguments[0];\n\n this._action = action;\n\n if (this._action !== 'copy' && this._action !== 'cut') {\n throw new Error('Invalid \"action\" value, use either \"copy\" or \"cut\"');\n }\n },\n get: function get() {\n return this._action;\n }\n }, {\n key: 'target',\n set: function set(target) {\n if (target !== undefined) {\n if (target && (typeof target === 'undefined' ? 'undefined' : _typeof(target)) === 'object' && target.nodeType === 1) {\n if (this.action === 'copy' && target.hasAttribute('disabled')) {\n throw new Error('Invalid \"target\" attribute. Please use \"readonly\" instead of \"disabled\" attribute');\n }\n\n if (this.action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {\n throw new Error('Invalid \"target\" attribute. You can\\'t cut text from elements with \"readonly\" or \"disabled\" attributes');\n }\n\n this._target = target;\n } else {\n throw new Error('Invalid \"target\" value, use a valid Element');\n }\n }\n },\n get: function get() {\n return this._target;\n }\n }]);\n\n return ClipboardAction;\n }();\n\n module.exports = ClipboardAction;\n});\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/clipboard/lib/clipboard-action.js\n ** module id = 6\n ** module chunks = 0\n **/","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['module', './clipboard-action', 'tiny-emitter', 'good-listener'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(module, require('./clipboard-action'), require('tiny-emitter'), require('good-listener'));\n } else {\n var mod = {\n exports: {}\n };\n factory(mod, global.clipboardAction, global.tinyEmitter, global.goodListener);\n global.clipboard = mod.exports;\n }\n})(this, function (module, _clipboardAction, _tinyEmitter, _goodListener) {\n 'use strict';\n\n var _clipboardAction2 = _interopRequireDefault(_clipboardAction);\n\n var _tinyEmitter2 = _interopRequireDefault(_tinyEmitter);\n\n var _goodListener2 = _interopRequireDefault(_goodListener);\n\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n }\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n function _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n }\n\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n }\n\n var Clipboard = function (_Emitter) {\n _inherits(Clipboard, _Emitter);\n\n /**\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n * @param {Object} options\n */\n\n function Clipboard(trigger, options) {\n _classCallCheck(this, Clipboard);\n\n var _this = _possibleConstructorReturn(this, _Emitter.call(this));\n\n _this.resolveOptions(options);\n _this.listenClick(trigger);\n return _this;\n }\n\n /**\n * Defines if attributes would be resolved using internal setter functions\n * or custom functions that were passed in the constructor.\n * @param {Object} options\n */\n\n\n Clipboard.prototype.resolveOptions = function resolveOptions() {\n var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\n this.action = typeof options.action === 'function' ? options.action : this.defaultAction;\n this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;\n this.text = typeof options.text === 'function' ? options.text : this.defaultText;\n };\n\n Clipboard.prototype.listenClick = function listenClick(trigger) {\n var _this2 = this;\n\n this.listener = (0, _goodListener2.default)(trigger, 'click', function (e) {\n return _this2.onClick(e);\n });\n };\n\n Clipboard.prototype.onClick = function onClick(e) {\n var trigger = e.delegateTarget || e.currentTarget;\n\n if (this.clipboardAction) {\n this.clipboardAction = null;\n }\n\n this.clipboardAction = new _clipboardAction2.default({\n action: this.action(trigger),\n target: this.target(trigger),\n text: this.text(trigger),\n trigger: trigger,\n emitter: this\n });\n };\n\n Clipboard.prototype.defaultAction = function defaultAction(trigger) {\n return getAttributeValue('action', trigger);\n };\n\n Clipboard.prototype.defaultTarget = function defaultTarget(trigger) {\n var selector = getAttributeValue('target', trigger);\n\n if (selector) {\n return document.querySelector(selector);\n }\n };\n\n Clipboard.prototype.defaultText = function defaultText(trigger) {\n return getAttributeValue('text', trigger);\n };\n\n Clipboard.prototype.destroy = function destroy() {\n this.listener.destroy();\n\n if (this.clipboardAction) {\n this.clipboardAction.destroy();\n this.clipboardAction = null;\n }\n };\n\n return Clipboard;\n }(_tinyEmitter2.default);\n\n /**\n * Helper function to retrieve attribute value.\n * @param {String} suffix\n * @param {Element} element\n */\n function getAttributeValue(suffix, element) {\n var attribute = 'data-clipboard-' + suffix;\n\n if (!element.hasAttribute(attribute)) {\n return;\n }\n\n return element.getAttribute(attribute);\n }\n\n module.exports = Clipboard;\n});\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/clipboard/lib/clipboard.js\n ** module id = 7\n ** module chunks = 0\n **/","var matches = require('matches-selector')\r\n\r\nmodule.exports = function (element, selector, checkYoSelf) {\r\n var parent = checkYoSelf ? element : element.parentNode\r\n\r\n while (parent && parent !== document) {\r\n if (matches(parent, selector)) return parent;\r\n parent = parent.parentNode\r\n }\r\n}\r\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/closest/index.js\n ** module id = 8\n ** module chunks = 0\n **/","var createHash = require('./create-hash')\n\nvar zeroBuffer = new Buffer(128)\nzeroBuffer.fill(0)\n\nmodule.exports = Hmac\n\nfunction Hmac (alg, key) {\n if(!(this instanceof Hmac)) return new Hmac(alg, key)\n this._opad = opad\n this._alg = alg\n\n var blocksize = (alg === 'sha512') ? 128 : 64\n\n key = this._key = !Buffer.isBuffer(key) ? new Buffer(key) : key\n\n if(key.length > blocksize) {\n key = createHash(alg).update(key).digest()\n } else if(key.length < blocksize) {\n key = Buffer.concat([key, zeroBuffer], blocksize)\n }\n\n var ipad = this._ipad = new Buffer(blocksize)\n var opad = this._opad = new Buffer(blocksize)\n\n for(var i = 0; i < blocksize; i++) {\n ipad[i] = key[i] ^ 0x36\n opad[i] = key[i] ^ 0x5C\n }\n\n this._hash = createHash(alg).update(ipad)\n}\n\nHmac.prototype.update = function (data, enc) {\n this._hash.update(data, enc)\n return this\n}\n\nHmac.prototype.digest = function (enc) {\n var h = this._hash.digest()\n return createHash(this._alg).update(this._opad).update(h).digest(enc)\n}\n\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/crypto-browserify/create-hmac.js\n ** module id = 9\n ** module chunks = 0\n **/","var intSize = 4;\nvar zeroBuffer = new Buffer(intSize); zeroBuffer.fill(0);\nvar chrsz = 8;\n\nfunction toArray(buf, bigEndian) {\n if ((buf.length % intSize) !== 0) {\n var len = buf.length + (intSize - (buf.length % intSize));\n buf = Buffer.concat([buf, zeroBuffer], len);\n }\n\n var arr = [];\n var fn = bigEndian ? buf.readInt32BE : buf.readInt32LE;\n for (var i = 0; i < buf.length; i += intSize) {\n arr.push(fn.call(buf, i));\n }\n return arr;\n}\n\nfunction toBuffer(arr, size, bigEndian) {\n var buf = new Buffer(size);\n var fn = bigEndian ? buf.writeInt32BE : buf.writeInt32LE;\n for (var i = 0; i < arr.length; i++) {\n fn.call(buf, arr[i], i * 4, true);\n }\n return buf;\n}\n\nfunction hash(buf, fn, hashSize, bigEndian) {\n if (!Buffer.isBuffer(buf)) buf = new Buffer(buf);\n var arr = fn(toArray(buf, bigEndian), buf.length * chrsz);\n return toBuffer(arr, hashSize, bigEndian);\n}\n\nmodule.exports = { hash: hash };\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/crypto-browserify/helpers.js\n ** module id = 10\n ** module chunks = 0\n **/","var rng = require('./rng')\n\nfunction error () {\n var m = [].slice.call(arguments).join(' ')\n throw new Error([\n m,\n 'we accept pull requests',\n 'http://github.com/dominictarr/crypto-browserify'\n ].join('\\n'))\n}\n\nexports.createHash = require('./create-hash')\n\nexports.createHmac = require('./create-hmac')\n\nexports.randomBytes = function(size, callback) {\n if (callback && callback.call) {\n try {\n callback.call(this, undefined, new Buffer(rng(size)))\n } catch (err) { callback(err) }\n } else {\n return new Buffer(rng(size))\n }\n}\n\nfunction each(a, f) {\n for(var i in a)\n f(a[i], i)\n}\n\nexports.getHashes = function () {\n return ['sha1', 'sha256', 'sha512', 'md5', 'rmd160']\n}\n\nvar p = require('./pbkdf2')(exports)\nexports.pbkdf2 = p.pbkdf2\nexports.pbkdf2Sync = p.pbkdf2Sync\n\n\n// the least I can do is make error messages for the rest of the node.js/crypto api.\neach(['createCredentials'\n, 'createCipher'\n, 'createCipheriv'\n, 'createDecipher'\n, 'createDecipheriv'\n, 'createSign'\n, 'createVerify'\n, 'createDiffieHellman'\n], function (name) {\n exports[name] = function () {\n error('sorry,', name, 'is not implemented yet')\n }\n})\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/crypto-browserify/index.js\n ** module id = 11\n ** module chunks = 0\n **/","/*\n * A JavaScript implementation of the RSA Data Security, Inc. MD5 Message\n * Digest Algorithm, as defined in RFC 1321.\n * Version 2.1 Copyright (C) Paul Johnston 1999 - 2002.\n * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n * Distributed under the BSD License\n * See http://pajhome.org.uk/crypt/md5 for more info.\n */\n\nvar helpers = require('./helpers');\n\n/*\n * Calculate the MD5 of an array of little-endian words, and a bit length\n */\nfunction core_md5(x, len)\n{\n /* append padding */\n x[len >> 5] |= 0x80 << ((len) % 32);\n x[(((len + 64) >>> 9) << 4) + 14] = len;\n\n var a = 1732584193;\n var b = -271733879;\n var c = -1732584194;\n var d = 271733878;\n\n for(var i = 0; i < x.length; i += 16)\n {\n var olda = a;\n var oldb = b;\n var oldc = c;\n var oldd = d;\n\n a = md5_ff(a, b, c, d, x[i+ 0], 7 , -680876936);\n d = md5_ff(d, a, b, c, x[i+ 1], 12, -389564586);\n c = md5_ff(c, d, a, b, x[i+ 2], 17, 606105819);\n b = md5_ff(b, c, d, a, x[i+ 3], 22, -1044525330);\n a = md5_ff(a, b, c, d, x[i+ 4], 7 , -176418897);\n d = md5_ff(d, a, b, c, x[i+ 5], 12, 1200080426);\n c = md5_ff(c, d, a, b, x[i+ 6], 17, -1473231341);\n b = md5_ff(b, c, d, a, x[i+ 7], 22, -45705983);\n a = md5_ff(a, b, c, d, x[i+ 8], 7 , 1770035416);\n d = md5_ff(d, a, b, c, x[i+ 9], 12, -1958414417);\n c = md5_ff(c, d, a, b, x[i+10], 17, -42063);\n b = md5_ff(b, c, d, a, x[i+11], 22, -1990404162);\n a = md5_ff(a, b, c, d, x[i+12], 7 , 1804603682);\n d = md5_ff(d, a, b, c, x[i+13], 12, -40341101);\n c = md5_ff(c, d, a, b, x[i+14], 17, -1502002290);\n b = md5_ff(b, c, d, a, x[i+15], 22, 1236535329);\n\n a = md5_gg(a, b, c, d, x[i+ 1], 5 , -165796510);\n d = md5_gg(d, a, b, c, x[i+ 6], 9 , -1069501632);\n c = md5_gg(c, d, a, b, x[i+11], 14, 643717713);\n b = md5_gg(b, c, d, a, x[i+ 0], 20, -373897302);\n a = md5_gg(a, b, c, d, x[i+ 5], 5 , -701558691);\n d = md5_gg(d, a, b, c, x[i+10], 9 , 38016083);\n c = md5_gg(c, d, a, b, x[i+15], 14, -660478335);\n b = md5_gg(b, c, d, a, x[i+ 4], 20, -405537848);\n a = md5_gg(a, b, c, d, x[i+ 9], 5 , 568446438);\n d = md5_gg(d, a, b, c, x[i+14], 9 , -1019803690);\n c = md5_gg(c, d, a, b, x[i+ 3], 14, -187363961);\n b = md5_gg(b, c, d, a, x[i+ 8], 20, 1163531501);\n a = md5_gg(a, b, c, d, x[i+13], 5 , -1444681467);\n d = md5_gg(d, a, b, c, x[i+ 2], 9 , -51403784);\n c = md5_gg(c, d, a, b, x[i+ 7], 14, 1735328473);\n b = md5_gg(b, c, d, a, x[i+12], 20, -1926607734);\n\n a = md5_hh(a, b, c, d, x[i+ 5], 4 , -378558);\n d = md5_hh(d, a, b, c, x[i+ 8], 11, -2022574463);\n c = md5_hh(c, d, a, b, x[i+11], 16, 1839030562);\n b = md5_hh(b, c, d, a, x[i+14], 23, -35309556);\n a = md5_hh(a, b, c, d, x[i+ 1], 4 , -1530992060);\n d = md5_hh(d, a, b, c, x[i+ 4], 11, 1272893353);\n c = md5_hh(c, d, a, b, x[i+ 7], 16, -155497632);\n b = md5_hh(b, c, d, a, x[i+10], 23, -1094730640);\n a = md5_hh(a, b, c, d, x[i+13], 4 , 681279174);\n d = md5_hh(d, a, b, c, x[i+ 0], 11, -358537222);\n c = md5_hh(c, d, a, b, x[i+ 3], 16, -722521979);\n b = md5_hh(b, c, d, a, x[i+ 6], 23, 76029189);\n a = md5_hh(a, b, c, d, x[i+ 9], 4 , -640364487);\n d = md5_hh(d, a, b, c, x[i+12], 11, -421815835);\n c = md5_hh(c, d, a, b, x[i+15], 16, 530742520);\n b = md5_hh(b, c, d, a, x[i+ 2], 23, -995338651);\n\n a = md5_ii(a, b, c, d, x[i+ 0], 6 , -198630844);\n d = md5_ii(d, a, b, c, x[i+ 7], 10, 1126891415);\n c = md5_ii(c, d, a, b, x[i+14], 15, -1416354905);\n b = md5_ii(b, c, d, a, x[i+ 5], 21, -57434055);\n a = md5_ii(a, b, c, d, x[i+12], 6 , 1700485571);\n d = md5_ii(d, a, b, c, x[i+ 3], 10, -1894986606);\n c = md5_ii(c, d, a, b, x[i+10], 15, -1051523);\n b = md5_ii(b, c, d, a, x[i+ 1], 21, -2054922799);\n a = md5_ii(a, b, c, d, x[i+ 8], 6 , 1873313359);\n d = md5_ii(d, a, b, c, x[i+15], 10, -30611744);\n c = md5_ii(c, d, a, b, x[i+ 6], 15, -1560198380);\n b = md5_ii(b, c, d, a, x[i+13], 21, 1309151649);\n a = md5_ii(a, b, c, d, x[i+ 4], 6 , -145523070);\n d = md5_ii(d, a, b, c, x[i+11], 10, -1120210379);\n c = md5_ii(c, d, a, b, x[i+ 2], 15, 718787259);\n b = md5_ii(b, c, d, a, x[i+ 9], 21, -343485551);\n\n a = safe_add(a, olda);\n b = safe_add(b, oldb);\n c = safe_add(c, oldc);\n d = safe_add(d, oldd);\n }\n return Array(a, b, c, d);\n\n}\n\n/*\n * These functions implement the four basic operations the algorithm uses.\n */\nfunction md5_cmn(q, a, b, x, s, t)\n{\n return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),b);\n}\nfunction md5_ff(a, b, c, d, x, s, t)\n{\n return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t);\n}\nfunction md5_gg(a, b, c, d, x, s, t)\n{\n return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t);\n}\nfunction md5_hh(a, b, c, d, x, s, t)\n{\n return md5_cmn(b ^ c ^ d, a, b, x, s, t);\n}\nfunction md5_ii(a, b, c, d, x, s, t)\n{\n return md5_cmn(c ^ (b | (~d)), a, b, x, s, t);\n}\n\n/*\n * Add integers, wrapping at 2^32. This uses 16-bit operations internally\n * to work around bugs in some JS interpreters.\n */\nfunction safe_add(x, y)\n{\n var lsw = (x & 0xFFFF) + (y & 0xFFFF);\n var msw = (x >> 16) + (y >> 16) + (lsw >> 16);\n return (msw << 16) | (lsw & 0xFFFF);\n}\n\n/*\n * Bitwise rotate a 32-bit number to the left.\n */\nfunction bit_rol(num, cnt)\n{\n return (num << cnt) | (num >>> (32 - cnt));\n}\n\nmodule.exports = function md5(buf) {\n return helpers.hash(buf, core_md5, 16);\n};\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/crypto-browserify/md5.js\n ** module id = 12\n ** module chunks = 0\n **/","var pbkdf2Export = require('pbkdf2-compat/pbkdf2')\n\nmodule.exports = function (crypto, exports) {\n exports = exports || {}\n\n var exported = pbkdf2Export(crypto)\n\n exports.pbkdf2 = exported.pbkdf2\n exports.pbkdf2Sync = exported.pbkdf2Sync\n\n return exports\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/crypto-browserify/pbkdf2.js\n ** module id = 13\n ** module chunks = 0\n **/","(function() {\n var g = ('undefined' === typeof window ? global : window) || {}\n _crypto = (\n g.crypto || g.msCrypto || require('crypto')\n )\n module.exports = function(size) {\n // Modern Browsers\n if(_crypto.getRandomValues) {\n var bytes = new Buffer(size); //in browserify, this is an extended Uint8Array\n /* This will not work in older browsers.\n * See https://developer.mozilla.org/en-US/docs/Web/API/window.crypto.getRandomValues\n */\n \n _crypto.getRandomValues(bytes);\n return bytes;\n }\n else if (_crypto.randomBytes) {\n return _crypto.randomBytes(size)\n }\n else\n throw new Error(\n 'secure random number generation not supported by this browser\\n'+\n 'use chrome, FireFox or Internet Explorer 11'\n )\n }\n}())\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/crypto-browserify/rng.js\n ** module id = 14\n ** module chunks = 0\n **/","var closest = require('closest');\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction delegate(element, selector, type, callback, useCapture) {\n var listenerFn = listener.apply(this, arguments);\n\n element.addEventListener(type, listenerFn, useCapture);\n\n return {\n destroy: function() {\n element.removeEventListener(type, listenerFn, useCapture);\n }\n }\n}\n\n/**\n * Finds closest match and invokes callback.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Function}\n */\nfunction listener(element, selector, type, callback) {\n return function(e) {\n e.delegateTarget = closest(e.target, selector, true);\n\n if (e.delegateTarget) {\n callback.call(element, e);\n }\n }\n}\n\nmodule.exports = delegate;\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/delegate/src/delegate.js\n ** module id = 15\n ** module chunks = 0\n **/","/**\n * Check if argument is a HTML element.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.node = function(value) {\n return value !== undefined\n && value instanceof HTMLElement\n && value.nodeType === 1;\n};\n\n/**\n * Check if argument is a list of HTML elements.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.nodeList = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return value !== undefined\n && (type === '[object NodeList]' || type === '[object HTMLCollection]')\n && ('length' in value)\n && (value.length === 0 || exports.node(value[0]));\n};\n\n/**\n * Check if argument is a string.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.string = function(value) {\n return typeof value === 'string'\n || value instanceof String;\n};\n\n/**\n * Check if argument is a function.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.fn = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return type === '[object Function]';\n};\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/good-listener/src/is.js\n ** module id = 18\n ** module chunks = 0\n **/","var is = require('./is');\nvar delegate = require('delegate');\n\n/**\n * Validates all params and calls the right\n * listener function based on its target type.\n *\n * @param {String|HTMLElement|HTMLCollection|NodeList} target\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listen(target, type, callback) {\n if (!target && !type && !callback) {\n throw new Error('Missing required arguments');\n }\n\n if (!is.string(type)) {\n throw new TypeError('Second argument must be a String');\n }\n\n if (!is.fn(callback)) {\n throw new TypeError('Third argument must be a Function');\n }\n\n if (is.node(target)) {\n return listenNode(target, type, callback);\n }\n else if (is.nodeList(target)) {\n return listenNodeList(target, type, callback);\n }\n else if (is.string(target)) {\n return listenSelector(target, type, callback);\n }\n else {\n throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');\n }\n}\n\n/**\n * Adds an event listener to a HTML element\n * and returns a remove listener function.\n *\n * @param {HTMLElement} node\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNode(node, type, callback) {\n node.addEventListener(type, callback);\n\n return {\n destroy: function() {\n node.removeEventListener(type, callback);\n }\n }\n}\n\n/**\n * Add an event listener to a list of HTML elements\n * and returns a remove listener function.\n *\n * @param {NodeList|HTMLCollection} nodeList\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNodeList(nodeList, type, callback) {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.addEventListener(type, callback);\n });\n\n return {\n destroy: function() {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.removeEventListener(type, callback);\n });\n }\n }\n}\n\n/**\n * Add an event listener to a selector\n * and returns a remove listener function.\n *\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenSelector(selector, type, callback) {\n return delegate(document.body, selector, type, callback);\n}\n\nmodule.exports = listen;\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/good-listener/src/listen.js\n ** module id = 19\n ** module chunks = 0\n **/","exports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = nBytes * 8 - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = nBytes * 8 - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = (value * c - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/ieee754/index.js\n ** module id = 20\n ** module chunks = 0\n **/","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/inherits/inherits_browser.js\n ** module id = 21\n ** module chunks = 0\n **/","'use strict';\n\nvar _crypto = require('crypto');\n\nvar _crypto2 = _interopRequireDefault(_crypto);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nmodule.exports = {\n generatePassword: _generatePassword,\n encryptLogin: _encryptLogin,\n renderPassword: _renderPassword,\n _deriveHash: _deriveHash,\n _prettyPrint: _prettyPrint,\n _getTemplate: _getTemplate,\n _getCharType: _getCharType,\n _getPasswordChar: _getPasswordChar,\n _string2charCodes: _string2charCodes\n};\n\nfunction _generatePassword(login, masterPassword, site, options) {\n return new Promise(function (resolve, reject) {\n if (!login || !masterPassword || !site) {\n reject('generatePassword invalid parameter');\n }\n\n _encryptLogin(login, masterPassword).then(function (hash) {\n resolve(_renderPassword(hash, site, options));\n });\n });\n}\n\nfunction _renderPassword(hash, site, options) {\n var derivedHash = _deriveHash(hash, site, options);\n var template = _getTemplate(options.password.settings);\n return _prettyPrint(derivedHash, template);\n}\n\nfunction _encryptLogin(login, masterPassword) {\n return new Promise(function (resolve, reject) {\n if (!login || !masterPassword) {\n reject('encryptLogin parameter could not be empty');\n }\n var iterations = 8192;\n var keylen = 32;\n _crypto2.default.pbkdf2(masterPassword, login, iterations, keylen, 'sha256', function (error, key) {\n if (error) {\n reject('error in pbkdf2');\n } else {\n resolve(key.toString('hex'));\n }\n });\n });\n}\n\nfunction _deriveHash(hash, site) {\n var _ref = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2];\n\n var _ref$password = _ref.password;\n var password = _ref$password === undefined ? { length: 12 } : _ref$password;\n var _ref$counter = _ref.counter;\n var counter = _ref$counter === undefined ? 1 : _ref$counter;\n\n var salt = site + counter.toString();\n var derivedHash = _crypto2.default.createHmac('sha256', hash).update(salt).digest('hex');\n return derivedHash.substring(0, password.length);\n}\n\nfunction _getTemplate() {\n var passwordTypes = arguments.length <= 0 || arguments[0] === undefined ? ['strong'] : arguments[0];\n\n var passwordTypesInfo = {\n lowercase: { value: 'vc', order: 1 },\n uppercase: { value: 'VC', order: 2 },\n numbers: { value: 'n', order: 3 },\n symbols: { value: 's', order: 4 },\n strong: { value: 'Cvcvns', order: 5 }\n };\n return passwordTypes.map(function (passwordType) {\n return passwordTypesInfo[passwordType];\n }).sort(function (passwordType1, passwordType2) {\n return passwordType1.order > passwordType2.order;\n }).map(function (passwordType) {\n return passwordType.value;\n }).join('');\n}\n\nfunction _prettyPrint(hash, template) {\n var password = '';\n\n _string2charCodes(hash).forEach(function (charCode, index) {\n var charType = _getCharType(template, index);\n password += _getPasswordChar(charType, charCode);\n });\n return password;\n}\n\nfunction _string2charCodes(text) {\n var charCodes = [];\n for (var i = 0; i < text.length; i++) {\n charCodes.push(text.charCodeAt(i));\n }\n return charCodes;\n}\n\nfunction _getCharType(template, index) {\n return template[index % template.length];\n}\n\nfunction _getPasswordChar(charType, index) {\n var passwordsChars = {\n V: 'AEIOUY',\n C: 'BCDFGHJKLMNPQRSTVWXZ',\n v: 'aeiouy',\n c: 'bcdfghjklmnpqrstvwxz',\n A: 'AEIOUYBCDFGHJKLMNPQRSTVWXZ',\n a: 'AEIOUYaeiouyBCDFGHJKLMNPQRSTVWXZbcdfghjklmnpqrstvwxz',\n n: '0123456789',\n s: '@&%?,=[]_:-+*$#!\\'^~;()/.',\n x: 'AEIOUYaeiouyBCDFGHJKLMNPQRSTVWXZbcdfghjklmnpqrstvwxz0123456789@&%?,=[]_:-+*$#!\\'^~;()/.'\n };\n var passwordChar = passwordsChars[charType];\n return passwordChar[index % passwordChar.length];\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/lesspass/lib/lesspass.js\n ** module id = 22\n ** module chunks = 0\n **/","\r\n/**\r\n * Element prototype.\r\n */\r\n\r\nvar proto = Element.prototype;\r\n\r\n/**\r\n * Vendor function.\r\n */\r\n\r\nvar vendor = proto.matchesSelector\r\n || proto.webkitMatchesSelector\r\n || proto.mozMatchesSelector\r\n || proto.msMatchesSelector\r\n || proto.oMatchesSelector;\r\n\r\n/**\r\n * Expose `match()`.\r\n */\r\n\r\nmodule.exports = match;\r\n\r\n/**\r\n * Match `el` to `selector`.\r\n *\r\n * @param {Element} el\r\n * @param {String} selector\r\n * @return {Boolean}\r\n * @api public\r\n */\r\n\r\nfunction match(el, selector) {\r\n if (vendor) return vendor.call(el, selector);\r\n var nodes = el.parentNode.querySelectorAll(selector);\r\n for (var i = 0; i < nodes.length; ++i) {\r\n if (nodes[i] == el) return true;\r\n }\r\n return false;\r\n}\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/matches-selector/index.js\n ** module id = 23\n ** module chunks = 0\n **/","module.exports = function(crypto) {\n function pbkdf2(password, salt, iterations, keylen, digest, callback) {\n if ('function' === typeof digest) {\n callback = digest\n digest = undefined\n }\n\n if ('function' !== typeof callback)\n throw new Error('No callback provided to pbkdf2')\n\n setTimeout(function() {\n var result\n\n try {\n result = pbkdf2Sync(password, salt, iterations, keylen, digest)\n } catch (e) {\n return callback(e)\n }\n\n callback(undefined, result)\n })\n }\n\n function pbkdf2Sync(password, salt, iterations, keylen, digest) {\n if ('number' !== typeof iterations)\n throw new TypeError('Iterations not a number')\n\n if (iterations < 0)\n throw new TypeError('Bad iterations')\n\n if ('number' !== typeof keylen)\n throw new TypeError('Key length not a number')\n\n if (keylen < 0)\n throw new TypeError('Bad key length')\n\n digest = digest || 'sha1'\n\n if (!Buffer.isBuffer(password)) password = new Buffer(password)\n if (!Buffer.isBuffer(salt)) salt = new Buffer(salt)\n\n var hLen, l = 1, r, T\n var DK = new Buffer(keylen)\n var block1 = new Buffer(salt.length + 4)\n salt.copy(block1, 0, 0, salt.length)\n\n for (var i = 1; i <= l; i++) {\n block1.writeUInt32BE(i, salt.length)\n\n var U = crypto.createHmac(digest, password).update(block1).digest()\n\n if (!hLen) {\n hLen = U.length\n T = new Buffer(hLen)\n l = Math.ceil(keylen / hLen)\n r = keylen - (l - 1) * hLen\n\n if (keylen > (Math.pow(2, 32) - 1) * hLen)\n throw new TypeError('keylen exceeds maximum length')\n }\n\n U.copy(T, 0, 0, hLen)\n\n for (var j = 1; j < iterations; j++) {\n U = crypto.createHmac(digest, password).update(U).digest()\n\n for (var k = 0; k < hLen; k++) {\n T[k] ^= U[k]\n }\n }\n\n var destPos = (i - 1) * hLen\n var len = (i == l ? r : hLen)\n T.copy(DK, destPos, 0, len)\n }\n\n return DK\n }\n\n return {\n pbkdf2: pbkdf2,\n pbkdf2Sync: pbkdf2Sync\n }\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/pbkdf2-compat/pbkdf2.js\n ** module id = 24\n ** module chunks = 0\n **/","// shim for using process in browser\n\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\n(function () {\n try {\n cachedSetTimeout = setTimeout;\n } catch (e) {\n cachedSetTimeout = function () {\n throw new Error('setTimeout is not defined');\n }\n }\n try {\n cachedClearTimeout = clearTimeout;\n } catch (e) {\n cachedClearTimeout = function () {\n throw new Error('clearTimeout is not defined');\n }\n }\n} ())\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = cachedSetTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n cachedClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n cachedSetTimeout(drainQueue, 0);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/process/browser.js\n ** module id = 25\n ** module chunks = 0\n **/","\nmodule.exports = ripemd160\n\n\n\n/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n/** @preserve\n(c) 2012 by Cédric Mesnil. All rights reserved.\n\nRedistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n\n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n*/\n\n// Constants table\nvar zl = [\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,\n 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8,\n 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12,\n 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2,\n 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13];\nvar zr = [\n 5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12,\n 6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2,\n 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13,\n 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14,\n 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11];\nvar sl = [\n 11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8,\n 7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12,\n 11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5,\n 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12,\n 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6 ];\nvar sr = [\n 8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6,\n 9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11,\n 9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5,\n 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8,\n 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11 ];\n\nvar hl = [ 0x00000000, 0x5A827999, 0x6ED9EBA1, 0x8F1BBCDC, 0xA953FD4E];\nvar hr = [ 0x50A28BE6, 0x5C4DD124, 0x6D703EF3, 0x7A6D76E9, 0x00000000];\n\nvar bytesToWords = function (bytes) {\n var words = [];\n for (var i = 0, b = 0; i < bytes.length; i++, b += 8) {\n words[b >>> 5] |= bytes[i] << (24 - b % 32);\n }\n return words;\n};\n\nvar wordsToBytes = function (words) {\n var bytes = [];\n for (var b = 0; b < words.length * 32; b += 8) {\n bytes.push((words[b >>> 5] >>> (24 - b % 32)) & 0xFF);\n }\n return bytes;\n};\n\nvar processBlock = function (H, M, offset) {\n\n // Swap endian\n for (var i = 0; i < 16; i++) {\n var offset_i = offset + i;\n var M_offset_i = M[offset_i];\n\n // Swap\n M[offset_i] = (\n (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) |\n (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00)\n );\n }\n\n // Working variables\n var al, bl, cl, dl, el;\n var ar, br, cr, dr, er;\n\n ar = al = H[0];\n br = bl = H[1];\n cr = cl = H[2];\n dr = dl = H[3];\n er = el = H[4];\n // Computation\n var t;\n for (var i = 0; i < 80; i += 1) {\n t = (al + M[offset+zl[i]])|0;\n if (i<16){\n t += f1(bl,cl,dl) + hl[0];\n } else if (i<32) {\n t += f2(bl,cl,dl) + hl[1];\n } else if (i<48) {\n t += f3(bl,cl,dl) + hl[2];\n } else if (i<64) {\n t += f4(bl,cl,dl) + hl[3];\n } else {// if (i<80) {\n t += f5(bl,cl,dl) + hl[4];\n }\n t = t|0;\n t = rotl(t,sl[i]);\n t = (t+el)|0;\n al = el;\n el = dl;\n dl = rotl(cl, 10);\n cl = bl;\n bl = t;\n\n t = (ar + M[offset+zr[i]])|0;\n if (i<16){\n t += f5(br,cr,dr) + hr[0];\n } else if (i<32) {\n t += f4(br,cr,dr) + hr[1];\n } else if (i<48) {\n t += f3(br,cr,dr) + hr[2];\n } else if (i<64) {\n t += f2(br,cr,dr) + hr[3];\n } else {// if (i<80) {\n t += f1(br,cr,dr) + hr[4];\n }\n t = t|0;\n t = rotl(t,sr[i]) ;\n t = (t+er)|0;\n ar = er;\n er = dr;\n dr = rotl(cr, 10);\n cr = br;\n br = t;\n }\n // Intermediate hash value\n t = (H[1] + cl + dr)|0;\n H[1] = (H[2] + dl + er)|0;\n H[2] = (H[3] + el + ar)|0;\n H[3] = (H[4] + al + br)|0;\n H[4] = (H[0] + bl + cr)|0;\n H[0] = t;\n};\n\nfunction f1(x, y, z) {\n return ((x) ^ (y) ^ (z));\n}\n\nfunction f2(x, y, z) {\n return (((x)&(y)) | ((~x)&(z)));\n}\n\nfunction f3(x, y, z) {\n return (((x) | (~(y))) ^ (z));\n}\n\nfunction f4(x, y, z) {\n return (((x) & (z)) | ((y)&(~(z))));\n}\n\nfunction f5(x, y, z) {\n return ((x) ^ ((y) |(~(z))));\n}\n\nfunction rotl(x,n) {\n return (x<>>(32-n));\n}\n\nfunction ripemd160(message) {\n var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];\n\n if (typeof message == 'string')\n message = new Buffer(message, 'utf8');\n\n var m = bytesToWords(message);\n\n var nBitsLeft = message.length * 8;\n var nBitsTotal = message.length * 8;\n\n // Add padding\n m[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32);\n m[(((nBitsLeft + 64) >>> 9) << 4) + 14] = (\n (((nBitsTotal << 8) | (nBitsTotal >>> 24)) & 0x00ff00ff) |\n (((nBitsTotal << 24) | (nBitsTotal >>> 8)) & 0xff00ff00)\n );\n\n for (var i=0 ; i>> 24)) & 0x00ff00ff) |\n (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00);\n }\n\n var digestbytes = wordsToBytes(H);\n return new Buffer(digestbytes);\n}\n\n\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/ripemd160/lib/ripemd160.js\n ** module id = 26\n ** module chunks = 0\n **/","function select(element) {\n var selectedText;\n\n if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n element.focus();\n element.setSelectionRange(0, element.value.length);\n\n selectedText = element.value;\n }\n else {\n if (element.hasAttribute('contenteditable')) {\n element.focus();\n }\n\n var selection = window.getSelection();\n var range = document.createRange();\n\n range.selectNodeContents(element);\n selection.removeAllRanges();\n selection.addRange(range);\n\n selectedText = selection.toString();\n }\n\n return selectedText;\n}\n\nmodule.exports = select;\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/select/src/select.js\n ** module id = 27\n ** module chunks = 0\n **/","module.exports = function (Buffer) {\n\n //prototype class for hash functions\n function Hash (blockSize, finalSize) {\n this._block = new Buffer(blockSize) //new Uint32Array(blockSize/4)\n this._finalSize = finalSize\n this._blockSize = blockSize\n this._len = 0\n this._s = 0\n }\n\n Hash.prototype.init = function () {\n this._s = 0\n this._len = 0\n }\n\n Hash.prototype.update = function (data, enc) {\n if (\"string\" === typeof data) {\n enc = enc || \"utf8\"\n data = new Buffer(data, enc)\n }\n\n var l = this._len += data.length\n var s = this._s = (this._s || 0)\n var f = 0\n var buffer = this._block\n\n while (s < l) {\n var t = Math.min(data.length, f + this._blockSize - (s % this._blockSize))\n var ch = (t - f)\n\n for (var i = 0; i < ch; i++) {\n buffer[(s % this._blockSize) + i] = data[i + f]\n }\n\n s += ch\n f += ch\n\n if ((s % this._blockSize) === 0) {\n this._update(buffer)\n }\n }\n this._s = s\n\n return this\n }\n\n Hash.prototype.digest = function (enc) {\n // Suppose the length of the message M, in bits, is l\n var l = this._len * 8\n\n // Append the bit 1 to the end of the message\n this._block[this._len % this._blockSize] = 0x80\n\n // and then k zero bits, where k is the smallest non-negative solution to the equation (l + 1 + k) === finalSize mod blockSize\n this._block.fill(0, this._len % this._blockSize + 1)\n\n if (l % (this._blockSize * 8) >= this._finalSize * 8) {\n this._update(this._block)\n this._block.fill(0)\n }\n\n // to this append the block which is equal to the number l written in binary\n // TODO: handle case where l is > Math.pow(2, 29)\n this._block.writeInt32BE(l, this._blockSize - 4)\n\n var hash = this._update(this._block) || this._hash()\n\n return enc ? hash.toString(enc) : hash\n }\n\n Hash.prototype._update = function () {\n throw new Error('_update must be implemented by subclass')\n }\n\n return Hash\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/sha.js/hash.js\n ** module id = 28\n ** module chunks = 0\n **/","var exports = module.exports = function (alg) {\n var Alg = exports[alg]\n if(!Alg) throw new Error(alg + ' is not supported (we accept pull requests)')\n return new Alg()\n}\n\nvar Buffer = require('buffer').Buffer\nvar Hash = require('./hash')(Buffer)\n\nexports.sha1 = require('./sha1')(Buffer, Hash)\nexports.sha256 = require('./sha256')(Buffer, Hash)\nexports.sha512 = require('./sha512')(Buffer, Hash)\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/sha.js/index.js\n ** module id = 29\n ** module chunks = 0\n **/","/*\n * A JavaScript implementation of the Secure Hash Algorithm, SHA-1, as defined\n * in FIPS PUB 180-1\n * Version 2.1a Copyright Paul Johnston 2000 - 2002.\n * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n * Distributed under the BSD License\n * See http://pajhome.org.uk/crypt/md5 for details.\n */\n\nvar inherits = require('util').inherits\n\nmodule.exports = function (Buffer, Hash) {\n\n var A = 0|0\n var B = 4|0\n var C = 8|0\n var D = 12|0\n var E = 16|0\n\n var W = new (typeof Int32Array === 'undefined' ? Array : Int32Array)(80)\n\n var POOL = []\n\n function Sha1 () {\n if(POOL.length)\n return POOL.pop().init()\n\n if(!(this instanceof Sha1)) return new Sha1()\n this._w = W\n Hash.call(this, 16*4, 14*4)\n\n this._h = null\n this.init()\n }\n\n inherits(Sha1, Hash)\n\n Sha1.prototype.init = function () {\n this._a = 0x67452301\n this._b = 0xefcdab89\n this._c = 0x98badcfe\n this._d = 0x10325476\n this._e = 0xc3d2e1f0\n\n Hash.prototype.init.call(this)\n return this\n }\n\n Sha1.prototype._POOL = POOL\n Sha1.prototype._update = function (X) {\n\n var a, b, c, d, e, _a, _b, _c, _d, _e\n\n a = _a = this._a\n b = _b = this._b\n c = _c = this._c\n d = _d = this._d\n e = _e = this._e\n\n var w = this._w\n\n for(var j = 0; j < 80; j++) {\n var W = w[j] = j < 16 ? X.readInt32BE(j*4)\n : rol(w[j - 3] ^ w[j - 8] ^ w[j - 14] ^ w[j - 16], 1)\n\n var t = add(\n add(rol(a, 5), sha1_ft(j, b, c, d)),\n add(add(e, W), sha1_kt(j))\n )\n\n e = d\n d = c\n c = rol(b, 30)\n b = a\n a = t\n }\n\n this._a = add(a, _a)\n this._b = add(b, _b)\n this._c = add(c, _c)\n this._d = add(d, _d)\n this._e = add(e, _e)\n }\n\n Sha1.prototype._hash = function () {\n if(POOL.length < 100) POOL.push(this)\n var H = new Buffer(20)\n //console.log(this._a|0, this._b|0, this._c|0, this._d|0, this._e|0)\n H.writeInt32BE(this._a|0, A)\n H.writeInt32BE(this._b|0, B)\n H.writeInt32BE(this._c|0, C)\n H.writeInt32BE(this._d|0, D)\n H.writeInt32BE(this._e|0, E)\n return H\n }\n\n /*\n * Perform the appropriate triplet combination function for the current\n * iteration\n */\n function sha1_ft(t, b, c, d) {\n if(t < 20) return (b & c) | ((~b) & d);\n if(t < 40) return b ^ c ^ d;\n if(t < 60) return (b & c) | (b & d) | (c & d);\n return b ^ c ^ d;\n }\n\n /*\n * Determine the appropriate additive constant for the current iteration\n */\n function sha1_kt(t) {\n return (t < 20) ? 1518500249 : (t < 40) ? 1859775393 :\n (t < 60) ? -1894007588 : -899497514;\n }\n\n /*\n * Add integers, wrapping at 2^32. This uses 16-bit operations internally\n * to work around bugs in some JS interpreters.\n * //dominictarr: this is 10 years old, so maybe this can be dropped?)\n *\n */\n function add(x, y) {\n return (x + y ) | 0\n //lets see how this goes on testling.\n // var lsw = (x & 0xFFFF) + (y & 0xFFFF);\n // var msw = (x >> 16) + (y >> 16) + (lsw >> 16);\n // return (msw << 16) | (lsw & 0xFFFF);\n }\n\n /*\n * Bitwise rotate a 32-bit number to the left.\n */\n function rol(num, cnt) {\n return (num << cnt) | (num >>> (32 - cnt));\n }\n\n return Sha1\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/sha.js/sha1.js\n ** module id = 30\n ** module chunks = 0\n **/","\n/**\n * A JavaScript implementation of the Secure Hash Algorithm, SHA-256, as defined\n * in FIPS 180-2\n * Version 2.2-beta Copyright Angel Marin, Paul Johnston 2000 - 2009.\n * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\n *\n */\n\nvar inherits = require('util').inherits\n\nmodule.exports = function (Buffer, Hash) {\n\n var K = [\n 0x428A2F98, 0x71374491, 0xB5C0FBCF, 0xE9B5DBA5,\n 0x3956C25B, 0x59F111F1, 0x923F82A4, 0xAB1C5ED5,\n 0xD807AA98, 0x12835B01, 0x243185BE, 0x550C7DC3,\n 0x72BE5D74, 0x80DEB1FE, 0x9BDC06A7, 0xC19BF174,\n 0xE49B69C1, 0xEFBE4786, 0x0FC19DC6, 0x240CA1CC,\n 0x2DE92C6F, 0x4A7484AA, 0x5CB0A9DC, 0x76F988DA,\n 0x983E5152, 0xA831C66D, 0xB00327C8, 0xBF597FC7,\n 0xC6E00BF3, 0xD5A79147, 0x06CA6351, 0x14292967,\n 0x27B70A85, 0x2E1B2138, 0x4D2C6DFC, 0x53380D13,\n 0x650A7354, 0x766A0ABB, 0x81C2C92E, 0x92722C85,\n 0xA2BFE8A1, 0xA81A664B, 0xC24B8B70, 0xC76C51A3,\n 0xD192E819, 0xD6990624, 0xF40E3585, 0x106AA070,\n 0x19A4C116, 0x1E376C08, 0x2748774C, 0x34B0BCB5,\n 0x391C0CB3, 0x4ED8AA4A, 0x5B9CCA4F, 0x682E6FF3,\n 0x748F82EE, 0x78A5636F, 0x84C87814, 0x8CC70208,\n 0x90BEFFFA, 0xA4506CEB, 0xBEF9A3F7, 0xC67178F2\n ]\n\n var W = new Array(64)\n\n function Sha256() {\n this.init()\n\n this._w = W //new Array(64)\n\n Hash.call(this, 16*4, 14*4)\n }\n\n inherits(Sha256, Hash)\n\n Sha256.prototype.init = function () {\n\n this._a = 0x6a09e667|0\n this._b = 0xbb67ae85|0\n this._c = 0x3c6ef372|0\n this._d = 0xa54ff53a|0\n this._e = 0x510e527f|0\n this._f = 0x9b05688c|0\n this._g = 0x1f83d9ab|0\n this._h = 0x5be0cd19|0\n\n this._len = this._s = 0\n\n return this\n }\n\n function S (X, n) {\n return (X >>> n) | (X << (32 - n));\n }\n\n function R (X, n) {\n return (X >>> n);\n }\n\n function Ch (x, y, z) {\n return ((x & y) ^ ((~x) & z));\n }\n\n function Maj (x, y, z) {\n return ((x & y) ^ (x & z) ^ (y & z));\n }\n\n function Sigma0256 (x) {\n return (S(x, 2) ^ S(x, 13) ^ S(x, 22));\n }\n\n function Sigma1256 (x) {\n return (S(x, 6) ^ S(x, 11) ^ S(x, 25));\n }\n\n function Gamma0256 (x) {\n return (S(x, 7) ^ S(x, 18) ^ R(x, 3));\n }\n\n function Gamma1256 (x) {\n return (S(x, 17) ^ S(x, 19) ^ R(x, 10));\n }\n\n Sha256.prototype._update = function(M) {\n\n var W = this._w\n var a, b, c, d, e, f, g, h\n var T1, T2\n\n a = this._a | 0\n b = this._b | 0\n c = this._c | 0\n d = this._d | 0\n e = this._e | 0\n f = this._f | 0\n g = this._g | 0\n h = this._h | 0\n\n for (var j = 0; j < 64; j++) {\n var w = W[j] = j < 16\n ? M.readInt32BE(j * 4)\n : Gamma1256(W[j - 2]) + W[j - 7] + Gamma0256(W[j - 15]) + W[j - 16]\n\n T1 = h + Sigma1256(e) + Ch(e, f, g) + K[j] + w\n\n T2 = Sigma0256(a) + Maj(a, b, c);\n h = g; g = f; f = e; e = d + T1; d = c; c = b; b = a; a = T1 + T2;\n }\n\n this._a = (a + this._a) | 0\n this._b = (b + this._b) | 0\n this._c = (c + this._c) | 0\n this._d = (d + this._d) | 0\n this._e = (e + this._e) | 0\n this._f = (f + this._f) | 0\n this._g = (g + this._g) | 0\n this._h = (h + this._h) | 0\n\n };\n\n Sha256.prototype._hash = function () {\n var H = new Buffer(32)\n\n H.writeInt32BE(this._a, 0)\n H.writeInt32BE(this._b, 4)\n H.writeInt32BE(this._c, 8)\n H.writeInt32BE(this._d, 12)\n H.writeInt32BE(this._e, 16)\n H.writeInt32BE(this._f, 20)\n H.writeInt32BE(this._g, 24)\n H.writeInt32BE(this._h, 28)\n\n return H\n }\n\n return Sha256\n\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/sha.js/sha256.js\n ** module id = 31\n ** module chunks = 0\n **/","var inherits = require('util').inherits\n\nmodule.exports = function (Buffer, Hash) {\n var K = [\n 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n ]\n\n var W = new Array(160)\n\n function Sha512() {\n this.init()\n this._w = W\n\n Hash.call(this, 128, 112)\n }\n\n inherits(Sha512, Hash)\n\n Sha512.prototype.init = function () {\n\n this._a = 0x6a09e667|0\n this._b = 0xbb67ae85|0\n this._c = 0x3c6ef372|0\n this._d = 0xa54ff53a|0\n this._e = 0x510e527f|0\n this._f = 0x9b05688c|0\n this._g = 0x1f83d9ab|0\n this._h = 0x5be0cd19|0\n\n this._al = 0xf3bcc908|0\n this._bl = 0x84caa73b|0\n this._cl = 0xfe94f82b|0\n this._dl = 0x5f1d36f1|0\n this._el = 0xade682d1|0\n this._fl = 0x2b3e6c1f|0\n this._gl = 0xfb41bd6b|0\n this._hl = 0x137e2179|0\n\n this._len = this._s = 0\n\n return this\n }\n\n function S (X, Xl, n) {\n return (X >>> n) | (Xl << (32 - n))\n }\n\n function Ch (x, y, z) {\n return ((x & y) ^ ((~x) & z));\n }\n\n function Maj (x, y, z) {\n return ((x & y) ^ (x & z) ^ (y & z));\n }\n\n Sha512.prototype._update = function(M) {\n\n var W = this._w\n var a, b, c, d, e, f, g, h\n var al, bl, cl, dl, el, fl, gl, hl\n\n a = this._a | 0\n b = this._b | 0\n c = this._c | 0\n d = this._d | 0\n e = this._e | 0\n f = this._f | 0\n g = this._g | 0\n h = this._h | 0\n\n al = this._al | 0\n bl = this._bl | 0\n cl = this._cl | 0\n dl = this._dl | 0\n el = this._el | 0\n fl = this._fl | 0\n gl = this._gl | 0\n hl = this._hl | 0\n\n for (var i = 0; i < 80; i++) {\n var j = i * 2\n\n var Wi, Wil\n\n if (i < 16) {\n Wi = W[j] = M.readInt32BE(j * 4)\n Wil = W[j + 1] = M.readInt32BE(j * 4 + 4)\n\n } else {\n var x = W[j - 15*2]\n var xl = W[j - 15*2 + 1]\n var gamma0 = S(x, xl, 1) ^ S(x, xl, 8) ^ (x >>> 7)\n var gamma0l = S(xl, x, 1) ^ S(xl, x, 8) ^ S(xl, x, 7)\n\n x = W[j - 2*2]\n xl = W[j - 2*2 + 1]\n var gamma1 = S(x, xl, 19) ^ S(xl, x, 29) ^ (x >>> 6)\n var gamma1l = S(xl, x, 19) ^ S(x, xl, 29) ^ S(xl, x, 6)\n\n // W[i] = gamma0 + W[i - 7] + gamma1 + W[i - 16]\n var Wi7 = W[j - 7*2]\n var Wi7l = W[j - 7*2 + 1]\n\n var Wi16 = W[j - 16*2]\n var Wi16l = W[j - 16*2 + 1]\n\n Wil = gamma0l + Wi7l\n Wi = gamma0 + Wi7 + ((Wil >>> 0) < (gamma0l >>> 0) ? 1 : 0)\n Wil = Wil + gamma1l\n Wi = Wi + gamma1 + ((Wil >>> 0) < (gamma1l >>> 0) ? 1 : 0)\n Wil = Wil + Wi16l\n Wi = Wi + Wi16 + ((Wil >>> 0) < (Wi16l >>> 0) ? 1 : 0)\n\n W[j] = Wi\n W[j + 1] = Wil\n }\n\n var maj = Maj(a, b, c)\n var majl = Maj(al, bl, cl)\n\n var sigma0h = S(a, al, 28) ^ S(al, a, 2) ^ S(al, a, 7)\n var sigma0l = S(al, a, 28) ^ S(a, al, 2) ^ S(a, al, 7)\n var sigma1h = S(e, el, 14) ^ S(e, el, 18) ^ S(el, e, 9)\n var sigma1l = S(el, e, 14) ^ S(el, e, 18) ^ S(e, el, 9)\n\n // t1 = h + sigma1 + ch + K[i] + W[i]\n var Ki = K[j]\n var Kil = K[j + 1]\n\n var ch = Ch(e, f, g)\n var chl = Ch(el, fl, gl)\n\n var t1l = hl + sigma1l\n var t1 = h + sigma1h + ((t1l >>> 0) < (hl >>> 0) ? 1 : 0)\n t1l = t1l + chl\n t1 = t1 + ch + ((t1l >>> 0) < (chl >>> 0) ? 1 : 0)\n t1l = t1l + Kil\n t1 = t1 + Ki + ((t1l >>> 0) < (Kil >>> 0) ? 1 : 0)\n t1l = t1l + Wil\n t1 = t1 + Wi + ((t1l >>> 0) < (Wil >>> 0) ? 1 : 0)\n\n // t2 = sigma0 + maj\n var t2l = sigma0l + majl\n var t2 = sigma0h + maj + ((t2l >>> 0) < (sigma0l >>> 0) ? 1 : 0)\n\n h = g\n hl = gl\n g = f\n gl = fl\n f = e\n fl = el\n el = (dl + t1l) | 0\n e = (d + t1 + ((el >>> 0) < (dl >>> 0) ? 1 : 0)) | 0\n d = c\n dl = cl\n c = b\n cl = bl\n b = a\n bl = al\n al = (t1l + t2l) | 0\n a = (t1 + t2 + ((al >>> 0) < (t1l >>> 0) ? 1 : 0)) | 0\n }\n\n this._al = (this._al + al) | 0\n this._bl = (this._bl + bl) | 0\n this._cl = (this._cl + cl) | 0\n this._dl = (this._dl + dl) | 0\n this._el = (this._el + el) | 0\n this._fl = (this._fl + fl) | 0\n this._gl = (this._gl + gl) | 0\n this._hl = (this._hl + hl) | 0\n\n this._a = (this._a + a + ((this._al >>> 0) < (al >>> 0) ? 1 : 0)) | 0\n this._b = (this._b + b + ((this._bl >>> 0) < (bl >>> 0) ? 1 : 0)) | 0\n this._c = (this._c + c + ((this._cl >>> 0) < (cl >>> 0) ? 1 : 0)) | 0\n this._d = (this._d + d + ((this._dl >>> 0) < (dl >>> 0) ? 1 : 0)) | 0\n this._e = (this._e + e + ((this._el >>> 0) < (el >>> 0) ? 1 : 0)) | 0\n this._f = (this._f + f + ((this._fl >>> 0) < (fl >>> 0) ? 1 : 0)) | 0\n this._g = (this._g + g + ((this._gl >>> 0) < (gl >>> 0) ? 1 : 0)) | 0\n this._h = (this._h + h + ((this._hl >>> 0) < (hl >>> 0) ? 1 : 0)) | 0\n }\n\n Sha512.prototype._hash = function () {\n var H = new Buffer(64)\n\n function writeInt64BE(h, l, offset) {\n H.writeInt32BE(h, offset)\n H.writeInt32BE(l, offset + 4)\n }\n\n writeInt64BE(this._a, this._al, 0)\n writeInt64BE(this._b, this._bl, 8)\n writeInt64BE(this._c, this._cl, 16)\n writeInt64BE(this._d, this._dl, 24)\n writeInt64BE(this._e, this._el, 32)\n writeInt64BE(this._f, this._fl, 40)\n writeInt64BE(this._g, this._gl, 48)\n writeInt64BE(this._h, this._hl, 56)\n\n return H\n }\n\n return Sha512\n\n}\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/sha.js/sha512.js\n ** module id = 32\n ** module chunks = 0\n **/","function E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\n\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/tiny-emitter/index.js\n ** module id = 33\n ** module chunks = 0\n **/","module.exports = function isBuffer(arg) {\n return arg && typeof arg === 'object'\n && typeof arg.copy === 'function'\n && typeof arg.fill === 'function'\n && typeof arg.readUInt8 === 'function';\n}\n\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/util/support/isBufferBrowser.js\n ** module id = 34\n ** module chunks = 0\n **/"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/lesspass-vendors.js b/dist/lesspass-vendors.js index 2abaf16..527a68c 100644 --- a/dist/lesspass-vendors.js +++ b/dist/lesspass-vendors.js @@ -1,2 +1,2 @@ !function(t){function r(n){if(e[n])return e[n].exports;var o=e[n]={exports:{},id:n,loaded:!1};return t[n].call(o.exports,o,o.exports,r),o.loaded=!0,o.exports}var e={};return r.m=t,r.c=e,r.p="/dist/",r(0)}({0:function(t,r,e){"use strict";e(17)},17:function(t,r){}}); -//# sourceMappingURL=lesspass-vendors.js.map?cb8a51337eac3980bc2a \ No newline at end of file +//# sourceMappingURL=lesspass-vendors.js.map?dc118acc136d2b85341d \ No newline at end of file diff --git a/dist/lesspass-vendors.js.map b/dist/lesspass-vendors.js.map index 6878d3e..9739ca3 100644 --- a/dist/lesspass-vendors.js.map +++ b/dist/lesspass-vendors.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///lesspass-vendors.js","webpack:///webpack/bootstrap cb8a51337eac3980bc2a?80a8","webpack:///./src/vendors.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","0","17"],"mappings":"CAAS,SAAUA,GCInB,QAAAC,GAAAC,GAGA,GAAAC,EAAAD,GACA,MAAAC,GAAAD,GAAAE,OAGA,IAAAC,GAAAF,EAAAD,IACAE,WACAE,GAAAJ,EACAK,QAAA,EAUA,OANAP,GAAAE,GAAAM,KAAAH,EAAAD,QAAAC,IAAAD,QAAAH,GAGAI,EAAAE,QAAA,EAGAF,EAAAD,QAvBA,GAAAD,KAqCA,OATAF,GAAAQ,EAAAT,EAGAC,EAAAS,EAAAP,EAGAF,EAAAU,EAAA,SAGAV,EAAA,KDMMW,EACA,SAASP,EAAQD,EAASH,GAE/B,YE/CDA,GAAA,KFqDMY,GACA,SAASR,EAAQD","file":"lesspass-vendors.js?cb8a51337eac3980bc2a","sourcesContent":["/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"/dist/\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ 0:\n/***/ function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\n\t\n\t__webpack_require__(17);\n\n/***/ },\n\n/***/ 17:\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ }\n\n/******/ });\n\n\n/** WEBPACK FOOTER **\n ** lesspass-vendors.js?cb8a51337eac3980bc2a\n **/"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/dist/\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n/** WEBPACK FOOTER **\n ** webpack/bootstrap cb8a51337eac3980bc2a\n **/","import \"./vendors.scss\";\n\n\n/** WEBPACK FOOTER **\n ** ./src/vendors.js\n **/"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///lesspass-vendors.js","webpack:///webpack/bootstrap dc118acc136d2b85341d?bda3","webpack:///./src/vendors.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","0","17"],"mappings":"CAAS,SAAUA,GCInB,QAAAC,GAAAC,GAGA,GAAAC,EAAAD,GACA,MAAAC,GAAAD,GAAAE,OAGA,IAAAC,GAAAF,EAAAD,IACAE,WACAE,GAAAJ,EACAK,QAAA,EAUA,OANAP,GAAAE,GAAAM,KAAAH,EAAAD,QAAAC,IAAAD,QAAAH,GAGAI,EAAAE,QAAA,EAGAF,EAAAD,QAvBA,GAAAD,KAqCA,OATAF,GAAAQ,EAAAT,EAGAC,EAAAS,EAAAP,EAGAF,EAAAU,EAAA,SAGAV,EAAA,KDMMW,EACA,SAASP,EAAQD,EAASH,GAE/B,YE/CDA,GAAA,KFqDMY,GACA,SAASR,EAAQD","file":"lesspass-vendors.js?dc118acc136d2b85341d","sourcesContent":["/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"/dist/\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ 0:\n/***/ function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\n\t\n\t__webpack_require__(17);\n\n/***/ },\n\n/***/ 17:\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ }\n\n/******/ });\n\n\n/** WEBPACK FOOTER **\n ** lesspass-vendors.js?dc118acc136d2b85341d\n **/"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/dist/\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n/** WEBPACK FOOTER **\n ** webpack/bootstrap dc118acc136d2b85341d\n **/","import \"./vendors.scss\";\n\n\n/** WEBPACK FOOTER **\n ** ./src/vendors.js\n **/"],"sourceRoot":""} \ No newline at end of file diff --git a/index.html b/index.html index 8f098e7..c91b795 100644 --- a/index.html +++ b/index.html @@ -18,6 +18,9 @@

+
+ +
@@ -104,7 +107,9 @@
diff --git a/package.json b/package.json index 4cb67e7..ffb7f32 100644 --- a/package.json +++ b/package.json @@ -33,12 +33,14 @@ "clipboard": "^1.5.12", "css-loader": "^0.23.1", "extract-text-webpack-plugin": "^1.0.1", + "file-loader": "^0.9.0", "hint.css": "^2.3.1", "json-loader": "^0.5.4", "lesspass": "^3.2.0", "node-sass": "^3.8.0", "sass-loader": "^4.0.0", "style-loader": "^0.13.1", + "url-loader": "^0.5.7", "webpack": "^1.13.1", "webpack-dev-server": "^1.14.1" }, diff --git a/src/app.scss b/src/app.scss index 891b451..7416bf6 100644 --- a/src/app.scss +++ b/src/app.scss @@ -43,5 +43,8 @@ i { cursor: pointer; background-color: transparent; border-radius: .25rem; +} +#logo { + max-height: 42px; } \ No newline at end of file diff --git a/src/logo.png b/src/logo.png new file mode 100644 index 0000000..f5fde34 Binary files /dev/null and b/src/logo.png differ diff --git a/webpack.config.js b/webpack.config.js index 5e6c506..6c2c070 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -17,7 +17,15 @@ module.exports = { {test: /\.js$/, loader: 'babel-loader', exclude: /node_modules/}, {test: /\.json$/, loader: 'json-loader'}, {test: /\.css$/, loader: ExtractTextPlugin.extract("style-loader", "css-loader")}, - {test: /\.scss$/, loader: ExtractTextPlugin.extract("style-loader", "css-loader!sass-loader")} + {test: /\.scss$/, loader: ExtractTextPlugin.extract("style-loader", "css-loader!sass-loader")}, + { + test: /\.(png|jpg|gif|svg|woff2?|eot|ttf)(\?.*)?$/, + loader: 'url-loader', + query: { + limit: 10000, + name: '[name].[ext]?[hash]' + } + } ] }, plugins: [