function log(){document.getElementById("out").innerText="";Array.prototype.forEach.call(arguments,function(n){n instanceof Error?n="Error: "+n.message:typeof n!="string"&&(n=JSON.stringify(n,null,2));document.getElementById("out").innerHTML+=n+"\r\n"})}function getCookie(n){var i="; "+document.cookie,t=i.split("; "+n+"=");return t.length===2?t.pop().split(";").shift():undefined}function deleteCookie(n){document.cookie=n+"=; expires=Thu, 01 Jan 1970 00:00:01 GMT;"}function createCookie(n,t,i){var u="",r;i&&(r=new Date,r.setTime(r.getTime()+i*864e5),u="; expires="+r.toGMTString());document.cookie=n+"="+t+u+"; path=/"}function storeCustomer(n){ct.customer.clientStore.setItem(ct.utls.storageKeys.SignInResponse,JSON.stringify(n))}function removeCustomerLocalStorage(){ct.customer.clientStore.removeItem(ct.utls.storageKeys.SignInResponse)}var Oidc=function(n){function t(r){if(i[r])return i[r].exports;var u=i[r]={exports:{},id:r,loaded:!1};return n[r].call(u.exports,u,u.exports,t),u.loaded=!0,u.exports}var i={};return t.m=n,t.c=i,t.p="",t(0)}([function(n,t,i){i(1);n.exports=i(326)},function(n,t,i){(function(n){"use strict";function t(n,t,i){n[t]||Object[r](n,t,{writable:!0,configurable:!0,value:i})}if(i(2),i(322),i(323),n._babelPolyfill)throw new Error("only one instance of babel-polyfill is allowed");n._babelPolyfill=!0;var r="defineProperty";t(String.prototype,"padLeft","".padStart);t(String.prototype,"padRight","".padEnd);"pop,reverse,shift,keys,values,entries,indexOf,every,some,forEach,map,filter,find,findIndex,includes,join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill".split(",").forEach(function(n){[][n]&&t(Array,n,Function.call.bind([][n]))})}).call(t,function(){return this}())},function(n,t,i){i(3);i(51);i(52);i(53);i(54);i(56);i(59);i(60);i(61);i(62);i(63);i(64);i(65);i(66);i(67);i(69);i(71);i(73);i(75);i(78);i(79);i(80);i(84);i(86);i(88);i(91);i(92);i(93);i(94);i(96);i(97);i(98);i(99);i(100);i(101);i(102);i(104);i(105);i(106);i(108);i(109);i(110);i(112);i(114);i(115);i(116);i(117);i(118);i(119);i(120);i(121);i(122);i(123);i(124);i(125);i(126);i(131);i(132);i(136);i(137);i(138);i(139);i(141);i(142);i(143);i(144);i(145);i(146);i(147);i(148);i(149);i(150);i(151);i(152);i(153);i(154);i(155);i(157);i(158);i(160);i(161);i(167);i(168);i(170);i(171);i(172);i(176);i(177);i(178);i(179);i(180);i(182);i(183);i(184);i(185);i(188);i(190);i(191);i(192);i(194);i(196);i(198);i(199);i(200);i(202);i(203);i(204);i(205);i(215);i(219);i(220);i(222);i(223);i(227);i(228);i(230);i(231);i(232);i(233);i(234);i(235);i(236);i(237);i(238);i(239);i(240);i(241);i(242);i(243);i(244);i(245);i(246);i(247);i(248);i(250);i(251);i(252);i(253);i(254);i(256);i(257);i(258);i(260);i(261);i(262);i(263);i(264);i(265);i(266);i(267);i(269);i(270);i(272);i(273);i(274);i(275);i(278);i(279);i(281);i(282);i(283);i(284);i(286);i(287);i(288);i(289);i(290);i(291);i(292);i(293);i(294);i(295);i(297);i(298);i(299);i(300);i(301);i(302);i(303);i(304);i(305);i(306);i(307);i(309);i(310);i(311);i(312);i(313);i(314);i(315);i(316);i(317);i(318);i(319);i(320);i(321);n.exports=i(9)},function(n,t,i){"use strict";var w=i(4),r=i(5),nt=i(6),e=i(8),yt=i(18),oi=i(22).KEY,pt=i(7),tt=i(23),it=i(24),si=i(19),a=i(25),hi=i(26),ci=i(27),li=i(29),ai=i(44),rt=i(12),b=i(32),ut=i(16),ft=i(17),v=i(45),wt=i(48),bt=i(50),kt=i(11),vi=i(30),dt=bt.f,c=kt.f,gt=wt.f,u=w.Symbol,k=w.JSON,d=k&&k.stringify,h="prototype",f=a("_hidden"),ni=a("toPrimitive"),yi={}.propertyIsEnumerable,y=tt("symbol-registry"),s=tt("symbols"),p=tt("op-symbols"),o=Object[h],l=typeof u=="function",et=w.QObject,ot=!et||!et[h]||!et[h].findChild,st=nt&&pt(function(){return v(c({},"a",{get:function(){return c(this,"a",{value:7}).a}})).a!=7})?function(n,t,i){var r=dt(o,t);r&&delete o[t];c(n,t,i);r&&n!==o&&c(o,t,r)}:c,ti=function(n){var t=s[n]=v(u[h]);return t._k=n,t},ht=l&&typeof u.iterator=="symbol"?function(n){return typeof n=="symbol"}:function(n){return n instanceof u},g=function(n,t,i){return(n===o&&g(p,t,i),rt(n),t=ut(t,!0),rt(i),r(s,t))?(i.enumerable?(r(n,f)&&n[f][t]&&(n[f][t]=!1),i=v(i,{enumerable:ft(0,!1)})):(r(n,f)||c(n,f,ft(1,{})),n[f][t]=!0),st(n,t,i)):c(n,t,i)},ii=function(n,t){rt(n);for(var i=li(t=b(t)),r=0,f=i.length,u;f>r;)g(n,u=i[r++],t[u]);return n},pi=function(n,t){return t===undefined?v(n):ii(v(n),t)},ri=function(n){var t=yi.call(this,n=ut(n,!0));return this===o&&r(s,n)&&!r(p,n)?!1:t||!r(this,n)||!r(s,n)||r(this,f)&&this[f][n]?t:!0},ui=function(n,t){if(n=b(n),t=ut(t,!0),n!==o||!r(s,t)||r(p,t)){var i=dt(n,t);return!i||!r(s,t)||r(n,f)&&n[f][t]||(i.enumerable=!0),i}},fi=function(n){for(var i=gt(b(n)),u=[],e=0,t;i.length>e;)r(s,t=i[e++])||t==f||t==oi||u.push(t);return u},ei=function(n){for(var i=n===o,u=gt(i?p:b(n)),f=[],e=0,t;u.length>e;)r(s,t=u[e++])&&(i?r(o,t):!0)&&f.push(s[t]);return f},ct,lt,at,vt;for(l||(u=function(){if(this instanceof u)throw TypeError("Symbol is not a constructor!");var n=si(arguments.length>0?arguments[0]:undefined),t=function(i){this===o&&t.call(p,i);r(this,f)&&r(this[f],n)&&(this[f][n]=!1);st(this,n,ft(1,i))};return nt&&ot&&st(o,n,{configurable:!0,set:t}),ti(n)},yt(u[h],"toString",function(){return this._k}),bt.f=ui,kt.f=g,i(49).f=wt.f=fi,i(43).f=ri,i(42).f=ei,nt&&!i(28)&&yt(o,"propertyIsEnumerable",ri,!0),hi.f=function(n){return ti(a(n))}),e(e.G+e.W+e.F*!l,{Symbol:u}),ct="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),lt=0;ct.length>lt;)a(ct[lt++]);for(at=vi(a.store),vt=0;at.length>vt;)ci(at[vt++]);e(e.S+e.F*!l,"Symbol",{"for":function(n){return r(y,n+="")?y[n]:y[n]=u(n)},keyFor:function(n){if(!ht(n))throw TypeError(n+" is not a symbol!");for(var t in y)if(y[t]===n)return t},useSetter:function(){ot=!0},useSimple:function(){ot=!1}});e(e.S+e.F*!l,"Object",{create:pi,defineProperty:g,defineProperties:ii,getOwnPropertyDescriptor:ui,getOwnPropertyNames:fi,getOwnPropertySymbols:ei});k&&e(e.S+e.F*(!l||pt(function(){var n=u();return d([n])!="[null]"||d({a:n})!="{}"||d(Object(n))!="{}"})),"JSON",{stringify:function(n){if(n!==undefined&&!ht(n)){for(var i=[n],u=1,t,r;arguments.length>u;)i.push(arguments[u++]);return t=i[1],typeof t=="function"&&(r=t),(r||!ai(t))&&(t=function(n,t){return r&&(t=r.call(this,n,t)),ht(t)?void 0:t}),i[1]=t,d.apply(k,i)}}});u[h][ni]||i(10)(u[h],ni,u[h].valueOf);it(u,"Symbol");it(Math,"Math",!0);it(w.JSON,"JSON",!0)},function(n){var t=n.exports=typeof window!="undefined"&&window.Math==Math?window:typeof self!="undefined"&&self.Math==Math?self:Function("return this")();typeof __g=="number"&&(__g=t)},function(n){var t={}.hasOwnProperty;n.exports=function(n,i){return t.call(n,i)}},function(n,t,i){n.exports=!i(7)(function(){return Object.defineProperty({},"a",{get:function(){return 7}}).a!=7})},function(n){n.exports=function(n){try{return!!n()}catch(t){return!0}}},function(n,t,i){var u=i(4),f=i(9),s=i(10),h=i(18),o=i(20),e="prototype",r=function(n,t,i){var d=n&r.F,y=n&r.G,g=n&r.S,w=n&r.P,nt=n&r.B,a=y?u:g?u[t]||(u[t]={}):(u[t]||{})[e],v=y?f:f[t]||(f[t]={}),b=v[e]||(v[e]={}),l,p,c,k;y&&(i=t);for(l in i)p=!d&&a&&a[l]!==undefined,c=(p?a:i)[l],k=nt&&p?o(c,u):w&&typeof c=="function"?o(Function.call,c):c,a&&h(a,l,c,n&r.U),v[l]!=c&&s(v,l,k),w&&b[l]!=c&&(b[l]=c)};u.core=f;r.F=1;r.G=2;r.S=4;r.P=8;r.B=16;r.W=32;r.U=64;r.R=128;n.exports=r},function(n){var t=n.exports={version:"2.5.1"};typeof __e=="number"&&(__e=t)},function(n,t,i){var r=i(11),u=i(17);n.exports=i(6)?function(n,t,i){return r.f(n,t,u(1,i))}:function(n,t,i){return n[t]=i,n}},function(n,t,i){var r=i(12),u=i(14),f=i(16),e=Object.defineProperty;t.f=i(6)?Object.defineProperty:function(n,t,i){if(r(n),t=f(t,!0),r(i),u)try{return e(n,t,i)}catch(o){}if("get"in i||"set"in i)throw TypeError("Accessors not supported!");return"value"in i&&(n[t]=i.value),n}},function(n,t,i){var r=i(13);n.exports=function(n){if(!r(n))throw TypeError(n+" is not an object!");return n}},function(n){n.exports=function(n){return typeof n=="object"?n!==null:typeof n=="function"}},function(n,t,i){n.exports=!i(6)&&!i(7)(function(){return Object.defineProperty(i(15)("div"),"a",{get:function(){return 7}}).a!=7})},function(n,t,i){var u=i(13),r=i(4).document,f=u(r)&&u(r.createElement);n.exports=function(n){return f?r.createElement(n):{}}},function(n,t,i){var r=i(13);n.exports=function(n,t){if(!r(n))return n;var i,u;if(t&&typeof(i=n.toString)=="function"&&!r(u=i.call(n))||typeof(i=n.valueOf)=="function"&&!r(u=i.call(n))||!t&&typeof(i=n.toString)=="function"&&!r(u=i.call(n)))return u;throw TypeError("Can't convert object to primitive value");}},function(n){n.exports=function(n,t){return{enumerable:!(n&1),configurable:!(n&2),writable:!(n&4),value:t}}},function(n,t,i){var s=i(4),r=i(10),o=i(5),u=i(19)("src"),f="toString",e=Function[f],h=(""+e).split(f);i(9).inspectSource=function(n){return e.call(n)};(n.exports=function(n,t,i,f){var e=typeof i=="function";(e&&(o(i,"name")||r(i,"name",t)),n[t]!==i)&&(e&&(o(i,u)||r(i,u,n[t]?""+n[t]:h.join(String(t)))),n===s?n[t]=i:f?n[t]?n[t]=i:r(n,t,i):(delete n[t],r(n,t,i)))})(Function.prototype,f,function(){return typeof this=="function"&&this[u]||e.call(this)})},function(n){var t=0,i=Math.random();n.exports=function(n){return"Symbol(".concat(n===undefined?"":n,")_",(++t+i).toString(36))}},function(n,t,i){var r=i(21);n.exports=function(n,t,i){if(r(n),t===undefined)return n;switch(i){case 1:return function(i){return n.call(t,i)};case 2:return function(i,r){return n.call(t,i,r)};case 3:return function(i,r,u){return n.call(t,i,r,u)}}return function(){return n.apply(t,arguments)}}},function(n){n.exports=function(n){if(typeof n!="function")throw TypeError(n+" is not a function!");return n}},function(n,t,i){var r=i(19)("meta"),o=i(13),f=i(5),s=i(11).f,h=0,u=Object.isExtensible||function(){return!0},c=!i(7)(function(){return u(Object.preventExtensions({}))}),e=function(n){s(n,r,{value:{i:"O"+ ++h,w:{}}})},l=function(n,t){if(!o(n))return typeof n=="symbol"?n:(typeof n=="string"?"S":"P")+n;if(!f(n,r)){if(!u(n))return"F";if(!t)return"E";e(n)}return n[r].i},a=function(n,t){if(!f(n,r)){if(!u(n))return!0;if(!t)return!1;e(n)}return n[r].w},v=function(n){return c&&y.NEED&&u(n)&&!f(n,r)&&e(n),n},y=n.exports={KEY:r,NEED:!1,fastKey:l,getWeak:a,onFreeze:v}},function(n,t,i){var r=i(4),u="__core-js_shared__",f=r[u]||(r[u]={});n.exports=function(n){return f[n]||(f[n]={})}},function(n,t,i){var u=i(11).f,f=i(5),r=i(25)("toStringTag");n.exports=function(n,t,i){n&&!f(n=i?n:n.prototype,r)&&u(n,r,{configurable:!0,value:t})}},function(n,t,i){var r=i(23)("wks"),e=i(19),u=i(4).Symbol,f=typeof u=="function",o=n.exports=function(n){return r[n]||(r[n]=f&&u[n]||(f?u:e)("Symbol."+n))};o.store=r},function(n,t,i){t.f=i(25)},function(n,t,i){var u=i(4),r=i(9),f=i(28),e=i(26),o=i(11).f;n.exports=function(n){var t=r.Symbol||(r.Symbol=f?{}:u.Symbol||{});n.charAt(0)=="_"||n in t||o(t,n,{value:e.f(n)})}},function(n){n.exports=!1},function(n,t,i){var r=i(30),u=i(42),f=i(43);n.exports=function(n){var t=r(n),i=u.f;if(i)for(var e=i(n),h=f.f,o=0,s;e.length>o;)h.call(n,s=e[o++])&&t.push(s);return t}},function(n,t,i){var r=i(31),u=i(41);n.exports=Object.keys||function(n){return r(n,u)}},function(n,t,i){var r=i(5),u=i(32),f=i(36)(!1),e=i(40)("IE_PROTO");n.exports=function(n,t){var s=u(n),h=0,o=[],i;for(i in s)i!=e&&r(s,i)&&o.push(i);while(t.length>h)r(s,i=t[h++])&&(~f(o,i)||o.push(i));return o}},function(n,t,i){var r=i(33),u=i(35);n.exports=function(n){return r(u(n))}},function(n,t,i){var r=i(34);n.exports=Object("z").propertyIsEnumerable(0)?Object:function(n){return r(n)=="String"?n.split(""):Object(n)}},function(n){var t={}.toString;n.exports=function(n){return t.call(n).slice(8,-1)}},function(n){n.exports=function(n){if(n==undefined)throw TypeError("Can't call method on  "+n);return n}},function(n,t,i){var r=i(32),u=i(37),f=i(39);n.exports=function(n){return function(t,i,e){var s=r(t),h=u(s.length),o=f(e,h),c;if(n&&i!=i){while(h>o)if(c=s[o++],c!=c)return!0}else for(;h>o;o++)if((n||o in s)&&s[o]===i)return n||o||0;return!n&&-1}}},function(n,t,i){var r=i(38),u=Math.min;n.exports=function(n){return n>0?u(r(n),9007199254740991):0}},function(n){var t=Math.ceil,i=Math.floor;n.exports=function(n){return isNaN(n=+n)?0:(n>0?i:t)(n)}},function(n,t,i){var r=i(38),u=Math.max,f=Math.min;n.exports=function(n,t){return n=r(n),n<0?u(n+t,0):f(n,t)}},function(n,t,i){var r=i(23)("keys"),u=i(19);n.exports=function(n){return r[n]||(r[n]=u(n))}},function(n){n.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(n,t){t.f=Object.getOwnPropertySymbols},function(n,t){t.f={}.propertyIsEnumerable},function(n,t,i){var r=i(34);n.exports=Array.isArray||function(n){return r(n)=="Array"}},function(n,t,i){var o=i(12),s=i(46),e=i(41),h=i(40)("IE_PROTO"),u=function(){},f="prototype",r=function(){var t=i(15)("iframe"),u=e.length,o="<",s=">",n;for(t.style.display="none",i(47).appendChild(t),t.src="javascript:",n=t.contentWindow.document,n.open(),n.write(o+"script"+s+"document.F=Object"+o+"/script"+s),n.close(),r=n.F;u--;)delete r[f][e[u]];return r()};n.exports=Object.create||function(n,t){var i;return n!==null?(u[f]=o(n),i=new u,u[f]=null,i[h]=n):i=r(),t===undefined?i:s(i,t)}},function(n,t,i){var r=i(11),u=i(12),f=i(30);n.exports=i(6)?Object.defineProperties:function(n,t){u(n);for(var i=f(t),s=i.length,e=0,o;s>e;)r.f(n,o=i[e++],t[o]);return n}},function(n,t,i){var r=i(4).document;n.exports=r&&r.documentElement},function(n,t,i){var f=i(32),r=i(49).f,e={}.toString,u=typeof window=="object"&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],o=function(n){try{return r(n)}catch(t){return u.slice()}};n.exports.f=function(n){return u&&e.call(n)=="[object Window]"?o(n):r(f(n))}},function(n,t,i){var r=i(31),u=i(41).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(n){return r(n,u)}},function(n,t,i){var u=i(43),f=i(17),e=i(32),o=i(16),s=i(5),h=i(14),r=Object.getOwnPropertyDescriptor;t.f=i(6)?r:function(n,t){if(n=e(n),t=o(t,!0),h)try{return r(n,t)}catch(i){}if(s(n,t))return f(!u.f.call(n,t),n[t])}},function(n,t,i){var r=i(8);r(r.S,"Object",{create:i(45)})},function(n,t,i){var r=i(8);r(r.S+r.F*!i(6),"Object",{defineProperty:i(11).f})},function(n,t,i){var r=i(8);r(r.S+r.F*!i(6),"Object",{defineProperties:i(46)})},function(n,t,i){var r=i(32),u=i(50).f;i(55)("getOwnPropertyDescriptor",function(){return function(n,t){return u(r(n),t)}})},function(n,t,i){var r=i(8),u=i(9),f=i(7);n.exports=function(n,t){var i=(u.Object||{})[n]||Object[n],e={};e[n]=t(i);r(r.S+r.F*f(function(){i(1)}),"Object",e)}},function(n,t,i){var r=i(57),u=i(58);i(55)("getPrototypeOf",function(){return function(n){return u(r(n))}})},function(n,t,i){var r=i(35);n.exports=function(n){return Object(r(n))}},function(n,t,i){var u=i(5),f=i(57),r=i(40)("IE_PROTO"),e=Object.prototype;n.exports=Object.getPrototypeOf||function(n){return(n=f(n),u(n,r))?n[r]:typeof n.constructor=="function"&&n instanceof n.constructor?n.constructor.prototype:n instanceof Object?e:null}},function(n,t,i){var r=i(57),u=i(30);i(55)("keys",function(){return function(n){return u(r(n))}})},function(n,t,i){i(55)("getOwnPropertyNames",function(){return i(48).f})},function(n,t,i){var r=i(13),u=i(22).onFreeze;i(55)("freeze",function(n){return function(t){return n&&r(t)?n(u(t)):t}})},function(n,t,i){var r=i(13),u=i(22).onFreeze;i(55)("seal",function(n){return function(t){return n&&r(t)?n(u(t)):t}})},function(n,t,i){var r=i(13),u=i(22).onFreeze;i(55)("preventExtensions",function(n){return function(t){return n&&r(t)?n(u(t)):t}})},function(n,t,i){var r=i(13);i(55)("isFrozen",function(n){return function(t){return r(t)?n?n(t):!1:!0}})},function(n,t,i){var r=i(13);i(55)("isSealed",function(n){return function(t){return r(t)?n?n(t):!1:!0}})},function(n,t,i){var r=i(13);i(55)("isExtensible",function(n){return function(t){return r(t)?n?n(t):!0:!1}})},function(n,t,i){var r=i(8);r(r.S+r.F,"Object",{assign:i(68)})},function(n,t,i){"use strict";var u=i(30),f=i(42),e=i(43),o=i(57),s=i(33),r=Object.assign;n.exports=!r||i(7)(function(){var n={},t={},i=Symbol(),u="abcdefghijklmnopqrst";return n[i]=7,u.split("").forEach(function(n){t[n]=n}),r({},n)[i]!=7||Object.keys(r({},t)).join("")!=u})?function(n){for(var r=o(n),v=arguments.length,h=1,c=f.f,y=e.f;v>h;)for(var t=s(arguments[h++]),l=c?u(t).concat(c(t)):u(t),p=l.length,a=0,i;p>a;)y.call(t,i=l[a++])&&(r[i]=t[i]);return r}:r},function(n,t,i){var r=i(8);r(r.S,"Object",{is:i(70)})},function(n){n.exports=Object.is||function(n,t){return n===t?n!==0||1/n==1/t:n!=n&&t!=t}},function(n,t,i){var r=i(8);r(r.S,"Object",{setPrototypeOf:i(72).set})},function(n,t,i){var u=i(13),f=i(12),r=function(n,t){if(f(n),!u(t)&&t!==null)throw TypeError(t+": can't set as prototype!");};n.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(n,t,u){try{u=i(20)(Function.call,i(50).f(Object.prototype,"__proto__").set,2);u(n,[]);t=!(n instanceof Array)}catch(f){t=!0}return function(n,i){return r(n,i),t?n.__proto__=i:u(n,i),n}}({},!1):undefined),check:r}},function(n,t,i){"use strict";var u=i(74),r={};r[i(25)("toStringTag")]="z";r+""!="[object z]"&&i(18)(Object.prototype,"toString",function(){return"[object "+u(this)+"]"},!0)},function(n,t,i){var r=i(34),u=i(25)("toStringTag"),f=r(function(){return arguments}())=="Arguments",e=function(n,t){try{return n[t]}catch(i){}};n.exports=function(n){var t,i,o;return n===undefined?"Undefined":n===null?"Null":typeof(i=e(t=Object(n),u))=="string"?i:f?r(t):(o=r(t))=="Object"&&typeof t.callee=="function"?"Arguments":o}},function(n,t,i){var r=i(8);r(r.P,"Function",{bind:i(76)})},function(n,t,i){"use strict";var f=i(21),e=i(13),o=i(77),u=[].slice,r={},s=function(n,t,i){if(!(t in r)){for(var f=[],u=0;u<t;u++)f[u]="a["+u+"]";r[t]=Function("F,a","return new F("+f.join(",")+")")}return r[t](n,i)};n.exports=Function.bind||function(n){var t=f(this),r=u.call(arguments,1),i=function(){var f=r.concat(u.call(arguments));return this instanceof i?s(t,f.length,f):o(t,f,n)};return e(t.prototype)&&(i.prototype=t.prototype),i}},function(n){n.exports=function(n,t,i){var r=i===undefined;switch(t.length){case 0:return r?n():n.call(i);case 1:return r?n(t[0]):n.call(i,t[0]);case 2:return r?n(t[0],t[1]):n.call(i,t[0],t[1]);case 3:return r?n(t[0],t[1],t[2]):n.call(i,t[0],t[1],t[2]);case 4:return r?n(t[0],t[1],t[2],t[3]):n.call(i,t[0],t[1],t[2],t[3])}return n.apply(i,t)}},function(n,t,i){var f=i(11).f,r=Function.prototype,e=/^\s*function ([^ (]*)/,u="name";u in r||i(6)&&f(r,u,{configurable:!0,get:function(){try{return(""+this).match(e)[1]}catch(n){return""}}})},function(n,t,i){"use strict";var r=i(13),e=i(58),u=i(25)("hasInstance"),f=Function.prototype;u in f||i(11).f(f,u,{value:function(n){if(typeof this!="function"||!r(n))return!1;if(!r(this.prototype))return n instanceof this;while(n=e(n))if(this.prototype===n)return!0;return!1}})},function(n,t,i){var r=i(8),u=i(81);r(r.G+r.F*(parseInt!=u),{parseInt:u})},function(n,t,i){var r=i(4).parseInt,f=i(82).trim,u=i(83),e=/^[-+]?0[xX]/;n.exports=r(u+"08")!==8||r(u+"0x16")!==22?function(n,t){var i=f(String(n),3);return r(i,t>>>0||(e.test(i)?16:10))}:r},function(n,t,i){var u=i(8),s=i(35),h=i(7),f=i(83),r="["+f+"]",e="​",c=RegExp("^"+r+r+"*"),l=RegExp(r+r+"*$"),o=function(n,t,i){var r={},o=h(function(){return!!f[n]()||e[n]()!=e}),s=r[n]=o?t(a):f[n];i&&(r[i]=s);u(u.P+u.F*o,"String",r)},a=o.trim=function(n,t){return n=String(s(n)),t&1&&(n=n.replace(c,"")),t&2&&(n=n.replace(l,"")),n};n.exports=o},function(n){n.exports="\t\n\x0b\f\r   ᠎             　\u2028\u2029﻿"},function(n,t,i){var r=i(8),u=i(85);r(r.G+r.F*(parseFloat!=u),{parseFloat:u})},function(n,t,i){var r=i(4).parseFloat,u=i(82).trim;n.exports=1/r(i(83)+"-0")!=-Infinity?function(n){var t=u(String(n),3),i=r(t);return i===0&&t.charAt(0)=="-"?-0:i}:r},function(n,t,i){"use strict";var c=i(4),l=i(5),a=i(34),y=i(87),p=i(16),w=i(7),b=i(49).f,k=i(50).f,d=i(11).f,g=i(82).trim,u="Number",r=c[u],f=r,e=r.prototype,nt=a(i(45)(e))==u,tt="trim"in String.prototype,v=function(n){var t=p(n,!1),i,r,u,f;if(typeof t=="string"&&t.length>2)if(t=tt?t.trim():g(t,3),i=t.charCodeAt(0),i===43||i===45){if(r=t.charCodeAt(2),r===88||r===120)return NaN}else if(i===48){switch(t.charCodeAt(1)){case 66:case 98:u=2;f=49;break;case 79:case 111:u=8;f=55;break;default:return+t}for(var e=t.slice(2),o=0,h=e.length,s;o<h;o++)if(s=e.charCodeAt(o),s<48||s>f)return NaN;return parseInt(e,u)}return+t},h,o,s;if(!r(" 0o1")||!r("0b1")||r("+0x1")){for(r=function(n){var i=arguments.length<1?0:n,t=this;return t instanceof r&&(nt?w(function(){e.valueOf.call(t)}):a(t)!=u)?y(new f(v(i)),t,r):v(i)},h=i(6)?b(f):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),o=0;h.length>o;o++)l(f,s=h[o])&&!l(r,s)&&d(r,s,k(f,s));r.prototype=e;e.constructor=r;i(18)(c,u,r)}},function(n,t,i){var u=i(13),r=i(72).set;n.exports=function(n,t,i){var f=t.constructor,e;return f!==i&&typeof f=="function"&&(e=f.prototype)!==i.prototype&&u(e)&&r&&r(n,e),n}},function(n,t,i){"use strict";var o=i(8),y=i(38),p=i(89),s=i(90),c=1..toFixed,l=Math.floor,r=[0,0,0,0,0,0],a="Number.toFixed: incorrect invocation!",e="0",u=function(n,t){for(var u=-1,i=t;++u<6;)i+=n*r[u],r[u]=i%1e7,i=l(i/1e7)},h=function(n){for(var i=6,t=0;--i>=0;)t+=r[i],r[i]=l(t/n),t=t%n*1e7},v=function(){for(var t=6,n="",i;--t>=0;)(n!==""||t===0||r[t]!==0)&&(i=String(r[t]),n=n===""?i:n+s.call(e,7-i.length)+i);return n},f=function(n,t,i){return t===0?i:t%2==1?f(n,t-1,i*n):f(n*n,t/2,i)},w=function(n){for(var i=0,t=n;t>=4096;)i+=12,t/=4096;while(t>=2)i+=1,t/=2;return i};o(o.P+o.F*(!!c&&(8e-5.toFixed(3)!=="0.000"||.9.toFixed(0)!=="1"||1.255.toFixed(2)!=="1.25"||0xde0b6b3a7640080.toFixed(0)!=="1000000000000000128")||!i(7)(function(){c.call({})})),"Number",{toFixed:function(n){var t=p(this,a),r=y(n),k="",i=e,o,b,c,l;if(r<0||r>20)throw RangeError(a);if(t!=t)return"NaN";if(t<=-1e21||t>=1e21)return String(t);if(t<0&&(k="-",t=-t),t>1e-21)if(o=w(t*f(2,69,1))-69,b=o<0?t*f(2,-o,1):t/f(2,o,1),b*=4503599627370496,o=52-o,o>0){for(u(0,b),c=r;c>=7;)u(1e7,0),c-=7;for(u(f(10,c,1),0),c=o-1;c>=23;)h(8388608),c-=23;h(1<<c);u(1,1);h(2);i=v()}else u(0,b),u(1<<-o,0),i=v()+s.call(e,r);return r>0?(l=i.length,i=k+(l<=r?"0."+s.call(e,r-l)+i:i.slice(0,l-r)+"."+i.slice(l-r))):i=k+i,i}})},function(n,t,i){var r=i(34);n.exports=function(n,t){if(typeof n!="number"&&r(n)!="Number")throw TypeError(t);return+n}},function(n,t,i){"use strict";var r=i(38),u=i(35);n.exports=function(n){var i=String(u(this)),f="",t=r(n);if(t<0||t==Infinity)throw RangeError("Count can't be negative");for(;t>0;(t>>>=1)&&(i+=i))t&1&&(f+=i);return f}},function(n,t,i){"use strict";var u=i(8),f=i(7),e=i(89),r=1..toPrecision;u(u.P+u.F*(f(function(){return r.call(1,undefined)!=="1"})||!f(function(){r.call({})})),"Number",{toPrecision:function(n){var t=e(this,"Number#toPrecision: incorrect invocation!");return n===undefined?r.call(t):r.call(t,n)}})},function(n,t,i){var r=i(8);r(r.S,"Number",{EPSILON:Math.pow(2,-52)})},function(n,t,i){var r=i(8),u=i(4).isFinite;r(r.S,"Number",{isFinite:function(n){return typeof n=="number"&&u(n)}})},function(n,t,i){var r=i(8);r(r.S,"Number",{isInteger:i(95)})},function(n,t,i){var r=i(13),u=Math.floor;n.exports=function(n){return!r(n)&&isFinite(n)&&u(n)===n}},function(n,t,i){var r=i(8);r(r.S,"Number",{isNaN:function(n){return n!=n}})},function(n,t,i){var r=i(8),u=i(95),f=Math.abs;r(r.S,"Number",{isSafeInteger:function(n){return u(n)&&f(n)<=9007199254740991}})},function(n,t,i){var r=i(8);r(r.S,"Number",{MAX_SAFE_INTEGER:9007199254740991})},function(n,t,i){var r=i(8);r(r.S,"Number",{MIN_SAFE_INTEGER:-9007199254740991})},function(n,t,i){var r=i(8),u=i(85);r(r.S+r.F*(Number.parseFloat!=u),"Number",{parseFloat:u})},function(n,t,i){var r=i(8),u=i(81);r(r.S+r.F*(Number.parseInt!=u),"Number",{parseInt:u})},function(n,t,i){var r=i(8),e=i(103),f=Math.sqrt,u=Math.acosh;r(r.S+r.F*!(u&&Math.floor(u(Number.MAX_VALUE))==710&&u(Infinity)==Infinity),"Math",{acosh:function(n){return(n=+n)<1?NaN:n>94906265.624251559?Math.log(n)+Math.LN2:e(n-1+f(n-1)*f(n+1))}})},function(n){n.exports=Math.log1p||function(n){return(n=+n)>-1e-8&&n<1e-8?n-n*n/2:Math.log(1+n)}},function(n,t,i){function f(n){return!isFinite(n=+n)||n==0?n:n<0?-f(-n):Math.log(n+Math.sqrt(n*n+1))}var r=i(8),u=Math.asinh;r(r.S+r.F*!(u&&1/u(0)>0),"Math",{asinh:f})},function(n,t,i){var r=i(8),u=Math.atanh;r(r.S+r.F*!(u&&1/u(-0)<0),"Math",{atanh:function(n){return(n=+n)==0?n:Math.log((1+n)/(1-n))/2}})},function(n,t,i){var r=i(8),u=i(107);r(r.S,"Math",{cbrt:function(n){return u(n=+n)*Math.pow(Math.abs(n),1/3)}})},function(n){n.exports=Math.sign||function(n){return(n=+n)==0||n!=n?n:n<0?-1:1}},function(n,t,i){var r=i(8);r(r.S,"Math",{clz32:function(n){return(n>>>=0)?31-Math.floor(Math.log(n+.5)*Math.LOG2E):32}})},function(n,t,i){var r=i(8),u=Math.exp;r(r.S,"Math",{cosh:function(n){return(u(n=+n)+u(-n))/2}})},function(n,t,i){var r=i(8),u=i(111);r(r.S+r.F*(u!=Math.expm1),"Math",{expm1:u})},function(n){var t=Math.expm1;n.exports=!t||t(10)>22025.465794806718||t(10)<22025.465794806718||t(-2e-17)!=-2e-17?function(n){return(n=+n)==0?n:n>-1e-6&&n<1e-6?n+n*n/2:Math.exp(n)-1}:t},function(n,t,i){var r=i(8);r(r.S,"Math",{fround:i(113)})},function(n,t,i){var o=i(107),r=Math.pow,f=r(2,-52),u=r(2,-23),s=r(2,127)*(2-u),e=r(2,-126),h=function(n){return n+1/f-1/f};n.exports=Math.fround||function(n){var i=Math.abs(n),r=o(n),c,t;return i<e?r*h(i/e/u)*e*u:(c=(1+u/f)*i,t=c-(c-i),t>s||t!=t)?r*Infinity:r*t}},function(n,t,i){var r=i(8),u=Math.abs;r(r.S,"Math",{hypot:function(){for(var r=0,f=0,e=arguments.length,t=0,n,i;f<e;)n=u(arguments[f++]),t<n?(i=t/n,r=r*i*i+1,t=n):n>0?(i=n/t,r+=i*i):r+=n;return t===Infinity?Infinity:t*Math.sqrt(r)}})},function(n,t,i){var r=i(8),u=Math.imul;r(r.S+r.F*i(7)(function(){return u(4294967295,5)!=-5||u.length!=2}),"Math",{imul:function(n,t){var i=65535,r=+n,u=+t,f=i&r,e=i&u;return 0|f*e+((i&r>>>16)*e+f*(i&u>>>16)<<16>>>0)}})},function(n,t,i){var r=i(8);r(r.S,"Math",{log10:function(n){return Math.log(n)*Math.LOG10E}})},function(n,t,i){var r=i(8);r(r.S,"Math",{log1p:i(103)})},function(n,t,i){var r=i(8);r(r.S,"Math",{log2:function(n){return Math.log(n)/Math.LN2}})},function(n,t,i){var r=i(8);r(r.S,"Math",{sign:i(107)})},function(n,t,i){var r=i(8),u=i(111),f=Math.exp;r(r.S+r.F*i(7)(function(){return!Math.sinh(-2e-17)!=-2e-17}),"Math",{sinh:function(n){return Math.abs(n=+n)<1?(u(n)-u(-n))/2:(f(n-1)-f(-n-1))*(Math.E/2)}})},function(n,t,i){var r=i(8),u=i(111),f=Math.exp;r(r.S,"Math",{tanh:function(n){var t=u(n=+n),i=u(-n);return t==Infinity?1:i==Infinity?-1:(t-i)/(f(n)+f(-n))}})},function(n,t,i){var r=i(8);r(r.S,"Math",{trunc:function(n){return(n>0?Math.floor:Math.ceil)(n)}})},function(n,t,i){var r=i(8),e=i(39),u=String.fromCharCode,f=String.fromCodePoint;r(r.S+r.F*(!!f&&f.length!=1),"String",{fromCodePoint:function(){for(var t=[],r=arguments.length,i=0,n;r>i;){if(n=+arguments[i++],e(n,1114111)!==n)throw RangeError(n+" is not a valid code point");t.push(n<65536?u(n):u(((n-=65536)>>10)+55296,n%1024+56320))}return t.join("")}})},function(n,t,i){var r=i(8),u=i(32),f=i(37);r(r.S,"String",{raw:function(n){for(var r=u(n.raw),e=f(r.length),o=arguments.length,i=[],t=0;e>t;)i.push(String(r[t++])),t<o&&i.push(String(arguments[t]));return i.join("")}})},function(n,t,i){"use strict";i(82)("trim",function(n){return function(){return n(this,3)}})},function(n,t,i){"use strict";var r=i(127)(!0);i(128)(String,"String",function(n){this._t=String(n);this._i=0},function(){var t=this._t,i=this._i,n;return i>=t.length?{value:undefined,done:!0}:(n=r(t,i),this._i+=n.length,{value:n,done:!1})})},function(n,t,i){var r=i(38),u=i(35);n.exports=function(n){return function(t,i){var e=String(u(t)),f=r(i),h=e.length,o,s;return f<0||f>=h?n?"":undefined:(o=e.charCodeAt(f),o<55296||o>56319||f+1===h||(s=e.charCodeAt(f+1))<56320||s>57343?n?e.charAt(f):o:n?e.slice(f,f+2):(o-55296<<10)+(s-56320)+65536)}}},function(n,t,i){"use strict";var o=i(28),f=i(8),a=i(18),s=i(10),v=i(5),h=i(129),y=i(130),p=i(24),w=i(58),r=i(25)("iterator"),e=!([].keys&&"next"in[].keys()),b="@@iterator",c="keys",u="values",l=function(){return this};n.exports=function(n,t,i,k,d,g,nt){y(i,t,k);var et=function(n){if(!e&&n in tt)return tt[n];switch(n){case c:return function(){return new i(this,n)};case u:return function(){return new i(this,n)}}return function(){return new i(this,n)}},ct=t+" Iterator",st=d==u,ht=!1,tt=n.prototype,it=tt[r]||tt[b]||d&&tt[d],rt=it||et(d),at=d?st?et("entries"):rt:undefined,lt=t=="Array"?tt.entries||it:it,ft,ot,ut;if(lt&&(ut=w(lt.call(new n)),ut!==Object.prototype&&ut.next&&(p(ut,ct,!0),o||v(ut,r)||s(ut,r,l))),st&&it&&it.name!==u&&(ht=!0,rt=function(){return it.call(this)}),(!o||nt)&&(e||ht||!tt[r])&&s(tt,r,rt),h[t]=rt,h[ct]=l,d)if(ft={values:st?rt:et(u),keys:g?rt:et(c),entries:at},nt)for(ot in ft)ot in tt||a(tt,ot,ft[ot]);else f(f.P+f.F*(e||ht),t,ft);return ft}},function(n){n.exports={}},function(n,t,i){"use strict";var u=i(45),f=i(17),e=i(24),r={};i(10)(r,i(25)("iterator"),function(){return this});n.exports=function(n,t,i){n.prototype=u(r,{next:f(1,i)});e(n,t+" Iterator")}},function(n,t,i){"use strict";var r=i(8),u=i(127)(!1);r(r.P,"String",{codePointAt:function(n){return u(this,n)}})},function(n,t,i){"use strict";var r=i(8),f=i(37),o=i(133),u="endsWith",e=""[u];r(r.P+r.F*i(135)(u),"String",{endsWith:function(n){var t=o(this,n,u),s=arguments.length>1?arguments[1]:undefined,h=f(t.length),i=s===undefined?h:Math.min(f(s),h),r=String(n);return e?e.call(t,r,i):t.slice(i-r.length,i)===r}})},function(n,t,i){var r=i(134),u=i(35);n.exports=function(n,t,i){if(r(t))throw TypeError("String#"+i+" doesn't accept regex!");return String(u(n))}},function(n,t,i){var r=i(13),u=i(34),f=i(25)("match");n.exports=function(n){var t;return r(n)&&((t=n[f])!==undefined?!!t:u(n)=="RegExp")}},function(n,t,i){var r=i(25)("match");n.exports=function(n){var t=/./;try{"/./"[n](t)}catch(i){try{return t[r]=!1,!"/./"[n](t)}catch(u){}}return!0}},function(n,t,i){"use strict";var r=i(8),f=i(133),u="includes";r(r.P+r.F*i(135)(u),"String",{includes:function(n){return!!~f(this,n,u).indexOf(n,arguments.length>1?arguments[1]:undefined)}})},function(n,t,i){var r=i(8);r(r.P,"String",{repeat:i(90)})},function(n,t,i){"use strict";var r=i(8),e=i(37),o=i(133),u="startsWith",f=""[u];r(r.P+r.F*i(135)(u),"String",{startsWith:function(n){var t=o(this,n,u),i=e(Math.min(arguments.length>1?arguments[1]:undefined,t.length)),r=String(n);return f?f.call(t,r,i):t.slice(i,i+r.length)===r}})},function(n,t,i){"use strict";i(140)("anchor",function(n){return function(t){return n(this,"a","name",t)}})},function(n,t,i){var r=i(8),u=i(7),f=i(35),e=/"/g,o=function(n,t,i,r){var o=String(f(n)),u="<"+t;return i!==""&&(u+=" "+i+'="'+String(r).replace(e,"&quot;")+'"'),u+">"+o+"<\/"+t+">"};n.exports=function(n,t){var i={};i[n]=t(o);r(r.P+r.F*u(function(){var t=""[n]('"');return t!==t.toLowerCase()||t.split('"').length>3}),"String",i)}},function(n,t,i){"use strict";i(140)("big",function(n){return function(){return n(this,"big","","")}})},function(n,t,i){"use strict";i(140)("blink",function(n){return function(){return n(this,"blink","","")}})},function(n,t,i){"use strict";i(140)("bold",function(n){return function(){return n(this,"b","","")}})},function(n,t,i){"use strict";i(140)("fixed",function(n){return function(){return n(this,"tt","","")}})},function(n,t,i){"use strict";i(140)("fontcolor",function(n){return function(t){return n(this,"font","color",t)}})},function(n,t,i){"use strict";i(140)("fontsize",function(n){return function(t){return n(this,"font","size",t)}})},function(n,t,i){"use strict";i(140)("italics",function(n){return function(){return n(this,"i","","")}})},function(n,t,i){"use strict";i(140)("link",function(n){return function(t){return n(this,"a","href",t)}})},function(n,t,i){"use strict";i(140)("small",function(n){return function(){return n(this,"small","","")}})},function(n,t,i){"use strict";i(140)("strike",function(n){return function(){return n(this,"strike","","")}})},function(n,t,i){"use strict";i(140)("sub",function(n){return function(){return n(this,"sub","","")}})},function(n,t,i){"use strict";i(140)("sup",function(n){return function(){return n(this,"sup","","")}})},function(n,t,i){var r=i(8);r(r.S,"Date",{now:function(){return(new Date).getTime()}})},function(n,t,i){"use strict";var r=i(8),u=i(57),f=i(16);r(r.P+r.F*i(7)(function(){return new Date(NaN).toJSON()!==null||Date.prototype.toJSON.call({toISOString:function(){return 1}})!==1}),"Date",{toJSON:function(){var n=u(this),t=f(n);return typeof t=="number"&&!isFinite(t)?null:n.toISOString()}})},function(n,t,i){var r=i(8),u=i(156);r(r.P+r.F*(Date.prototype.toISOString!==u),"Date",{toISOString:u})},function(n,t,i){"use strict";var f=i(7),e=Date.prototype.getTime,u=Date.prototype.toISOString,r=function(n){return n>9?n:"0"+n};n.exports=f(function(){return u.call(new Date(-50000000000001))!="0385-07-25T07:06:39.999Z"})||!f(function(){u.call(new Date(NaN))})?function(){if(!isFinite(e.call(this)))throw RangeError("Invalid time value");var n=this,t=n.getUTCFullYear(),i=n.getUTCMilliseconds(),u=t<0?"-":t>9999?"+":"";return u+("00000"+Math.abs(t)).slice(u?-6:-4)+"-"+r(n.getUTCMonth()+1)+"-"+r(n.getUTCDate())+"T"+r(n.getUTCHours())+":"+r(n.getUTCMinutes())+":"+r(n.getUTCSeconds())+"."+(i>99?i:"0"+r(i))+"Z"}:u},function(n,t,i){var r=Date.prototype,u="Invalid Date",f="toString",e=r[f],o=r.getTime;new Date(NaN)+""!=u&&i(18)(r,f,function(){var n=o.call(this);return n===n?e.call(this):u})},function(n,t,i){var r=i(25)("toPrimitive"),u=Date.prototype;r in u||i(10)(u,r,i(159))},function(n,t,i){"use strict";var u=i(12),f=i(16),r="number";n.exports=function(n){if(n!=="string"&&n!==r&&n!=="default")throw TypeError("Incorrect hint");return f(u(this),n!=r)}},function(n,t,i){var r=i(8);r(r.S,"Array",{isArray:i(44)})},function(n,t,i){"use strict";var f=i(20),r=i(8),e=i(57),o=i(162),s=i(163),h=i(37),u=i(164),c=i(165);r(r.S+r.F*!i(166)(function(n){Array.from(n)}),"Array",{from:function(n){var r=e(n),a=typeof this=="function"?this:Array,k=arguments.length,l=k>1?arguments[1]:undefined,v=l!==undefined,t=0,y=c(r),p,i,w,b;if(v&&(l=f(l,k>2?arguments[2]:undefined,2)),y==undefined||a==Array&&s(y))for(p=h(r.length),i=new a(p);p>t;t++)u(i,t,v?l(r[t],t):r[t]);else for(b=y.call(r),i=new a;!(w=b.next()).done;t++)u(i,t,v?o(b,l,[w.value,t],!0):w.value);return i.length=t,i}})},function(n,t,i){var r=i(12);n.exports=function(n,t,i,u){try{return u?t(r(i)[0],i[1]):t(i)}catch(e){var f=n["return"];f!==undefined&&r(f.call(n));throw e;}}},function(n,t,i){var r=i(129),u=i(25)("iterator"),f=Array.prototype;n.exports=function(n){return n!==undefined&&(r.Array===n||f[u]===n)}},function(n,t,i){"use strict";var r=i(11),u=i(17);n.exports=function(n,t,i){t in n?r.f(n,t,u(0,i)):n[t]=i}},function(n,t,i){var r=i(74),u=i(25)("iterator"),f=i(129);n.exports=i(9).getIteratorMethod=function(n){if(n!=undefined)return n[u]||n["@@iterator"]||f[r(n)]}},function(n,t,i){var r=i(25)("iterator"),f=!1,u;try{u=[7][r]();u["return"]=function(){f=!0};Array.from(u,function(){throw 2;})}catch(e){}n.exports=function(n,t){var u,i,e;if(!t&&!f)return!1;u=!1;try{i=[7];e=i[r]();e.next=function(){return{done:u=!0}};i[r]=function(){return e};n(i)}catch(o){}return u}},function(n,t,i){"use strict";var r=i(8),u=i(164);r(r.S+r.F*i(7)(function(){function n(){}return!(Array.of.call(n)instanceof n)}),"Array",{of:function(){for(var n=0,t=arguments.length,i=new(typeof this=="function"?this:Array)(t);t>n;)u(i,n,arguments[n++]);return i.length=t,i}})},function(n,t,i){"use strict";var r=i(8),f=i(32),u=[].join;r(r.P+r.F*(i(33)!=Object||!i(169)(u)),"Array",{join:function(n){return u.call(f(this),n===undefined?",":n)}})},function(n,t,i){"use strict";var r=i(7);n.exports=function(n,t){return!!n&&r(function(){t?n.call(null,function(){},1):n.call(null)})}},function(n,t,i){"use strict";var r=i(8),u=i(47),s=i(34),f=i(39),e=i(37),o=[].slice;r(r.P+r.F*i(7)(function(){u&&o.call(u)}),"Array",{slice:function(n,t){var r=e(this.length),h=s(this);if(t=t===undefined?r:t,h=="Array")return o.call(this,n,t);for(var u=f(n,r),a=f(t,r),c=e(a-u),l=Array(c),i=0;i<c;i++)l[i]=h=="String"?this.charAt(u+i):this[u+i];return l}})},function(n,t,i){"use strict";var r=i(8),s=i(21),f=i(57),e=i(7),u=[].sort,o=[1,2,3];r(r.P+r.F*(e(function(){o.sort(undefined)})||!e(function(){o.sort(null)})||!i(169)(u)),"Array",{sort:function(n){return n===undefined?u.call(f(this)):u.call(f(this),s(n))}})},function(n,t,i){"use strict";var r=i(8),u=i(173)(0),f=i(169)([].forEach,!0);r(r.P+r.F*!f,"Array",{forEach:function(n){return u(this,n,arguments[1])}})},function(n,t,i){var r=i(20),u=i(33),f=i(57),e=i(37),o=i(174);n.exports=function(n,t){var s=n==1,l=n==2,a=n==3,i=n==4,h=n==6,v=n==5||h,c=t||o;return function(t,o,y){for(var g=f(t),b=u(g),tt=r(o,y,3),nt=e(b.length),p=0,k=s?c(t,nt):l?c(t,0):undefined,w,d;nt>p;p++)if((v||p in b)&&(w=b[p],d=tt(w,p,g),n))if(s)k[p]=d;else if(d)switch(n){case 3:return!0;case 5:return w;case 6:return p;case 2:k.push(w)}else if(i)return!1;return h?-1:a||i?i:k}}},function(n,t,i){var r=i(175);n.exports=function(n,t){return new(r(n))(t)}},function(n,t,i){var u=i(13),r=i(44),f=i(25)("species");n.exports=function(n){var t;return r(n)&&(t=n.constructor,typeof t=="function"&&(t===Array||r(t.prototype))&&(t=undefined),u(t)&&(t=t[f],t===null&&(t=undefined))),t===undefined?Array:t}},function(n,t,i){"use strict";var r=i(8),u=i(173)(1);r(r.P+r.F*!i(169)([].map,!0),"Array",{map:function(n){return u(this,n,arguments[1])}})},function(n,t,i){"use strict";var r=i(8),u=i(173)(2);r(r.P+r.F*!i(169)([].filter,!0),"Array",{filter:function(n){return u(this,n,arguments[1])}})},function(n,t,i){"use strict";var r=i(8),u=i(173)(3);r(r.P+r.F*!i(169)([].some,!0),"Array",{some:function(n){return u(this,n,arguments[1])}})},function(n,t,i){"use strict";var r=i(8),u=i(173)(4);r(r.P+r.F*!i(169)([].every,!0),"Array",{every:function(n){return u(this,n,arguments[1])}})},function(n,t,i){"use strict";var r=i(8),u=i(181);r(r.P+r.F*!i(169)([].reduce,!0),"Array",{reduce:function(n){return u(this,n,arguments.length,arguments[1],!1)}})},function(n,t,i){var r=i(21),u=i(57),f=i(33),e=i(37);n.exports=function(n,t,i,o,s){r(t);var l=u(n),c=f(l),a=e(l.length),h=s?a-1:0,v=s?-1:1;if(i<2)for(;;){if(h in c){o=c[h];h+=v;break}if(h+=v,s?h<0:a<=h)throw TypeError("Reduce of empty array with no initial value");}for(;s?h>=0:a>h;h+=v)h in c&&(o=t(o,c[h],h,l));return o}},function(n,t,i){"use strict";var r=i(8),u=i(181);r(r.P+r.F*!i(169)([].reduceRight,!0),"Array",{reduceRight:function(n){return u(this,n,arguments.length,arguments[1],!0)}})},function(n,t,i){"use strict";var r=i(8),e=i(36)(!1),u=[].indexOf,f=!!u&&1/[1].indexOf(1,-0)<0;r(r.P+r.F*(f||!i(169)(u)),"Array",{indexOf:function(n){return f?u.apply(this,arguments)||0:e(this,n,arguments[1])}})},function(n,t,i){"use strict";var r=i(8),e=i(32),o=i(38),s=i(37),u=[].lastIndexOf,f=!!u&&1/[1].lastIndexOf(1,-0)<0;r(r.P+r.F*(f||!i(169)(u)),"Array",{lastIndexOf:function(n){if(f)return u.apply(this,arguments)||0;var i=e(this),r=s(i.length),t=r-1;for(arguments.length>1&&(t=Math.min(t,o(arguments[1]))),t<0&&(t=r+t);t>=0;t--)if(t in i&&i[t]===n)return t||0;return-1}})},function(n,t,i){var r=i(8);r(r.P,"Array",{copyWithin:i(186)});i(187)("copyWithin")},function(n,t,i){"use strict";var u=i(57),r=i(39),f=i(37);n.exports=[].copyWithin||function(n,t){var o=u(this),s=f(o.length),i=r(n,s),e=r(t,s),l=arguments.length>2?arguments[2]:undefined,h=Math.min((l===undefined?s:r(l,s))-e,s-i),c=1;for(e<i&&i<e+h&&(c=-1,e+=h-1,i+=h-1);h-->0;)e in o?o[i]=o[e]:delete o[i],i+=c,e+=c;return o}},function(n,t,i){var r=i(25)("unscopables"),u=Array.prototype;u[r]==undefined&&i(10)(u,r,{});n.exports=function(n){u[r][n]=!0}},function(n,t,i){var r=i(8);r(r.P,"Array",{fill:i(189)});i(187)("fill")},function(n,t,i){"use strict";var u=i(57),r=i(39),f=i(37);n.exports=function(n){for(var t=u(this),i=f(t.length),e=arguments.length,o=r(e>1?arguments[1]:undefined,i),s=e>2?arguments[2]:undefined,h=s===undefined?i:r(s,i);h>o;)t[o++]=n;return t}},function(n,t,i){"use strict";var r=i(8),e=i(173)(5),u="find",f=!0;u in[]&&Array(1)[u](function(){f=!1});r(r.P+r.F*f,"Array",{find:function(n){return e(this,n,arguments.length>1?arguments[1]:undefined)}});i(187)(u)},function(n,t,i){"use strict";var r=i(8),e=i(173)(6),u="findIndex",f=!0;u in[]&&Array(1)[u](function(){f=!1});r(r.P+r.F*f,"Array",{findIndex:function(n){return e(this,n,arguments.length>1?arguments[1]:undefined)}});i(187)(u)},function(n,t,i){i(193)("Array")},function(n,t,i){"use strict";var u=i(4),f=i(11),e=i(6),r=i(25)("species");n.exports=function(n){var t=u[n];e&&t&&!t[r]&&f.f(t,r,{configurable:!0,get:function(){return this}})}},function(n,t,i){"use strict";var u=i(187),r=i(195),f=i(129),e=i(32);n.exports=i(128)(Array,"Array",function(n,t){this._t=e(n);this._i=0;this._k=t},function(){var t=this._t,i=this._k,n=this._i++;return!t||n>=t.length?(this._t=undefined,r(1)):i=="keys"?r(0,n):i=="values"?r(0,t[n]):r(0,[n,t[n]])},"values");f.Arguments=f.Array;u("keys");u("values");u("entries")},function(n){n.exports=function(n,t){return{value:t,done:!!n}}},function(n,t,i){var c=i(4),v=i(87),y=i(11).f,p=i(49).f,w=i(134),b=i(197),r=c.RegExp,u=r,e=r.prototype,f=/a/g,o=/a/g,l=new r(f)!==f,a,s,h;if(i(6)&&(!l||i(7)(function(){return o[i(25)("match")]=!1,r(f)!=f||r(o)==o||r(f,"i")!="/a/i"}))){for(r=function(n,t){var o=this instanceof r,i=w(n),f=t===undefined;return!o&&i&&n.constructor===r&&f?n:v(l?new u(i&&!f?n.source:n,t):u((i=n instanceof r)?n.source:n,i&&f?b.call(n):t),o?this:e,r)},a=function(n){n in r||y(r,n,{configurable:!0,get:function(){return u[n]},set:function(t){u[n]=t}})},s=p(u),h=0;s.length>h;)a(s[h++]);e.constructor=r;r.prototype=e;i(18)(c,"RegExp",r)}i(193)("RegExp")},function(n,t,i){"use strict";var r=i(12);n.exports=function(){var t=r(this),n="";return t.global&&(n+="g"),t.ignoreCase&&(n+="i"),t.multiline&&(n+="m"),t.unicode&&(n+="u"),t.sticky&&(n+="y"),n}},function(n,t,i){"use strict";i(199);var e=i(12),o=i(197),s=i(6),r="toString",u=/./[r],f=function(n){i(18)(RegExp.prototype,r,n,!0)};i(7)(function(){return u.call({source:"a",flags:"b"})!="/a/b"})?f(function(){var n=e(this);return"/".concat(n.source,"/","flags"in n?n.flags:!s&&n instanceof RegExp?o.call(n):undefined)}):u.name!=r&&f(function(){return u.call(this)})},function(n,t,i){i(6)&&/./g.flags!="g"&&i(11).f(RegExp.prototype,"flags",{configurable:!0,get:i(197)})},function(n,t,i){i(201)("match",1,function(n,t,i){return[function(i){"use strict";var r=n(this),u=i==undefined?undefined:i[t];return u!==undefined?u.call(i,r):new RegExp(i)[t](String(r))},i]})},function(n,t,i){"use strict";var r=i(10),u=i(18),f=i(7),e=i(35),o=i(25);n.exports=function(n,t,i){var s=o(n),h=i(e,s,""[n]),l=h[0],c=h[1];f(function(){var t={};return t[s]=function(){return 7},""[n](t)!=7})&&(u(String.prototype,n,l),r(RegExp.prototype,s,t==2?function(n,t){return c.call(n,this,t)}:function(n){return c.call(n,this)}))}},function(n,t,i){i(201)("replace",2,function(n,t,i){return[function(r,u){"use strict";var f=n(this),e=r==undefined?undefined:r[t];return e!==undefined?e.call(r,f,u):i.call(String(f),r,u)},i]})},function(n,t,i){i(201)("search",1,function(n,t,i){return[function(i){"use strict";var r=n(this),u=i==undefined?undefined:i[t];return u!==undefined?u.call(i,r):new RegExp(i)[t](String(r))},i]})},function(n,t,i){i(201)("split",2,function(n,t,r){"use strict";var h=i(134),o=r,c=[].push,f="split",u="length",s="lastIndex",e;return"abbc"[f](/(b)*/)[1]=="c"||"test"[f](/(?:)/,-1)[u]!=4||"ab"[f](/(?:ab)*/)[u]!=2||"."[f](/(.?)(.?)/)[u]!=4||"."[f](/()()/)[u]>1||""[f](/.?/)[u]?(e=/()??/.exec("")[1]===undefined,r=function(n,t){var f=String(this);if(n===undefined&&t===0)return[];if(!h(n))return o.call(f,n,t);var r=[],w=(n.ignoreCase?"i":"")+(n.multiline?"m":"")+(n.unicode?"u":"")+(n.sticky?"y":""),l=0,y=t===undefined?4294967295:t>>>0,a=new RegExp(n.source,w+"g"),b,i,p,k,v;for(e||(b=new RegExp("^"+a.source+"$(?!\\s)",w));i=a.exec(f);){if(p=i.index+i[0][u],p>l&&(r.push(f.slice(l,i.index)),!e&&i[u]>1&&i[0].replace(b,function(){for(v=1;v<arguments[u]-2;v++)arguments[v]===undefined&&(i[v]=undefined)}),i[u]>1&&i.index<f[u]&&c.apply(r,i.slice(1)),k=i[0][u],l=p,r[u]>=y))break;a[s]===i.index&&a[s]++}return l===f[u]?(k||!a.test(""))&&r.push(""):r.push(f.slice(l)),r[u]>y?r.slice(0,y):r}):"0"[f](undefined,0)[u]&&(r=function(n,t){return n===undefined&&t===0?[]:o.call(this,n,t)}),[function(i,u){var f=n(this),e=i==undefined?undefined:i[t];return e!==undefined?e.call(i,f,u):r.call(String(f),i,u)},r]})},function(n,t,i){"use strict";var g=i(28),f=i(4),o=i(20),st=i(74),r=i(8),ht=i(13),ct=i(21),lt=i(206),nt=i(207),at=i(208),tt=i(209).set,it=i(210)(),rt=i(211),p=i(212),vt=i(213),e="Promise",ut=f.TypeError,a=f.process,u=f[e],h=st(a)=="process",v=function(){},y,ft,et,w,c=ft=rt.f,l=!!function(){try{var n=u.resolve(1),t=(n.constructor={})[i(25)("species")]=function(n){n(v,v)};return(h||typeof PromiseRejectionEvent=="function")&&n.then(v)instanceof t}catch(r){}}(),ot=function(n){var t;return ht(n)&&typeof(t=n.then)=="function"?t:!1},b=function(n,t){if(!n._n){n._n=!0;var i=n._c;it(function(){for(var r=n._v,u=n._s==1,f=0,e=function(t){var o=u?t.ok:t.fail,s=t.resolve,f=t.reject,e=t.domain,i,h;try{o?(u||(n._h==2&&pt(n),n._h=1),o===!0?i=r:(e&&e.enter(),i=o(r),e&&e.exit()),i===t.promise?f(ut("Promise-chain cycle")):(h=ot(i))?h.call(i,s,f):s(i)):f(r)}catch(c){f(c)}};i.length>f;)e(i[f++]);n._c=[];n._n=!1;t&&!n._h&&yt(n)})}},yt=function(n){tt.call(f,function(){var t=n._v,u=k(n),i,e,r;if(u&&(i=p(function(){h?a.emit("unhandledRejection",t,n):(e=f.onunhandledrejection)?e({promise:n,reason:t}):(r=f.console)&&r.error&&r.error("Unhandled promise rejection",t)}),n._h=h||k(n)?2:1),n._a=undefined,u&&i.e)throw i.v;})},k=function(n){if(n._h==1)return!1;for(var i=n._a||n._c,r=0,t;i.length>r;)if(t=i[r++],t.fail||!k(t.promise))return!1;return!0},pt=function(n){tt.call(f,function(){var t;h?a.emit("rejectionHandled",n):(t=f.onrejectionhandled)&&t({promise:n,reason:n._v})})},s=function(n){var t=this;t._d||(t._d=!0,t=t._w||t,t._v=n,t._s=2,t._a||(t._a=t._c.slice()),b(t,!0))},d=function(n){var t=this,i;if(!t._d){t._d=!0;t=t._w||t;try{if(t===n)throw ut("Promise can't be resolved itself");(i=ot(n))?it(function(){var r={_w:t,_d:!1};try{i.call(n,o(d,r,1),o(s,r,1))}catch(u){s.call(r,u)}}):(t._v=n,t._s=1,b(t,!1))}catch(r){s.call({_w:t,_d:!1},r)}}};l||(u=function(n){lt(this,u,e,"_h");ct(n);y.call(this);try{n(o(d,this,1),o(s,this,1))}catch(t){s.call(this,t)}},y=function(){this._c=[];this._a=undefined;this._s=0;this._d=!1;this._v=undefined;this._h=0;this._n=!1},y.prototype=i(214)(u.prototype,{then:function(n,t){var i=c(at(this,u));return i.ok=typeof n=="function"?n:!0,i.fail=typeof t=="function"&&t,i.domain=h?a.domain:undefined,this._c.push(i),this._a&&this._a.push(i),this._s&&b(this,!1),i.promise},"catch":function(n){return this.then(undefined,n)}}),et=function(){var n=new y;this.promise=n;this.resolve=o(d,n,1);this.reject=o(s,n,1)},rt.f=c=function(n){return n===u||n===w?new et(n):ft(n)});r(r.G+r.W+r.F*!l,{Promise:u});i(24)(u,e);i(193)(e);w=i(9)[e];r(r.S+r.F*!l,e,{reject:function(n){var t=c(this),i=t.reject;return i(n),t.promise}});r(r.S+r.F*(g||!l),e,{resolve:function(n){return vt(g&&this===w?u:this,n)}});r(r.S+r.F*!(l&&i(166)(function(n){u.all(n)["catch"](v)})),e,{all:function(n){var i=this,t=c(i),r=t.resolve,u=t.reject,f=p(function(){var t=[],e=0,f=1;nt(n,!1,function(n){var s=e++,o=!1;t.push(undefined);f++;i.resolve(n).then(function(n){o||(o=!0,t[s]=n,--f||r(t))},u)});--f||r(t)});return f.e&&u(f.v),t.promise},race:function(n){var i=this,t=c(i),r=t.reject,u=p(function(){nt(n,!1,function(n){i.resolve(n).then(t.resolve,r)})});return u.e&&r(u.v),t.promise}})},function(n){n.exports=function(n,t,i,r){if(!(n instanceof t)||r!==undefined&&r in n)throw TypeError(i+": incorrect invocation!");return n}},function(n,t,i){var f=i(20),e=i(162),o=i(163),s=i(12),h=i(37),c=i(165),r={},u={},t=n.exports=function(n,t,i,l,a){var w=a?function(){return n}:c(n),b=f(i,l,t?2:1),y=0,d,p,k,v;if(typeof w!="function")throw TypeError(n+" is not iterable!");if(o(w)){for(d=h(n.length);d>y;y++)if(v=t?b(s(p=n[y])[0],p[1]):b(n[y]),v===r||v===u)return v}else for(k=w.call(n);!(p=k.next()).done;)if(v=e(k,b,p.value,t),v===r||v===u)return v};t.BREAK=r;t.RETURN=u},function(n,t,i){var r=i(12),u=i(21),f=i(25)("species");n.exports=function(n,t){var i=r(n).constructor,e;return i===undefined||(e=r(i)[f])==undefined?t:u(e)}},function(n,t,i){var o=i(20),g=i(77),y=i(47),p=i(15),r=i(4),w=r.process,s=r.setImmediate,h=r.clearImmediate,b=r.MessageChannel,c=r.Dispatch,l=0,f={},k="onreadystatechange",u,a,v,e=function(){var n=+this,t;f.hasOwnProperty(n)&&(t=f[n],delete f[n],t())},d=function(n){e.call(n.data)};s&&h||(s=function(n){for(var t=[],i=1;arguments.length>i;)t.push(arguments[i++]);return f[++l]=function(){g(typeof n=="function"?n:Function(n),t)},u(l),l},h=function(n){delete f[n]},i(34)(w)=="process"?u=function(n){w.nextTick(o(e,n,1))}:c&&c.now?u=function(n){c.now(o(e,n,1))}:b?(a=new b,v=a.port2,a.port1.onmessage=d,u=o(v.postMessage,v,1)):r.addEventListener&&typeof postMessage=="function"&&!r.importScripts?(u=function(n){r.postMessage(n+"","*")},r.addEventListener("message",d,!1)):u=k in p("script")?function(n){y.appendChild(p("script"))[k]=function(){y.removeChild(this);e.call(n)}}:function(n){setTimeout(o(e,n,1),0)});n.exports={set:s,clear:h}},function(n,t,i){var r=i(4),s=i(209).set,e=r.MutationObserver||r.WebKitMutationObserver,u=r.process,f=r.Promise,o=i(34)(u)=="process";n.exports=function(){var n,i,t,h=function(){var r,f;for(o&&(r=u.domain)&&r.exit();n;){f=n.fn;n=n.next;try{f()}catch(e){n?t():i=undefined;throw e;}}i=undefined;r&&r.enter()},c,l,a;return o?t=function(){u.nextTick(h)}:e?(c=!0,l=document.createTextNode(""),new e(h).observe(l,{characterData:!0}),t=function(){l.data=c=!c}):f&&f.resolve?(a=f.resolve(),t=function(){a.then(h)}):t=function(){s.call(r,h)},function(r){var u={fn:r,next:undefined};i&&(i.next=u);n||(n=u,t());i=u}}},function(n,t,i){"use strict";function u(n){var t,i;this.promise=new n(function(n,r){if(t!==undefined||i!==undefined)throw TypeError("Bad Promise constructor");t=n;i=r});this.resolve=r(t);this.reject=r(i)}var r=i(21);n.exports.f=function(n){return new u(n)}},function(n){n.exports=function(n){try{return{e:!1,v:n()}}catch(t){return{e:!0,v:t}}}},function(n,t,i){var r=i(12),u=i(13),f=i(211);n.exports=function(n,t){if(r(n),u(t)&&t.constructor===n)return t;var i=f.f(n),e=i.resolve;return e(t),i.promise}},function(n,t,i){var r=i(18);n.exports=function(n,t,i){for(var u in t)r(n,u,t[u],i);return n}},function(n,t,i){"use strict";var r=i(216),f=i(217),u="Map";n.exports=i(218)(u,function(n){return function(){return n(this,arguments.length>0?arguments[0]:undefined)}},{get:function(n){var t=r.getEntry(f(this,u),n);return t&&t.v},set:function(n,t){return r.def(f(this,u),n===0?0:n,t)}},r,!0)},function(n,t,i){"use strict";var h=i(11).f,c=i(45),l=i(214),a=i(20),v=i(206),y=i(207),p=i(128),f=i(195),w=i(193),o=i(6),s=i(22).fastKey,r=i(217),u=o?"_s":"size",e=function(n,t){var r=s(t),i;if(r!=="F")return n._i[r];for(i=n._f;i;i=i.n)if(i.k==t)return i};n.exports={getConstructor:function(n,t,i,f){var s=n(function(n,r){v(n,s,t,"_i");n._t=t;n._i=c(null);n._f=undefined;n._l=undefined;n[u]=0;r!=undefined&&y(r,i,n[f],n)});return l(s.prototype,{clear:function(){for(var i=r(this,t),f=i._i,n=i._f;n;n=n.n)n.r=!0,n.p&&(n.p=n.p.n=undefined),delete f[n.i];i._f=i._l=undefined;i[u]=0},"delete":function(n){var f=r(this,t),i=e(f,n),o,s;return i&&(o=i.n,s=i.p,delete f._i[i.i],i.r=!0,s&&(s.n=o),o&&(o.p=s),f._f==i&&(f._f=o),f._l==i&&(f._l=s),f[u]--),!!i},forEach:function(n){r(this,t);for(var u=a(n,arguments.length>1?arguments[1]:undefined,3),i;i=i?i.n:this._f;)for(u(i.v,i.k,this);i&&i.r;)i=i.p},has:function(n){return!!e(r(this,t),n)}}),o&&h(s.prototype,"size",{get:function(){return r(this,t)[u]}}),s},def:function(n,t,i){var r=e(n,t),f,o;return r?r.v=i:(n._l=r={i:o=s(t,!0),k:t,v:i,p:f=n._l,n:undefined,r:!1},n._f||(n._f=r),f&&(f.n=r),n[u]++,o!=="F"&&(n._i[o]=r)),n},getEntry:e,setStrong:function(n,t,i){p(n,t,function(n,i){this._t=r(n,t);this._k=i;this._l=undefined},function(){for(var t=this,i=t._k,n=t._l;n&&n.r;)n=n.p;return!t._t||!(t._l=n=n?n.n:t._t._f)?(t._t=undefined,f(1)):i=="keys"?f(0,n.k):i=="values"?f(0,n.v):f(0,[n.k,n.v])},i?"entries":"values",!i,!0);w(t)}}},function(n,t,i){var r=i(13);n.exports=function(n,t){if(!r(n)||n._t!==t)throw TypeError("Incompatible receiver, "+t+" required!");return n}},function(n,t,i){"use strict";var e=i(4),r=i(8),o=i(18),s=i(214),h=i(22),c=i(207),l=i(206),u=i(13),f=i(7),a=i(166),v=i(24),y=i(87);n.exports=function(n,t,i,p,w,b){var tt=e[n],k=tt,g=w?"set":"add",d=k&&k.prototype,rt={},nt=function(n){var t=d[n];o(d,n,n=="delete"?function(n){return b&&!u(n)?!1:t.call(this,n===0?0:n)}:n=="has"?function(n){return b&&!u(n)?!1:t.call(this,n===0?0:n)}:n=="get"?function(n){return b&&!u(n)?undefined:t.call(this,n===0?0:n)}:n=="add"?function(n){return t.call(this,n===0?0:n),this}:function(n,i){return t.call(this,n===0?0:n,i),this})};if(typeof k=="function"&&(b||d.forEach&&!f(function(){(new k).entries().next()}))){var it=new k,ft=it[g](b?{}:-0,1)!=it,et=f(function(){it.has(1)}),ot=a(function(n){new k(n)}),ut=!b&&f(function(){for(var t=new k,n=5;n--;)t[g](n,n);return!t.has(-0)});ot||(k=t(function(t,i){l(t,k,n);var r=y(new tt,t,k);return i!=undefined&&c(i,w,r[g],r),r}),k.prototype=d,d.constructor=k);(et||ut)&&(nt("delete"),nt("has"),w&&nt("get"));(ut||ft)&&nt(g);b&&d.clear&&delete d.clear}else k=p.getConstructor(t,n,w,g),s(k.prototype,i),h.NEED=!0;return v(k,n),rt[n]=k,r(r.G+r.W+r.F*(k!=tt),rt),b||p.setStrong(k,n,w),k}},function(n,t,i){"use strict";var r=i(216),f=i(217),u="Set";n.exports=i(218)(u,function(n){return function(){return n(this,arguments.length>0?arguments[0]:undefined)}},{add:function(n){return r.def(f(this,u),n=n===0?0:n,n)}},r)},function(n,t,i){"use strict";var v=i(173)(0),y=i(18),e=i(22),p=i(68),r=i(221),o=i(13),w=i(7),s=i(217),u="WeakMap",b=e.getWeak,k=Object.isExtensible,d=r.ufstore,h={},f,c=function(n){return function(){return n(this,arguments.length>0?arguments[0]:undefined)}},l={get:function(n){if(o(n)){var t=b(n);return t===!0?d(s(this,u)).get(n):t?t[this._i]:undefined}},set:function(n,t){return r.def(s(this,u),n,t)}},a=n.exports=i(218)(u,c,l,r,!0,!0);w(function(){return(new a).set((Object.freeze||Object)(h),7).get(h)!=7})&&(f=r.getConstructor(c,u),p(f.prototype,l),e.NEED=!0,v(["delete","has","get","set"],function(n){var t=a.prototype,i=t[n];y(t,n,function(t,r){if(o(t)&&!k(t)){this._f||(this._f=new f);var u=this._f[n](t,r);return n=="set"?this:u}return i.call(this,t,r)})}))},function(n,t,i){"use strict";var l=i(214),u=i(22).getWeak,a=i(12),e=i(13),v=i(206),y=i(207),o=i(173),s=i(5),h=i(217),p=o(5),w=o(6),b=0,r=function(n){return n._l||(n._l=new c)},c=function(){this.a=[]},f=function(n,t){return p(n.a,function(n){return n[0]===t})};c.prototype={get:function(n){var t=f(this,n);if(t)return t[1]},has:function(n){return!!f(this,n)},set:function(n,t){var i=f(this,n);i?i[1]=t:this.a.push([n,t])},"delete":function(n){var t=w(this.a,function(t){return t[0]===n});return~t&&this.a.splice(t,1),!!~t}};n.exports={getConstructor:function(n,t,i,f){var o=n(function(n,r){v(n,o,t,"_i");n._t=t;n._i=b++;n._l=undefined;r!=undefined&&y(r,i,n[f],n)});return l(o.prototype,{"delete":function(n){if(!e(n))return!1;var i=u(n);return i===!0?r(h(this,t))["delete"](n):i&&s(i,this._i)&&delete i[this._i]},has:function(n){if(!e(n))return!1;var i=u(n);return i===!0?r(h(this,t)).has(n):i&&s(i,this._i)}}),o},def:function(n,t,i){var f=u(a(t),!0);return f===!0?r(n).set(t,i):f[n._i]=i,n},ufstore:r}},function(n,t,i){"use strict";var r=i(221),f=i(217),u="WeakSet";i(218)(u,function(n){return function(){return n(this,arguments.length>0?arguments[0]:undefined)}},{add:function(n){return r.def(f(this,u),n,!0)}},r,!1,!0)},function(n,t,i){"use strict";var r=i(8),f=i(224),o=i(225),s=i(12),h=i(39),y=i(37),p=i(13),c=i(4).ArrayBuffer,w=i(208),u=o.ArrayBuffer,l=o.DataView,a=f.ABV&&c.isView,v=u.prototype.slice,b=f.VIEW,e="ArrayBuffer";r(r.G+r.W+r.F*(c!==u),{ArrayBuffer:u});r(r.S+r.F*!f.CONSTR,e,{isView:function(n){return a&&a(n)||p(n)&&b in n}});r(r.P+r.U+r.F*i(7)(function(){return!new u(2).slice(1,undefined).byteLength}),e,{slice:function(n,t){if(v!==undefined&&t===undefined)return v.call(s(this),n);for(var i=s(this).byteLength,r=h(n,i),f=h(t===undefined?i:t,i),e=new(w(this,u))(y(f-r)),o=new l(this),c=new l(e),a=0;r<f;)c.setUint8(a++,o.getUint8(r++));return e}});i(193)(e)},function(n,t,i){for(var r=i(4),f=i(10),e=i(19),o=e("typed_array"),s=e("view"),h=!!(r.ArrayBuffer&&r.DataView),c=h,l=0,u,a="Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array".split(",");l<9;)(u=r[a[l++]])?(f(u.prototype,o,!0),f(u.prototype,s,!0)):c=!1;n.exports={ABV:h,CONSTR:c,TYPED:o,VIEW:s}},function(n,t,i){"use strict";function wt(n,t,i){var s=Array(i),h=i*8-t-1,c=(1<<h)-1,e=c>>1,a=t===23?f(2,-24)-f(2,-77):0,l=0,v=n<0||n===0&&1/n<0?1:0,r,u,o;for(n=hi(n),n!=n||n===tt?(u=n!=n?1:0,r=c):(r=ci(li(n)/ai),n*(o=f(2,-r))<1&&(r--,o*=2),n+=r+e>=1?a/o:a*f(2,1-e),n*o>=2&&(r++,o/=2),r+e>=c?(u=0,r=c):r+e>=1?(u=(n*o-1)*f(2,t),r=r+e):(u=n*f(2,e-1)*f(2,t),r=0));t>=8;s[l++]=u&255,u/=256,t-=8);for(r=r<<t|u,h+=t;h>0;s[l++]=r&255,r/=256,h-=8);return s[--l]|=v*128,s}function bt(n,t,i){var h=i*8-t-1,c=(1<<h)-1,l=c>>1,u=h-7,o=i-1,s=n[o--],r=s&127,e;for(s>>=7;u>0;r=r*256+n[o],o--,u-=8);for(e=r&(1<<-u)-1,r>>=-u,u+=t;u>0;e=e*256+n[o],o--,u-=8);if(r===0)r=1-l;else{if(r===c)return e?NaN:s?-tt:tt;e=e+f(2,t);r=r-l}return(s?-1:1)*e*f(2,r-t)}function kt(n){return n[3]<<24|n[2]<<16|n[1]<<8|n[0]}function dt(n){return[n&255]}function gt(n){return[n&255,n>>8&255]}function ni(n){return[n&255,n>>8&255,n>>16&255,n>>24&255]}function vi(n){return wt(n,52,8)}function yi(n){return wt(n,23,4)}function g(n,t,i){ei(n[s],t,{get:function(){return this[i]}})}function e(n,t,i,r){var o=+i,u=b(o);if(u+t>n[v])throw k(vt);var s=n[rt]._b,f=u+n[ut],e=s.slice(f,f+t);return r?e:e.reverse()}function o(n,t,i,r,u,f){var s=+i,o=b(s),e;if(o+t>n[v])throw k(vt);var h=n[rt]._b,c=o+n[ut],l=r(+u);for(e=0;e<t;e++)h[c+e]=l[f?e:t-e-1]}var h=i(4),p=i(6),ii=i(28),ht=i(224),ct=i(10),lt=i(214),nt=i(7),w=i(206),ri=i(38),ui=i(37),b=i(226),fi=i(49).f,ei=i(11).f,oi=i(189),at=i(24),c="ArrayBuffer",l="DataView",s="prototype",si="Wrong length!",vt="Wrong index!",r=h[c],u=h[l],a=h.Math,k=h.RangeError,tt=h.Infinity,d=r,hi=a.abs,f=a.pow,ci=a.floor,li=a.log,ai=a.LN2,yt="buffer",it="byteLength",pt="byteOffset",rt=p?"_b":yt,v=p?"_l":it,ut=p?"_o":pt,ti,ft,et,ot,y,st;if(ht.ABV){if(!nt(function(){r(1)})||!nt(function(){new r(-1)})||nt(function(){return new r,new r(1.5),new r(NaN),r.name!=c})){for(r=function(n){return w(this,r),new d(b(n))},ti=r[s]=d[s],ft=fi(d),et=0;ft.length>et;)(ot=ft[et++])in r||ct(r,ot,d[ot]);ii||(ti.constructor=r)}y=new u(new r(2));st=u[s].setInt8;y.setInt8(0,2147483648);y.setInt8(1,2147483649);(y.getInt8(0)||!y.getInt8(1))&&lt(u[s],{setInt8:function(n,t){st.call(this,n,t<<24>>24)},setUint8:function(n,t){st.call(this,n,t<<24>>24)}},!0)}else r=function(n){w(this,r,c);var t=b(n);this._b=oi.call(Array(t),0);this[v]=t},u=function(n,t,i){w(this,u,l);w(n,r,l);var e=n[v],f=ri(t);if(f<0||f>e)throw k("Wrong offset!");if(i=i===undefined?e-f:ui(i),f+i>e)throw k(si);this[rt]=n;this[ut]=f;this[v]=i},p&&(g(r,it,"_l"),g(u,yt,"_b"),g(u,it,"_l"),g(u,pt,"_o")),lt(u[s],{getInt8:function(n){return e(this,1,n)[0]<<24>>24},getUint8:function(n){return e(this,1,n)[0]},getInt16:function(n){var t=e(this,2,n,arguments[1]);return(t[1]<<8|t[0])<<16>>16},getUint16:function(n){var t=e(this,2,n,arguments[1]);return t[1]<<8|t[0]},getInt32:function(n){return kt(e(this,4,n,arguments[1]))},getUint32:function(n){return kt(e(this,4,n,arguments[1]))>>>0},getFloat32:function(n){return bt(e(this,4,n,arguments[1]),23,4)},getFloat64:function(n){return bt(e(this,8,n,arguments[1]),52,8)},setInt8:function(n,t){o(this,1,n,dt,t)},setUint8:function(n,t){o(this,1,n,dt,t)},setInt16:function(n,t){o(this,2,n,gt,t,arguments[2])},setUint16:function(n,t){o(this,2,n,gt,t,arguments[2])},setInt32:function(n,t){o(this,4,n,ni,t,arguments[2])},setUint32:function(n,t){o(this,4,n,ni,t,arguments[2])},setFloat32:function(n,t){o(this,4,n,yi,t,arguments[2])},setFloat64:function(n,t){o(this,8,n,vi,t,arguments[2])}});at(r,c);at(u,l);ct(u[s],ht.VIEW,!0);t[c]=r;t[l]=u},function(n,t,i){var r=i(38),u=i(37);n.exports=function(n){if(n===undefined)return 0;var t=r(n),i=u(t);if(t!==i)throw RangeError("Wrong length!");return i}},function(n,t,i){var r=i(8);r(r.G+r.W+r.F*!i(224).ABV,{DataView:i(225).DataView})},function(n,t,i){i(229)("Int8",1,function(n){return function(t,i,r){return n(this,t,i,r)}})},function(n,t,i){"use strict";var o;if(i(6)){var ot=i(28),k=i(4),f=i(7),r=i(8),d=i(224),kt=i(225),fr=i(20),dt=i(206),er=i(17),e=i(10),st=i(214),or=i(38),g=i(37),gt=i(226),ni=i(39),ti=i(16),v=i(5),ii=i(74),c=i(13),ri=i(57),sr=i(163),hr=i(45),cr=i(58),ht=i(49).f,lr=i(165),ui=i(19),fi=i(25),h=i(173),ei=i(36),ct=i(208),lt=i(194),ar=i(129),vr=i(166),yr=i(193),pr=i(189),wr=i(186),oi=i(11),si=i(50),y=oi.f,br=si.f,p=k.RangeError,hi=k.TypeError,l=k.Uint8Array,at="ArrayBuffer",ci="Shared"+at,li="BYTES_PER_ELEMENT",w="prototype",s=Array[w],vt=kt.ArrayBuffer,kr=kt.DataView,ai=h(0),dr=h(2),gr=h(3),nu=h(4),tu=h(5),iu=h(6),ru=ei(!0),uu=ei(!1),fu=lt.values,eu=lt.keys,ou=lt.entries,su=s.lastIndexOf,hu=s.reduce,cu=s.reduceRight,vi=s.join,lu=s.sort,yi=s.slice,b=s.toString,yt=s.toLocaleString,pt=fi("iterator"),nt=fi("toStringTag"),pi=ui("typed_constructor"),tt=ui("def_constructor"),wi=d.CONSTR,a=d.TYPED,au=d.VIEW,it="Wrong length!",vu=h(1,function(n,t){return ut(ct(n,n[tt]),t)}),bi=f(function(){return new l(new Uint16Array([1]).buffer)[0]===1}),yu=!!l&&!!l[w].set&&f(function(){new l(1).set({})}),rt=function(n,t){var i=or(n);if(i<0||i%t)throw p("Wrong offset!");return i},u=function(n){if(c(n)&&a in n)return n;throw hi(n+" is not a typed array!");},ut=function(n,t){if(!(c(n)&&pi in n))throw hi("It is not a typed array constructor!");return new n(t)},ki=function(n,t){return wt(ct(n,n[tt]),t)},wt=function(n,t){for(var i=0,r=t.length,u=ut(n,r);r>i;)u[i]=t[i++];return u},ft=function(n,t,i){y(n,t,{get:function(){return this._d[i]}})},bt=function(n){var i=ri(n),s=arguments.length,r=s>1?arguments[1]:undefined,h=r!==undefined,u=lr(i),t,f,e,o,c,l;if(u!=undefined&&!sr(u)){for(l=u.call(i),e=[],t=0;!(c=l.next()).done;t++)e.push(c.value);i=e}for(h&&s>2&&(r=fr(r,arguments[2],2)),t=0,f=g(i.length),o=ut(this,f);f>t;t++)o[t]=h?r(i[t],t):i[t];return o},pu=function(){for(var n=0,t=arguments.length,i=ut(this,t);t>n;)i[n]=arguments[n++];return i},wu=!!l&&f(function(){yt.call(new l(1))}),di=function(){return yt.apply(wu?yi.call(u(this)):u(this),arguments)},gi={copyWithin:function(n,t){return wr.call(u(this),n,t,arguments.length>2?arguments[2]:undefined)},every:function(n){return nu(u(this),n,arguments.length>1?arguments[1]:undefined)},fill:function(){return pr.apply(u(this),arguments)},filter:function(n){return ki(this,dr(u(this),n,arguments.length>1?arguments[1]:undefined))},find:function(n){return tu(u(this),n,arguments.length>1?arguments[1]:undefined)},findIndex:function(n){return iu(u(this),n,arguments.length>1?arguments[1]:undefined)},forEach:function(n){ai(u(this),n,arguments.length>1?arguments[1]:undefined)},indexOf:function(n){return uu(u(this),n,arguments.length>1?arguments[1]:undefined)},includes:function(n){return ru(u(this),n,arguments.length>1?arguments[1]:undefined)},join:function(){return vi.apply(u(this),arguments)},lastIndexOf:function(){return su.apply(u(this),arguments)},map:function(n){return vu(u(this),n,arguments.length>1?arguments[1]:undefined)},reduce:function(){return hu.apply(u(this),arguments)},reduceRight:function(){return cu.apply(u(this),arguments)},reverse:function(){for(var n=this,t=u(n).length,f=Math.floor(t/2),i=0,r;i<f;)r=n[i],n[i++]=n[--t],n[t]=r;return n},some:function(n){return gr(u(this),n,arguments.length>1?arguments[1]:undefined)},sort:function(n){return lu.call(u(this),n)},subarray:function(n,t){var i=u(this),r=i.length,f=ni(n,r);return new(ct(i,i[tt]))(i.buffer,i.byteOffset+f*i.BYTES_PER_ELEMENT,g((t===undefined?r:ni(t,r))-f))}},nr=function(n,t){return ki(this,yi.call(u(this),n,t))},tr=function(n){u(this);var i=rt(arguments[1],1),e=this.length,r=ri(n),f=g(r.length),t=0;if(f+i>e)throw p(it);while(t<f)this[i+t]=r[t++]},et={entries:function(){return ou.call(u(this))},keys:function(){return eu.call(u(this))},values:function(){return fu.call(u(this))}},ir=function(n,t){return c(n)&&n[a]&&typeof t!="symbol"&&t in n&&String(+t)==String(t)},rr=function(n,t){return ir(n,t=ti(t,!0))?er(2,n[t]):br(n,t)},ur=function(n,t,i){return ir(n,t=ti(t,!0))&&c(i)&&v(i,"value")&&!v(i,"get")&&!v(i,"set")&&!i.configurable&&(!v(i,"writable")||i.writable)&&(!v(i,"enumerable")||i.enumerable)?(n[t]=i.value,n):y(n,t,i)};wi||(si.f=rr,oi.f=ur);r(r.S+r.F*!wi,"Object",{getOwnPropertyDescriptor:rr,defineProperty:ur});f(function(){b.call({})})&&(b=yt=function(){return vi.call(this)});o=st({},gi);st(o,et);e(o,pt,et.values);st(o,{slice:nr,set:tr,constructor:function(){},toString:b,toLocaleString:di});ft(o,"buffer","b");ft(o,"byteOffset","o");ft(o,"byteLength","l");ft(o,"length","e");y(o,nt,{get:function(){return this[a]}});n.exports=function(n,t,i,u){u=!!u;var h=n+(u?"Clamped":"")+"Array",yt="get"+n,kt="set"+n,s=k[h],v=s||{},st=s&&cr(s),ni=!s||!d.ABV,ct={},l=s&&s[w],ti=function(n,i){var r=n._d;return r.v[yt](i*t+r.o,bi)},ri=function(n,i,r){var f=n._d;u&&(r=(r=Math.round(r))<0?0:r>255?255:r&255);f.v[kt](i*t+f.o,r,bi)},ui=function(n,t){y(n,t,{get:function(){return ti(this,t)},set:function(n){return ri(this,t,n)},enumerable:!0})};ni?(s=i(function(n,i,r,u){var w,o,v,f,l,b,y;if(dt(n,s,h,"_d"),w=0,o=0,c(i))if(i instanceof vt||(b=ii(i))==at||b==ci){if(v=i,o=rt(r,t),y=i.byteLength,u===undefined){if(y%t)throw p(it);if(f=y-o,f<0)throw p(it);}else if(f=g(u)*t,f+o>y)throw p(it);l=f/t}else return a in i?wt(s,i):bt.call(s,i);else l=gt(i),f=l*t,v=new vt(f);for(e(n,"_d",{b:v,o:o,l:f,e:l,v:new kr(v)});w<l;)ui(n,w++)}),l=s[w]=hr(o),e(l,"constructor",s)):f(function(){s(1)})&&f(function(){new s(-1)})&&vr(function(n){new s;new s(null);new s(1.5);new s(n)},!0)||(s=i(function(n,i,r,u){dt(n,s,h);var f;return c(i)?i instanceof vt||(f=ii(i))==at||f==ci?u!==undefined?new v(i,rt(r,t),u):r!==undefined?new v(i,rt(r,t)):new v(i):a in i?wt(s,i):bt.call(s,i):new v(gt(i))}),ai(st!==Function.prototype?ht(v).concat(ht(st)):ht(v),function(n){n in s||e(s,n,v[n])}),s[w]=l,ot||(l.constructor=s));var ut=l[pt],ft=!!ut&&(ut.name=="values"||ut.name==undefined),lt=et.values;e(s,pi,!0);e(l,a,h);e(l,au,!0);e(l,tt,s);(u?new s(1)[nt]==h:nt in l)||y(l,nt,{get:function(){return h}});ct[h]=s;r(r.G+r.W+r.F*(s!=v),ct);r(r.S,h,{BYTES_PER_ELEMENT:t});r(r.S+r.F*f(function(){v.of.call(s,1)}),h,{from:bt,of:pu});li in l||e(l,li,t);r(r.P,h,gi);yr(h);r(r.P+r.F*yu,h,{set:tr});r(r.P+r.F*!ft,h,et);ot||l.toString==b||(l.toString=b);r(r.P+r.F*f(function(){new s(1).slice()}),h,{slice:nr});r(r.P+r.F*(f(function(){return[1,2].toLocaleString()!=new s([1,2]).toLocaleString()})||!f(function(){l.toLocaleString.call([1,2])})),h,{toLocaleString:di});ar[h]=ft?ut:lt;ot||ft||e(l,pt,lt)}}else n.exports=function(){}},function(n,t,i){i(229)("Uint8",1,function(n){return function(t,i,r){return n(this,t,i,r)}})},function(n,t,i){i(229)("Uint8",1,function(n){return function(t,i,r){return n(this,t,i,r)}},!0)},function(n,t,i){i(229)("Int16",2,function(n){return function(t,i,r){return n(this,t,i,r)}})},function(n,t,i){i(229)("Uint16",2,function(n){return function(t,i,r){return n(this,t,i,r)}})},function(n,t,i){i(229)("Int32",4,function(n){return function(t,i,r){return n(this,t,i,r)}})},function(n,t,i){i(229)("Uint32",4,function(n){return function(t,i,r){return n(this,t,i,r)}})},function(n,t,i){i(229)("Float32",4,function(n){return function(t,i,r){return n(this,t,i,r)}})},function(n,t,i){i(229)("Float64",8,function(n){return function(t,i,r){return n(this,t,i,r)}})},function(n,t,i){var r=i(8),f=i(21),e=i(12),u=(i(4).Reflect||{}).apply,o=Function.apply;r(r.S+r.F*!i(7)(function(){u(function(){})}),"Reflect",{apply:function(n,t,i){var r=f(n),s=e(i);return u?u(r,t,s):o.call(r,t,s)}})},function(n,t,i){var r=i(8),c=i(45),f=i(21),l=i(12),e=i(13),o=i(7),a=i(76),u=(i(4).Reflect||{}).construct,s=o(function(){function n(){}return!(u(function(){},[],n)instanceof n)}),h=!o(function(){u(function(){})});r(r.S+r.F*(s||h),"Reflect",{construct:function(n,t){var i,r;if(f(n),l(t),i=arguments.length<3?n:f(arguments[2]),h&&!s)return u(n,t,i);if(n==i){switch(t.length){case 0:return new n;case 1:return new n(t[0]);case 2:return new n(t[0],t[1]);case 3:return new n(t[0],t[1],t[2]);case 4:return new n(t[0],t[1],t[2],t[3])}return r=[null],r.push.apply(r,t),new(a.apply(n,r))}var o=i.prototype,v=c(e(o)?o:Object.prototype),y=Function.apply.call(n,v,t);return e(y)?y:v}})},function(n,t,i){var u=i(11),r=i(8),f=i(12),e=i(16);r(r.S+r.F*i(7)(function(){Reflect.defineProperty(u.f({},1,{value:1}),1,{value:2})}),"Reflect",{defineProperty:function(n,t,i){f(n);t=e(t,!0);f(i);try{return u.f(n,t,i),!0}catch(r){return!1}}})},function(n,t,i){var r=i(8),u=i(50).f,f=i(12);r(r.S,"Reflect",{deleteProperty:function(n,t){var i=u(f(n),t);return i&&!i.configurable?!1:delete n[t]}})},function(n,t,i){"use strict";var r=i(8),f=i(12),u=function(n){this._t=f(n);this._i=0;var i=this._k=[],t;for(t in n)i.push(t)};i(130)(u,"Object",function(){var n=this,t=n._k,i;do if(n._i>=t.length)return{value:undefined,done:!0};while(!((i=t[n._i++])in n._t));return{value:i,done:!1}});r(r.S,"Reflect",{enumerate:function(n){return new u(n)}})},function(n,t,i){function u(n,t){var r=arguments.length<3?n:arguments[2],i,c;return h(n)===r?n[t]:(i=f.f(n,t))?o(i,"value")?i.value:i.get!==undefined?i.get.call(r):undefined:s(c=e(n))?u(c,t,r):void 0}var f=i(50),e=i(58),o=i(5),r=i(8),s=i(13),h=i(12);r(r.S,"Reflect",{get:u})},function(n,t,i){var u=i(50),r=i(8),f=i(12);r(r.S,"Reflect",{getOwnPropertyDescriptor:function(n,t){return u.f(f(n),t)}})},function(n,t,i){var r=i(8),u=i(58),f=i(12);r(r.S,"Reflect",{getPrototypeOf:function(n){return u(f(n))}})},function(n,t,i){var r=i(8);r(r.S,"Reflect",{has:function(n,t){return t in n}})},function(n,t,i){var r=i(8),f=i(12),u=Object.isExtensible;r(r.S,"Reflect",{isExtensible:function(n){return f(n),u?u(n):!0}})},function(n,t,i){var r=i(8);r(r.S,"Reflect",{ownKeys:i(249)})},function(n,t,i){var u=i(49),f=i(42),e=i(12),r=i(4).Reflect;n.exports=r&&r.ownKeys||function(n){var t=u.f(e(n)),i=f.f;return i?t.concat(i(n)):t}},function(n,t,i){var r=i(8),f=i(12),u=Object.preventExtensions;r(r.S,"Reflect",{preventExtensions:function(n){f(n);try{return u&&u(n),!0}catch(t){return!1}}})},function(n,t,i){function o(n,t,i){var a=arguments.length<4?n:arguments[3],u=r.f(l(n),t),v,y;if(!u){if(e(y=h(n)))return o(y,t,i,a);u=f(0)}return c(u,"value")?u.writable===!1||!e(a)?!1:(v=r.f(a,t)||f(0),v.value=i,s.f(a,t,v),!0):u.set===undefined?!1:(u.set.call(a,i),!0)}var s=i(11),r=i(50),h=i(58),c=i(5),u=i(8),f=i(17),l=i(12),e=i(13);u(u.S,"Reflect",{set:o})},function(n,t,i){var u=i(8),r=i(72);r&&u(u.S,"Reflect",{setPrototypeOf:function(n,t){r.check(n,t);try{return r.set(n,t),!0}catch(i){return!1}}})},function(n,t,i){"use strict";var r=i(8),u=i(36)(!0);r(r.P,"Array",{includes:function(n){return u(this,n,arguments.length>1?arguments[1]:undefined)}});i(187)("includes")},function(n,t,i){"use strict";var r=i(8),u=i(255),f=i(57),e=i(37),o=i(21),s=i(174);r(r.P,"Array",{flatMap:function(n){var t=f(this),r,i;return o(n),r=e(t.length),i=s(t,0),u(i,t,t,r,0,1,n,arguments[1]),i}});i(187)("flatMap")},function(n,t,i){"use strict";function r(n,t,i,h,c,l,a,v){for(var p=c,w=0,k=a?o(a,v,3):!1,y,b;w<h;){if(w in i){if(y=k?k(i[w],w,t):i[w],b=!1,f(y)&&(b=y[s],b=b!==undefined?!!b:u(y)),b&&l>0)p=r(n,t,y,e(y.length),p,l-1)-1;else{if(p>=9007199254740991)throw TypeError();n[p]=y}p++}w++}return p}var u=i(44),f=i(13),e=i(37),o=i(20),s=i(25)("isConcatSpreadable");n.exports=r},function(n,t,i){"use strict";var r=i(8),u=i(255),f=i(57),e=i(37),o=i(38),s=i(174);r(r.P,"Array",{flatten:function(){var t=arguments[0],n=f(this),r=e(n.length),i=s(n,0);return u(i,n,n,r,0,t===undefined?1:o(t)),i}});i(187)("flatten")},function(n,t,i){"use strict";var r=i(8),u=i(127)(!0);r(r.P,"String",{at:function(n){return u(this,n)}})},function(n,t,i){"use strict";var r=i(8),u=i(259);r(r.P,"String",{padStart:function(n){return u(this,n,arguments.length>1?arguments[1]:undefined,!0)}})},function(n,t,i){var r=i(37),u=i(90),f=i(35);n.exports=function(n,t,i,e){var s=String(f(n)),l=s.length,c=i===undefined?" ":String(i),a=r(t),h,o;return a<=l||c==""?s:(h=a-l,o=u.call(c,Math.ceil(h/c.length)),o.length>h&&(o=o.slice(0,h)),e?o+s:s+o)}},function(n,t,i){"use strict";var r=i(8),u=i(259);r(r.P,"String",{padEnd:function(n){return u(this,n,arguments.length>1?arguments[1]:undefined,!1)}})},function(n,t,i){"use strict";i(82)("trimLeft",function(n){return function(){return n(this,1)}},"trimStart")},function(n,t,i){"use strict";i(82)("trimRight",function(n){return function(){return n(this,2)}},"trimEnd")},function(n,t,i){"use strict";var r=i(8),f=i(35),e=i(37),o=i(134),s=i(197),h=RegExp.prototype,u=function(n,t){this._r=n;this._s=t};i(130)(u,"RegExp String",function(){var n=this._r.exec(this._s);return{value:n,done:n===null}});r(r.P,"String",{matchAll:function(n){if(f(this),!o(n))throw TypeError(n+" is not a regexp!");var r=String(this),t="flags"in h?String(n.flags):s.call(n),i=new RegExp(n.source,~t.indexOf("g")?t:"g"+t);return i.lastIndex=e(n.lastIndex),new u(i,r)}})},function(n,t,i){i(27)("asyncIterator")},function(n,t,i){i(27)("observable")},function(n,t,i){var r=i(8),u=i(249),f=i(32),e=i(50),o=i(164);r(r.S,"Object",{getOwnPropertyDescriptors:function(n){for(var i=f(n),l=e.f,r=u(i),s={},h=0,c,t;r.length>h;)t=l(i,c=r[h++]),t!==undefined&&o(s,c,t);return s}})},function(n,t,i){var r=i(8),u=i(268)(!1);r(r.S,"Object",{values:function(n){return u(n)}})},function(n,t,i){var r=i(30),u=i(32),f=i(43).f;n.exports=function(n){return function(t){for(var i=u(t),o=r(i),c=o.length,s=0,h=[],e;c>s;)f.call(i,e=o[s++])&&h.push(n?[e,i[e]]:i[e]);return h}}},function(n,t,i){var r=i(8),u=i(268)(!0);r(r.S,"Object",{entries:function(n){return u(n)}})},function(n,t,i){"use strict";var r=i(8),u=i(57),f=i(21),e=i(11);i(6)&&r(r.P+i(271),"Object",{__defineGetter__:function(n,t){e.f(u(this),n,{get:f(t),enumerable:!0,configurable:!0})}})},function(n,t,i){"use strict";n.exports=i(28)||!i(7)(function(){var n=Math.random();__defineSetter__.call(null,n,function(){});delete i(4)[n]})},function(n,t,i){"use strict";var r=i(8),u=i(57),f=i(21),e=i(11);i(6)&&r(r.P+i(271),"Object",{__defineSetter__:function(n,t){e.f(u(this),n,{set:f(t),enumerable:!0,configurable:!0})}})},function(n,t,i){"use strict";var r=i(8),u=i(57),f=i(16),e=i(58),o=i(50).f;i(6)&&r(r.P+i(271),"Object",{__lookupGetter__:function(n){var t=u(this),r=f(n,!0),i;do if(i=o(t,r))return i.get;while(t=e(t))}})},function(n,t,i){"use strict";var r=i(8),u=i(57),f=i(16),e=i(58),o=i(50).f;i(6)&&r(r.P+i(271),"Object",{__lookupSetter__:function(n){var t=u(this),r=f(n,!0),i;do if(i=o(t,r))return i.set;while(t=e(t))}})},function(n,t,i){var r=i(8);r(r.P+r.R,"Map",{toJSON:i(276)("Map")})},function(n,t,i){var r=i(74),u=i(277);n.exports=function(n){return function(){if(r(this)!=n)throw TypeError(n+"#toJSON isn't generic");return u(this)}}},function(n,t,i){var r=i(207);n.exports=function(n,t){var i=[];return r(n,!1,i.push,i,t),i}},function(n,t,i){var r=i(8);r(r.P+r.R,"Set",{toJSON:i(276)("Set")})},function(n,t,i){i(280)("Map")},function(n,t,i){"use strict";var r=i(8);n.exports=function(n){r(r.S,n,{of:function(){for(var n=arguments.length,t=Array(n);n--;)t[n]=arguments[n];return new this(t)}})}},function(n,t,i){i(280)("Set")},function(n,t,i){i(280)("WeakMap")},function(n,t,i){i(280)("WeakSet")},function(n,t,i){i(285)("Map")},function(n,t,i){"use strict";var r=i(8),u=i(21),e=i(20),f=i(207);n.exports=function(n){r(r.S,n,{from:function(n){var i=arguments[1],r,t,o,s;return(u(this),r=i!==undefined,r&&u(i),n==undefined)?new this:(t=[],r?(o=0,s=e(i,arguments[2],2),f(n,!1,function(n){t.push(s(n,o++))})):f(n,!1,t.push,t),new this(t))}})}},function(n,t,i){i(285)("Set")},function(n,t,i){i(285)("WeakMap")},function(n,t,i){i(285)("WeakSet")},function(n,t,i){var r=i(8);r(r.G,{global:i(4)})},function(n,t,i){var r=i(8);r(r.S,"System",{global:i(4)})},function(n,t,i){var r=i(8),u=i(34);r(r.S,"Error",{isError:function(n){return u(n)==="Error"}})},function(n,t,i){var r=i(8);r(r.S,"Math",{clamp:function(n,t,i){return Math.min(i,Math.max(t,n))}})},function(n,t,i){var r=i(8);r(r.S,"Math",{DEG_PER_RAD:Math.PI/180})},function(n,t,i){var r=i(8),u=180/Math.PI;r(r.S,"Math",{degrees:function(n){return n*u}})},function(n,t,i){var r=i(8),u=i(296),f=i(113);r(r.S,"Math",{fscale:function(n,t,i,r,e){return f(u(n,t,i,r,e))}})},function(n){n.exports=Math.scale||function(n,t,i,r,u){return arguments.length===0||n!=n||t!=t||i!=i||r!=r||u!=u?NaN:n===Infinity||n===-Infinity?n:(n-t)*(u-r)/(i-t)+r}},function(n,t,i){var r=i(8);r(r.S,"Math",{iaddh:function(n,t,i,r){var u=n>>>0,e=t>>>0,f=i>>>0;return e+(r>>>0)+((u&f|(u|f)&~(u+f>>>0))>>>31)|0}})},function(n,t,i){var r=i(8);r(r.S,"Math",{isubh:function(n,t,i,r){var u=n>>>0,e=t>>>0,f=i>>>0;return e-(r>>>0)-((~u&f|~(u^f)&u-f>>>0)>>>31)|0}})},function(n,t,i){var r=i(8);r(r.S,"Math",{imulh:function(n,t){var i=65535,r=+n,u=+t,f=r&i,e=u&i,o=r>>16,s=u>>16,h=(o*e>>>0)+(f*e>>>16);return o*s+(h>>16)+((f*s>>>0)+(h&i)>>16)}})},function(n,t,i){var r=i(8);r(r.S,"Math",{RAD_PER_DEG:180/Math.PI})},function(n,t,i){var r=i(8),u=Math.PI/180;r(r.S,"Math",{radians:function(n){return n*u}})},function(n,t,i){var r=i(8);r(r.S,"Math",{scale:i(296)})},function(n,t,i){var r=i(8);r(r.S,"Math",{umulh:function(n,t){var i=65535,r=+n,u=+t,f=r&i,e=u&i,o=r>>>16,s=u>>>16,h=(o*e>>>0)+(f*e>>>16);return o*s+(h>>>16)+((f*s>>>0)+(h&i)>>>16)}})},function(n,t,i){var r=i(8);r(r.S,"Math",{signbit:function(n){return(n=+n)!=n?n:n==0?1/n==Infinity:n>0}})},function(n,t,i){"use strict";var r=i(8),f=i(9),e=i(4),o=i(208),u=i(213);r(r.P+r.R,"Promise",{"finally":function(n){var t=o(this,f.Promise||e.Promise),i=typeof n=="function";return this.then(i?function(i){return u(t,n()).then(function(){return i})}:n,i?function(i){return u(t,n()).then(function(){throw i;})}:n)}})},function(n,t,i){"use strict";var r=i(8),u=i(211),f=i(212);r(r.S,"Promise",{"try":function(n){var t=u.f(this),i=f(n);return(i.e?t.reject:t.resolve)(i.v),t.promise}})},function(n,t,i){var r=i(308),u=i(12),f=r.key,e=r.set;r.exp({defineMetadata:function(n,t,i,r){e(n,t,u(i),f(r))}})},function(n,t,i){var f=i(215),e=i(8),o=i(23)("metadata"),u=o.store||(o.store=new(i(220))),r=function(n,t,i){var r=u.get(n),e;if(!r){if(!i)return undefined;u.set(n,r=new f)}if(e=r.get(t),!e){if(!i)return undefined;r.set(t,e=new f)}return e},s=function(n,t,i){var u=r(t,i,!1);return u===undefined?!1:u.has(n)},h=function(n,t,i){var u=r(t,i,!1);return u===undefined?undefined:u.get(n)},c=function(n,t,i,u){r(i,u,!0).set(n,t)},l=function(n,t){var i=r(n,t,!1),u=[];return i&&i.forEach(function(n,t){u.push(t)}),u},a=function(n){return n===undefined||typeof n=="symbol"?n:String(n)},v=function(n){e(e.S,"Reflect",n)};n.exports={store:u,map:r,has:s,get:h,set:c,keys:l,key:a,exp:v}},function(n,t,i){var r=i(308),f=i(12),e=r.key,o=r.map,u=r.store;r.exp({deleteMetadata:function(n,t){var s=arguments.length<3?undefined:e(arguments[2]),i=o(f(t),s,!1),r;return i===undefined||!i["delete"](n)?!1:i.size?!0:(r=u.get(t),r["delete"](s),!!r.size||u["delete"](t))}})},function(n,t,i){var r=i(308),f=i(12),e=i(58),o=r.has,s=r.get,h=r.key,u=function(n,t,i){var f=o(n,t,i),r;return f?s(n,t,i):(r=e(t),r!==null?u(n,r,i):undefined)};r.exp({getMetadata:function(n,t){return u(n,f(t),arguments.length<3?undefined:h(arguments[2]))}})},function(n,t,i){var f=i(219),e=i(277),r=i(308),o=i(12),s=i(58),h=r.keys,c=r.key,u=function(n,t){var i=h(n,t),o=s(n),r;return o===null?i:(r=u(o,t),r.length?i.length?e(new f(i.concat(r))):r:i)};r.exp({getMetadataKeys:function(n){return u(o(n),arguments.length<2?undefined:c(arguments[1]))}})},function(n,t,i){var r=i(308),u=i(12),f=r.get,e=r.key;r.exp({getOwnMetadata:function(n,t){return f(n,u(t),arguments.length<3?undefined:e(arguments[2]))}})},function(n,t,i){var r=i(308),u=i(12),f=r.keys,e=r.key;r.exp({getOwnMetadataKeys:function(n){return f(u(n),arguments.length<2?undefined:e(arguments[1]))}})},function(n,t,i){var r=i(308),f=i(12),e=i(58),o=r.has,s=r.key,u=function(n,t,i){var f=o(n,t,i),r;return f?!0:(r=e(t),r!==null?u(n,r,i):!1)};r.exp({hasMetadata:function(n,t){return u(n,f(t),arguments.length<3?undefined:s(arguments[2]))}})},function(n,t,i){var r=i(308),u=i(12),f=r.has,e=r.key;r.exp({hasOwnMetadata:function(n,t){return f(n,u(t),arguments.length<3?undefined:e(arguments[2]))}})},function(n,t,i){var r=i(308),u=i(12),f=i(21),e=r.key,o=r.set;r.exp({metadata:function(n,t){return function(i,r){o(n,t,(r!==undefined?u:f)(i),e(r))}}})},function(n,t,i){var r=i(8),f=i(210)(),u=i(4).process,e=i(34)(u)=="process";r(r.G,{asap:function(n){var t=e&&u.domain;f(t?t.bind(n):n)}})},function(n,t,i){"use strict";var l=i(8),k=i(4),d=i(9),a=i(210)(),v=i(25)("observable"),e=i(21),h=i(12),g=i(206),o=i(214),nt=i(10),y=i(207),p=y.RETURN,s=function(n){return n==null?undefined:e(n)},u=function(n){var t=n._c;t&&(n._c=undefined,t())},f=function(n){return n._o===undefined},w=function(n){f(n)||(n._o=undefined,u(n))},b=function(n,t){h(n);this._c=undefined;this._o=n;n=new c(this);try{var i=t(n),r=i;i!=null&&(typeof i.unsubscribe=="function"?i=function(){r.unsubscribe()}:e(i),this._c=i)}catch(o){n.error(o);return}f(this)&&u(this)},c,r;b.prototype=o({},{unsubscribe:function(){w(this)}});c=function(n){this._s=n};c.prototype=o({},{next:function(n){var t=this._s,i,r;if(!f(t)){i=t._o;try{if(r=s(i.next),r)return r.call(i,n)}catch(u){try{w(t)}finally{throw u;}}}},error:function(n){var t=this._s,i,r;if(f(t))throw n;i=t._o;t._o=undefined;try{if(r=s(i.error),!r)throw n;n=r.call(i,n)}catch(e){try{u(t)}finally{throw e;}}return u(t),n},complete:function(n){var t=this._s,i,r;if(!f(t)){i=t._o;t._o=undefined;try{r=s(i.complete);n=r?r.call(i,n):undefined}catch(e){try{u(t)}finally{throw e;}}return u(t),n}}});r=function(n){g(this,r,"Observable","_f")._f=e(n)};o(r.prototype,{subscribe:function(n){return new b(n,this._f)},forEach:function(n){var t=this;return new(d.Promise||k.Promise)(function(i,r){e(n);var u=t.subscribe({next:function(t){try{return n(t)}catch(i){r(i);u.unsubscribe()}},error:r,complete:i})})}});o(r,{from:function(n){var i=typeof this=="function"?this:r,u=s(h(n)[v]),t;return u?(t=h(u.call(n)),t.constructor===i?t:new i(function(n){return t.subscribe(n)})):new i(function(t){var i=!1;return a(function(){if(!i){try{if(y(n,!1,function(n){return t.next(n),i?p:void 0})===p)return}catch(r){if(i)throw r;t.error(r);return}t.complete()}}),function(){i=!0}})},of:function(){for(var n=0,i=arguments.length,t=Array(i);n<i;)t[n]=arguments[n++];return new(typeof this=="function"?this:r)(function(n){var i=!1;return a(function(){if(!i){for(var r=0;r<t.length;++r)if(n.next(t[r]),i)return;n.complete()}}),function(){i=!0}})}});nt(r.prototype,v,function(){return this});l(l.G,{Observable:r});i(193)("Observable")},function(n,t,i){var u=i(4),r=i(8),f=u.navigator,o=[].slice,s=!!f&&/MSIE .\./.test(f.userAgent),e=function(n){return function(t,i){var r=arguments.length>2,u=r?o.call(arguments,2):!1;return n(r?function(){(typeof t=="function"?t:Function(t)).apply(this,u)}:t,i)}};r(r.G+r.B+r.F*s,{setTimeout:e(u.setTimeout),setInterval:e(u.setInterval)})},function(n,t,i){var r=i(8),u=i(209);r(r.G+r.B,{setImmediate:u.set,clearImmediate:u.clear})},function(n,t,i){for(var s=i(194),b=i(30),k=i(18),d=i(4),h=i(10),c=i(129),l=i(25),a=l("iterator"),v=l("toStringTag"),y=c.Array,p={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},o=b(p),u=0;u<o.length;u++){var f=o[u],g=p[f],w=d[f],r=w&&w.prototype,e;if(r&&(r[a]||h(r,a,y),r[v]||h(r,v,f),c[f]=y,g))for(e in s)r[e]||k(r,e,s[e],!0)}},function(n,t){(function(t){!function(t){"use strict";function rt(n,t,i,r){var f=t&&t.prototype instanceof k?t:k,u=Object.create(f.prototype),e=new g(r||[]);return u._invoke=lt(n,i,e),u}function b(n,t,i){try{return{type:"normal",arg:n.call(t,i)}}catch(r){return{type:"throw",arg:r}}}function k(){}function a(){}function o(){}function et(n){["next","throw","return"].forEach(function(t){n[t]=function(n){return this._invoke(t,n)}})}function p(n){function i(t,r,u,e){var h=b(n[t],n,r),s,o;if(h.type==="throw")e(h.arg);else return(s=h.arg,o=s.value,o&&typeof o=="object"&&f.call(o,"__await"))?Promise.resolve(o.__await).then(function(n){i("next",n,u,e)},function(n){i("throw",n,u,e)}):Promise.resolve(o).then(function(n){s.value=n;u(s)},e)}function u(n,t){function u(){return new Promise(function(r,u){i(n,t,r,u)})}return r=r?r.then(u,u):u()}typeof t.process=="object"&&t.process.domain&&(i=t.process.domain.bind(i));var r;this._invoke=u}function lt(n,t,i){var u=ut;return function(f,e){var h,s,o;if(u===ft)throw new Error("Generator is already running");if(u===l){if(f==="throw")throw e;return st()}for(i.method=f,i.arg=e;;){if(h=i.delegate,h&&(s=ot(h,i),s)){if(s===r)continue;return s}if(i.method==="next")i.sent=i._sent=i.arg;else if(i.method==="throw"){if(u===ut){u=l;throw i.arg;}i.dispatchException(i.arg)}else i.method==="return"&&i.abrupt("return",i.arg);if(u=ft,o=b(n,t,i),o.type==="normal"){if(u=i.done?l:ct,o.arg===r)continue;return{value:o.arg,done:i.done}}o.type==="throw"&&(u=l,i.method="throw",i.arg=o.arg)}}}function ot(n,t){var e=n.iterator[t.method],f,i;if(e===u){if(t.delegate=null,t.method==="throw"){if(n.iterator.return&&(t.method="return",t.arg=u,ot(n,t),t.method==="throw"))return r;t.method="throw";t.arg=new TypeError("The iterator does not provide a 'throw' method")}return r}if(f=b(e,n.iterator,t.arg),f.type==="throw")return t.method="throw",t.arg=f.arg,t.delegate=null,r;if(i=f.arg,!i)return t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,r;if(i.done)t[n.resultName]=i.value,t.next=n.nextLoc,t.method!=="return"&&(t.method="next",t.arg=u);else return i;return t.delegate=null,r}function at(n){var t={tryLoc:n[0]};1 in n&&(t.catchLoc=n[1]);2 in n&&(t.finallyLoc=n[2],t.afterLoc=n[3]);this.tryEntries.push(t)}function d(n){var t=n.completion||{};t.type="normal";delete t.arg;n.completion=t}function g(n){this.tryEntries=[{tryLoc:"root"}];n.forEach(at,this);this.reset(!0)}function nt(n){var r,i,t;if(n){if(r=n[h],r)return r.call(n);if(typeof n.next=="function")return n;if(!isNaN(n.length))return i=-1,t=function t(){while(++i<n.length)if(f.call(n,i))return t.value=n[i],t.done=!1,t;return t.value=u,t.done=!0,t},t.next=t}return{next:st}}function st(){return{value:u,done:!0}}var tt=Object.prototype,f=tt.hasOwnProperty,u,w=typeof Symbol=="function"?Symbol:{},h=w.iterator||"@@iterator",ht=w.asyncIterator||"@@asyncIterator",c=w.toStringTag||"@@toStringTag",it=typeof n=="object",i=t.regeneratorRuntime,v,y,s,e;if(i){it&&(n.exports=i);return}i=t.regeneratorRuntime=it?n.exports:{};i.wrap=rt;var ut="suspendedStart",ct="suspendedYield",ft="executing",l="completed",r={};v={};v[h]=function(){return this};y=Object.getPrototypeOf;s=y&&y(y(nt([])));s&&s!==tt&&f.call(s,h)&&(v=s);e=o.prototype=k.prototype=Object.create(v);a.prototype=e.constructor=o;o.constructor=a;o[c]=a.displayName="GeneratorFunction";i.isGeneratorFunction=function(n){var t=typeof n=="function"&&n.constructor;return t?t===a||(t.displayName||t.name)==="GeneratorFunction":!1};i.mark=function(n){return Object.setPrototypeOf?Object.setPrototypeOf(n,o):(n.__proto__=o,c in n||(n[c]="GeneratorFunction")),n.prototype=Object.create(e),n};i.awrap=function(n){return{__await:n}};et(p.prototype);p.prototype[ht]=function(){return this};i.AsyncIterator=p;i.async=function(n,t,r,u){var f=new p(rt(n,t,r,u));return i.isGeneratorFunction(t)?f:f.next().then(function(n){return n.done?n.value:f.next()})};et(e);e[c]="Generator";e[h]=function(){return this};e.toString=function(){return"[object Generator]"};i.keys=function(n){var i=[],r;for(r in n)i.push(r);return i.reverse(),function t(){while(i.length){var r=i.pop();if(r in n)return t.value=r,t.done=!1,t}return t.done=!0,t}};i.values=nt;g.prototype={constructor:g,reset:function(n){if(this.prev=0,this.next=0,this.sent=this._sent=u,this.done=!1,this.delegate=null,this.method="next",this.arg=u,this.tryEntries.forEach(d),!n)for(var t in this)t.charAt(0)==="t"&&f.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=u)},stop:function(){this.done=!0;var t=this.tryEntries[0],n=t.completion;if(n.type==="throw")throw n.arg;return this.rval},dispatchException:function(n){function i(t,i){return o.type="throw",o.arg=n,r.next=t,i&&(r.method="next",r.arg=u),!!i}var r,e,t,o,s,h;if(this.done)throw n;for(r=this,e=this.tryEntries.length-1;e>=0;--e){if(t=this.tryEntries[e],o=t.completion,t.tryLoc==="root")return i("end");if(t.tryLoc<=this.prev)if(s=f.call(t,"catchLoc"),h=f.call(t,"finallyLoc"),s&&h){if(this.prev<t.catchLoc)return i(t.catchLoc,!0);if(this.prev<t.finallyLoc)return i(t.finallyLoc)}else if(s){if(this.prev<t.catchLoc)return i(t.catchLoc,!0)}else if(h){if(this.prev<t.finallyLoc)return i(t.finallyLoc)}else throw new Error("try statement without catch or finally");}},abrupt:function(n,t){for(var u,i,o,e=this.tryEntries.length-1;e>=0;--e)if(u=this.tryEntries[e],u.tryLoc<=this.prev&&f.call(u,"finallyLoc")&&this.prev<u.finallyLoc){i=u;break}return(i&&(n==="break"||n==="continue")&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null),o=i?i.completion:{},o.type=n,o.arg=t,i)?(this.method="next",this.next=i.finallyLoc,r):this.complete(o)},complete:function(n,t){if(n.type==="throw")throw n.arg;return n.type==="break"||n.type==="continue"?this.next=n.arg:n.type==="return"?(this.rval=this.arg=n.arg,this.method="return",this.next="end"):n.type==="normal"&&t&&(this.next=t),r},finish:function(n){for(var t,i=this.tryEntries.length-1;i>=0;--i)if(t=this.tryEntries[i],t.finallyLoc===n)return this.complete(t.completion,t.afterLoc),d(t),r},"catch":function(n){for(var i,r,u,t=this.tryEntries.length-1;t>=0;--t)if(i=this.tryEntries[t],i.tryLoc===n)return r=i.completion,r.type==="throw"&&(u=r.arg,d(i)),u;throw new Error("illegal catch attempt");},delegateYield:function(n,t,i){return this.delegate={iterator:nt(n),resultName:t,nextLoc:i},this.method==="next"&&(this.arg=u),r}}}(typeof t=="object"?t:typeof window=="object"?window:typeof self=="object"?self:this)}).call(t,function(){return this}())},function(n,t,i){i(324);n.exports=i(9).RegExp.escape},function(n,t,i){var r=i(8),u=i(325)(/[\\^$*+?.()|[\]{}]/g,"\\$&");r(r.S,"RegExp",{escape:function(n){return u(n)}})},function(n){n.exports=function(n,t){var i=t===Object(t)?function(n){return t[n]}:t;return function(t){return String(t).replace(n,i)}}},function(n,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.Log=i(327),u=t.OidcClient=i(328),f=t.OidcClientSettings=i(329),e=t.WebStorageStateStore=i(330),o=t.InMemoryWebStorage=i(352),s=t.UserManager=i(353),h=t.AccessTokenEvents=i(362),c=t.MetadataService=i(333),l=t.CordovaPopupNavigator=i(369),a=t.CordovaIFrameNavigator=i(371),v=t.CheckSessionIFrame=i(367),y=t.TokenRevocationClient=i(368),p=t.SessionMonitor=i(366),w=t.Global=i(331);t.default={Log:r,OidcClient:u,OidcClientSettings:f,WebStorageStateStore:e,InMemoryWebStorage:o,UserManager:s,AccessTokenEvents:h,MetadataService:c,CordovaPopupNavigator:l,CordovaIFrameNavigator:a,CheckSessionIFrame:v,TokenRevocationClient:y,SessionMonitor:p,Global:w}},function(n,t){"use strict";function l(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var e;Object.defineProperty(t,"__esModule",{value:!0});e=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}();var a={debug:function(){},info:function(){},warn:function(){},error:function(){}},o=0,s=1,h=2,u=3,f=4,i=void 0,r=void 0,c=function(){function n(){l(this,n)}return n.reset=function(){r=u;i=a},n.debug=function(){if(r>=f){for(var t=arguments.length,u=Array(t),n=0;n<t;n++)u[n]=arguments[n];i.debug.apply(i,Array.from(u))}},n.info=function(){if(r>=u){for(var t=arguments.length,f=Array(t),n=0;n<t;n++)f[n]=arguments[n];i.info.apply(i,Array.from(f))}},n.warn=function(){if(r>=h){for(var t=arguments.length,u=Array(t),n=0;n<t;n++)u[n]=arguments[n];i.warn.apply(i,Array.from(u))}},n.error=function(){if(r>=s){for(var t=arguments.length,u=Array(t),n=0;n<t;n++)u[n]=arguments[n];i.error.apply(i,Array.from(u))}},e(n,null,[{key:"NONE",get:function(){return o}},{key:"ERROR",get:function(){return s}},{key:"WARN",get:function(){return h}},{key:"INFO",get:function(){return u}},{key:"DEBUG",get:function(){return f}},{key:"level",get:function(){return r},set:function(n){if(o<=n&&n<=f)r=n;else throw new Error("Invalid log level");}},{key:"logger",get:function(){return i},set:function(n){if(!n.debug&&n.info&&(n.debug=n.info),n.debug&&n.info&&n.warn&&n.error)i=n;else throw new Error("Invalid logger");}}]),n}();t.default=c;c.reset();n.exports=t["default"]},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}function rt(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var o;Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),h=i(327),r=u(h),c=i(329),f=u(c),l=i(336),a=u(l),v=i(344),y=u(v),p=i(349),w=u(p),b=i(350),k=u(b),d=i(351),g=u(d),nt=i(346),tt=u(nt),it=i(347),e=u(it);o=function(){function n(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};rt(this,n);this._settings=t instanceof f.default?t:new f.default(t)}return n.prototype.createSigninRequest=function(){var w=this,n=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},t=n.response_type,i=n.scope,u=n.redirect_uri,b=n.data,k=n.state,f=n.prompt,e=n.display,o=n.max_age,s=n.ui_locales,d=n.id_token_hint,g=n.login_hint,h=n.acr_values,c=n.resource,nt=n.request,tt=n.request_uri,l=n.extraQueryParams,a=arguments[1],v,p;return r.default.debug("OidcClient.createSigninRequest"),v=this._settings.client_id,t=t||this._settings.response_type,i=i||this._settings.scope,u=u||this._settings.redirect_uri,f=f||this._settings.prompt,e=e||this._settings.display,o=o||this._settings.max_age,s=s||this._settings.ui_locales,h=h||this._settings.acr_values,c=c||this._settings.resource,l=l||this._settings.extraQueryParams,p=this._settings.authority,this._metadataService.getAuthorizationEndpoint().then(function(n){r.default.debug("Received authorization endpoint",n);var it=new y.default({url:n,client_id:v,redirect_uri:u,response_type:t,scope:i,data:b||k,authority:p,prompt:f,display:e,max_age:o,ui_locales:s,id_token_hint:d,login_hint:g,acr_values:h,resource:c,request:nt,request_uri:tt,extraQueryParams:l}),rt=it.state;return a=a||w._stateStore,a.set(rt.id,rt.toStorageString()).then(function(){return it})})},n.prototype.processSigninResponse=function(n,t){var u=this,i;return(r.default.debug("OidcClient.processSigninResponse"),i=new w.default(n),!i.state)?(r.default.error("No state in response"),Promise.reject(new Error("No state in response"))):(t=t||this._stateStore,t.remove(i.state).then(function(n){if(!n){r.default.error("No matching state found in storage");throw new Error("No matching state found in storage");}var t=tt.default.fromStorageString(n);return r.default.debug("Received state from storage; validating response"),u._validator.validateSigninResponse(t,i)}))},n.prototype.createSignoutRequest=function(){var u=this,n=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},f=n.id_token_hint,e=n.data,o=n.state,t=n.post_logout_redirect_uri,i=arguments[1];return r.default.debug("OidcClient.createSignoutRequest"),t=t||this._settings.post_logout_redirect_uri,this._metadataService.getEndSessionEndpoint().then(function(n){if(!n){r.default.error("No end session endpoint url returned");throw new Error("no end session endpoint");}r.default.debug("Received end session endpoint",n);var h=new k.default({url:n,id_token_hint:f,post_logout_redirect_uri:t,data:e||o}),s=h.state;return s&&(r.default.debug("Signout request has state to persist"),i=i||u._stateStore,i.set(s.id,s.toStorageString())),h})},n.prototype.processSignoutResponse=function(n,t){var f=this,i,u;return(r.default.debug("OidcClient.processSignoutResponse"),i=new g.default(n),!i.state)?(r.default.debug("No state in response"),i.error)?(r.default.warn("Response was error",i.error),Promise.reject(new a.default(i))):Promise.resolve(i):(u=i.state,t=t||this._stateStore,t.remove(u).then(function(n){if(!n){r.default.error("No matching state found in storage");throw new Error("No matching state found in storage");}var t=e.default.fromStorageString(n);return r.default.debug("Received state from storage; validating response"),f._validator.validateSignoutResponse(t,i)}))},n.prototype.clearStaleState=function(n){return r.default.debug("OidcClient.clearStaleState"),n=n||this._stateStore,e.default.clearStaleState(n,this.settings.staleStateAge)},s(n,[{key:"_stateStore",get:function(){return this.settings.stateStore}},{key:"_validator",get:function(){return this.settings.validator}},{key:"_metadataService",get:function(){return this.settings.metadataService}},{key:"settings",get:function(){return this._settings}},{key:"metadataService",get:function(){return this._metadataService}}]),n}();t.default=o;n.exports=t["default"]},function(n,t,i){"use strict";function r(n){return n&&n.__esModule?n:{"default":n}}function p(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}Object.defineProperty(t,"__esModule",{value:!0});var u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(n){return typeof n}:function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},o=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),s=i(327),f=r(s),h=i(330),c=r(h),l=i(332),a=r(l),v=i(333),y=r(v);var e=".well-known/openid-configuration",w="id_token",b="openid",k=300,d=300,g=function(){function n(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},tt=t.authority,it=t.metadataUrl,rt=t.metadata,ut=t.signingKeys,ft=t.client_id,et=t.client_secret,r=t.response_type,ot=r===undefined?w:r,f=t.scope,st=f===undefined?b:f,ht=t.redirect_uri,ct=t.post_logout_redirect_uri,lt=t.prompt,at=t.display,vt=t.max_age,yt=t.ui_locales,pt=t.acr_values,wt=t.resource,e=t.filterProtocolClaims,bt=e===undefined?!0:e,o=t.loadUserInfo,kt=o===undefined?!0:o,s=t.staleStateAge,dt=s===undefined?k:s,h=t.clockSkew,gt=h===undefined?d:h,l=t.stateStore,ni=l===undefined?new c.default:l,v=t.ResponseValidatorCtor,ti=v===undefined?a.default:v,g=t.MetadataServiceCtor,ii=g===undefined?y.default:g,nt=t.extraQueryParams,i=nt===undefined?{}:nt;p(this,n);this._authority=tt;this._metadataUrl=it;this._metadata=rt;this._signingKeys=ut;this._client_id=ft;this._client_secret=et;this._response_type=ot;this._scope=st;this._redirect_uri=ht;this._post_logout_redirect_uri=ct;this._prompt=lt;this._display=at;this._max_age=vt;this._ui_locales=yt;this._acr_values=pt;this._resource=wt;this._filterProtocolClaims=!!bt;this._loadUserInfo=!!kt;this._staleStateAge=dt;this._clockSkew=gt;this._stateStore=ni;this._validator=new ti(this);this._metadataService=new ii(this);this._extraQueryParams=(typeof i=="undefined"?"undefined":u(i))==="object"?i:{}}return o(n,[{key:"client_id",get:function(){return this._client_id},set:function(n){if(this._client_id){f.default.error("client_id has already been assigned.");throw new Error("client_id has already been assigned.");}else this._client_id=n}},{key:"client_secret",get:function(){return this._client_secret}},{key:"response_type",get:function(){return this._response_type}},{key:"scope",get:function(){return this._scope}},{key:"redirect_uri",get:function(){return this._redirect_uri}},{key:"post_logout_redirect_uri",get:function(){return this._post_logout_redirect_uri}},{key:"prompt",get:function(){return this._prompt}},{key:"display",get:function(){return this._display}},{key:"max_age",get:function(){return this._max_age}},{key:"ui_locales",get:function(){return this._ui_locales}},{key:"acr_values",get:function(){return this._acr_values}},{key:"resource",get:function(){return this._resource}},{key:"authority",get:function(){return this._authority},set:function(n){if(this._authority){f.default.error("authority has already been assigned.");throw new Error("authority has already been assigned.");}else this._authority=n}},{key:"metadataUrl",get:function(){return this._metadataUrl||(this._metadataUrl=this.authority,this._metadataUrl&&this._metadataUrl.indexOf(e)<0&&(this._metadataUrl[this._metadataUrl.length-1]!=="/"&&(this._metadataUrl+="/"),this._metadataUrl+=e)),this._metadataUrl}},{key:"metadata",get:function(){return this._metadata},set:function(n){this._metadata=n}},{key:"signingKeys",get:function(){return this._signingKeys},set:function(n){this._signingKeys=n}},{key:"filterProtocolClaims",get:function(){return this._filterProtocolClaims}},{key:"loadUserInfo",get:function(){return this._loadUserInfo}},{key:"staleStateAge",get:function(){return this._staleStateAge}},{key:"clockSkew",get:function(){return this._clockSkew}},{key:"stateStore",get:function(){return this._stateStore}},{key:"validator",get:function(){return this._validator}},{key:"metadataService",get:function(){return this._metadataService}},{key:"extraQueryParams",get:function(){return this._extraQueryParams},set:function(n){this._extraQueryParams=(typeof n=="undefined"?"undefined":u(n))==="object"?n:{}}}]),n}();t.default=g;n.exports=t["default"]},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}function h(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var f;Object.defineProperty(t,"__esModule",{value:!0});var e=i(327),r=u(e),o=i(331),s=u(o);f=function(){function n(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},i=t.prefix,u=i===undefined?"oidc.":i,r=t.store,f=r===undefined?s.default.localStorage:r;h(this,n);this._store=f;this._prefix=u}return n.prototype.set=function(n,t){return r.default.debug("WebStorageStateStore.set",n),n=this._prefix+n,this._store.setItem(n,t),Promise.resolve()},n.prototype.get=function(n){r.default.debug("WebStorageStateStore.get",n);n=this._prefix+n;var t=this._store.getItem(n);return Promise.resolve(t)},n.prototype.remove=function(n){r.default.debug("WebStorageStateStore.remove",n);n=this._prefix+n;var t=this._store.getItem(n);return this._store.removeItem(n),Promise.resolve(t)},n.prototype.getAllKeys=function(){var t,n,i;for(r.default.debug("WebStorageStateStore.getAllKeys"),t=[],n=0;n<this._store.length;n++)i=this._store.key(n),i.indexOf(this._prefix)===0&&t.push(i.substr(this._prefix.length));return Promise.resolve(t)},n}();t.default=f;n.exports=t["default"]},function(n,t){"use strict";function f(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var r;Object.defineProperty(t,"__esModule",{value:!0});r=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}();var e={setInterval:function(n){function t(){return n.apply(this,arguments)}return t.toString=function(){return n.toString()},t}(function(n,t){return setInterval(n,t)}),clearInterval:function(n){function t(){return n.apply(this,arguments)}return t.toString=function(){return n.toString()},t}(function(n){return clearInterval(n)})},i=!1,u=null,o=function(){function n(){f(this,n)}return n._testing=function(){i=!0},n.setXMLHttpRequest=function(n){u=n},r(n,null,[{key:"location",get:function(){if(!i)return location}},{key:"localStorage",get:function(){if(!i)return localStorage}},{key:"sessionStorage",get:function(){if(!i)return sessionStorage}},{key:"XMLHttpRequest",get:function(){if(!i)return u||XMLHttpRequest}},{key:"timer",get:function(){if(!i)return e}}]),n}();t.default=o;n.exports=t["default"]},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}function w(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var e,o;Object.defineProperty(t,"__esModule",{value:!0});var s=i(327),r=u(s),h=i(333),c=u(h),l=i(335),a=u(l),v=i(336),f=u(v),y=i(337),p=u(y);e=["nonce","at_hash","iat","nbf","exp","aud","iss","c_hash"];o=function(){function n(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:c.default,u=arguments.length>2&&arguments[2]!==undefined?arguments[2]:a.default,f=arguments.length>3&&arguments[3]!==undefined?arguments[3]:p.default;if(w(this,n),!t){r.default.error("No settings passed to ResponseValidator");throw new Error("settings");}this._settings=t;this._metadataService=new i(this._settings);this._userInfoService=new u(this._settings);this._joseUtil=f}return n.prototype.validateSigninResponse=function(n,t){var i=this;return r.default.debug("ResponseValidator.validateSigninResponse"),this._processSigninParams(n,t).then(function(t){return r.default.debug("state processed"),i._validateTokens(n,t).then(function(n){return r.default.debug("tokens validated"),i._processClaims(n).then(function(n){return r.default.debug("claims processed"),n})})})},n.prototype.validateSignoutResponse=function(n,t){return(r.default.debug("ResponseValidator.validateSignoutResponse"),n.id!==t.state)?(r.default.error("State does not match"),Promise.reject(new Error("State does not match"))):(r.default.debug("state validated"),t.state=n.data,t.error)?(r.default.warn("Response was error",t.error),Promise.reject(new f.default(t))):Promise.resolve(t)},n.prototype._processSigninParams=function(n,t){if(r.default.debug("ResponseValidator._processSigninParams"),n.id!==t.state)return r.default.error("State does not match"),Promise.reject(new Error("State does not match"));if(!n.client_id)return r.default.error("No client_id on state"),Promise.reject(new Error("No client_id on state"));if(!n.authority)return r.default.error("No authority on state"),Promise.reject(new Error("No authority on state"));if(this._settings.authority){if(this._settings.authority&&this._settings.authority!==n.authority)return r.default.error("authority mismatch on settings vs. signin state"),Promise.reject(new Error("authority mismatch on settings vs. signin state"))}else this._settings.authority=n.authority;if(this._settings.client_id){if(this._settings.client_id&&this._settings.client_id!==n.client_id)return r.default.error("client_id mismatch on settings vs. signin state"),Promise.reject(new Error("client_id mismatch on settings vs. signin state"))}else this._settings.client_id=n.client_id;return(r.default.debug("state validated"),t.state=n.data,t.error)?(r.default.warn("Response was error",t.error),Promise.reject(new f.default(t))):n.nonce&&!t.id_token?(r.default.error("Expecting id_token in response"),Promise.reject(new Error("No id_token in response"))):!n.nonce&&t.id_token?(r.default.error("Not expecting id_token in response"),Promise.reject(new Error("Unexpected id_token in response"))):Promise.resolve(t)},n.prototype._processClaims=function(n){var t=this;if(r.default.debug("ResponseValidator._processClaims"),n.isOpenIdConnect){if(r.default.debug("response is OIDC, processing claims"),n.profile=this._filterProtocolClaims(n.profile),this._settings.loadUserInfo&&n.access_token)return r.default.debug("loading user info"),this._userInfoService.getClaims(n.access_token).then(function(i){return(r.default.debug("user info claims received from user info endpoint"),i.sub!==n.profile.sub)?(r.default.error("sub from user info endpoint does not match sub in access_token"),Promise.reject(new Error("sub from user info endpoint does not match sub in access_token"))):(n.profile=t._mergeClaims(n.profile,i),r.default.debug("user info claims received, updated profile:",n.profile),n)});r.default.debug("not loading user info")}else r.default.debug("response is not OIDC, not processing claims");return Promise.resolve(n)},n.prototype._mergeClaims=function(n,t){var r=Object.assign({},n),i,f,e,c,u;for(i in t){f=t[i];Array.isArray(f)||(f=[f]);var o=!0,s=!1,h=undefined;try{for(e=f[Symbol.iterator]();!(o=(c=e.next()).done);o=!0)u=c.value,r[i]?Array.isArray(r[i])?r[i].indexOf(u)<0&&r[i].push(u):r[i]!==u&&(r[i]=[r[i],u]):r[i]=u}catch(l){s=!0;h=l}finally{try{!o&&e.return&&e.return()}finally{if(s)throw h;}}}return r},n.prototype._filterProtocolClaims=function(n){r.default.debug("ResponseValidator._filterProtocolClaims, incoming claims:",n);var t=Object.assign({},n);return this._settings._filterProtocolClaims?(e.forEach(function(n){delete t[n]}),r.default.debug("protocol claims filtered",t)):r.default.debug("protocol claims not filtered"),t},n.prototype._validateTokens=function(n,t){return(r.default.debug("ResponseValidator._validateTokens"),t.id_token)?t.access_token?(r.default.debug("Validating id_token and access_token"),this._validateIdTokenAndAccessToken(n,t)):(r.default.debug("Validating id_token"),this._validateIdToken(n,t)):(r.default.debug("No id_token to validate"),Promise.resolve(t))},n.prototype._validateIdTokenAndAccessToken=function(n,t){var i=this;return r.default.debug("ResponseValidator._validateIdTokenAndAccessToken"),this._validateIdToken(n,t).then(function(n){return i._validateAccessToken(n)})},n.prototype._validateIdToken=function(n,t){var u=this,i,f;return(r.default.debug("ResponseValidator._validateIdToken"),!n.nonce)?(r.default.error("No nonce on state"),Promise.reject(new Error("No nonce on state"))):(i=this._joseUtil.parseJwt(t.id_token),!i||!i.header||!i.payload)?(r.default.error("Failed to parse id_token",i),Promise.reject(new Error("Failed to parse id_token"))):n.nonce!==i.payload.nonce?(r.default.error("Invalid nonce in id_token"),Promise.reject(new Error("Invalid nonce in id_token"))):(f=i.header.kid,this._metadataService.getIssuer().then(function(e){return r.default.debug("Received issuer"),u._metadataService.getSigningKeys().then(function(o){var s,c,h;if(!o)return r.default.error("No signing keys from metadata"),Promise.reject(new Error("No signing keys from metadata"));if(r.default.debug("Received signing keys"),s=void 0,f)s=o.filter(function(n){return n.kid===f})[0];else{if(o=u._filterByAlg(o,i.header.alg),o.length>1)return r.default.error("No kid found in id_token and more than one key found in metadata"),Promise.reject(new Error("No kid found in id_token and more than one key found in metadata"));s=o[0]}return s?(c=n.client_id,h=u._settings.clockSkew,r.default.debug("Validaing JWT; using clock skew (in seconds) of: ",h),u._joseUtil.validateJwt(t.id_token,s,e,c,h).then(function(){return(r.default.debug("JWT validation successful"),!i.payload.sub)?(r.default.error("No sub present in id_token"),Promise.reject(new Error("No sub present in id_token"))):(t.profile=i.payload,t)})):(r.default.error("No key matching kid or alg found in signing keys"),Promise.reject(new Error("No key matching kid or alg found in signing keys")))})}))},n.prototype._filterByAlg=function(n,t){r.default.debug("ResponseValidator._filterByAlg",t);var i=null;if(t.startsWith("RS"))i="RSA";else if(t.startsWith("PS"))i="PS";else if(t.startsWith("ES"))i="EC";else return r.default.debug("alg not supported: ",t),[];return r.default.debug("Looking for keys that match kty: ",i),n=n.filter(function(n){return n.kty===i}),r.default.debug("Number of keys that match kty: ",i,n.length),n},n.prototype._validateAccessToken=function(n){var u,t,i,e,f,s,o;return(r.default.debug("ResponseValidator._validateAccessToken"),!n.profile)?(r.default.error("No profile loaded from id_token"),Promise.reject(new Error("No profile loaded from id_token"))):n.profile.at_hash?n.id_token?(u=this._joseUtil.parseJwt(n.id_token),!u||!u.header)?(r.default.error("Failed to parse id_token",u),Promise.reject(new Error("Failed to parse id_token"))):(t=u.header.alg,!t||t.length!==5)?(r.default.error("Unsupported alg:",t),Promise.reject(new Error("Unsupported alg: "+t))):(i=t.substr(2,3),!i)?(r.default.error("Unsupported alg:",t,i),Promise.reject(new Error("Unsupported alg: "+t))):(i=parseInt(i),i!==256&&i!==384&&i!==512)?(r.default.error("Unsupported alg:",t,i),Promise.reject(new Error("Unsupported alg: "+t))):(e="sha"+i,f=this._joseUtil.hashString(n.access_token,e),!f)?(r.default.error("access_token hash failed:",e),Promise.reject(new Error("Failed to validate at_hash"))):(s=f.substr(0,f.length/2),o=this._joseUtil.hexToBase64Url(s),o!==n.profile.at_hash)?(r.default.error("Failed to validate at_hash",o,n.profile.at_hash),Promise.reject(new Error("Failed to validate at_hash"))):Promise.resolve(n):(r.default.error("No id_token"),Promise.reject(new Error("No id_token"))):(r.default.error("No at_hash in id_token"),Promise.reject(new Error("No at_hash in id_token")))},n}();t.default=o;n.exports=t["default"]},function(n,t,i){"use strict";function f(n){return n&&n.__esModule?n:{"default":n}}function l(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var u,e;Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),s=i(327),r=f(s),h=i(334),c=f(h);u=".well-known/openid-configuration";e=function(){function n(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:c.default;if(l(this,n),!t){r.default.error("No settings passed to MetadataService");throw new Error("settings");}this._settings=t;this._jsonService=new i}return n.prototype.getMetadata=function(){var n=this;return(r.default.debug("MetadataService.getMetadata"),this._settings.metadata)?(r.default.debug("Returning metadata from settings"),Promise.resolve(this._settings.metadata)):this.metadataUrl?(r.default.debug("getting metadata from",this.metadataUrl),this._jsonService.getJson(this.metadataUrl).then(function(t){return r.default.debug("json received"),n._settings.metadata=t,t})):(r.default.error("No authority or metadataUrl configured on settings"),Promise.reject(new Error("No authority or metadataUrl configured on settings")))},n.prototype.getIssuer=function(){return r.default.debug("MetadataService.getIssuer"),this._getMetadataProperty("issuer")},n.prototype.getAuthorizationEndpoint=function(){return r.default.debug("MetadataService.getAuthorizationEndpoint"),this._getMetadataProperty("authorization_endpoint")},n.prototype.getUserInfoEndpoint=function(){return r.default.debug("MetadataService.getUserInfoEndpoint"),this._getMetadataProperty("userinfo_endpoint")},n.prototype.getTokenEndpoint=function(){return r.default.debug("MetadataService.getTokenEndpoint"),this._getMetadataProperty("token_endpoint",!0)},n.prototype.getCheckSessionIframe=function(){return r.default.debug("MetadataService.getCheckSessionIframe"),this._getMetadataProperty("check_session_iframe",!0)},n.prototype.getEndSessionEndpoint=function(){return r.default.debug("MetadataService.getEndSessionEndpoint"),this._getMetadataProperty("end_session_endpoint",!0)},n.prototype.getRevocationEndpoint=function(){return r.default.debug("MetadataService.getRevocationEndpoint"),this._getMetadataProperty("revocation_endpoint",!0)},n.prototype._getMetadataProperty=function(n){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!1;return r.default.debug("MetadataService._getMetadataProperty",n),this.getMetadata().then(function(i){if(r.default.debug("metadata recieved"),i[n]===undefined){if(t===!0)return r.default.warn("Metadata does not contain optional property "+n),undefined;r.default.error("Metadata does not contain property "+n);throw new Error("Metadata does not contain property "+n);}return i[n]})},n.prototype.getSigningKeys=function(){var n=this;return(r.default.debug("MetadataService.getSigningKeys"),this._settings.signingKeys)?(r.default.debug("Returning signingKeys from settings"),Promise.resolve(this._settings.signingKeys)):this._getMetadataProperty("jwks_uri").then(function(t){return r.default.debug("jwks_uri received",t),n._jsonService.getJson(t).then(function(t){if(r.default.debug("key set received",t),!t.keys){r.default.error("Missing keys on keyset");throw new Error("Missing keys on keyset");}return n._settings.signingKeys=t.keys,n._settings.signingKeys})})},o(n,[{key:"metadataUrl",get:function(){return this._metadataUrl||(this._settings.metadataUrl?this._metadataUrl=this._settings.metadataUrl:(this._metadataUrl=this._settings.authority,this._metadataUrl&&this._metadataUrl.indexOf(u)<0&&(this._metadataUrl[this._metadataUrl.length-1]!=="/"&&(this._metadataUrl+="/"),this._metadataUrl+=u))),this._metadataUrl}}]),n}();t.default=e;n.exports=t["default"]},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}function h(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var f;Object.defineProperty(t,"__esModule",{value:!0});var e=i(327),r=u(e),o=i(331),s=u(o);f=function(){function n(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:s.default.XMLHttpRequest;h(this,n);this._XMLHttpRequest=t}return n.prototype.getJson=function(n,t){var i=this;if(r.default.debug("JsonService.getJson",n),!n){r.default.error("No url passed");throw new Error("url");}return new Promise(function(u,f){var e=new i._XMLHttpRequest;e.open("GET",n);e.onload=function(){if(r.default.debug("HTTP response received, status",e.status),e.status===200)try{u(JSON.parse(e.responseText))}catch(n){r.default.error("Error parsing JSON response",n.message);f(n)}else f(Error(e.statusText+" ("+e.status+")"))};e.onerror=function(){r.default.error("network error");f(Error("Network Error"))};t&&(r.default.debug("token passed, setting Authorization header"),e.setRequestHeader("Authorization","Bearer "+t));e.send()})},n}();t.default=f;n.exports=t["default"]},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}function l(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var f;Object.defineProperty(t,"__esModule",{value:!0});var e=i(334),o=u(e),s=i(333),h=u(s),c=i(327),r=u(c);f=function(){function n(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:o.default,u=arguments.length>2&&arguments[2]!==undefined?arguments[2]:h.default;if(l(this,n),!t){r.default.error("No settings passed to UserInfoService");throw new Error("settings");}this._settings=t;this._jsonService=new i;this._metadataService=new u(this._settings)}return n.prototype.getClaims=function(n){var t=this;return(r.default.debug("UserInfoService.getClaims"),!n)?(r.default.error("No token passed"),Promise.reject(new Error("A token is required"))):this._metadataService.getUserInfoEndpoint().then(function(i){return r.default.debug("received userinfo url",i),t._jsonService.getJson(i,n).then(function(n){return r.default.debug("claims received",n),n})})},n}();t.default=f;n.exports=t["default"]},function(n,t,i){"use strict";function e(n){return n&&n.__esModule?n:{"default":n}}function o(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}function s(n,t){if(!n)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t&&(typeof t=="object"||typeof t=="function")?t:n}function h(n,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof t);n.prototype=Object.create(t&&t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}});t&&(Object.setPrototypeOf?Object.setPrototypeOf(n,t):n.__proto__=t)}var r,u,f;Object.defineProperty(t,"__esModule",{value:!0});r=i(327);u=e(r);f=function(n){function t(){var r=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},f=r.error,e=r.error_description,h=r.error_uri,c=r.state,i;if(o(this,t),!f){u.default.error("No error passed to ErrorResponse");throw new Error("error");}return i=s(this,n.call(this,e||f)),i.name="ErrorResponse",i.error=f,i.error_description=e,i.error_uri=h,i.state=c,i}return h(t,n),t}(Error);t.default=f;n.exports=t["default"]},function(n,t,i){"use strict";function s(n){return n&&n.__esModule?n:{"default":n}}function h(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var f,e;Object.defineProperty(t,"__esModule",{value:!0});var u=i(338),o=i(327),r=s(o);f=["RS256","RS384","RS512","PS256","PS384","PS512","ES256","ES384","ES512"];e=function(){function n(){h(this,n)}return n.parseJwt=function(n){r.default.debug("JoseUtil.parseJwt");try{var t=u.jws.JWS.parse(n);return{header:t.headerObj,payload:t.payloadObj}}catch(i){r.default.error(i)}},n.validateJwt=function(t,i,f,e,o,s){r.default.debug("JoseUtil.validateJwt");try{if(i.kty==="RSA")if(i.e&&i.n)i=u.KEYUTIL.getKey(i);else if(i.x5c&&i.x5c.length)i=u.KEYUTIL.getKey(u.X509.getPublicKeyFromCertPEM(i.x5c[0]));else return r.default.error("RSA key missing key material",i),Promise.reject(new Error("RSA key missing key material"));else if(i.kty==="EC")if(i.crv&&i.x&&i.y)i=u.KEYUTIL.getKey(i);else return r.default.error("EC key missing key material",i),Promise.reject(new Error("EC key missing key material"));else return r.default.error("Unsupported key type",i&&i.kty),Promise.reject(new Error("Unsupported key type: "+i&&i.kty));return n._validateJwt(t,i,f,e,o,s)}catch(h){return r.default.error(h&&h.message||h),Promise.reject("JWT validation failed")}},n._validateJwt=function(t,i,e,o,s,h){var c,v,l,y;if(r.default.debug("JoseUtil._validateJwt"),s||(s=0),h||(h=parseInt(Date.now()/1e3)),c=n.parseJwt(t).payload,!c.iss)return r.default.error("issuer was not provided"),Promise.reject(new Error("issuer was not provided"));if(c.iss!==e)return r.default.error("Invalid issuer in token",c.iss),Promise.reject(new Error("Invalid issuer in token: "+c.iss));if(!c.aud)return r.default.error("aud was not provided"),Promise.reject(new Error("aud was not provided"));if(v=c.aud===o||Array.isArray(c.aud)&&c.aud.indexOf(o)>=0,!v)return r.default.error("Invalid audience in token",c.aud),Promise.reject(new Error("Invalid audience in token: "+c.aud));if(l=h+s,y=h-s,!c.iat)return r.default.error("iat was not provided"),Promise.reject(new Error("iat was not provided"));if(l<c.iat)return r.default.error("iat is in the future",c.iat),Promise.reject(new Error("iat is in the future: "+c.iat));if(c.nbf&&l<c.nbf)return r.default.error("nbf is in the future",c.nbf),Promise.reject(new Error("nbf is in the future: "+c.nbf));if(!c.exp)return r.default.error("exp was not provided"),Promise.reject(new Error("exp was not provided"));if(c.exp<y)return r.default.error("exp is in the past",c.exp),Promise.reject(new Error("exp is in the past:"+c.exp));try{if(!u.jws.JWS.verify(t,i,f))return r.default.error("signature validation failed"),Promise.reject(new Error("signature validation failed"))}catch(a){return r.default.error(a&&a.message||a),Promise.reject(new Error("signature validation failed"))}return Promise.resolve()},n.hashString=function(n,t){r.default.debug("JoseUtil.hashString",n,t);try{return u.crypto.Util.hashString(n,t)}catch(i){r.default.error(i)}},n.hexToBase64Url=function(n){r.default.debug("JoseUtil.hexToBase64Url",n);try{return u.hextob64u(n)}catch(t){r.default.error(t)}},n}();t.default=e;n.exports=t["default"]},function(n,t,i){(function(n){function ti(n){for(var i,r="",t=0;t+3<=n.length;t+=3)i=parseInt(n.substring(t,t+3),16),r+=kt.charAt(i>>6)+kt.charAt(i&63);if(t+1==n.length?(i=parseInt(n.substring(t,t+1),16),r+=kt.charAt(i<<2)):t+2==n.length&&(i=parseInt(n.substring(t,t+2),16),r+=kt.charAt(i>>2)+kt.charAt((i&3)<<4)),hi)while((r.length&3)>0)r+=hi;return r}function st(n){for(var i="",r=0,u,t,f=0;f<n.length;++f){if(n.charAt(f)==hi)break;(t=kt.indexOf(n.charAt(f)),t<0)||(r==0?(i+=at(t>>2),u=t&3,r=1):r==1?(i+=at(u<<2|t>>4),u=t&15,r=2):r==2?(i+=at(u),i+=at(t>>2),u=t&3,r=3):(i+=at(u<<2|t>>4),i+=at(t&15),r=0))}return r==1&&(i+=at(u<<2)),i}function cr(n){for(var i=st(n),r=[],t=0;2*t<i.length;++t)r[t]=parseInt(i.substring(2*t,2*t+2),16);return r}function f(n,t,i){n!=null&&("number"==typeof n?this.fromNumber(n,t,i):t==null&&"string"!=typeof n?this.fromString(n,256):this.fromString(n,t))}function v(){return new f(null)}function au(n,t,i,r,u,f){while(--f>=0){var e=t*this[n++]+i[r]+u;u=Math.floor(e/67108864);i[r++]=e&67108863}return u}function vu(n,t,i,r,u,f){for(var o=t&32767,s=t>>15;--f>=0;){var e=this[n]&32767,h=this[n++]>>15,c=s*e+h*o;e=o*e+((c&32767)<<15)+i[r]+(u&1073741823);u=(e>>>30)+(c>>>15)+s*h+(u>>>30);i[r++]=e&1073741823}return u}function yu(n,t,i,r,u,f){for(var o=t&16383,s=t>>14;--f>=0;){var e=this[n]&16383,h=this[n++]>>14,c=s*e+h*o;e=o*e+((c&16383)<<14)+i[r]+u;u=(e>>28)+(c>>14)+s*h;i[r++]=e&268435455}return u}function at(n){return ar.charAt(n)}function vr(n,t){var i=fi[n.charCodeAt(t)];return i==null?-1:i}function pu(n){for(var t=this.t-1;t>=0;--t)n[t]=this[t];n.t=this.t;n.s=this.s}function wu(n){this.t=1;this.s=n<0?-1:0;n>0?this[0]=n:n<-1?this[0]=n+this.DV:this.t=0}function wt(n){var t=v();return t.fromInt(n),t}function bu(n,t){var r,u;if(t==16)r=4;else if(t==8)r=3;else if(t==256)r=8;else if(t==2)r=1;else if(t==32)r=5;else if(t==4)r=2;else{this.fromRadix(n,t);return}this.t=0;this.s=0;for(var e=n.length,o=!1,i=0;--e>=0;){if(u=r==8?n[e]&255:vr(n,e),u<0){n.charAt(e)=="-"&&(o=!0);continue}o=!1;i==0?this[this.t++]=u:i+r>this.DB?(this[this.t-1]|=(u&(1<<this.DB-i)-1)<<i,this[this.t++]=u>>this.DB-i):this[this.t-1]|=u<<i;i+=r;i>=this.DB&&(i-=this.DB)}r==8&&(n[0]&128)!=0&&(this.s=-1,i>0&&(this[this.t-1]|=(1<<this.DB-i)-1<<i));this.clamp();o&&f.ZERO.subTo(this,this)}function ku(){for(var n=this.s&this.DM;this.t>0&&this[this.t-1]==n;)--this.t}function du(n){var t;if(this.s<0)return"-"+this.negate().toString(n);if(n==16)t=4;else if(n==8)t=3;else if(n==2)t=1;else if(n==32)t=5;else if(n==4)t=2;else return this.toRadix(n);var o=(1<<t)-1,u,f=!1,e="",r=this.t,i=this.DB-r*this.DB%t;if(r-->0)for(i<this.DB&&(u=this[r]>>i)>0&&(f=!0,e=at(u));r>=0;)i<t?u=(this[r]&(1<<i)-1)<<t-i|this[--r]>>(i+=this.DB-t):(u=this[r]>>(i-=t)&o,i<=0&&(i+=this.DB,--r)),u>0&&(f=!0),f&&(e+=at(u));return f?e:"0"}function gu(){var n=v();return f.ZERO.subTo(this,n),n}function nf(){return this.s<0?this.negate():this}function tf(n){var t=this.s-n.s,i;if(t!=0)return t;if(i=this.t,t=i-n.t,t!=0)return this.s<0?-t:t;while(--i>=0)if((t=this[i]-n[i])!=0)return t;return 0}function li(n){var i=1,t;return(t=n>>>16)!=0&&(n=t,i+=16),(t=n>>8)!=0&&(n=t,i+=8),(t=n>>4)!=0&&(n=t,i+=4),(t=n>>2)!=0&&(n=t,i+=2),(t=n>>1)!=0&&(n=t,i+=1),i}function rf(){return this.t<=0?0:this.DB*(this.t-1)+li(this[this.t-1]^this.s&this.DM)}function uf(n,t){for(var i=this.t-1;i>=0;--i)t[i+n]=this[i];for(i=n-1;i>=0;--i)t[i]=0;t.t=this.t+n;t.s=this.s}function ff(n,t){for(var i=n;i<this.t;++i)t[i-n]=this[i];t.t=Math.max(this.t-n,0);t.s=this.s}function ef(n,t){for(var u=n%this.DB,e=this.DB-u,o=(1<<e)-1,r=Math.floor(n/this.DB),f=this.s<<u&this.DM,i=this.t-1;i>=0;--i)t[i+r+1]=this[i]>>e|f,f=(this[i]&o)<<u;for(i=r-1;i>=0;--i)t[i]=0;t[r]=f;t.t=this.t+r+1;t.s=this.s;t.clamp()}function of(n,t){var i,r;if(t.s=this.s,i=Math.floor(n/this.DB),i>=this.t){t.t=0;return}var u=n%this.DB,f=this.DB-u,e=(1<<u)-1;for(t[0]=this[i]>>u,r=i+1;r<this.t;++r)t[r-i-1]|=(this[r]&e)<<f,t[r-i]=this[r]>>u;u>0&&(t[this.t-i-1]|=(this.s&e)<<f);t.t=this.t-i;t.clamp()}function sf(n,t){for(var r=0,i=0,u=Math.min(n.t,this.t);r<u;)i+=this[r]-n[r],t[r++]=i&this.DM,i>>=this.DB;if(n.t<this.t){for(i-=n.s;r<this.t;)i+=this[r],t[r++]=i&this.DM,i>>=this.DB;i+=this.s}else{for(i+=this.s;r<n.t;)i-=n[r],t[r++]=i&this.DM,i>>=this.DB;i-=n.s}t.s=i<0?-1:0;i<-1?t[r++]=this.DV+i:i>0&&(t[r++]=i);t.t=r;t.clamp()}function hf(n,t){var r=this.abs(),u=n.abs(),i=r.t;for(t.t=i+u.t;--i>=0;)t[i]=0;for(i=0;i<u.t;++i)t[i+r.t]=r.am(0,u[i],t,i,0,r.t);t.s=0;t.clamp();this.s!=n.s&&f.ZERO.subTo(t,t)}function cf(n){for(var i=this.abs(),t=n.t=2*i.t,r;--t>=0;)n[t]=0;for(t=0;t<i.t-1;++t)r=i.am(t,i[t],n,2*t,0,1),(n[t+i.t]+=i.am(t+1,2*i[t],n,2*t+1,r,i.t-t-1))>=i.DV&&(n[t+i.t]-=i.DV,n[t+i.t+1]=1);n.t>0&&(n[n.t-1]+=i.am(t,i[t],n,2*t,0,1));n.s=0;n.clamp()}function lf(n,t,i){var o=n.abs(),c,u,l,y;if(!(o.t<=0)){if(c=this.abs(),c.t<o.t){t!=null&&t.fromInt(0);i!=null&&this.copyTo(i);return}i==null&&(i=v());var r=v(),p=this.s,b=n.s,h=this.DB-li(o[o.t-1]);if(h>0?(o.lShiftTo(h,r),c.lShiftTo(h,i)):(o.copyTo(r),c.copyTo(i)),u=r.t,l=r[u-1],l!=0){var w=l*(1<<this.F1)+(u>1?r[u-2]>>this.F2:0),k=this.FV/w,d=(1<<this.F1)/w,g=1<<this.F2,s=i.t,a=s-u,e=t==null?v():t;for(r.dlShiftTo(a,e),i.compareTo(e)>=0&&(i[i.t++]=1,i.subTo(e,i)),f.ONE.dlShiftTo(u,e),e.subTo(r,r);r.t<u;)r[r.t++]=0;while(--a>=0)if(y=i[--s]==l?this.DM:Math.floor(i[s]*k+(i[s-1]+g)*d),(i[s]+=r.am(0,y,i,a,0,u))<y)for(r.dlShiftTo(a,e),i.subTo(e,i);i[s]<--y;)i.subTo(e,i);t!=null&&(i.drShiftTo(u,t),p!=b&&f.ZERO.subTo(t,t));i.t=u;i.clamp();h>0&&i.rShiftTo(h,i);p<0&&f.ZERO.subTo(i,i)}}}function af(n){var t=v();return this.abs().divRemTo(n,null,t),this.s<0&&t.compareTo(f.ZERO)>0&&n.subTo(t,t),t}function dt(n){this.m=n}function vf(n){return n.s<0||n.compareTo(this.m)>=0?n.mod(this.m):n}function yf(n){return n}function pf(n){n.divRemTo(this.m,null,n)}function wf(n,t,i){n.multiplyTo(t,i);this.reduce(i)}function bf(n,t){n.squareTo(t);this.reduce(t)}function kf(){var t,n;return this.t<1?0:(t=this[0],(t&1)==0)?0:(n=t&3,n=n*(2-(t&15)*n)&15,n=n*(2-(t&255)*n)&255,n=n*(2-((t&65535)*n&65535))&65535,n=n*(2-t*n%this.DV)%this.DV,n>0?this.DV-n:-n)}function gt(n){this.m=n;this.mp=n.invDigit();this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<<n.DB-15)-1;this.mt2=2*n.t}function df(n){var t=v();return n.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),n.s<0&&t.compareTo(f.ZERO)>0&&this.m.subTo(t,t),t}function gf(n){var t=v();return n.copyTo(t),this.reduce(t),t}function ne(n){for(var i,t,r;n.t<=this.mt2;)n[n.t++]=0;for(i=0;i<this.m.t;++i)for(t=n[i]&32767,r=t*this.mpl+((t*this.mph+(n[i]>>15)*this.mpl&this.um)<<15)&n.DM,t=i+this.m.t,n[t]+=this.m.am(0,r,n,i,0,this.m.t);n[t]>=n.DV;)n[t]-=n.DV,n[++t]++;n.clamp();n.drShiftTo(this.m.t,n);n.compareTo(this.m)>=0&&n.subTo(this.m,n)}function te(n,t){n.squareTo(t);this.reduce(t)}function ie(n,t,i){n.multiplyTo(t,i);this.reduce(i)}function re(){return(this.t>0?this[0]&1:this.s)==0}function ue(n,t){var o;if(n>4294967295||n<1)return f.ONE;var i=v(),r=v(),u=t.convert(this),e=li(n)-1;for(u.copyTo(i);--e>=0;)t.sqrTo(i,r),(n&1<<e)>0?t.mulTo(r,u,i):(o=i,i=r,r=o);return t.revert(i)}function fe(n,t){var i;return i=n<256||t.isEven()?new dt(t):new gt(t),this.exp(n,i)}function ee(){var n=v();return this.copyTo(n),n}function oe(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this[0];if(this.t==0)return 0}return(this[1]&(1<<32-this.DB)-1)<<this.DB|this[0]}function se(){return this.t==0?this.s:this[0]<<24>>24}function he(){return this.t==0?this.s:this[0]<<16>>16}function ce(n){return Math.floor(Math.LN2*this.DB/Math.log(n))}function le(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function ae(n){if(n==null&&(n=10),this.signum()==0||n<2||n>36)return"0";var e=this.chunkSize(n),u=Math.pow(n,e),f=wt(u),t=v(),i=v(),r="";for(this.divRemTo(f,t,i);t.signum()>0;)r=(u+i.intValue()).toString(n).substr(1)+r,t.divRemTo(f,t,i);return i.intValue().toString(n)+r}function ve(n,t){var r,e;this.fromInt(0);t==null&&(t=10);var o=this.chunkSize(t),h=Math.pow(t,o),s=!1,u=0,i=0;for(r=0;r<n.length;++r){if(e=vr(n,r),e<0){n.charAt(r)=="-"&&this.signum()==0&&(s=!0);continue}i=t*i+e;++u>=o&&(this.dMultiply(h),this.dAddOffset(i,0),u=0,i=0)}u>0&&(this.dMultiply(Math.pow(t,u)),this.dAddOffset(i,0));s&&f.ZERO.subTo(this,this)}function ye(n,t,i){if("number"==typeof t)if(n<2)this.fromInt(1);else for(this.fromNumber(n,i),this.testBit(n-1)||this.bitwiseTo(f.ONE.shiftLeft(n-1),nr,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>n&&this.subTo(f.ONE.shiftLeft(n-1),this);else{var r=[],u=n&7;r.length=(n>>3)+1;t.nextBytes(r);u>0?r[0]&=(1<<u)-1:r[0]=0;this.fromString(r,256)}}function pe(){var i=this.t,u=[],n,t,r;if(u[0]=this.s,n=this.DB-i*this.DB%8,r=0,i-->0)for(n<this.DB&&(t=this[i]>>n)!=(this.s&this.DM)>>n&&(u[r++]=t|this.s<<this.DB-n);i>=0;)n<8?t=(this[i]&(1<<n)-1)<<8-n|this[--i]>>(n+=this.DB-8):(t=this[i]>>(n-=8)&255,n<=0&&(n+=this.DB,--i)),(t&128)!=0&&(t|=-256),r==0&&(this.s&128)!=(t&128)&&++r,(r>0||t!=this.s)&&(u[r++]=t);return u}function we(n){return this.compareTo(n)==0}function be(n){return this.compareTo(n)<0?this:n}function ke(n){return this.compareTo(n)>0?this:n}function de(n,t,i){for(var u,f=Math.min(n.t,this.t),r=0;r<f;++r)i[r]=t(this[r],n[r]);if(n.t<this.t){for(u=n.s&this.DM,r=f;r<this.t;++r)i[r]=t(this[r],u);i.t=this.t}else{for(u=this.s&this.DM,r=f;r<n.t;++r)i[r]=t(u,n[r]);i.t=n.t}i.s=t(this.s,n.s);i.clamp()}function ge(n,t){return n&t}function no(n){var t=v();return this.bitwiseTo(n,ge,t),t}function nr(n,t){return n|t}function to(n){var t=v();return this.bitwiseTo(n,nr,t),t}function yr(n,t){return n^t}function io(n){var t=v();return this.bitwiseTo(n,yr,t),t}function pr(n,t){return n&~t}function ro(n){var t=v();return this.bitwiseTo(n,pr,t),t}function uo(){for(var t=v(),n=0;n<this.t;++n)t[n]=this.DM&~this[n];return t.t=this.t,t.s=~this.s,t}function fo(n){var t=v();return n<0?this.rShiftTo(-n,t):this.lShiftTo(n,t),t}function eo(n){var t=v();return n<0?this.lShiftTo(-n,t):this.rShiftTo(n,t),t}function oo(n){if(n==0)return-1;var t=0;return(n&65535)==0&&(n>>=16,t+=16),(n&255)==0&&(n>>=8,t+=8),(n&15)==0&&(n>>=4,t+=4),(n&3)==0&&(n>>=2,t+=2),(n&1)==0&&++t,t}function so(){for(var n=0;n<this.t;++n)if(this[n]!=0)return n*this.DB+oo(this[n]);return this.s<0?this.t*this.DB:-1}function ho(n){for(var t=0;n!=0;)n&=n-1,++t;return t}function co(){for(var t=0,i=this.s&this.DM,n=0;n<this.t;++n)t+=ho(this[n]^i);return t}function lo(n){var t=Math.floor(n/this.DB);return t>=this.t?this.s!=0:(this[t]&1<<n%this.DB)!=0}function ao(n,t){var i=f.ONE.shiftLeft(n);return this.bitwiseTo(i,t,i),i}function vo(n){return this.changeBit(n,nr)}function yo(n){return this.changeBit(n,pr)}function po(n){return this.changeBit(n,yr)}function wo(n,t){for(var r=0,i=0,u=Math.min(n.t,this.t);r<u;)i+=this[r]+n[r],t[r++]=i&this.DM,i>>=this.DB;if(n.t<this.t){for(i+=n.s;r<this.t;)i+=this[r],t[r++]=i&this.DM,i>>=this.DB;i+=this.s}else{for(i+=this.s;r<n.t;)i+=n[r],t[r++]=i&this.DM,i>>=this.DB;i+=n.s}t.s=i<0?-1:0;i>0?t[r++]=i:i<-1&&(t[r++]=this.DV+i);t.t=r;t.clamp()}function bo(n){var t=v();return this.addTo(n,t),t}function ko(n){var t=v();return this.subTo(n,t),t}function go(n){var t=v();return this.multiplyTo(n,t),t}function ns(){var n=v();return this.squareTo(n),n}function ts(n){var t=v();return this.divRemTo(n,t,null),t}function is(n){var t=v();return this.divRemTo(n,null,t),t}function rs(n){var t=v(),i=v();return this.divRemTo(n,t,i),[t,i]}function us(n){this[this.t]=this.am(0,n-1,this,0,0,this.t);++this.t;this.clamp()}function fs(n,t){if(n!=0){while(this.t<=t)this[this.t++]=0;for(this[t]+=n;this[t]>=this.DV;)this[t]-=this.DV,++t>=this.t&&(this[this.t++]=0),++this[t]}}function ei(){}function wr(n){return n}function es(n,t,i){n.multiplyTo(t,i)}function os(n,t){n.squareTo(t)}function ss(n){return this.exp(n,new ei)}function hs(n,t,i){var r=Math.min(this.t+n.t,t),u;for(i.s=0,i.t=r;r>0;)i[--r]=0;for(u=i.t-this.t;r<u;++r)i[r+this.t]=this.am(0,n[r],i,r,0,this.t);for(u=Math.min(n.t,t);r<u;++r)this.am(0,n[r],i,r,0,t-r);i.clamp()}function cs(n,t,i){--t;var r=i.t=this.t+n.t-t;for(i.s=0;--r>=0;)i[r]=0;for(r=Math.max(t-this.t,0);r<n.t;++r)i[this.t+r-t]=this.am(t-r,n[r],i,0,0,this.t+r-t);i.clamp();i.drShiftTo(1,i)}function ri(n){this.r2=v();this.q3=v();f.ONE.dlShiftTo(2*n.t,this.r2);this.mu=this.r2.divide(n);this.m=n}function ls(n){if(n.s<0||n.t>2*this.m.t)return n.mod(this.m);if(n.compareTo(this.m)<0)return n;var t=v();return n.copyTo(t),this.reduce(t),t}function as(n){return n}function vs(n){for(n.drShiftTo(this.m.t-1,this.r2),n.t>this.m.t+1&&(n.t=this.m.t+1,n.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);n.compareTo(this.r2)<0;)n.dAddOffset(1,this.m.t+1);for(n.subTo(this.r2,n);n.compareTo(this.m)>=0;)n.subTo(this.m,n)}function ys(n,t){n.squareTo(t);this.reduce(t)}function ps(n,t,i){n.multiplyTo(t,i);this.reduce(i)}function ws(n,t){var i=n.bitLength(),c,r=wt(1),f,y;if(i<=0)return r;c=i<18?1:i<48?3:i<144?4:i<768?5:6;f=i<8?new dt(t):t.isEven()?new ri(t):new gt(t);var s=[],u=3,l=c-1,p=(1<<c)-1;if(s[1]=f.convert(this),c>1)for(y=v(),f.sqrTo(s[1],y);u<=p;)s[u]=v(),f.mulTo(y,s[u-2],s[u]),u+=2;var e=n.t-1,h,w=!0,o=v(),a;for(i=li(n[e])-1;e>=0;){for(i>=l?h=n[e]>>i-l&p:(h=(n[e]&(1<<i+1)-1)<<l-i,e>0&&(h|=n[e-1]>>this.DB+i-l)),u=c;(h&1)==0;)h>>=1,--u;if((i-=u)<0&&(i+=this.DB,--e),w)s[h].copyTo(r),w=!1;else{while(u>1)f.sqrTo(r,o),f.sqrTo(o,r),u-=2;u>0?f.sqrTo(r,o):(a=r,r=o,o=a);f.mulTo(o,s[h],r)}while(e>=0&&(n[e]&1<<i)==0)f.sqrTo(r,o),a=r,r=o,o=a,--i<0&&(i=this.DB-1,--e)}return f.revert(r)}function bs(n){var i=this.s<0?this.negate():this.clone(),t=n.s<0?n.negate():n.clone(),f,u,r;if(i.compareTo(t)<0&&(f=i,i=t,t=f),u=i.getLowestSetBit(),r=t.getLowestSetBit(),r<0)return i;for(u<r&&(r=u),r>0&&(i.rShiftTo(r,i),t.rShiftTo(r,t));i.signum()>0;)(u=i.getLowestSetBit())>0&&i.rShiftTo(u,i),(u=t.getLowestSetBit())>0&&t.rShiftTo(u,t),i.compareTo(t)>=0?(i.subTo(t,i),i.rShiftTo(1,i)):(t.subTo(i,t),t.rShiftTo(1,t));return r>0&&t.lShiftTo(r,t),t}function ks(n){var r,t,i;if(n<=0)return 0;if(r=this.DV%n,t=this.s<0?n-1:0,this.t>0)if(r==0)t=this[0]%n;else for(i=this.t-1;i>=0;--i)t=(r*t+this[i])%n;return t}function ds(n){var s=n.isEven();if(this.isEven()&&s||n.signum()==0)return f.ZERO;for(var r=n.clone(),u=this.clone(),e=wt(1),i=wt(0),o=wt(0),t=wt(1);r.signum()!=0;){while(r.isEven())r.rShiftTo(1,r),s?(e.isEven()&&i.isEven()||(e.addTo(this,e),i.subTo(n,i)),e.rShiftTo(1,e)):i.isEven()||i.subTo(n,i),i.rShiftTo(1,i);while(u.isEven())u.rShiftTo(1,u),s?(o.isEven()&&t.isEven()||(o.addTo(this,o),t.subTo(n,t)),o.rShiftTo(1,o)):t.isEven()||t.subTo(n,t),t.rShiftTo(1,t);r.compareTo(u)>=0?(r.subTo(u,r),s&&e.subTo(o,e),i.subTo(t,i)):(u.subTo(r,u),s&&o.subTo(e,o),t.subTo(i,t))}if(u.compareTo(f.ONE)!=0)return f.ZERO;if(t.compareTo(n)>=0)return t.subtract(n);if(t.signum()<0)t.addTo(n,t);else return t;return t.signum()<0?t.add(n):t}function gs(n){var t,i=this.abs(),r,u;if(i.t==1&&i[0]<=tt[tt.length-1]){for(t=0;t<tt.length;++t)if(i[0]==tt[t])return!0;return!1}if(i.isEven())return!1;for(t=1;t<tt.length;){for(r=tt[t],u=t+1;u<tt.length&&r<br;)r*=tt[u++];for(r=i.modInt(r);t<u;)if(r%tt[t++]==0)return!1}return i.millerRabin(n)}function nh(n){var i=this.subtract(f.ONE),r=i.getLowestSetBit(),o,u,e,t,s;if(r<=0)return!1;for(o=i.shiftRight(r),n=n+1>>1,n>tt.length&&(n=tt.length),u=v(),e=0;e<n;++e)if(u.fromInt(tt[Math.floor(Math.random()*tt.length)]),t=u.modPow(o,this),t.compareTo(f.ONE)!=0&&t.compareTo(i)!=0){for(s=1;s++<r&&t.compareTo(i)!=0;)if(t=t.modPowInt(2,this),t.compareTo(f.ONE)==0)return!1;if(t.compareTo(i)!=0)return!1}return!0}function tr(){this.i=0;this.j=0;this.S=[]}function th(n){for(var i,r,t=0;t<256;++t)this.S[t]=t;for(i=0,t=0;t<256;++t)i=i+this.S[t]+n[t%n.length]&255,r=this.S[t],this.S[t]=this.S[i],this.S[i]=r;this.i=0;this.j=0}function ih(){var n;return this.i=this.i+1&255,this.j=this.j+this.S[this.i]&255,n=this.S[this.i],this.S[this.i]=this.S[this.j],this.S[this.j]=n,this.S[n+this.S[this.i]&255]}function rh(){return new tr}function uh(n){rt[d++]^=n&255;rt[d++]^=n>>8&255;rt[d++]^=n>>16&255;rt[d++]^=n>>24&255;d>=ai&&(d-=ai)}function ir(){uh((new Date).getTime())}function fh(){if(vi==null){for(ir(),vi=rh(),vi.init(rt),d=0;d<rt.length;++d)rt[d]=0;d=0}return vi.next()}function eh(n){for(var t=0;t<n.length;++t)n[t]=fh()}function ni(){}function nt(n,t){return new f(n,t)}function oh(n,t){var i,e,r,o,u;if(t<n.length+11)return alert("Message too long for RSA"),null;for(i=[],e=n.length-1;e>=0&&t>0;)r=n.charCodeAt(e--),r<128?i[--t]=r:r>127&&r<2048?(i[--t]=r&63|128,i[--t]=r>>6|192):(i[--t]=r&63|128,i[--t]=r>>6&63|128,i[--t]=r>>12|224);for(i[--t]=0,o=new ni,u=[];t>2;){for(u[0]=0;u[0]==0;)o.nextBytes(u);i[--t]=u[0]}return i[--t]=2,i[--t]=0,new f(i)}function kr(n,t,i){for(var u="",r=0;u.length<t;)u+=i(String.fromCharCode.apply(String,n.concat([(r&4278190080)>>24,(r&16711680)>>16,(r&65280)>>8,r&255]))),r+=1;return u}function sh(n,t,i){var s,r,e,u,c,o,l,h;if(n.length+2*ut+2>t)throw"Message too long for RSA";for(s="",r=0;r<t-n.length-2*ut-2;r+=1)s+="\x00";for(e=rstr_sha1("")+s+"\x01"+n,u=new Array(ut),(new ni).nextBytes(u),c=kr(u,e.length,i||rstr_sha1),o=[],r=0;r<e.length;r+=1)o[r]=e.charCodeAt(r)^c.charCodeAt(r);for(l=kr(o,u.length,rstr_sha1),h=[0],r=0;r<u.length;r+=1)h[r+1]=u[r]^l.charCodeAt(r);return new f(h.concat(o))}function h(){this.n=null;this.e=0;this.d=null;this.p=null;this.q=null;this.dmp1=null;this.dmq1=null;this.coeff=null}function hh(n,t){this.isPublic=!0;typeof n!="string"?(this.n=n,this.e=t):n!=null&&t!=null&&n.length>0&&t.length>0?(this.n=nt(n,16),this.e=parseInt(t,16)):alert("Invalid RSA public key")}function ch(n){return n.modPowInt(this.e,this.n)}function lh(n){var r=oh(n,this.n.bitLength()+7>>3),i,t;return r==null?null:(i=this.doPublic(r),i==null)?null:(t=i.toString(16),(t.length&1)==0?t:"0"+t)}function ah(n,t){var u=sh(n,this.n.bitLength()+7>>3,t),r,i;return u==null?null:(r=this.doPublic(u),r==null)?null:(i=r.toString(16),(i.length&1)==0?i:"0"+i)}function vh(n,t){for(var r=n.toByteArray(),i=0,f,u;i<r.length&&r[i]==0;)++i;if(r.length-i!=t-1||r[i]!=2)return null;for(++i;r[i]!=0;)if(++i>=r.length)return null;for(f="";++i<r.length;)u=r[i]&255,u<128?f+=String.fromCharCode(u):u>191&&u<224?(f+=String.fromCharCode((u&31)<<6|r[i+1]&63),++i):(f+=String.fromCharCode((u&15)<<12|(r[i+1]&63)<<6|r[i+2]&63),i+=2);return f}function dr(n,t,i){for(var u="",r=0;u.length<t;)u+=i(n+String.fromCharCode.apply(String,[(r&4278190080)>>24,(r&16711680)>>16,(r&65280)>>8,r&255])),r+=1;return u}function yh(n,t,i){var r,h,u,f,c;for(n=n.toByteArray(),r=0;r<n.length;r+=1)n[r]&=255;while(n.length<t)n.unshift(0);if(n=String.fromCharCode.apply(String,n),n.length<2*ut+2)throw"Cipher too short";for(var o=n.substr(1,ut),e=n.substr(ut+1),l=dr(e,ut,i||rstr_sha1),s=[],r=0;r<o.length;r+=1)s[r]=o.charCodeAt(r)^l.charCodeAt(r);for(h=dr(String.fromCharCode.apply(String,s),n.length-ut,rstr_sha1),u=[],r=0;r<e.length;r+=1)u[r]=e.charCodeAt(r)^h.charCodeAt(r);if(u=String.fromCharCode.apply(String,u),u.substr(0,ut)!==rstr_sha1(""))throw"Hash mismatch";if(u=u.substr(ut),f=u.indexOf("\x01"),c=f!=-1?u.substr(0,f).lastIndexOf("\x00"):-1,c+1!=f)throw"Malformed data";return u.substr(f+1)}function ph(n,t,i){this.isPrivate=!0;typeof n!="string"?(this.n=n,this.e=t,this.d=i):n!=null&&t!=null&&n.length>0&&t.length>0?(this.n=nt(n,16),this.e=parseInt(t,16),this.d=nt(i,16)):alert("Invalid RSA private key")}function wh(n,t,i,r,u,f,e,o){if(this.isPrivate=!0,n==null)throw"RSASetPrivateEx N == null";if(t==null)throw"RSASetPrivateEx E == null";if(n.length==0)throw"RSASetPrivateEx N.length == 0";if(t.length==0)throw"RSASetPrivateEx E.length == 0";n!=null&&t!=null&&n.length>0&&t.length>0?(this.n=nt(n,16),this.e=parseInt(t,16),this.d=nt(i,16),this.p=nt(r,16),this.q=nt(u,16),this.dmp1=nt(f,16),this.dmq1=nt(e,16),this.coeff=nt(o,16)):alert("Invalid RSA private key in RSASetPrivateEx")}function bh(n,t){var r=new ni,u=n>>1,i,e;for(this.e=parseInt(t,16),i=new f(t,16);;){for(;;)if(this.p=new f(n-u,1,r),this.p.subtract(f.ONE).gcd(i).compareTo(f.ONE)==0&&this.p.isProbablePrime(10))break;for(;;)if(this.q=new f(u,1,r),this.q.subtract(f.ONE).gcd(i).compareTo(f.ONE)==0&&this.q.isProbablePrime(10))break;this.p.compareTo(this.q)<=0&&(e=this.p,this.p=this.q,this.q=e);var o=this.p.subtract(f.ONE),s=this.q.subtract(f.ONE),h=o.multiply(s);if(h.gcd(i).compareTo(f.ONE)==0){this.n=this.p.multiply(this.q);this.d=i.modInverse(h);this.dmp1=this.d.mod(o);this.dmq1=this.d.mod(s);this.coeff=this.q.modInverse(this.p);break}}}function kh(n){if(this.p==null||this.q==null)return n.modPow(this.d,this.n);for(var t=n.mod(this.p).modPow(this.dmp1,this.p),i=n.mod(this.q).modPow(this.dmq1,this.q);t.compareTo(i)<0;)t=t.add(this.p);return t.subtract(i).multiply(this.coeff).mod(this.p).multiply(this.q).add(i)}function dh(n){var i=nt(n,16),t=this.doPrivate(i);return t==null?null:vh(t,this.n.bitLength()+7>>3)}function gh(n,t){var r=nt(n,16),i=this.doPrivate(r);return i==null?null:yh(i,this.n.bitLength()+7>>3,t)}function it(n,t){this.x=t;this.q=n}function nc(n){return n==this?!0:this.q.equals(n.q)&&this.x.equals(n.x)}function tc(){return this.x}function ic(){return new it(this.q,this.x.negate().mod(this.q))}function rc(n){return new it(this.q,this.x.add(n.toBigInteger()).mod(this.q))}function uc(n){return new it(this.q,this.x.subtract(n.toBigInteger()).mod(this.q))}function fc(n){return new it(this.q,this.x.multiply(n.toBigInteger()).mod(this.q))}function ec(){return new it(this.q,this.x.square().mod(this.q))}function oc(n){return new it(this.q,this.x.multiply(n.toBigInteger().modInverse(this.q)).mod(this.q))}function y(n,t,i,r){this.curve=n;this.x=t;this.y=i;this.z=r==null?f.ONE:r;this.zinv=null}function sc(){return this.zinv==null&&(this.zinv=this.z.modInverse(this.curve.q)),this.curve.fromBigInteger(this.x.toBigInteger().multiply(this.zinv).mod(this.curve.q))}function hc(){return this.zinv==null&&(this.zinv=this.z.modInverse(this.curve.q)),this.curve.fromBigInteger(this.y.toBigInteger().multiply(this.zinv).mod(this.curve.q))}function cc(n){if(n==this)return!0;if(this.isInfinity())return n.isInfinity();if(n.isInfinity())return this.isInfinity();var t,i;return(t=n.y.toBigInteger().multiply(this.z).subtract(this.y.toBigInteger().multiply(n.z)).mod(this.curve.q),!t.equals(f.ZERO))?!1:(i=n.x.toBigInteger().multiply(this.z).subtract(this.x.toBigInteger().multiply(n.z)).mod(this.curve.q),i.equals(f.ZERO))}function lc(){return this.x==null&&this.y==null?!0:this.z.equals(f.ZERO)&&!this.y.toBigInteger().equals(f.ZERO)}function ac(){return new y(this.curve,this.x,this.y.negate(),this.z)}function vc(n){var t,i;if(this.isInfinity())return n;if(n.isInfinity())return this;if(t=n.y.toBigInteger().multiply(this.z).subtract(this.y.toBigInteger().multiply(n.z)).mod(this.curve.q),i=n.x.toBigInteger().multiply(this.z).subtract(this.x.toBigInteger().multiply(n.z)).mod(this.curve.q),f.ZERO.equals(i))return f.ZERO.equals(t)?this.twice():this.curve.getInfinity();var s=new f("3"),h=this.x.toBigInteger(),c=this.y.toBigInteger(),p=n.x.toBigInteger(),w=n.y.toBigInteger(),u=i.square(),r=u.multiply(i),e=h.multiply(u),o=t.square().multiply(this.z),l=o.subtract(e.shiftLeft(1)).multiply(n.z).subtract(r).multiply(i).mod(this.curve.q),a=e.multiply(s).multiply(t).subtract(c.multiply(r)).subtract(o.multiply(t)).multiply(n.z).add(t.multiply(r)).mod(this.curve.q),v=r.multiply(this.z).multiply(n.z).mod(this.curve.q);return new y(this.curve,this.curve.fromBigInteger(l),this.curve.fromBigInteger(a),v)}function yc(){if(this.isInfinity())return this;if(this.y.toBigInteger().signum()==0)return this.curve.getInfinity();var u=new f("3"),i=this.x.toBigInteger(),e=this.y.toBigInteger(),t=e.multiply(this.z),r=t.multiply(e).mod(this.curve.q),o=this.curve.a.toBigInteger(),n=i.square().multiply(u);f.ZERO.equals(o)||(n=n.add(this.z.square().multiply(o)));n=n.mod(this.curve.q);var s=n.square().subtract(i.shiftLeft(3).multiply(r)).shiftLeft(1).multiply(t).mod(this.curve.q),h=n.multiply(u).multiply(i).subtract(r.shiftLeft(1)).shiftLeft(2).multiply(r).subtract(n.square().multiply(n)).mod(this.curve.q),c=t.square().multiply(t).shiftLeft(3).mod(this.curve.q);return new y(this.curve,this.curve.fromBigInteger(s),this.curve.fromBigInteger(h),c)}function pc(n){var r,o;if(this.isInfinity())return this;if(n.signum()==0)return this.curve.getInfinity();for(var u=n,e=u.multiply(new f("3")),s=this.negate(),t=this,i=e.bitLength()-2;i>0;--i)t=t.twice(),r=e.testBit(i),o=u.testBit(i),r!=o&&(t=t.add(r?this:s));return t}function wc(n,t,i){var u,r,f;for(u=n.bitLength()>i.bitLength()?n.bitLength()-1:i.bitLength()-1,r=this.curve.getInfinity(),f=this.add(t);u>=0;)r=r.twice(),n.testBit(u)?r=i.testBit(u)?r.add(f):r.add(this):i.testBit(u)&&(r=r.add(t)),--u;return r}function bt(n,t,i){this.q=n;this.a=this.fromBigInteger(t);this.b=this.fromBigInteger(i);this.infinity=new y(this,null,null)}function bc(){return this.q}function kc(){return this.a}function dc(){return this.b}function gc(n){return n==this?!0:this.q.equals(n.q)&&this.a.equals(n.a)&&this.b.equals(n.b)}function nl(){return this.infinity}function tl(n){return new it(this.q,n)}function il(n){switch(parseInt(n.substr(0,2),16)){case 0:return this.infinity;case 2:case 3:return null;case 4:case 6:case 7:var t=(n.length-2)/2,i=n.substr(2,t),r=n.substr(t+2,t);return new y(this,this.fromBigInteger(new f(i,16)),this.fromBigInteger(new f(r,16)));default:return null}}function gr(n){for(var i=[],t=0;t<n.length;t++)i[t]=n.charCodeAt(t);return i}function nu(n){for(var i="",t=0;t<n.length;t++)i=i+String.fromCharCode(n[t]);return i}function tu(n){for(var r="",t,i=0;i<n.length;i++)t=n[i].toString(16),t.length==1&&(t="0"+t),r=r+t;return r}function ct(n){return tu(gr(n))}function rl(n){return ti(ct(n))}function ul(n){return yi(ti(ct(n)))}function fl(n){return nu(cr(oi(n)))}function yi(n){return n=n.replace(/\=/g,""),n=n.replace(/\+/g,"-"),n.replace(/\//g,"_")}function oi(n){return n.length%4==2?n=n+"==":n.length%4==3&&(n=n+"="),n=n.replace(/-/g,"+"),n.replace(/_/g,"/")}function b(n){return n.length%2==1&&(n="0"+n),yi(ti(n))}function w(n){return st(oi(n))}function el(n){return ti(er(sr(n)))}function ol(n){return decodeURIComponent(or(st(n)))}function pi(n){return er(sr(n))}function ft(n){return decodeURIComponent(or(n))}function ui(n){for(var i="",t=0;t<n.length-1;t+=2)i+=String.fromCharCode(parseInt(n.substr(t,2),16));return i}function vt(n){for(var i="",t=0;t<n.length;t++)i+=("0"+n.charCodeAt(t).toString(16)).slice(-2);return i}function iu(n){return ti(n)}function er(n){return n.replace(/%/g,"")}function or(n){return n.replace(/(..)/g,"%$1")}function sr(n){for(var r=encodeURIComponent(n),i="",t=0;t<r.length;t++)r[t]=="%"?(i=i+r.substr(t,3),t=t+2):i=i+"%"+ct(r[t]);return i}function sl(n){return n.replace(/\r\n/mg,"\n")}function hl(n){return n=n.replace(/\r\n/mg,"\n"),n.replace(/\n/mg,"\r\n")}function cl(n){n=n.replace(/^\s*\[\s*/,"");n=n.replace(/\s*\]\s*$/,"");n=n.replace(/\s*/g,"");try{return n.split(/,/).map(function(n){var t=parseInt(n);if(t<0||255<t)throw"integer not in range 0-255";return("00"+t.toString(16)).slice(-2)}).join("")}catch(t){throw"malformed integer array string: "+t;}}function ll(n){var t=n;return t=t.replace("-----BEGIN RSA PRIVATE KEY-----",""),t=t.replace("-----END RSA PRIVATE KEY-----",""),t.replace(/[ \n]+/g,"")}function al(n){var t=[],i=u.getStartPosOfV_AtObj(n,0),r=u.getPosOfNextSibling_AtObj(n,i),f=u.getPosOfNextSibling_AtObj(n,r),e=u.getPosOfNextSibling_AtObj(n,f),o=u.getPosOfNextSibling_AtObj(n,e),s=u.getPosOfNextSibling_AtObj(n,o),h=u.getPosOfNextSibling_AtObj(n,s),c=u.getPosOfNextSibling_AtObj(n,h),l=u.getPosOfNextSibling_AtObj(n,c);return t.push(i,r,f,e,o,s,h,c,l),t}function bi(n){var t=al(n),r=u.getHexOfV_AtObj(n,t[0]),f=u.getHexOfV_AtObj(n,t[1]),e=u.getHexOfV_AtObj(n,t[2]),o=u.getHexOfV_AtObj(n,t[3]),s=u.getHexOfV_AtObj(n,t[4]),h=u.getHexOfV_AtObj(n,t[5]),c=u.getHexOfV_AtObj(n,t[6]),l=u.getHexOfV_AtObj(n,t[7]),a=u.getHexOfV_AtObj(n,t[8]),i=[];return i.push(r,f,e,o,s,h,c,l,a),i}function vl(n){var t=bi(n);this.setPrivateEx(t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8])}function yl(n){var i=ll(n),r=st(i),t=bi(r);this.setPrivateEx(t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8])}function uu(n,t){for(var i="",u=t/4-n.length,r=0;r<u;r++)i=i+"0";return i+n}function di(n,t){var i=function(n){return r.crypto.Util.hashString(n,t)},u=i(n);return this.signWithMessageHash(u,t)}function pl(n,t){var i=r.crypto.Util.getPaddedDigestInfoHex(n,t,this.n.bitLength()),u=nt(i,16),f=this.doPrivate(u),e=f.toString(16);return uu(e,this.n.bitLength())}function fu(n){return di.call(this,n,"sha1")}function eu(n){return di.call(this,n,"sha256")}function ou(n,t,i){for(var u="",r=0;u.length<t;)u+=ui(i(vt(n+String.fromCharCode.apply(String,[(r&4278190080)>>24,(r&16711680)>>16,(r&65280)>>8,r&255])))),r+=1;return u}function su(n,t,i){var u=function(n){return r.crypto.Util.hashHex(n,t)},f=u(vt(n));return i===undefined&&(i=-1),this.signWithMessageHashPSS(f,t,i)}function wl(n,t,i){var v=ui(n),o=v.length,y=this.n.bitLength()-1,h=Math.ceil(y/8),u,p=function(n){return r.crypto.Util.hashHex(n,t)},e,c,l,w;if(i===-1||i===undefined)i=o;else if(i===-2)i=h-o-2;else if(i<-2)throw"invalid salt length";if(h<o+i+2)throw"data too long";for(e="",i>0&&(e=new Array(i),(new ni).nextBytes(e),e=String.fromCharCode.apply(String,e)),c=ui(p(vt("\x00\x00\x00\x00\x00\x00\x00\x00"+v+e))),l=[],u=0;u<h-i-o-2;u+=1)l[u]=0;var a=String.fromCharCode.apply(String,l)+"\x01"+e,b=ou(c,a.length,p),s=[];for(u=0;u<a.length;u+=1)s[u]=a.charCodeAt(u)^b.charCodeAt(u);for(w=65280>>8*h-y&255,s[0]&=~w,u=0;u<o;u++)s.push(c.charCodeAt(u));return s.push(188),uu(this.doPrivate(new f(s)).toString(16),this.n.bitLength())}function bl(n,t,i){var r=new h;return r.setPublic(t,i),r.doPublic(n)}function kl(n,t,i){var r=bl(n,t,i);return r.toString(16).replace(/^1f+00/,"")}function hr(n){var t,i,u;for(t in r.crypto.Util.DIGESTINFOHEAD)if(i=r.crypto.Util.DIGESTINFOHEAD[t],u=i.length,n.substring(0,u)==i)return[t,n.substring(u)];return[]}function dl(n,t,i,u){var e=kl(t,i,u),f=hr(e);if(f.length==0)return!1;var o=f[0],s=f[1],h=function(n){return r.crypto.Util.hashString(n,o)},c=h(n);return s==c}function hu(n,t){var i=nt(n,16);return dl(t,i,this.n.toString(16),this.e.toString(16))}function cu(n,t){var i;if(t=t.replace(ki,""),t=t.replace(/[ \n]+/g,""),i=nt(t,16),i.bitLength()>this.n.bitLength())return 0;var f=this.doPublic(i),e=f.toString(16).replace(/^1f+00/,""),u=hr(e);if(u.length==0)return!1;var o=u[0],s=u[1],h=function(n){return r.crypto.Util.hashString(n,o)},c=h(n);return s==c}function gl(n,t){var i,o,u;if(t=t.replace(ki,""),t=t.replace(/[ \n]+/g,""),i=nt(t,16),i.bitLength()>this.n.bitLength())return 0;var f=this.doPublic(i),e=f.toString(16).replace(/^1f+00/,""),r=hr(e);return r.length==0?!1:(o=r[0],u=r[1],u==n)}function lu(n,t,i,u){var f=function(n){return r.crypto.Util.hashHex(n,i)},e=f(vt(n));return u===undefined&&(u=-1),this.verifyWithMessageHashPSS(e,t,i,u)}function na(n,t,i,u){var v=new f(t,16),o,d,c,a;if(v.bitLength()>this.n.bitLength())return!1;var y=function(n){return r.crypto.Util.hashHex(n,i)},p=ui(n),h=p.length,w=this.n.bitLength()-1,s=Math.ceil(w/8),e;if(u===-1||u===undefined)u=h;else if(u===-2)u=s-h-2;else if(u<-2)throw"invalid salt length";if(s<h+u+2)throw"data too long";for(o=this.doPublic(v).toByteArray(),e=0;e<o.length;e+=1)o[e]&=255;while(o.length<s)o.unshift(0);if(o[s-1]!==188)throw"encoded message does not end in 0xbc";o=String.fromCharCode.apply(String,o);var l=o.substr(0,s-h-1),b=o.substr(l.length,h),k=65280>>8*s-w&255;if((l.charCodeAt(0)&k)!=0)throw"bits beyond keysize not zero";for(d=ou(b,l.length,y),c=[],e=0;e<l.length;e+=1)c[e]=l.charCodeAt(e)^d.charCodeAt(e);for(c[0]&=~k,a=s-h-u-2,e=0;e<a;e+=1)if(c[e]!==0)throw"leftmost octets not zero";if(c[a]!==1)throw"0x01 marker not found";return b===ui(y(vt("\x00\x00\x00\x00\x00\x00\x00\x00"+p+String.fromCharCode.apply(String,c.slice(-u)))))}function c(){this.subjectPublicKeyRSA=null;this.subjectPublicKeyRSA_hN=null;this.subjectPublicKeyRSA_hE=null;this.hex=null;this.getSerialNumberHex=function(){return u.getDecendantHexVByNthList(this.hex,0,[0,1])};this.getSignatureAlgorithmField=function(){var n=u.getDecendantHexVByNthList(this.hex,0,[0,2,0]),t=r.asn1.ASN1Util.oidHexToInt(n);return r.asn1.x509.OID.oid2name(t)};this.getIssuerHex=function(){return u.getDecendantHexTLVByNthList(this.hex,0,[0,3])};this.getIssuerString=function(){return c.hex2dn(u.getDecendantHexTLVByNthList(this.hex,0,[0,3]))};this.getSubjectHex=function(){return u.getDecendantHexTLVByNthList(this.hex,0,[0,5])};this.getSubjectString=function(){return c.hex2dn(u.getDecendantHexTLVByNthList(this.hex,0,[0,5]))};this.getNotBefore=function(){var n=u.getDecendantHexVByNthList(this.hex,0,[0,4,0]);return n=n.replace(/(..)/g,"%$1"),decodeURIComponent(n)};this.getNotAfter=function(){var n=u.getDecendantHexVByNthList(this.hex,0,[0,4,1]);return n=n.replace(/(..)/g,"%$1"),decodeURIComponent(n)};this.readCertPEM=function(n){var i=c.pemToHex(n),t=c.getPublicKeyHexArrayFromCertHex(i),r=new h;r.setPublic(t[0],t[1]);this.subjectPublicKeyRSA=r;this.subjectPublicKeyRSA_hN=t[0];this.subjectPublicKeyRSA_hE=t[1];this.hex=i};this.readCertPEMWithoutRSAInit=function(n){var i=c.pemToHex(n),t=c.getPublicKeyHexArrayFromCertHex(i);this.subjectPublicKeyRSA.setPublic(t[0],t[1]);this.subjectPublicKeyRSA_hN=t[0];this.subjectPublicKeyRSA_hE=t[1];this.hex=i};this.getInfo=function(){var n="Basic Fields\n",l,f,e,t,v,o,y,p,w,b,i;n+="  serial number: "+this.getSerialNumberHex()+"\n";n+="  signature algorithm: "+this.getSignatureAlgorithmField()+"\n";n+="  issuer: "+this.getIssuerString()+"\n";n+="  notBefore: "+this.getNotBefore()+"\n";n+="  notAfter: "+this.getNotAfter()+"\n";n+="  subject: "+this.getSubjectString()+"\n";n+="  subject public key info: \n";var k=c.getSubjectPublicKeyInfoPosFromCertHex(this.hex),d=u.getHexOfTLV_AtObj(this.hex,k),s=a.getKey(d,null,"pkcs8pub");for(s instanceof h&&(n+="    key algorithm: RSA\n",n+="    n="+s.n.toString(16).substr(0,16)+"...\n",n+="    e="+s.e.toString(16)+"\n"),n+="X509v3 Extensions:\n",l=c.getV3ExtInfoListOfCertHex(this.hex),f=0;f<l.length;f++)e=l[f],t=r.asn1.x509.OID.oid2name(e.oid),t===""&&(t=e.oid),v="",e.critical===!0&&(v="CRITICAL"),n+="  "+t+" "+v+":\n",t==="basicConstraints"?(o=c.getExtBasicConstraints(this.hex),o.cA===undefined?n+="    {}\n":(n+="    cA=true",o.pathLen!==undefined&&(n+=", pathLen="+o.pathLen),n+="\n")):t==="keyUsage"?n+="    "+c.getExtKeyUsageString(this.hex)+"\n":t==="subjectKeyIdentifier"?n+="    "+c.getExtSubjectKeyIdentifier(this.hex)+"\n":t==="authorityKeyIdentifier"?(y=c.getExtAuthorityKeyIdentifier(this.hex),y.kid!==undefined&&(n+="    kid="+y.kid+"\n")):t==="extKeyUsage"?(p=c.getExtExtKeyUsageName(this.hex),n+="    "+p.join(", ")+"\n"):t==="subjectAltName"?(w=c.getExtSubjectAltName(this.hex),n+="    "+w.join(", ")+"\n"):t==="cRLDistributionPoints"?(b=c.getExtCRLDistributionPointsURI(this.hex),n+="    "+b+"\n"):t==="authorityInfoAccess"&&(i=c.getExtAIAInfo(this.hex),i.ocsp!==undefined&&(n+="    ocsp: "+i.ocsp.join(",")+"\n"),i.caissuer!==undefined&&(n+="    caissuer: "+i.caissuer.join(",")+"\n"));return n+="signature algorithm: "+c.getSignatureAlgorithmName(this.hex)+"\n",n+("signature: "+c.getSignatureValueHex(this.hex).substr(0,16)+"...\n")}}function ta(n){return i(343).readFileSync(n,"utf8")}function ia(n){var t=i(338),r=i(343);return t.rstrtohex(r.readFileSync(n,"binary"))}function ra(n){var t=i(343);return t.readFileSync(n,"binary")}function ua(n,t){var r=i(343);r.writeFileSync(n,t,"binary")}function fa(n,t){var r=i(343),u=i(338),f=u.hextorstr(t);r.writeFileSync(n,f,"binary")}var yt={},lt,o,e,kt,hi,pt,lr,gi,ci,ar,fi,ii,et,tt,br,ai,vi,rt,d,ht,rr,ur,ut,fr,u,r,si,ot,ru,wi,a,ki;for(yt.userAgent=!1,lt={},typeof o!="undefined"&&o||(o={}),o.namespace=function(){for(var u=arguments,t=null,n,i,r=0;r<u.length;r=r+1)for(i=(""+u[r]).split("."),t=o,n=i[0]=="YAHOO"?1:0;n<i.length;n=n+1)t[i[n]]=t[i[n]]||{},t=t[i[n]];return t},o.log=function(n,t,i){var r=o.widget.Logger;return r&&r.log?r.log(n,t,i):!1},o.register=function(n,t,i){var s=o.env.modules,r,f,e,h,u;for(s[n]||(s[n]={versions:[],builds:[]}),r=s[n],f=i.version,e=i.build,h=o.env.listeners,r.name=n,r.version=f,r.build=e,r.versions.push(f),r.builds.push(e),r.mainClass=t,u=0;u<h.length;u=u+1)h[u](r);t?(t.VERSION=f,t.BUILD=e):o.log("mainClass is undefined for module "+n,"warn")},o.env=o.env||{modules:[],listeners:[]},o.env.getVersion=function(n){return o.env.modules[n]||null},o.env.parseUA=function(n){var u=function(n){var t=0;return parseFloat(n.replace(/\./g,function(){return t++==1?"":"."}))},f=yt,i={ie:0,opera:0,gecko:0,webkit:0,chrome:0,mobile:null,air:0,ipad:0,iphone:0,ipod:0,ios:null,android:0,webos:0,caja:f&&f.cajaVersion,secure:!1,os:null},r=n||yt&&yt.userAgent,e=lt&&lt.location,o=e&&e.href,t;return i.secure=o&&o.toLowerCase().indexOf("https")===0,r&&(/windows|win32/i.test(r)?i.os="windows":/macintosh/i.test(r)?i.os="macintosh":/rhino/i.test(r)&&(i.os="rhino"),/KHTML/.test(r)&&(i.webkit=1),t=r.match(/AppleWebKit\/([^\s]*)/),t&&t[1]&&(i.webkit=u(t[1]),/ Mobile\//.test(r)?(i.mobile="Apple",t=r.match(/OS ([^\s]*)/),t&&t[1]&&(t=u(t[1].replace("_","."))),i.ios=t,i.ipad=i.ipod=i.iphone=0,t=r.match(/iPad|iPod|iPhone/),t&&t[0]&&(i[t[0].toLowerCase()]=i.ios)):(t=r.match(/NokiaN[^\/]*|Android \d\.\d|webOS\/\d\.\d/),t&&(i.mobile=t[0]),/webOS/.test(r)&&(i.mobile="WebOS",t=r.match(/webOS\/([^\s]*);/),t&&t[1]&&(i.webos=u(t[1]))),/ Android/.test(r)&&(i.mobile="Android",t=r.match(/Android ([^\s]*);/),t&&t[1]&&(i.android=u(t[1])))),t=r.match(/Chrome\/([^\s]*)/),t&&t[1]?i.chrome=u(t[1]):(t=r.match(/AdobeAIR\/([^\s]*)/),t&&(i.air=t[0]))),i.webkit||(t=r.match(/Opera[\s\/]([^\s]*)/),t&&t[1]?(i.opera=u(t[1]),t=r.match(/Version\/([^\s]*)/),t&&t[1]&&(i.opera=u(t[1])),t=r.match(/Opera Mini[^;]*/),t&&(i.mobile=t[0])):(t=r.match(/MSIE\s([^;]*)/),t&&t[1]?i.ie=u(t[1]):(t=r.match(/Gecko\/([^\s]*)/),t&&(i.gecko=1,t=r.match(/rv:([^\s\)]*)/),t&&t[1]&&(i.gecko=u(t[1]))))))),i},o.env.ua=o.env.parseUA(),function(){if(o.namespace("util","widget","example"),"undefined"!=typeof YAHOO_config){var t=YAHOO_config.listener,i=o.env.listeners,r=!0,n;if(t){for(n=0;n<i.length;n++)if(i[n]==t){r=!1;break}r&&i.push(t)}}}(),o.lang=o.lang||{},function(){var n=o.lang,t=Object.prototype,u="[object Array]",f="[object Function]",e="[object Object]",s=[],h={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","/":"&#x2F;","`":"&#x60;"},i=["toString","valueOf"],r={isArray:function(n){return t.toString.apply(n)===u},isBoolean:function(n){return typeof n=="boolean"},isFunction:function(n){return typeof n=="function"||t.toString.apply(n)===f},isNull:function(n){return n===null},isNumber:function(n){return typeof n=="number"&&isFinite(n)},isObject:function(t){return t&&(typeof t=="object"||n.isFunction(t))||!1},isString:function(n){return typeof n=="string"},isUndefined:function(n){return typeof n=="undefined"},_IEEnumFix:o.env.ua.ie?function(r,u){for(var e,o,f=0;f<i.length;f=f+1)e=i[f],o=u[e],n.isFunction(o)&&o!=t[e]&&(r[e]=o)}:function(){},escapeHTML:function(n){return n.replace(/[&<>"'\/`]/g,function(n){return h[n]})},extend:function(i,r,u){if(!r||!i)throw new Error("extend failed, please check that all dependencies are included.");var e=function(){},f;if(e.prototype=r.prototype,i.prototype=new e,i.prototype.constructor=i,i.superclass=r.prototype,r.prototype.constructor==t.constructor&&(r.prototype.constructor=r),u){for(f in u)n.hasOwnProperty(u,f)&&(i.prototype[f]=u[f]);n._IEEnumFix(i.prototype,u)}},augmentObject:function(t,i){if(!i||!t)throw new Error("Absorb failed, verify dependencies.");var u=arguments,r,f,e=u[2];if(e&&e!==!0)for(r=2;r<u.length;r=r+1)t[u[r]]=i[u[r]];else{for(f in i)!e&&f in t||(t[f]=i[f]);n._IEEnumFix(t,i)}return t},augmentProto:function(t,i){if(!i||!t)throw new Error("Augment failed, verify dependencies.");for(var u=[t.prototype,i.prototype],r=2;r<arguments.length;r=r+1)u.push(arguments[r]);return n.augmentObject.apply(this,u),t},dump:function(t,i){var u,f,r=[],e="{...}",o=", ";if(n.isObject(t)){if(t instanceof Date||"nodeType"in t&&"tagName"in t)return t;if(n.isFunction(t))return"f(){...}"}else return t+"";if(i=n.isNumber(i)?i:3,n.isArray(t)){for(r.push("["),u=0,f=t.length;u<f;u=u+1)n.isObject(t[u])?r.push(i>0?n.dump(t[u],i-1):e):r.push(t[u]),r.push(o);r.length>1&&r.pop();r.push("]")}else{r.push("{");for(u in t)n.hasOwnProperty(t,u)&&(r.push(u+" => "),n.isObject(t[u])?r.push(i>0?n.dump(t[u],i-1):e):r.push(t[u]),r.push(o));r.length>1&&r.pop();r.push("}")}return r.join("")},substitute:function(t,i,r,u){for(var o,l,a,h,f,s,c=[],v,w=t.length,y,p;;){if(o=t.lastIndexOf("{",w),o<0)break;if(l=t.indexOf("}",o),o+1>l)break;v=t.substring(o+1,l);h=v;s=null;a=h.indexOf(" ");a>-1&&(s=h.substring(a+1),h=h.substring(0,a));f=i[h];r&&(f=r(h,f,s));n.isObject(f)?n.isArray(f)?f=n.dump(f,parseInt(s,10)):(s=s||"",y=s.indexOf("dump"),y>-1&&(s=s.substring(4)),p=f.toString(),f=p===e||y>-1?n.dump(f,parseInt(s,10)):p):n.isString(f)||n.isNumber(f)||(f="~-"+c.length+"-~",c[c.length]=v);t=t.substring(0,o)+f+t.substring(l+1);u===!1&&(w=o-1)}for(o=c.length-1;o>=0;o=o-1)t=t.replace(new RegExp("~-"+o+"-~"),"{"+c[o]+"}","g");return t},trim:function(n){try{return n.replace(/^\s+|\s+$/g,"")}catch(t){return n}},merge:function(){for(var i={},r=arguments,u=r.length,t=0;t<u;t=t+1)n.augmentObject(i,r[t],!0);return i},later:function(t,i,r,u,f){t=t||0;i=i||{};var e=r,o=u,h,c;if(n.isString(r)&&(e=i[r]),!e)throw new TypeError("method undefined");return n.isUndefined(u)||n.isArray(o)||(o=[u]),h=function(){e.apply(i,o||s)},c=f?setInterval(h,t):setTimeout(h,t),{interval:f,cancel:function(){this.interval?clearInterval(c):clearTimeout(c)}}},isValue:function(t){return n.isObject(t)||n.isString(t)||n.isNumber(t)||n.isBoolean(t)}};n.hasOwnProperty=t.hasOwnProperty?function(n,t){return n&&n.hasOwnProperty&&n.hasOwnProperty(t)}:function(t,i){return!n.isUndefined(t[i])&&t.constructor.prototype[i]!==t[i]};r.augmentObject(n,r,!0);o.util.Lang=n;n.augment=n.augmentProto;o.augment=n.augmentProto;o.extend=n.extend}(),o.register("yahoo",o,{version:"2.9.0",build:"2800"}),e=e||function(n,t){var u={},f=u.lib={},i=f.Base=function(){function n(){}return{extend:function(t){n.prototype=this;var i=new n;return t&&i.mixIn(t),i.hasOwnProperty("init")||(i.init=function(){i.$super.init.apply(this,arguments)}),i.init.prototype=i,i.$super=this,i},create:function(){var n=this.extend();return n.init.apply(n,arguments),n},init:function(){},mixIn:function(n){for(var t in n)n.hasOwnProperty(t)&&(this[t]=n[t]);n.hasOwnProperty("toString")&&(this.toString=n.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),r=f.WordArray=i.extend({init:function(n,i){n=this.words=n||[];this.sigBytes=i!=t?i:n.length*4},toString:function(n){return(n||h).stringify(this)},concat:function(n){var u=this.words,f=n.words,i=this.sigBytes,r=n.sigBytes,e,t;if(this.clamp(),i%4)for(t=0;t<r;t++)e=f[t>>>2]>>>24-t%4*8&255,u[i+t>>>2]|=e<<24-(i+t)%4*8;else for(t=0;t<r;t+=4)u[i+t>>>2]=f[t>>>2];return this.sigBytes+=r,this},clamp:function(){var i=this.words,t=this.sigBytes;i[t>>>2]&=4294967295<<32-t%4*8;i.length=n.ceil(t/4)},clone:function(){var n=i.clone.call(this);return n.words=this.words.slice(0),n},random:function(t){for(var u=[],i=0;i<t;i+=4)u.push(n.random()*4294967296|0);return new r.init(u,t)}}),e=u.enc={},h=e.Hex={stringify:function(n){for(var u=n.words,f=n.sigBytes,i=[],r,t=0;t<f;t++)r=u[t>>>2]>>>24-t%4*8&255,i.push((r>>>4).toString(16)),i.push((r&15).toString(16));return i.join("")},parse:function(n){for(var i=n.length,u=[],t=0;t<i;t+=2)u[t>>>3]|=parseInt(n.substr(t,2),16)<<24-t%8*4;return new r.init(u,i/2)}},o=e.Latin1={stringify:function(n){for(var u=n.words,f=n.sigBytes,i=[],r,t=0;t<f;t++)r=u[t>>>2]>>>24-t%4*8&255,i.push(String.fromCharCode(r));return i.join("")},parse:function(n){for(var i=n.length,u=[],t=0;t<i;t++)u[t>>>2]|=(n.charCodeAt(t)&255)<<24-t%4*8;return new r.init(u,i)}},c=e.Utf8={stringify:function(n){try{return decodeURIComponent(escape(o.stringify(n)))}catch(t){throw new Error("Malformed UTF-8 data");}},parse:function(n){return o.parse(unescape(encodeURIComponent(n)))}},s=f.BufferedBlockAlgorithm=i.extend({reset:function(){this._data=new r.init;this._nDataBytes=0},_append:function(n){typeof n=="string"&&(n=c.parse(n));this._data.concat(n);this._nDataBytes+=n.sigBytes},_process:function(t){var e=this._data,h=e.words,c=e.sigBytes,o=this.blockSize,a=o*4,u=c/a,i,s,f,l;if(u=t?n.ceil(u):n.max((u|0)-this._minBufferSize,0),i=u*o,s=n.min(i*4,c),i){for(f=0;f<i;f+=o)this._doProcessBlock(h,f);l=h.splice(0,i);e.sigBytes-=s}return new r.init(l,s)},clone:function(){var n=i.clone.call(this);return n._data=this._data.clone(),n},_minBufferSize:0}),a=f.Hasher=s.extend({cfg:i.extend(),init:function(n){this.cfg=this.cfg.extend(n);this.reset()},reset:function(){s.reset.call(this);this._doReset()},update:function(n){return this._append(n),this._process(),this},finalize:function(n){n&&this._append(n);return this._doFinalize()},blockSize:16,_createHelper:function(n){return function(t,i){return new n.init(i).finalize(t)}},_createHmacHelper:function(n){return function(t,i){return new l.HMAC.init(n,i).finalize(t)}}}),l=u.algo={};return u}(Math),function(n){var t=e,r=t.lib,i=r.Base,u=r.WordArray,t=t.x64={};t.Word=i.extend({init:function(n,t){this.high=n;this.low=t}});t.WordArray=i.extend({init:function(t,i){t=this.words=t||[];this.sigBytes=i!=n?i:8*t.length},toX32:function(){for(var i,r=this.words,f=r.length,n=[],t=0;t<f;t++)i=r[t],n.push(i.high),n.push(i.low);return u.create(n,this.sigBytes)},clone:function(){for(var r=i.clone.call(this),t=r.words=this.words.slice(0),u=t.length,n=0;n<u;n++)t[n]=t[n].clone();return r}})}(),e.lib.Cipher||function(n){var i=e,t=i.lib,f=t.Base,o=t.WordArray,l=t.BufferedBlockAlgorithm,a=i.enc.Base64,p=i.algo.EvpKDF,h=t.Cipher=l.extend({cfg:f.extend(),createEncryptor:function(n,t){return this.create(this._ENC_XFORM_MODE,n,t)},createDecryptor:function(n,t){return this.create(this._DEC_XFORM_MODE,n,t)},init:function(n,t,i){this.cfg=this.cfg.extend(i);this._xformMode=n;this._key=t;this.reset()},reset:function(){l.reset.call(this);this._doReset()},process:function(n){return this._append(n),this._process()},finalize:function(n){return n&&this._append(n),this._doFinalize()},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(n){return{encrypt:function(t,i,r){return("string"==typeof i?y:u).encrypt(n,t,i,r)},decrypt:function(t,i,r){return("string"==typeof i?y:u).decrypt(n,t,i,r)}}}});t.StreamCipher=h.extend({_doFinalize:function(){return this._process(!0)},blockSize:1});var s=i.mode={},v=function(t,i,r){var f=this._iv,u;for(f?this._iv=n:f=this._prevBlock,u=0;u<r;u++)t[i+u]^=f[u]},r=(t.BlockCipherMode=f.extend({createEncryptor:function(n,t){return this.Encryptor.create(n,t)},createDecryptor:function(n,t){return this.Decryptor.create(n,t)},init:function(n,t){this._cipher=n;this._iv=t}})).extend();r.Encryptor=r.extend({processBlock:function(n,t){var i=this._cipher,r=i.blockSize;v.call(this,n,t,r);i.encryptBlock(n,t);this._prevBlock=n.slice(t,t+r)}});r.Decryptor=r.extend({processBlock:function(n,t){var i=this._cipher,r=i.blockSize,u=n.slice(t,t+r);i.decryptBlock(n,t);v.call(this,n,t,r);this._prevBlock=u}});s=s.CBC=r;r=(i.pad={}).Pkcs7={pad:function(n,t){for(var i=4*t,i=i-n.sigBytes%i,f=i<<24|i<<16|i<<8|i,r=[],u=0;u<i;u+=4)r.push(f);i=o.create(r,i);n.concat(i)},unpad:function(n){n.sigBytes-=n.words[n.sigBytes-1>>>2]&255}};t.BlockCipher=h.extend({cfg:h.cfg.extend({mode:s,padding:r}),reset:function(){var t;h.reset.call(this);var n=this.cfg,i=n.iv,n=n.mode;this._xformMode==this._ENC_XFORM_MODE?t=n.createEncryptor:(t=n.createDecryptor,this._minBufferSize=1);this._mode=t.call(n,this,i&&i.words)},_doProcessBlock:function(n,t){this._mode.processBlock(n,t)},_doFinalize:function(){var t=this.cfg.padding,n;return this._xformMode==this._ENC_XFORM_MODE?(t.pad(this._data,this.blockSize),n=this._process(!0)):(n=this._process(!0),t.unpad(n)),n},blockSize:4});var c=t.CipherParams=f.extend({init:function(n){this.mixIn(n)},toString:function(n){return(n||this.formatter).stringify(this)}}),s=(i.format={}).OpenSSL={stringify:function(n){var t=n.ciphertext;return n=n.salt,(n?o.create([1398893684,1701076831]).concat(n).concat(t):t).toString(a)},parse:function(n){var t,i;return n=a.parse(n),t=n.words,1398893684==t[0]&&1701076831==t[1]&&(i=o.create(t.slice(2,4)),t.splice(0,4),n.sigBytes-=16),c.create({ciphertext:n,salt:i})}},u=t.SerializableCipher=f.extend({cfg:f.extend({format:s}),encrypt:function(n,t,i,r){r=this.cfg.extend(r);var u=n.createEncryptor(i,r);return t=u.finalize(t),u=u.cfg,c.create({ciphertext:t,key:i,iv:u.iv,algorithm:n,mode:u.mode,padding:u.padding,blockSize:n.blockSize,formatter:r.format})},decrypt:function(n,t,i,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),n.createDecryptor(i,r).finalize(t.ciphertext)},_parse:function(n,t){return"string"==typeof n?t.parse(n,this):n}}),i=(i.kdf={}).OpenSSL={execute:function(n,t,i,r){return r||(r=o.random(8)),n=p.create({keySize:t+i}).compute(n,r),i=o.create(n.words.slice(t),4*i),n.sigBytes=4*t,c.create({key:n,iv:i,salt:r})}},y=t.PasswordBasedCipher=u.extend({cfg:u.cfg.extend({kdf:i}),encrypt:function(n,t,i,r){return r=this.cfg.extend(r),i=r.kdf.execute(i,n.keySize,n.ivSize),r.iv=i.iv,n=u.encrypt.call(this,n,t,i.key,r),n.mixIn(i),n},decrypt:function(n,t,i,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),i=r.kdf.execute(i,n.keySize,n.ivSize,t.salt),r.iv=i.iv,u.decrypt.call(this,n,t,i.key,r)}})}(),function(){for(var i,it,c=e,p=c.lib.BlockCipher,s=c.algo,t=[],w=[],b=[],k=[],d=[],g=[],l=[],a=[],v=[],y=[],u=[],f=0;256>f;f++)u[f]=128>f?f<<1:f<<1^283;for(var r=0,o=0,f=0;256>f;f++){i=o^o<<1^o<<2^o<<3^o<<4;i=i>>>8^i&255^99;t[r]=i;w[i]=r;var h=u[r],nt=u[h],tt=u[nt],n=257*u[i]^16843008*i;b[r]=n<<24|n>>>8;k[r]=n<<16|n>>>16;d[r]=n<<8|n>>>24;g[r]=n;n=16843009*tt^65537*nt^257*h^16843008*r;l[i]=n<<24|n>>>8;a[i]=n<<16|n>>>16;v[i]=n<<8|n>>>24;y[i]=n;r?(r=h^u[u[u[tt^h]]],o^=u[u[o]]):r=o=1}it=[0,1,2,4,8,16,32,64,128,27,54];s=s.AES=p.extend({_doReset:function(){for(var n,u=this._key,e=u.words,r=u.sigBytes/4,u=4*((this._nRounds=r+6)+1),f=this._keySchedule=[],i=0;i<u;i++)i<r?f[i]=e[i]:(n=f[i-1],i%r?6<r&&4==i%r&&(n=t[n>>>24]<<24|t[n>>>16&255]<<16|t[n>>>8&255]<<8|t[n&255]):(n=n<<8|n>>>24,n=t[n>>>24]<<24|t[n>>>16&255]<<16|t[n>>>8&255]<<8|t[n&255],n^=it[i/r|0]<<24),f[i]=f[i-r]^n);for(e=this._invKeySchedule=[],r=0;r<u;r++)i=u-r,n=r%4?f[i]:f[i-4],e[r]=4>r||4>=i?n:l[t[n>>>24]]^a[t[n>>>16&255]]^v[t[n>>>8&255]]^y[t[n&255]]},encryptBlock:function(n,i){this._doCryptBlock(n,i,this._keySchedule,b,k,d,g,t)},decryptBlock:function(n,t){var i=n[t+1];n[t+1]=n[t+3];n[t+3]=i;this._doCryptBlock(n,t,this._invKeySchedule,l,a,v,y,w);i=n[t+1];n[t+1]=n[t+3];n[t+3]=i},_doCryptBlock:function(n,t,i,r,u,f,e,o){for(var b=this._nRounds,h=n[t]^i[0],c=n[t+1]^i[1],l=n[t+2]^i[2],s=n[t+3]^i[3],a=4,w=1;w<b;w++)var v=r[h>>>24]^u[c>>>16&255]^f[l>>>8&255]^e[s&255]^i[a++],y=r[c>>>24]^u[l>>>16&255]^f[s>>>8&255]^e[h&255]^i[a++],p=r[l>>>24]^u[s>>>16&255]^f[h>>>8&255]^e[c&255]^i[a++],s=r[s>>>24]^u[h>>>16&255]^f[c>>>8&255]^e[l&255]^i[a++],h=v,c=y,l=p;v=(o[h>>>24]<<24|o[c>>>16&255]<<16|o[l>>>8&255]<<8|o[s&255])^i[a++];y=(o[c>>>24]<<24|o[l>>>16&255]<<16|o[s>>>8&255]<<8|o[h&255])^i[a++];p=(o[l>>>24]<<24|o[s>>>16&255]<<16|o[h>>>8&255]<<8|o[c&255])^i[a++];s=(o[s>>>24]<<24|o[h>>>16&255]<<16|o[c>>>8&255]<<8|o[l&255])^i[a++];n[t]=v;n[t+1]=y;n[t+2]=p;n[t+3]=s},keySize:8});c.AES=p._createHelper(s)}(),function(){function t(n,t){var i=(this._lBlock>>>n^this._rBlock)&t;this._rBlock^=i;this._lBlock^=i<<n}function i(n,t){var i=(this._rBlock>>>n^this._lBlock)&t;this._lBlock^=i;this._rBlock^=i<<n}var r=e,n=r.lib,o=n.WordArray,n=n.BlockCipher,u=r.algo,h=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],s=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],c=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],l=[{"0":8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{"0":1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{"0":260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{"0":2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{"0":128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{"0":268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{"0":1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{"0":134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],a=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],f=u.DES=n.extend({_doReset:function(){for(var i,u=this._key.words,r=[],n=0;56>n;n++)i=h[n]-1,r[n]=u[i>>>5]>>>31-i%32&1;for(u=this._subKeys=[],i=0;16>i;i++){for(var t=u[i]=[],f=c[i],n=0;24>n;n++)t[n/6|0]|=r[(s[n]-1+f)%28]<<31-n%6,t[4+(n/6|0)]|=r[28+(s[n+24]-1+f)%28]<<31-n%6;for(t[0]=t[0]<<1|t[0]>>>31,n=1;7>n;n++)t[n]>>>=4*(n-1)+3;t[7]=t[7]<<5|t[7]>>>27}for(r=this._invSubKeys=[],n=0;16>n;n++)r[n]=u[15-n]},encryptBlock:function(n,t){this._doCryptBlock(n,t,this._subKeys)},decryptBlock:function(n,t){this._doCryptBlock(n,t,this._invSubKeys)},_doCryptBlock:function(n,r,u){var e;for(this._lBlock=n[r],this._rBlock=n[r+1],t.call(this,4,252645135),t.call(this,16,65535),i.call(this,2,858993459),i.call(this,8,16711935),t.call(this,1,1431655765),e=0;16>e;e++){for(var h=u[e],c=this._lBlock,o=this._rBlock,s=0,f=0;8>f;f++)s|=l[f][((o^h[f])&a[f])>>>0];this._lBlock=o;this._rBlock=c^s}u=this._lBlock;this._lBlock=this._rBlock;this._rBlock=u;t.call(this,1,1431655765);i.call(this,8,16711935);i.call(this,2,858993459);t.call(this,16,65535);t.call(this,4,252645135);n[r]=this._lBlock;n[r+1]=this._rBlock},keySize:2,ivSize:2,blockSize:2});r.DES=n._createHelper(f);u=u.TripleDES=n.extend({_doReset:function(){var n=this._key.words;this._des1=f.createEncryptor(o.create(n.slice(0,2)));this._des2=f.createEncryptor(o.create(n.slice(2,4)));this._des3=f.createEncryptor(o.create(n.slice(4,6)))},encryptBlock:function(n,t){this._des1.encryptBlock(n,t);this._des2.decryptBlock(n,t);this._des3.encryptBlock(n,t)},decryptBlock:function(n,t){this._des3.decryptBlock(n,t);this._des2.encryptBlock(n,t);this._des1.decryptBlock(n,t)},keySize:6,ivSize:2,blockSize:2});r.TripleDES=n._createHelper(u)}(),function(){var n=e,t=n.lib.WordArray;n.enc.Base64={stringify:function(n){var i=n.words,u=n.sigBytes,f=this._map,t,e,r;for(n.clamp(),n=[],t=0;t<u;t+=3)for(e=(i[t>>>2]>>>24-8*(t%4)&255)<<16|(i[t+1>>>2]>>>24-8*((t+1)%4)&255)<<8|i[t+2>>>2]>>>24-8*((t+2)%4)&255,r=0;4>r&&t+.75*r<u;r++)n.push(f.charAt(e>>>6*(3-r)&63));if(i=f.charAt(64))for(;n.length%4;)n.push(i);return n.join("")},parse:function(n){var e=n.length,f=this._map,i=f.charAt(64),o,s;i&&(i=n.indexOf(i),-1!=i&&(e=i));for(var i=[],u=0,r=0;r<e;r++)r%4&&(o=f.indexOf(n.charAt(r-1))<<2*(r%4),s=f.indexOf(n.charAt(r))>>>6-2*(r%4),i[u>>>2]|=(o|s)<<24-8*(u%4),u++);return t.create(i,u)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}}(),function(n){function i(n,t,i,r,u,f,e){return n=n+(t&i|~t&r)+u+e,(n<<f|n>>>32-f)+t}function r(n,t,i,r,u,f,e){return n=n+(t&r|i&~r)+u+e,(n<<f|n>>>32-f)+t}function u(n,t,i,r,u,f,e){return n=n+(t^i^r)+u+e,(n<<f|n>>>32-f)+t}function f(n,t,i,r,u,f,e){return n=n+(i^(t|~r))+u+e,(n<<f|n>>>32-f)+t}for(var s=e,o=s.lib,l=o.WordArray,h=o.Hasher,o=s.algo,t=[],c=0;64>c;c++)t[c]=4294967296*n.abs(n.sin(c+1))|0;o=o.MD5=h.extend({_doReset:function(){this._hash=new l.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(n,e){for(var v,a,l=0;16>l;l++)v=e+l,a=n[v],n[v]=(a<<8|a>>>24)&16711935|(a<<24|a>>>8)&4278255360;var l=this._hash.words,v=n[e+0],a=n[e+1],y=n[e+2],p=n[e+3],w=n[e+4],b=n[e+5],k=n[e+6],d=n[e+7],g=n[e+8],nt=n[e+9],tt=n[e+10],it=n[e+11],rt=n[e+12],ut=n[e+13],ft=n[e+14],et=n[e+15],o=l[0],s=l[1],h=l[2],c=l[3],o=i(o,s,h,c,v,7,t[0]),c=i(c,o,s,h,a,12,t[1]),h=i(h,c,o,s,y,17,t[2]),s=i(s,h,c,o,p,22,t[3]),o=i(o,s,h,c,w,7,t[4]),c=i(c,o,s,h,b,12,t[5]),h=i(h,c,o,s,k,17,t[6]),s=i(s,h,c,o,d,22,t[7]),o=i(o,s,h,c,g,7,t[8]),c=i(c,o,s,h,nt,12,t[9]),h=i(h,c,o,s,tt,17,t[10]),s=i(s,h,c,o,it,22,t[11]),o=i(o,s,h,c,rt,7,t[12]),c=i(c,o,s,h,ut,12,t[13]),h=i(h,c,o,s,ft,17,t[14]),s=i(s,h,c,o,et,22,t[15]),o=r(o,s,h,c,a,5,t[16]),c=r(c,o,s,h,k,9,t[17]),h=r(h,c,o,s,it,14,t[18]),s=r(s,h,c,o,v,20,t[19]),o=r(o,s,h,c,b,5,t[20]),c=r(c,o,s,h,tt,9,t[21]),h=r(h,c,o,s,et,14,t[22]),s=r(s,h,c,o,w,20,t[23]),o=r(o,s,h,c,nt,5,t[24]),c=r(c,o,s,h,ft,9,t[25]),h=r(h,c,o,s,p,14,t[26]),s=r(s,h,c,o,g,20,t[27]),o=r(o,s,h,c,ut,5,t[28]),c=r(c,o,s,h,y,9,t[29]),h=r(h,c,o,s,d,14,t[30]),s=r(s,h,c,o,rt,20,t[31]),o=u(o,s,h,c,b,4,t[32]),c=u(c,o,s,h,g,11,t[33]),h=u(h,c,o,s,it,16,t[34]),s=u(s,h,c,o,ft,23,t[35]),o=u(o,s,h,c,a,4,t[36]),c=u(c,o,s,h,w,11,t[37]),h=u(h,c,o,s,d,16,t[38]),s=u(s,h,c,o,tt,23,t[39]),o=u(o,s,h,c,ut,4,t[40]),c=u(c,o,s,h,v,11,t[41]),h=u(h,c,o,s,p,16,t[42]),s=u(s,h,c,o,k,23,t[43]),o=u(o,s,h,c,nt,4,t[44]),c=u(c,o,s,h,rt,11,t[45]),h=u(h,c,o,s,et,16,t[46]),s=u(s,h,c,o,y,23,t[47]),o=f(o,s,h,c,v,6,t[48]),c=f(c,o,s,h,d,10,t[49]),h=f(h,c,o,s,ft,15,t[50]),s=f(s,h,c,o,b,21,t[51]),o=f(o,s,h,c,rt,6,t[52]),c=f(c,o,s,h,p,10,t[53]),h=f(h,c,o,s,tt,15,t[54]),s=f(s,h,c,o,a,21,t[55]),o=f(o,s,h,c,g,6,t[56]),c=f(c,o,s,h,et,10,t[57]),h=f(h,c,o,s,k,15,t[58]),s=f(s,h,c,o,ut,21,t[59]),o=f(o,s,h,c,w,6,t[60]),c=f(c,o,s,h,it,10,t[61]),h=f(h,c,o,s,y,15,t[62]),s=f(s,h,c,o,nt,21,t[63]);l[0]=l[0]+o|0;l[1]=l[1]+s|0;l[2]=l[2]+h|0;l[3]=l[3]+c|0},_doFinalize:function(){var u=this._data,r=u.words,t=8*this._nDataBytes,i=8*u.sigBytes,f;for(r[i>>>5]|=128<<24-i%32,f=n.floor(t/4294967296),r[(i+64>>>9<<4)+15]=(f<<8|f>>>24)&16711935|(f<<24|f>>>8)&4278255360,r[(i+64>>>9<<4)+14]=(t<<8|t>>>24)&16711935|(t<<24|t>>>8)&4278255360,u.sigBytes=4*(r.length+1),this._process(),u=this._hash,r=u.words,t=0;4>t;t++)i=r[t],r[t]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360;return u},clone:function(){var n=h.clone.call(this);return n._hash=this._hash.clone(),n}});s.MD5=h._createHelper(o);s.HmacMD5=h._createHmacHelper(o)}(Math),function(){var i=e,t=i.lib,u=t.WordArray,r=t.Hasher,n=[],t=i.algo.SHA1=r.extend({_doReset:function(){this._hash=new u.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(t,i){for(var e,r=this._hash.words,h=r[0],f=r[1],o=r[2],s=r[3],c=r[4],u=0;80>u;u++)16>u?n[u]=t[i+u]|0:(e=n[u-3]^n[u-8]^n[u-14]^n[u-16],n[u]=e<<1|e>>>31),e=(h<<5|h>>>27)+c+n[u],e=20>u?e+((f&o|~f&s)+1518500249):40>u?e+((f^o^s)+1859775393):60>u?e+((f&o|f&s|o&s)-1894007588):e+((f^o^s)-899497514),c=s,s=o,o=f<<30|f>>>2,f=h,h=e;r[0]=r[0]+h|0;r[1]=r[1]+f|0;r[2]=r[2]+o|0;r[3]=r[3]+s|0;r[4]=r[4]+c|0},_doFinalize:function(){var i=this._data,n=i.words,r=8*this._nDataBytes,t=8*i.sigBytes;return n[t>>>5]|=128<<24-t%32,n[(t+64>>>9<<4)+14]=Math.floor(r/4294967296),n[(t+64>>>9<<4)+15]=r,i.sigBytes=4*n.length,this._process(),this._hash},clone:function(){var n=r.clone.call(this);return n._hash=this._hash.clone(),n}});i.SHA1=r._createHelper(t);i.HmacSHA1=r._createHmacHelper(t)}(),function(n){for(var r,v,h,i,f=e,t=f.lib,y=t.WordArray,o=t.Hasher,t=f.algo,c=[],l=[],a=function(n){return 4294967296*(n-(n|0))|0},s=2,u=0;64>u;){n:{for(r=s,v=n.sqrt(r),h=2;h<=v;h++)if(!(r%h)){r=!1;break n}r=!0}r&&(8>u&&(c[u]=a(n.pow(s,.5))),l[u]=a(n.pow(s,1/3)),u++);s++}i=[];t=t.SHA256=o.extend({_doReset:function(){this._hash=new y.init(c.slice(0))},_doProcessBlock:function(n,t){for(var o,s,r=this._hash.words,f=r[0],h=r[1],c=r[2],y=r[3],e=r[4],a=r[5],v=r[6],p=r[7],u=0;64>u;u++)16>u?i[u]=n[t+u]|0:(o=i[u-15],s=i[u-2],i[u]=((o<<25|o>>>7)^(o<<14|o>>>18)^o>>>3)+i[u-7]+((s<<15|s>>>17)^(s<<13|s>>>19)^s>>>10)+i[u-16]),o=p+((e<<26|e>>>6)^(e<<21|e>>>11)^(e<<7|e>>>25))+(e&a^~e&v)+l[u]+i[u],s=((f<<30|f>>>2)^(f<<19|f>>>13)^(f<<10|f>>>22))+(f&h^f&c^h&c),p=v,v=a,a=e,e=y+o|0,y=c,c=h,h=f,f=o+s|0;r[0]=r[0]+f|0;r[1]=r[1]+h|0;r[2]=r[2]+c|0;r[3]=r[3]+y|0;r[4]=r[4]+e|0;r[5]=r[5]+a|0;r[6]=r[6]+v|0;r[7]=r[7]+p|0},_doFinalize:function(){var r=this._data,t=r.words,u=8*this._nDataBytes,i=8*r.sigBytes;return t[i>>>5]|=128<<24-i%32,t[(i+64>>>9<<4)+14]=n.floor(u/4294967296),t[(i+64>>>9<<4)+15]=u,r.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var n=o.clone.call(this);return n._hash=this._hash.clone(),n}});f.SHA256=o._createHelper(t);f.HmacSHA256=o._createHmacHelper(t)}(Math),function(){var t=e,r=t.lib.WordArray,n=t.algo,i=n.SHA256,n=n.SHA224=i.extend({_doReset:function(){this._hash=new r.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var n=i._doFinalize.call(this);return n.sigBytes-=4,n}});t.SHA224=i._createHelper(n);t.HmacSHA224=i._createHmacHelper(n)}(),function(){function n(){return t.create.apply(t,arguments)}for(var u=e,f=u.lib.Hasher,i=u.x64,t=i.Word,s=i.WordArray,i=u.algo,h=[n(1116352408,3609767458),n(1899447441,602891725),n(3049323471,3964484399),n(3921009573,2173295548),n(961987163,4081628472),n(1508970993,3053834265),n(2453635748,2937671579),n(2870763221,3664609560),n(3624381080,2734883394),n(310598401,1164996542),n(607225278,1323610764),n(1426881987,3590304994),n(1925078388,4068182383),n(2162078206,991336113),n(2614888103,633803317),n(3248222580,3479774868),n(3835390401,2666613458),n(4022224774,944711139),n(264347078,2341262773),n(604807628,2007800933),n(770255983,1495990901),n(1249150122,1856431235),n(1555081692,3175218132),n(1996064986,2198950837),n(2554220882,3999719339),n(2821834349,766784016),n(2952996808,2566594879),n(3210313671,3203337956),n(3336571891,1034457026),n(3584528711,2466948901),n(113926993,3758326383),n(338241895,168717936),n(666307205,1188179964),n(773529912,1546045734),n(1294757372,1522805485),n(1396182291,2643833823),n(1695183700,2343527390),n(1986661051,1014477480),n(2177026350,1206759142),n(2456956037,344077627),n(2730485921,1290863460),n(2820302411,3158454273),n(3259730800,3505952657),n(3345764771,106217008),n(3516065817,3606008344),n(3600352804,1432725776),n(4094571909,1467031594),n(275423344,851169720),n(430227734,3100823752),n(506948616,1363258195),n(659060556,3750685593),n(883997877,3785050280),n(958139571,3318307427),n(1322822218,3812723403),n(1537002063,2003034995),n(1747873779,3602036899),n(1955562222,1575990012),n(2024104815,1125592928),n(2227730452,2716904306),n(2361852424,442776044),n(2428436474,593698344),n(2756734187,3733110249),n(3204031479,2999351573),n(3329325298,3815920427),n(3391569614,3928383900),n(3515267271,566280711),n(3940187606,3454069534),n(4118630271,4000239992),n(116418474,1914138554),n(174292421,2731055270),n(289380356,3203993006),n(460393269,320620315),n(685471733,587496836),n(852142971,1086792851),n(1017036298,365543100),n(1126000580,2618297676),n(1288033470,3409855158),n(1501505948,4234509866),n(1607167915,987167468),n(1816402316,1246189591)],r=[],o=0;80>o;o++)r[o]=n();i=i.SHA512=f.extend({_doReset:function(){this._hash=new s.init([new t.init(1779033703,4089235720),new t.init(3144134277,2227873595),new t.init(1013904242,4271175723),new t.init(2773480762,1595750129),new t.init(1359893119,2917565137),new t.init(2600822924,725511199),new t.init(528734635,4215389547),new t.init(1541459225,327033209)])},_doProcessBlock:function(n,t){for(var p,s,i,f=this._hash.words,ft=f[0],et=f[1],ot=f[2],st=f[3],ht=f[4],ct=f[5],lt=f[6],f=f[7],ui=ft.high,at=ft.low,fi=et.high,vt=et.low,ei=ot.high,yt=ot.low,oi=st.high,pt=st.low,si=ht.high,wt=ht.low,hi=ct.high,bt=ct.low,ci=lt.high,kt=lt.low,li=f.high,dt=f.low,c=ui,e=at,g=fi,k=vt,nt=ei,d=yt,ti=oi,tt=pt,l=si,o=wt,gt=hi,it=bt,ni=ci,rt=kt,ii=li,ut=dt,a=0;80>a;a++){if(p=r[a],16>a)s=p.high=n[t+2*a]|0,i=p.low=n[t+2*a+1]|0;else{var s=r[a-15],i=s.high,v=s.low,s=(i>>>1|v<<31)^(i>>>8|v<<24)^i>>>7,v=(v>>>1|i<<31)^(v>>>8|i<<24)^(v>>>7|i<<25),b=r[a-2],i=b.high,u=b.low,b=(i>>>19|u<<13)^(i<<3|u>>>29)^i>>>6,u=(u>>>19|i<<13)^(u<<3|i>>>29)^(u>>>6|i<<26),i=r[a-7],ri=i.high,w=r[a-16],y=w.high,w=w.low,i=v+i.low,s=s+ri+(i>>>0<v>>>0?1:0),i=i+u,s=s+b+(i>>>0<u>>>0?1:0),i=i+w,s=s+y+(i>>>0<w>>>0?1:0);p.high=s;p.low=i}var ri=l&gt^~l&ni,w=o&it^~o&rt,p=c&g^c&nt^g&nt,vi=e&k^e&d^k&d,v=(c>>>28|e<<4)^(c<<30|e>>>2)^(c<<25|e>>>7),b=(e>>>28|c<<4)^(e<<30|c>>>2)^(e<<25|c>>>7),u=h[a],yi=u.high,ai=u.low,u=ut+((o>>>14|l<<18)^(o>>>18|l<<14)^(o<<23|l>>>9)),y=ii+((l>>>14|o<<18)^(l>>>18|o<<14)^(l<<23|o>>>9))+(u>>>0<ut>>>0?1:0),u=u+w,y=y+ri+(u>>>0<w>>>0?1:0),u=u+ai,y=y+yi+(u>>>0<ai>>>0?1:0),u=u+i,y=y+s+(u>>>0<i>>>0?1:0),i=b+vi,p=v+p+(i>>>0<b>>>0?1:0),ii=ni,ut=rt,ni=gt,rt=it,gt=l,it=o,o=tt+u|0,l=ti+y+(o>>>0<tt>>>0?1:0)|0,ti=nt,tt=d,nt=g,d=k,g=c,k=e,e=u+i|0,c=y+p+(e>>>0<u>>>0?1:0)|0}at=ft.low=at+e;ft.high=ui+c+(at>>>0<e>>>0?1:0);vt=et.low=vt+k;et.high=fi+g+(vt>>>0<k>>>0?1:0);yt=ot.low=yt+d;ot.high=ei+nt+(yt>>>0<d>>>0?1:0);pt=st.low=pt+tt;st.high=oi+ti+(pt>>>0<tt>>>0?1:0);wt=ht.low=wt+o;ht.high=si+l+(wt>>>0<o>>>0?1:0);bt=ct.low=bt+it;ct.high=hi+gt+(bt>>>0<it>>>0?1:0);kt=lt.low=kt+rt;lt.high=ci+ni+(kt>>>0<rt>>>0?1:0);dt=f.low=dt+ut;f.high=li+ii+(dt>>>0<ut>>>0?1:0)},_doFinalize:function(){var i=this._data,n=i.words,r=8*this._nDataBytes,t=8*i.sigBytes;return n[t>>>5]|=128<<24-t%32,n[(t+128>>>10<<5)+30]=Math.floor(r/4294967296),n[(t+128>>>10<<5)+31]=r,i.sigBytes=4*n.length,this._process(),this._hash.toX32()},clone:function(){var n=f.clone.call(this);return n._hash=this._hash.clone(),n},blockSize:32});u.SHA512=f._createHelper(i);u.HmacSHA512=f._createHmacHelper(i)}(),function(){var i=e,n=i.x64,t=n.Word,u=n.WordArray,n=i.algo,r=n.SHA512,n=n.SHA384=r.extend({_doReset:function(){this._hash=new u.init([new t.init(3418070365,3238371032),new t.init(1654270250,914150663),new t.init(2438529370,812702999),new t.init(355462360,4144912697),new t.init(1731405415,4290775857),new t.init(2394180231,1750603025),new t.init(3675008525,1694076839),new t.init(1203062813,3204075428)])},_doFinalize:function(){var n=r._doFinalize.call(this);return n.sigBytes-=16,n}});i.SHA384=r._createHelper(n);i.HmacSHA384=r._createHmacHelper(n)}(),function(){var i=e,n=i.lib,t=n.WordArray,r=n.Hasher,n=i.algo,u=t.create([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=t.create([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]),o=t.create([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]),s=t.create([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]),h=t.create([0,1518500249,1859775393,2400959708,2840853838]),c=t.create([1352829926,1548603684,1836072691,2053994217,0]),n=n.RIPEMD160=r.extend({_doReset:function(){this._hash=t.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(n,t){for(var e,l,i,r=0;16>r;r++)e=t+r,l=n[e],n[e]=(l<<8|l>>>24)&16711935|(l<<24|l>>>8)&4278255360;var e=this._hash.words,l=h.words,k=c.words,ut=u.words,ft=f.words,it=o.words,rt=s.words,nt,a,v,y,d,tt,p,w,b,g;for(tt=nt=e[0],p=a=e[1],w=v=e[2],b=y=e[3],g=d=e[4],r=0;80>r;r+=1)i=nt+n[t+ut[r]]|0,i=16>r?i+((a^v^y)+l[0]):32>r?i+((a&v|~a&y)+l[1]):48>r?i+(((a|~v)^y)+l[2]):64>r?i+((a&y|v&~y)+l[3]):i+((a^(v|~y))+l[4]),i|=0,i=i<<it[r]|i>>>32-it[r],i=i+d|0,nt=d,d=y,y=v<<10|v>>>22,v=a,a=i,i=tt+n[t+ft[r]]|0,i=16>r?i+((p^(w|~b))+k[0]):32>r?i+((p&b|w&~b)+k[1]):48>r?i+(((p|~w)^b)+k[2]):64>r?i+((p&w|~p&b)+k[3]):i+((p^w^b)+k[4]),i|=0,i=i<<rt[r]|i>>>32-rt[r],i=i+g|0,tt=g,g=b,b=w<<10|w>>>22,w=p,p=i;i=e[1]+v+b|0;e[1]=e[2]+y+g|0;e[2]=e[3]+d+tt|0;e[3]=e[4]+nt+p|0;e[4]=e[0]+a+w|0;e[0]=i},_doFinalize:function(){var i=this._data,r=i.words,n=8*this._nDataBytes,t=8*i.sigBytes;for(r[t>>>5]|=128<<24-t%32,r[(t+64>>>9<<4)+14]=(n<<8|n>>>24)&16711935|(n<<24|n>>>8)&4278255360,i.sigBytes=4*(r.length+1),this._process(),i=this._hash,r=i.words,n=0;5>n;n++)t=r[n],r[n]=(t<<8|t>>>24)&16711935|(t<<24|t>>>8)&4278255360;return i},clone:function(){var n=r.clone.call(this);return n._hash=this._hash.clone(),n}});i.RIPEMD160=r._createHelper(n);i.HmacRIPEMD160=r._createHmacHelper(n)}(Math),function(){var n=e,t=n.enc.Utf8;n.algo.HMAC=n.lib.Base.extend({init:function(n,i){var u,f;n=this._hasher=new n.init;"string"==typeof i&&(i=t.parse(i));u=n.blockSize;f=4*u;i.sigBytes>f&&(i=n.finalize(i));i.clamp();for(var e=this._oKey=i.clone(),o=this._iKey=i.clone(),s=e.words,h=o.words,r=0;r<u;r++)s[r]^=1549556828,h[r]^=909522486;e.sigBytes=o.sigBytes=f;this.reset()},reset:function(){var n=this._hasher;n.reset();n.update(this._iKey)},update:function(n){return this._hasher.update(n),this},finalize:function(n){var t=this._hasher;return n=t.finalize(n),t.reset(),t.finalize(this._oKey.clone().concat(n))}})}(),function(){var t=e,n=t.lib,i=n.Base,r=n.WordArray,n=t.algo,u=n.HMAC,f=n.PBKDF2=i.extend({cfg:i.extend({keySize:4,hasher:n.SHA1,iterations:1}),init:function(n){this.cfg=this.cfg.extend(n)},compute:function(n,t){for(var s,y,f,i=this.cfg,e=u.create(i.hasher,n),o=r.create(),c=r.create([1]),p=o.words,w=c.words,l=i.keySize,i=i.iterations;p.length<l;){s=e.update(t).finalize(c);e.reset();for(var a=s.words,b=a.length,h=s,v=1;v<i;v++)for(h=e.finalize(h),e.reset(),y=h.words,f=0;f<b;f++)a[f]^=y[f];o.concat(s);w[0]++}return o.sigBytes=4*l,o}});t.PBKDF2=function(n,t,i){return f.create(i).compute(n,t)}}(),kt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",hi="=",lr=0xdeadbeefcafe,gi=(lr&16777215)==15715070,gi&&yt.appName=="Microsoft Internet Explorer"?(f.prototype.am=vu,pt=30):gi&&yt.appName!="Netscape"?(f.prototype.am=au,pt=26):(f.prototype.am=yu,pt=28),f.prototype.DB=pt,f.prototype.DM=(1<<pt)-1,f.prototype.DV=1<<pt,ci=52,f.prototype.FV=Math.pow(2,ci),f.prototype.F1=ci-pt,f.prototype.F2=2*pt-ci,ar="0123456789abcdefghijklmnopqrstuvwxyz",fi=[],ii="0".charCodeAt(0),et=0;et<=9;++et)fi[ii++]=et;for(ii="a".charCodeAt(0),et=10;et<36;++et)fi[ii++]=et;for(ii="A".charCodeAt(0),et=10;et<36;++et)fi[ii++]=et;if(dt.prototype.convert=vf,dt.prototype.revert=yf,dt.prototype.reduce=pf,dt.prototype.mulTo=wf,dt.prototype.sqrTo=bf,gt.prototype.convert=df,gt.prototype.revert=gf,gt.prototype.reduce=ne,gt.prototype.mulTo=ie,gt.prototype.sqrTo=te,f.prototype.copyTo=pu,f.prototype.fromInt=wu,f.prototype.fromString=bu,f.prototype.clamp=ku,f.prototype.dlShiftTo=uf,f.prototype.drShiftTo=ff,f.prototype.lShiftTo=ef,f.prototype.rShiftTo=of,f.prototype.subTo=sf,f.prototype.multiplyTo=hf,f.prototype.squareTo=cf,f.prototype.divRemTo=lf,f.prototype.invDigit=kf,f.prototype.isEven=re,f.prototype.exp=ue,f.prototype.toString=du,f.prototype.negate=gu,f.prototype.abs=nf,f.prototype.compareTo=tf,f.prototype.bitLength=rf,f.prototype.mod=af,f.prototype.modPowInt=fe,f.ZERO=wt(0),f.ONE=wt(1),ei.prototype.convert=wr,ei.prototype.revert=wr,ei.prototype.mulTo=es,ei.prototype.sqrTo=os,ri.prototype.convert=ls,ri.prototype.revert=as,ri.prototype.reduce=vs,ri.prototype.mulTo=ps,ri.prototype.sqrTo=ys,tt=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],br=67108864/tt[tt.length-1],f.prototype.chunkSize=ce,f.prototype.toRadix=ae,f.prototype.fromRadix=ve,f.prototype.fromNumber=ye,f.prototype.bitwiseTo=de,f.prototype.changeBit=ao,f.prototype.addTo=wo,f.prototype.dMultiply=us,f.prototype.dAddOffset=fs,f.prototype.multiplyLowerTo=hs,f.prototype.multiplyUpperTo=cs,f.prototype.modInt=ks,f.prototype.millerRabin=nh,f.prototype.clone=ee,f.prototype.intValue=oe,f.prototype.byteValue=se,f.prototype.shortValue=he,f.prototype.signum=le,f.prototype.toByteArray=pe,f.prototype.equals=we,f.prototype.min=be,f.prototype.max=ke,f.prototype.and=no,f.prototype.or=to,f.prototype.xor=io,f.prototype.andNot=ro,f.prototype.not=uo,f.prototype.shiftLeft=fo,f.prototype.shiftRight=eo,f.prototype.getLowestSetBit=so,f.prototype.bitCount=co,f.prototype.testBit=lo,f.prototype.setBit=vo,f.prototype.clearBit=yo,f.prototype.flipBit=po,f.prototype.add=bo,f.prototype.subtract=ko,f.prototype.multiply=go,f.prototype.divide=ts,f.prototype.remainder=is,f.prototype.divideAndRemainder=rs,f.prototype.modPow=ws,f.prototype.modInverse=ds,f.prototype.pow=ss,f.prototype.gcd=bs,f.prototype.isProbablePrime=gs,f.prototype.square=ns,tr.prototype.init=th,tr.prototype.next=ih,ai=256,rt==null){if(rt=[],d=0,lt.crypto&&lt.crypto.getRandomValues)for(rr=new Uint8Array(32),lt.crypto.getRandomValues(rr),ht=0;ht<32;++ht)rt[d++]=rr[ht];if(yt.appName=="Netscape"&&yt.appVersion<"5"&&lt.crypto)for(ur=lt.crypto.random(32),ht=0;ht<ur.length;++ht)rt[d++]=ur.charCodeAt(ht)&255;while(d<ai)ht=Math.floor(65536*Math.random()),rt[d++]=ht>>>8,rt[d++]=ht&255;d=0;ir()}ni.prototype.nextBytes=eh;ut=20;h.prototype.doPublic=ch;h.prototype.setPublic=hh;h.prototype.encrypt=lh;h.prototype.encryptOAEP=ah;h.prototype.type="RSA";ut=20;h.prototype.doPrivate=kh;h.prototype.setPrivate=ph;h.prototype.setPrivateEx=wh;h.prototype.generate=bh;h.prototype.decrypt=dh;h.prototype.decryptOAEP=gh;it.prototype.equals=nc;it.prototype.toBigInteger=tc;it.prototype.negate=ic;it.prototype.add=rc;it.prototype.subtract=uc;it.prototype.multiply=fc;it.prototype.square=ec;it.prototype.divide=oc;y.prototype.getX=sc;y.prototype.getY=hc;y.prototype.equals=cc;y.prototype.isInfinity=lc;y.prototype.negate=ac;y.prototype.add=vc;y.prototype.twice=yc;y.prototype.multiply=pc;y.prototype.multiplyTwo=wc;bt.prototype.getQ=bc;bt.prototype.getA=kc;bt.prototype.getB=dc;bt.prototype.equals=gc;bt.prototype.getInfinity=nl;bt.prototype.fromBigInteger=tl;bt.prototype.decodePointHex=il;it.prototype.getByteLength=function(){return Math.floor((this.toBigInteger().bitLength()+7)/8)};y.prototype.getEncoded=function(n){var i=function(n,t){var i=n.toByteArrayUnsigned();if(t<i.length)i=i.slice(i.length-t);else while(t>i.length)i.unshift(0);return i},u=this.getX().toBigInteger(),r=this.getY().toBigInteger(),t=i(u,32);return n?r.isEven()?t.unshift(2):t.unshift(3):(t.unshift(4),t=t.concat(i(r,32))),t};y.decodeFrom=function(n,t){var s=t[0],i=t.length-1,r=t.slice(1,1+i/2),u=t.slice(1+i/2,1+i),e,o;return r.unshift(0),u.unshift(0),e=new f(r),o=new f(u),new y(n,n.fromBigInteger(e),n.fromBigInteger(o))};y.decodeFromHex=function(n,t){var s=t.substr(0,2),i=t.length-2,r=t.substr(2,i/2),u=t.substr(2+i/2,i/2),e=new f(r,16),o=new f(u,16);return new y(n,n.fromBigInteger(e),n.fromBigInteger(o))};y.prototype.add2D=function(n){if(this.isInfinity())return n;if(n.isInfinity())return this;if(this.x.equals(n.x))return this.y.equals(n.y)?this.twice():this.curve.getInfinity();var r=n.x.subtract(this.x),u=n.y.subtract(this.y),t=u.divide(r),i=t.square().subtract(this.x).subtract(n.x),f=t.multiply(this.x.subtract(i)).subtract(this.y);return new y(this.curve,i,f)};y.prototype.twice2D=function(){if(this.isInfinity())return this;if(this.y.toBigInteger().signum()==0)return this.curve.getInfinity();var n=this.curve.fromBigInteger(f.valueOf(2)),r=this.curve.fromBigInteger(f.valueOf(3)),t=this.x.square().multiply(r).add(this.curve.a).divide(this.y.multiply(n)),i=t.square().subtract(this.x.multiply(n)),u=t.multiply(this.x.subtract(i)).subtract(this.y);return new y(this.curve,i,u)};y.prototype.multiply2D=function(n){var r,o;if(this.isInfinity())return this;if(n.signum()==0)return this.curve.getInfinity();for(var u=n,e=u.multiply(new f("3")),s=this.negate(),t=this,i=e.bitLength()-2;i>0;--i)t=t.twice(),r=e.testBit(i),o=u.testBit(i),r!=o&&(t=t.add2D(r?this:s));return t};y.prototype.isOnCurve=function(){var n=this.getX().toBigInteger(),t=this.getY().toBigInteger(),r=this.curve.getA().toBigInteger(),u=this.curve.getB().toBigInteger(),i=this.curve.getQ(),f=t.multiply(t).mod(i),e=n.multiply(n).multiply(n).add(r.multiply(n)).add(u).mod(i);return f.equals(e)};y.prototype.toString=function(){return"("+this.getX().toBigInteger().toString()+","+this.getY().toBigInteger().toString()+")"};y.prototype.validate=function(){var n=this.curve.getQ(),t,i;if(this.isInfinity())throw new Error("Point is at infinity.");if(t=this.getX().toBigInteger(),i=this.getY().toBigInteger(),t.compareTo(f.ONE)<0||t.compareTo(n.subtract(f.ONE))>0)throw new Error("x coordinate out of bounds");if(i.compareTo(f.ONE)<0||i.compareTo(n.subtract(f.ONE))>0)throw new Error("y coordinate out of bounds");if(!this.isOnCurve())throw new Error("Point is not on the curve.");if(this.multiply(n).isInfinity())throw new Error("Point is not a scalar multiple of G.");return!0};fr=function(){function r(n,t,r){return t?i[t]:String.fromCharCode(parseInt(r,16))}var n=new RegExp('(?:false|true|null|[\\{\\}\\[\\]]|(?:-?\\b(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?(?:[eE][+-]?[0-9]+)?\\b)|(?:"(?:[^\\0-\\x08\\x0a-\\x1f"\\\\]|\\\\(?:["/\\\\bfnrt]|u[0-9A-Fa-f]{4}))*"))',"g"),t=new RegExp("\\\\(?:([^u])|u(.{4}))","g"),i={'"':'"',"/":"/","\\":"\\",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"},u=new String(""),f="\\",o={"{":Object,"[":Array},e=Object.hasOwnProperty;return function(i,o){var y=i.match(n),a,l=y[0],p=!1,h,c,v,b,s,w;for("{"===l?a={}:"["===l?a=[]:(a=[],p=!0),c=[a],v=1-p,b=y.length;v<b;++v){l=y[v];switch(l.charCodeAt(0)){default:s=c[0];s[h||s.length]=+l;h=void 0;break;case 34:if(l=l.substring(1,l.length-1),l.indexOf(f)!==-1&&(l=l.replace(t,r)),s=c[0],!h)if(s instanceof Array)h=s.length;else{h=l||u;break}s[h]=l;h=void 0;break;case 91:s=c[0];c.unshift(s[h||s.length]=[]);h=void 0;break;case 93:c.shift();break;case 102:s=c[0];s[h||s.length]=!1;h=void 0;break;case 110:s=c[0];s[h||s.length]=null;h=void 0;break;case 116:s=c[0];s[h||s.length]=!0;h=void 0;break;case 123:s=c[0];c.unshift(s[h||s.length]={});h=void 0;break;case 125:c.shift()}}if(p){if(c.length!==1)throw new Error;a=a[0]}else if(c.length)throw new Error;return o&&(w=function(n,t){var i=n[t],r,u,f,s;if(i&&typeof i=="object"){r=null;for(u in i)e.call(i,u)&&i!==n&&(f=w(i,u),f!==void 0?i[u]=f:(r||(r=[]),r.push(u)));if(r)for(s=r.length;--s>=0;)delete i[r[s]]}return o.call(n,t,i)},a=w({"":a},"")),a}}();typeof r!="undefined"&&r||(r={});typeof r.asn1!="undefined"&&r.asn1||(r.asn1={});r.asn1.ASN1Util=new function(){this.integerToByteHex=function(n){var t=n.toString(16);return t.length%2==1&&(t="0"+t),t};this.bigIntToMinTwosComplementsHex=function(n){var t=n.toString(16),e,i,r,u,o,s;if(t.substr(0,1)!="-")t.length%2==1?t="0"+t:t.match(/^[0-7]/)||(t="00"+t);else{for(e=t.substr(1),i=e.length,i%2==1?i+=1:t.match(/^[0-7]/)||(i+=2),r="",u=0;u<i;u++)r+="f";o=new f(r,16);s=o.xor(n).add(f.ONE);t=s.toString(16).replace(/^-/,"")}return t};this.getPEMStringFromHex=function(n,t){var r=iu(n),i=r.replace(/(.{64})/g,"$1\r\n");return i=i.replace(/\r\n$/,""),"-----BEGIN "+t+"-----\r\n"+i+"\r\n-----END "+t+"-----\r\n"};this.newObject=function(n){var i=r.asn1,c=Object.keys(n),t,e,o,f,s,u,l,h;if(c.length!=1)throw"key of param shall be only one.";if(t=c[0],":bool:int:bitstr:octstr:null:oid:enum:utf8str:numstr:prnstr:telstr:ia5str:utctime:gentime:seq:set:tag:".indexOf(":"+t+":")==-1)throw"undefined key: "+t;if(t=="bool")return new i.DERBoolean(n[t]);if(t=="int")return new i.DERInteger(n[t]);if(t=="bitstr")return new i.DERBitString(n[t]);if(t=="octstr")return new i.DEROctetString(n[t]);if(t=="null")return new i.DERNull(n[t]);if(t=="oid")return new i.DERObjectIdentifier(n[t]);if(t=="enum")return new i.DEREnumerated(n[t]);if(t=="utf8str")return new i.DERUTF8String(n[t]);if(t=="numstr")return new i.DERNumericString(n[t]);if(t=="prnstr")return new i.DERPrintableString(n[t]);if(t=="telstr")return new i.DERTeletexString(n[t]);if(t=="ia5str")return new i.DERIA5String(n[t]);if(t=="utctime")return new i.DERUTCTime(n[t]);if(t=="gentime")return new i.DERGeneralizedTime(n[t]);if(t=="seq"){for(e=n[t],o=[],f=0;f<e.length;f++)s=i.ASN1Util.newObject(e[f]),o.push(s);return new i.DERSequence({array:o})}if(t=="set"){for(e=n[t],o=[],f=0;f<e.length;f++)s=i.ASN1Util.newObject(e[f]),o.push(s);return new i.DERSet({array:o})}if(t=="tag"){if(u=n[t],Object.prototype.toString.call(u)==="[object Array]"&&u.length==3)return l=i.ASN1Util.newObject(u[2]),new i.DERTaggedObject({tag:u[0],explicit:u[1],obj:l});if(h={},u.explicit!==undefined&&(h.explicit=u.explicit),u.tag!==undefined&&(h.tag=u.tag),u.obj===undefined)throw"obj shall be specified for 'tag'.";return h.obj=i.ASN1Util.newObject(u.obj),new i.DERTaggedObject(h)}};this.jsonToASN1HEX=function(n){var t=this.newObject(n);return t.getEncodedHex()}};r.asn1.ASN1Util.oidHexToInt=function(n){for(var t="",e=parseInt(n.substr(0,2),16),h=Math.floor(e/40),c=e%40,t=h+"."+c,i="",o,u,s,r=2;r<n.length;r+=2)o=parseInt(n.substr(r,2),16),u=("00000000"+o.toString(2)).slice(-8),i=i+u.substr(1,7),u.substr(0,1)=="0"&&(s=new f(i,2),t=t+"."+s.toString(10),i="");return t};r.asn1.ASN1Util.oidIntToHex=function(n){var u=function(n){var t=n.toString(16);return t.length==1&&(t="0"+t),t},e=function(n){var s="",h=new f(n,10),i=h.toString(2),e=7-i.length%7,o,t,r;for(e==7&&(e=0),o="",t=0;t<e;t++)o+="0";for(i=o+i,t=0;t<i.length-1;t+=7)r=i.substr(t,7),t!=i.length-7&&(r="1"+r),s+=u(parseInt(r,2));return s},i;if(!n.match(/^[0-9.]+$/))throw"malformed oid string: "+n;var r="",t=n.split("."),o=parseInt(t[0])*40+parseInt(t[1]);for(r+=u(o),t.splice(0,2),i=0;i<t.length;i++)r+=e(t[i]);return r};r.asn1.ASN1Object=function(){var n="";this.getLengthHexFromValue=function(){var i,t,r,u;if(typeof this.hV=="undefined"||this.hV==null)throw"this.hV is null or undefined.";if(this.hV.length%2==1)throw"value hex must be even length: n="+n.length+",v="+this.hV;if(i=this.hV.length/2,t=i.toString(16),t.length%2==1&&(t="0"+t),i<128)return t;if(r=t.length/2,r>15)throw"ASN.1 length too long to represent by 8x: n = "+i.toString(16);return u=128+r,u.toString(16)+t};this.getEncodedHex=function(){return(this.hTLV==null||this.isModified)&&(this.hV=this.getFreshValueHex(),this.hL=this.getLengthHexFromValue(),this.hTLV=this.hT+this.hL+this.hV,this.isModified=!1),this.hTLV};this.getValueHex=function(){return this.getEncodedHex(),this.hV};this.getFreshValueHex=function(){return""}};r.asn1.DERAbstractString=function(n){r.asn1.DERAbstractString.superclass.constructor.call(this);this.getString=function(){return this.s};this.setString=function(n){this.hTLV=null;this.isModified=!0;this.s=n;this.hV=ct(this.s)};this.setStringHex=function(n){this.hTLV=null;this.isModified=!0;this.s=null;this.hV=n};this.getFreshValueHex=function(){return this.hV};typeof n!="undefined"&&(typeof n=="string"?this.setString(n):typeof n.str!="undefined"?this.setString(n.str):typeof n.hex!="undefined"&&this.setStringHex(n.hex))};o.lang.extend(r.asn1.DERAbstractString,r.asn1.ASN1Object);r.asn1.DERAbstractTime=function(){r.asn1.DERAbstractTime.superclass.constructor.call(this);this.localDateToUTC=function(n){utc=n.getTime()+n.getTimezoneOffset()*6e4;return new Date(utc)};this.formatDate=function(n,t,i){var u=this.zeroPadding,r=this.localDateToUTC(n),e=String(r.getFullYear()),s,f;t=="utc"&&(e=e.substr(2,2));var h=u(String(r.getMonth()+1),2),c=u(String(r.getDate()),2),l=u(String(r.getHours()),2),a=u(String(r.getMinutes()),2),v=u(String(r.getSeconds()),2),o=e+h+c+l+a+v;return i===!0&&(s=r.getMilliseconds(),s!=0&&(f=u(String(s),3),f=f.replace(/[0]+$/,""),o=o+"."+f)),o+"Z"};this.zeroPadding=function(n,t){return n.length>=t?n:new Array(t-n.length+1).join("0")+n};this.getString=function(){return this.s};this.setString=function(n){this.hTLV=null;this.isModified=!0;this.s=n;this.hV=ct(n)};this.setByDateValue=function(n,t,i,r,u,f){var e=new Date(Date.UTC(n,t-1,i,r,u,f,0));this.setByDate(e)};this.getFreshValueHex=function(){return this.hV}};o.lang.extend(r.asn1.DERAbstractTime,r.asn1.ASN1Object);r.asn1.DERAbstractStructured=function(n){r.asn1.DERAbstractString.superclass.constructor.call(this);this.setByASN1ObjectArray=function(n){this.hTLV=null;this.isModified=!0;this.asn1Array=n};this.appendASN1Object=function(n){this.hTLV=null;this.isModified=!0;this.asn1Array.push(n)};this.asn1Array=[];typeof n!="undefined"&&typeof n.array!="undefined"&&(this.asn1Array=n.array)};o.lang.extend(r.asn1.DERAbstractStructured,r.asn1.ASN1Object);r.asn1.DERBoolean=function(){r.asn1.DERBoolean.superclass.constructor.call(this);this.hT="01";this.hTLV="0101ff"};o.lang.extend(r.asn1.DERBoolean,r.asn1.ASN1Object);r.asn1.DERInteger=function(n){r.asn1.DERInteger.superclass.constructor.call(this);this.hT="02";this.setByBigInteger=function(n){this.hTLV=null;this.isModified=!0;this.hV=r.asn1.ASN1Util.bigIntToMinTwosComplementsHex(n)};this.setByInteger=function(n){var t=new f(String(n),10);this.setByBigInteger(t)};this.setValueHex=function(n){this.hV=n};this.getFreshValueHex=function(){return this.hV};typeof n!="undefined"&&(typeof n.bigint!="undefined"?this.setByBigInteger(n.bigint):typeof n.int!="undefined"?this.setByInteger(n.int):typeof n=="number"?this.setByInteger(n):typeof n.hex!="undefined"&&this.setValueHex(n.hex))};o.lang.extend(r.asn1.DERInteger,r.asn1.ASN1Object);r.asn1.DERBitString=function(n){r.asn1.DERBitString.superclass.constructor.call(this);this.hT="03";this.setHexValueIncludingUnusedBits=function(n){this.hTLV=null;this.isModified=!0;this.hV=n};this.setUnusedBitsAndHexValue=function(n,t){if(n<0||7<n)throw"unused bits shall be from 0 to 7: u = "+n;var i="0"+n;this.hTLV=null;this.isModified=!0;this.hV=i+t};this.setByBinaryString=function(n){var i,u,t,f,r;for(n=n.replace(/0+$/,""),i=8-n.length%8,i==8&&(i=0),t=0;t<=i;t++)n+="0";for(u="",t=0;t<n.length-1;t+=8)f=n.substr(t,8),r=parseInt(f,2).toString(16),r.length==1&&(r="0"+r),u+=r;this.hTLV=null;this.isModified=!0;this.hV="0"+i+u};this.setByBooleanArray=function(n){for(var i="",t=0;t<n.length;t++)i+=n[t]==!0?"1":"0";this.setByBinaryString(i)};this.newFalseArray=function(n){for(var i=new Array(n),t=0;t<n;t++)i[t]=!1;return i};this.getFreshValueHex=function(){return this.hV};typeof n!="undefined"&&(typeof n=="string"&&n.toLowerCase().match(/^[0-9a-f]+$/)?this.setHexValueIncludingUnusedBits(n):typeof n.hex!="undefined"?this.setHexValueIncludingUnusedBits(n.hex):typeof n.bin!="undefined"?this.setByBinaryString(n.bin):typeof n.array!="undefined"&&this.setByBooleanArray(n.array))};o.lang.extend(r.asn1.DERBitString,r.asn1.ASN1Object);r.asn1.DEROctetString=function(n){r.asn1.DEROctetString.superclass.constructor.call(this,n);this.hT="04"};o.lang.extend(r.asn1.DEROctetString,r.asn1.DERAbstractString);r.asn1.DERNull=function(){r.asn1.DERNull.superclass.constructor.call(this);this.hT="05";this.hTLV="0500"};o.lang.extend(r.asn1.DERNull,r.asn1.ASN1Object);r.asn1.DERObjectIdentifier=function(n){var t=function(n){var t=n.toString(16);return t.length==1&&(t="0"+t),t},i=function(n){var s="",h=new f(n,10),r=h.toString(2),e=7-r.length%7,o,i,u;for(e==7&&(e=0),o="",i=0;i<e;i++)o+="0";for(r=o+r,i=0;i<r.length-1;i+=7)u=r.substr(i,7),i!=r.length-7&&(u="1"+u),s+=t(parseInt(u,2));return s};r.asn1.DERObjectIdentifier.superclass.constructor.call(this);this.hT="06";this.setValueHex=function(n){this.hTLV=null;this.isModified=!0;this.s=null;this.hV=n};this.setValueOidString=function(n){var u;if(!n.match(/^[0-9.]+$/))throw"malformed oid string: "+n;var f="",r=n.split("."),e=parseInt(r[0])*40+parseInt(r[1]);for(f+=t(e),r.splice(0,2),u=0;u<r.length;u++)f+=i(r[u]);this.hTLV=null;this.isModified=!0;this.s=null;this.hV=f};this.setValueName=function(n){if(typeof r.asn1.x509.OID.name2oidList[n]!="undefined"){var t=r.asn1.x509.OID.name2oidList[n];this.setValueOidString(t)}else throw"DERObjectIdentifier oidName undefined: "+n;};this.getFreshValueHex=function(){return this.hV};typeof n!="undefined"&&(typeof n=="string"&&n.match(/^[0-2].[0-9.]+$/)?this.setValueOidString(n):r.asn1.x509.OID.name2oidList[n]!==undefined?this.setValueOidString(r.asn1.x509.OID.name2oidList[n]):typeof n.oid!="undefined"?this.setValueOidString(n.oid):typeof n.hex!="undefined"?this.setValueHex(n.hex):typeof n.name!="undefined"&&this.setValueName(n.name))};o.lang.extend(r.asn1.DERObjectIdentifier,r.asn1.ASN1Object);r.asn1.DEREnumerated=function(n){r.asn1.DEREnumerated.superclass.constructor.call(this);this.hT="0a";this.setByBigInteger=function(n){this.hTLV=null;this.isModified=!0;this.hV=r.asn1.ASN1Util.bigIntToMinTwosComplementsHex(n)};this.setByInteger=function(n){var t=new f(String(n),10);this.setByBigInteger(t)};this.setValueHex=function(n){this.hV=n};this.getFreshValueHex=function(){return this.hV};typeof n!="undefined"&&(typeof n.int!="undefined"?this.setByInteger(n.int):typeof n=="number"?this.setByInteger(n):typeof n.hex!="undefined"&&this.setValueHex(n.hex))};o.lang.extend(r.asn1.DEREnumerated,r.asn1.ASN1Object);r.asn1.DERUTF8String=function(n){r.asn1.DERUTF8String.superclass.constructor.call(this,n);this.hT="0c"};o.lang.extend(r.asn1.DERUTF8String,r.asn1.DERAbstractString);r.asn1.DERNumericString=function(n){r.asn1.DERNumericString.superclass.constructor.call(this,n);this.hT="12"};o.lang.extend(r.asn1.DERNumericString,r.asn1.DERAbstractString);r.asn1.DERPrintableString=function(n){r.asn1.DERPrintableString.superclass.constructor.call(this,n);this.hT="13"};o.lang.extend(r.asn1.DERPrintableString,r.asn1.DERAbstractString);r.asn1.DERTeletexString=function(n){r.asn1.DERTeletexString.superclass.constructor.call(this,n);this.hT="14"};o.lang.extend(r.asn1.DERTeletexString,r.asn1.DERAbstractString);r.asn1.DERIA5String=function(n){r.asn1.DERIA5String.superclass.constructor.call(this,n);this.hT="16"};o.lang.extend(r.asn1.DERIA5String,r.asn1.DERAbstractString);r.asn1.DERUTCTime=function(n){r.asn1.DERUTCTime.superclass.constructor.call(this,n);this.hT="17";this.setByDate=function(n){this.hTLV=null;this.isModified=!0;this.date=n;this.s=this.formatDate(this.date,"utc");this.hV=ct(this.s)};this.getFreshValueHex=function(){return typeof this.date=="undefined"&&typeof this.s=="undefined"&&(this.date=new Date,this.s=this.formatDate(this.date,"utc"),this.hV=ct(this.s)),this.hV};n!==undefined&&(n.str!==undefined?this.setString(n.str):typeof n=="string"&&n.match(/^[0-9]{12}Z$/)?this.setString(n):n.hex!==undefined?this.setStringHex(n.hex):n.date!==undefined&&this.setByDate(n.date))};o.lang.extend(r.asn1.DERUTCTime,r.asn1.DERAbstractTime);r.asn1.DERGeneralizedTime=function(n){r.asn1.DERGeneralizedTime.superclass.constructor.call(this,n);this.hT="18";this.withMillis=!1;this.setByDate=function(n){this.hTLV=null;this.isModified=!0;this.date=n;this.s=this.formatDate(this.date,"gen",this.withMillis);this.hV=ct(this.s)};this.getFreshValueHex=function(){return this.date===undefined&&this.s===undefined&&(this.date=new Date,this.s=this.formatDate(this.date,"gen",this.withMillis),this.hV=ct(this.s)),this.hV};n!==undefined&&(n.str!==undefined?this.setString(n.str):typeof n=="string"&&n.match(/^[0-9]{14}Z$/)?this.setString(n):n.hex!==undefined?this.setStringHex(n.hex):n.date!==undefined&&this.setByDate(n.date),n.millis===!0&&(this.withMillis=!0))};o.lang.extend(r.asn1.DERGeneralizedTime,r.asn1.DERAbstractTime);r.asn1.DERSequence=function(n){r.asn1.DERSequence.superclass.constructor.call(this,n);this.hT="30";this.getFreshValueHex=function(){for(var t="",i,n=0;n<this.asn1Array.length;n++)i=this.asn1Array[n],t+=i.getEncodedHex();return this.hV=t,this.hV}};o.lang.extend(r.asn1.DERSequence,r.asn1.DERAbstractStructured);r.asn1.DERSet=function(n){r.asn1.DERSet.superclass.constructor.call(this,n);this.hT="31";this.sortFlag=!0;this.getFreshValueHex=function(){for(var t=[],i,n=0;n<this.asn1Array.length;n++)i=this.asn1Array[n],t.push(i.getEncodedHex());return this.sortFlag==!0&&t.sort(),this.hV=t.join(""),this.hV};typeof n!="undefined"&&typeof n.sortflag!="undefined"&&n.sortflag==!1&&(this.sortFlag=!1)};o.lang.extend(r.asn1.DERSet,r.asn1.DERAbstractStructured);r.asn1.DERTaggedObject=function(n){r.asn1.DERTaggedObject.superclass.constructor.call(this);this.hT="a0";this.hV="";this.isExplicit=!0;this.asn1Object=null;this.setASN1Object=function(n,t,i){this.hT=t;this.isExplicit=n;this.asn1Object=i;this.isExplicit?(this.hV=this.asn1Object.getEncodedHex(),this.hTLV=null,this.isModified=!0):(this.hV=null,this.hTLV=i.getEncodedHex(),this.hTLV=this.hTLV.replace(/^../,t),this.isModified=!1)};this.getFreshValueHex=function(){return this.hV};typeof n!="undefined"&&(typeof n.tag!="undefined"&&(this.hT=n.tag),typeof n.explicit!="undefined"&&(this.isExplicit=n.explicit),typeof n.obj!="undefined"&&(this.asn1Object=n.obj,this.setASN1Object(this.isExplicit,this.hT,this.asn1Object)))};o.lang.extend(r.asn1.DERTaggedObject,r.asn1.ASN1Object);u=new function(){this.getByteLengthOfL_AtObj=function(n,t){if(n.substring(t+2,t+3)!="8")return 1;var i=parseInt(n.substring(t+3,t+4));return i==0?-1:0<i&&i<10?i+1:-2};this.getHexOfL_AtObj=function(n,t){var i=this.getByteLengthOfL_AtObj(n,t);return i<1?"":n.substring(t+2,t+2+i*2)};this.getIntOfL_AtObj=function(n,t){var i=this.getHexOfL_AtObj(n,t),r;return i==""?-1:(r=parseInt(i.substring(0,1))<8?new f(i,16):new f(i.substring(2),16),r.intValue())};this.getStartPosOfV_AtObj=function(n,t){var i=this.getByteLengthOfL_AtObj(n,t);return i<0?i:t+(i+1)*2};this.getHexOfV_AtObj=function(n,t){var i=this.getStartPosOfV_AtObj(n,t),r=this.getIntOfL_AtObj(n,t);return n.substring(i,i+r*2)};this.getHexOfTLV_AtObj=function(n,t){var i=n.substr(t,2),r=this.getHexOfL_AtObj(n,t),u=this.getHexOfV_AtObj(n,t);return i+r+u};this.getPosOfNextSibling_AtObj=function(n,t){var i=this.getStartPosOfV_AtObj(n,t),r=this.getIntOfL_AtObj(n,t);return i+r*2};this.getPosArrayOfChildren_AtObj=function(n,t){var r=[],u=this.getStartPosOfV_AtObj(n,t),i;r.push(u);for(var o=this.getIntOfL_AtObj(n,t),f=u,e=0;;){if(i=this.getPosOfNextSibling_AtObj(n,f),i==null||i-u>=o*2)break;if(e>=200)break;r.push(i);f=i;e++}return r};this.getNthChildIndex_AtObj=function(n,t,i){var r=this.getPosArrayOfChildren_AtObj(n,t);return r[i]};this.getDecendantIndexByNthList=function(n,t,i){if(i.length==0)return t;var r=i.shift(),u=this.getPosArrayOfChildren_AtObj(n,t);return this.getDecendantIndexByNthList(n,u[r],i)};this.getDecendantHexTLVByNthList=function(n,t,i){var r=this.getDecendantIndexByNthList(n,t,i);return this.getHexOfTLV_AtObj(n,r)};this.getDecendantHexVByNthList=function(n,t,i){var r=this.getDecendantIndexByNthList(n,t,i);return this.getHexOfV_AtObj(n,r)}};u.getVbyList=function(n,t,i,r){var u=this.getDecendantIndexByNthList(n,t,i);if(u===undefined)throw"can't find nthList object";if(r!==undefined&&n.substr(u,2)!=r)throw"checking tag doesn't match: "+n.substr(u,2)+"!="+r;return this.getHexOfV_AtObj(n,u)};u.hextooidstr=function(n){var s=function(n,t){return n.length>=t?n:new Array(t-n.length+1).join("0")+n},e=[],c=n.substr(0,2),h=parseInt(c,16),o,r,u,i,t,f;for(e[0]=new String(Math.floor(h/40)),e[1]=new String(h%40),o=n.substr(2),r=[],t=0;t<o.length/2;t++)r.push(parseInt(o.substr(t*2,2),16));for(u=[],i="",t=0;t<r.length;t++)r[t]&128?i=i+s((r[t]&127).toString(2),7):(i=i+s((r[t]&127).toString(2),7),u.push(new String(parseInt(i,2))),i="");return f=e.join("."),u.length>0&&(f=f+"."+u.join(".")),f};u.dump=function(n,t,i,f){var p=function(n,t){return n.length<=t*2?n:n.substr(0,t)+"..(total "+n.length/2+"bytes).."+n.substr(n.length-t,t)},c,v,y,s,h,e,o;if(t===undefined&&(t={ommit_long_octet:32}),i===undefined&&(i=0),f===undefined&&(f=""),c=t.ommit_long_octet,n.substr(i,2)=="01")return e=u.getHexOfV_AtObj(n,i),e=="00"?f+"BOOLEAN FALSE\n":f+"BOOLEAN TRUE\n";if(n.substr(i,2)=="02")return e=u.getHexOfV_AtObj(n,i),f+"INTEGER "+p(e,c)+"\n";if(n.substr(i,2)=="03")return e=u.getHexOfV_AtObj(n,i),f+"BITSTRING "+p(e,c)+"\n";if(n.substr(i,2)=="04")return e=u.getHexOfV_AtObj(n,i),u.isASN1HEX(e)?(o=f+"OCTETSTRING, encapsulates\n",o+u.dump(e,t,0,f+"  ")):f+"OCTETSTRING "+p(e,c)+"\n";if(n.substr(i,2)=="05")return f+"NULL\n";if(n.substr(i,2)=="06"){var d=u.getHexOfV_AtObj(n,i),l=r.asn1.ASN1Util.oidHexToInt(d),a=r.asn1.x509.OID.oid2name(l),w=l.replace(/\./g," ");return a!=""?f+"ObjectIdentifier "+a+" ("+w+")\n":f+"ObjectIdentifier ("+w+")\n"}if(n.substr(i,2)=="0c")return f+"UTF8String '"+ft(u.getHexOfV_AtObj(n,i))+"'\n";if(n.substr(i,2)=="13")return f+"PrintableString '"+ft(u.getHexOfV_AtObj(n,i))+"'\n";if(n.substr(i,2)=="14")return f+"TeletexString '"+ft(u.getHexOfV_AtObj(n,i))+"'\n";if(n.substr(i,2)=="16")return f+"IA5String '"+ft(u.getHexOfV_AtObj(n,i))+"'\n";if(n.substr(i,2)=="17")return f+"UTCTime "+ft(u.getHexOfV_AtObj(n,i))+"\n";if(n.substr(i,2)=="18")return f+"GeneralizedTime "+ft(u.getHexOfV_AtObj(n,i))+"\n";if(n.substr(i,2)=="30"){if(n.substr(i,4)=="3000")return f+"SEQUENCE {}\n";var o=f+"SEQUENCE\n",s=u.getPosArrayOfChildren_AtObj(n,i),b=t;if((s.length==2||s.length==3)&&n.substr(s[0],2)=="06"&&n.substr(s[s.length-1],2)=="04"){var g=u.getHexOfV_AtObj(n,s[0]),l=r.asn1.ASN1Util.oidHexToInt(g),a=r.asn1.x509.OID.oid2name(l),k=JSON.parse(JSON.stringify(t));k.x509ExtName=a;b=k}for(h=0;h<s.length;h++)o=o+u.dump(n,b,s[h],f+"  ");return o}if(n.substr(i,2)=="31"){for(o=f+"SET\n",s=u.getPosArrayOfChildren_AtObj(n,i),h=0;h<s.length;h++)o=o+u.dump(n,t,s[h],f+"  ");return o}if(v=parseInt(n.substr(i,2),16),(v&128)!=0){if(y=v&31,(v&32)!=0){for(o=f+"["+y+"]\n",s=u.getPosArrayOfChildren_AtObj(n,i),h=0;h<s.length;h++)o=o+u.dump(n,t,s[h],f+"  ");return o}return e=u.getHexOfV_AtObj(n,i),e.substr(0,8)=="68747470"&&(e=ft(e)),t.x509ExtName==="subjectAltName"&&y==2&&(e=ft(e)),f+"["+y+"] "+e+"\n"}return f+"UNKNOWN("+n.substr(i,2)+") "+u.getHexOfV_AtObj(n,i)+"\n"};u.isASN1HEX=function(n){if(n.length%2==1)return!1;var t=u.getIntOfL_AtObj(n,0),i=n.substr(0,2),r=u.getHexOfL_AtObj(n,0),f=n.length-i.length-r.length;return f==t*2?!0:!1};typeof r!="undefined"&&r||(r={});typeof r.asn1!="undefined"&&r.asn1||(r.asn1={});typeof r.asn1.x509!="undefined"&&r.asn1.x509||(r.asn1.x509={});r.asn1.x509.Certificate=function(n){r.asn1.x509.Certificate.superclass.constructor.call(this);this.setRsaPrvKeyByPEMandPass=function(n,t){var r=wi.getDecryptedKeyHex(n,t),i=new h;i.readPrivateKeyFromASN1HexString(r);this.prvKey=i};this.sign=function(){this.asn1SignatureAlg=this.asn1TBSCert.asn1SignatureAlg;sig=new r.crypto.Signature({alg:"SHA1withRSA"});sig.init(this.prvKey);sig.updateHex(this.asn1TBSCert.getEncodedHex());this.hexSig=sig.sign();this.asn1Sig=new r.asn1.DERBitString({hex:"00"+this.hexSig});var n=new r.asn1.DERSequence({array:[this.asn1TBSCert,this.asn1SignatureAlg,this.asn1Sig]});this.hTLV=n.getEncodedHex();this.isModified=!1};this.setSignatureHex=function(n){this.asn1SignatureAlg=this.asn1TBSCert.asn1SignatureAlg;this.hexSig=n;this.asn1Sig=new r.asn1.DERBitString({hex:"00"+this.hexSig});var t=new r.asn1.DERSequence({array:[this.asn1TBSCert,this.asn1SignatureAlg,this.asn1Sig]});this.hTLV=t.getEncodedHex();this.isModified=!1};this.getEncodedHex=function(){if(this.isModified==!1&&this.hTLV!=null)return this.hTLV;throw"not signed yet";};this.getPEMString=function(){var n=this.getEncodedHex(),t=e.enc.Hex.parse(n),i=e.enc.Base64.stringify(t),r=i.replace(/(.{64})/g,"$1\r\n");return"-----BEGIN CERTIFICATE-----\r\n"+r+"\r\n-----END CERTIFICATE-----\r\n"};typeof n!="undefined"&&(typeof n.tbscertobj!="undefined"&&(this.asn1TBSCert=n.tbscertobj),typeof n.prvkeyobj!="undefined"?this.prvKey=n.prvkeyobj:typeof n.rsaprvkey!="undefined"?this.prvKey=n.rsaprvkey:typeof n.rsaprvpem!="undefined"&&typeof n.rsaprvpas!="undefined"&&this.setRsaPrvKeyByPEMandPass(n.rsaprvpem,n.rsaprvpas))};o.lang.extend(r.asn1.x509.Certificate,r.asn1.ASN1Object);r.asn1.x509.TBSCertificate=function(){r.asn1.x509.TBSCertificate.superclass.constructor.call(this);this._initialize=function(){this.asn1Array=[];this.asn1Version=new r.asn1.DERTaggedObject({obj:new r.asn1.DERInteger({int:2})});this.asn1SerialNumber=null;this.asn1SignatureAlg=null;this.asn1Issuer=null;this.asn1NotBefore=null;this.asn1NotAfter=null;this.asn1Subject=null;this.asn1SubjPKey=null;this.extensionsArray=[]};this.setSerialNumberByParam=function(n){this.asn1SerialNumber=new r.asn1.DERInteger(n)};this.setSignatureAlgByParam=function(n){this.asn1SignatureAlg=new r.asn1.x509.AlgorithmIdentifier(n)};this.setIssuerByParam=function(n){this.asn1Issuer=new r.asn1.x509.X500Name(n)};this.setNotBeforeByParam=function(n){this.asn1NotBefore=new r.asn1.x509.Time(n)};this.setNotAfterByParam=function(n){this.asn1NotAfter=new r.asn1.x509.Time(n)};this.setSubjectByParam=function(n){this.asn1Subject=new r.asn1.x509.X500Name(n)};this.setSubjectPublicKeyByParam=function(n){this.asn1SubjPKey=new r.asn1.x509.SubjectPublicKeyInfo(n)};this.setSubjectPublicKeyByGetKey=function(n){var t=a.getKey(n);this.asn1SubjPKey=new r.asn1.x509.SubjectPublicKeyInfo(t)};this.appendExtension=function(n){this.extensionsArray.push(n)};this.appendExtensionByName=function(n,t){var i;if(n.toLowerCase()=="basicconstraints")i=new r.asn1.x509.BasicConstraints(t),this.appendExtension(i);else if(n.toLowerCase()=="keyusage")i=new r.asn1.x509.KeyUsage(t),this.appendExtension(i);else if(n.toLowerCase()=="crldistributionpoints")i=new r.asn1.x509.CRLDistributionPoints(t),this.appendExtension(i);else if(n.toLowerCase()=="extkeyusage")i=new r.asn1.x509.ExtKeyUsage(t),this.appendExtension(i);else if(n.toLowerCase()=="authoritykeyidentifier")i=new r.asn1.x509.AuthorityKeyIdentifier(t),this.appendExtension(i);else throw"unsupported extension name: "+n;};this.getEncodedHex=function(){var n,t,i,u;if(this.asn1NotBefore==null||this.asn1NotAfter==null)throw"notBefore and/or notAfter not set";return n=new r.asn1.DERSequence({array:[this.asn1NotBefore,this.asn1NotAfter]}),this.asn1Array=[],this.asn1Array.push(this.asn1Version),this.asn1Array.push(this.asn1SerialNumber),this.asn1Array.push(this.asn1SignatureAlg),this.asn1Array.push(this.asn1Issuer),this.asn1Array.push(n),this.asn1Array.push(this.asn1Subject),this.asn1Array.push(this.asn1SubjPKey),this.extensionsArray.length>0&&(t=new r.asn1.DERSequence({array:this.extensionsArray}),i=new r.asn1.DERTaggedObject({explicit:!0,tag:"a3",obj:t}),this.asn1Array.push(i)),u=new r.asn1.DERSequence({array:this.asn1Array}),this.hTLV=u.getEncodedHex(),this.isModified=!1,this.hTLV};this._initialize()};o.lang.extend(r.asn1.x509.TBSCertificate,r.asn1.ASN1Object);r.asn1.x509.Extension=function(n){r.asn1.x509.Extension.superclass.constructor.call(this);this.getEncodedHex=function(){var i=new r.asn1.DERObjectIdentifier({oid:this.oid}),u=new r.asn1.DEROctetString({hex:this.getExtnValueHex()}),n=[],t;return n.push(i),this.critical&&n.push(new r.asn1.DERBoolean),n.push(u),t=new r.asn1.DERSequence({array:n}),t.getEncodedHex()};this.critical=!1;typeof n!="undefined"&&typeof n.critical!="undefined"&&(this.critical=n.critical)};o.lang.extend(r.asn1.x509.Extension,r.asn1.ASN1Object);r.asn1.x509.KeyUsage=function(n){r.asn1.x509.KeyUsage.superclass.constructor.call(this,n);this.getExtnValueHex=function(){return this.asn1ExtnValue.getEncodedHex()};this.oid="2.5.29.15";typeof n!="undefined"&&typeof n.bin!="undefined"&&(this.asn1ExtnValue=new r.asn1.DERBitString(n))};o.lang.extend(r.asn1.x509.KeyUsage,r.asn1.x509.Extension);r.asn1.x509.BasicConstraints=function(n){r.asn1.x509.BasicConstraints.superclass.constructor.call(this,n);this.getExtnValueHex=function(){var n=[],t;return this.cA&&n.push(new r.asn1.DERBoolean),this.pathLen>-1&&n.push(new r.asn1.DERInteger({int:this.pathLen})),t=new r.asn1.DERSequence({array:n}),this.asn1ExtnValue=t,this.asn1ExtnValue.getEncodedHex()};this.oid="2.5.29.19";this.cA=!1;this.pathLen=-1;typeof n!="undefined"&&(typeof n.cA!="undefined"&&(this.cA=n.cA),typeof n.pathLen!="undefined"&&(this.pathLen=n.pathLen))};o.lang.extend(r.asn1.x509.BasicConstraints,r.asn1.x509.Extension);r.asn1.x509.CRLDistributionPoints=function(n){r.asn1.x509.CRLDistributionPoints.superclass.constructor.call(this,n);this.getExtnValueHex=function(){return this.asn1ExtnValue.getEncodedHex()};this.setByDPArray=function(n){this.asn1ExtnValue=new r.asn1.DERSequence({array:n})};this.setByOneURI=function(n){var t=new r.asn1.x509.GeneralNames([{uri:n}]),i=new r.asn1.x509.DistributionPointName(t),u=new r.asn1.x509.DistributionPoint({dpobj:i});this.setByDPArray([u])};this.oid="2.5.29.31";typeof n!="undefined"&&(typeof n.array!="undefined"?this.setByDPArray(n.array):typeof n.uri!="undefined"&&this.setByOneURI(n.uri))};o.lang.extend(r.asn1.x509.CRLDistributionPoints,r.asn1.x509.Extension);r.asn1.x509.ExtKeyUsage=function(n){r.asn1.x509.ExtKeyUsage.superclass.constructor.call(this,n);this.setPurposeArray=function(n){var t,i;for(this.asn1ExtnValue=new r.asn1.DERSequence,t=0;t<n.length;t++)i=new r.asn1.DERObjectIdentifier(n[t]),this.asn1ExtnValue.appendASN1Object(i)};this.getExtnValueHex=function(){return this.asn1ExtnValue.getEncodedHex()};this.oid="2.5.29.37";typeof n!="undefined"&&typeof n.array!="undefined"&&this.setPurposeArray(n.array)};o.lang.extend(r.asn1.x509.ExtKeyUsage,r.asn1.x509.Extension);r.asn1.x509.AuthorityKeyIdentifier=function(n){r.asn1.x509.AuthorityKeyIdentifier.superclass.constructor.call(this,n);this.asn1KID=null;this.asn1CertIssuer=null;this.asn1CertSN=null;this.getExtnValueHex=function(){var n=[],t;return this.asn1KID&&n.push(new r.asn1.DERTaggedObject({explicit:!1,tag:"80",obj:this.asn1KID})),this.asn1CertIssuer&&n.push(new r.asn1.DERTaggedObject({explicit:!1,tag:"a1",obj:this.asn1CertIssuer})),this.asn1CertSN&&n.push(new r.asn1.DERTaggedObject({explicit:!1,tag:"82",obj:this.asn1CertSN})),t=new r.asn1.DERSequence({array:n}),this.asn1ExtnValue=t,this.asn1ExtnValue.getEncodedHex()};this.setKIDByParam=function(n){this.asn1KID=new r.asn1.DEROctetString(n)};this.setCertIssuerByParam=function(n){this.asn1CertIssuer=new r.asn1.x509.X500Name(n)};this.setCertSNByParam=function(n){this.asn1CertSN=new r.asn1.DERInteger(n)};this.oid="2.5.29.35";typeof n!="undefined"&&(typeof n.kid!="undefined"&&this.setKIDByParam(n.kid),typeof n.issuer!="undefined"&&this.setCertIssuerByParam(n.issuer),typeof n.sn!="undefined"&&this.setCertSNByParam(n.sn))};o.lang.extend(r.asn1.x509.AuthorityKeyIdentifier,r.asn1.x509.Extension);r.asn1.x509.CRL=function(n){r.asn1.x509.CRL.superclass.constructor.call(this);this.setRsaPrvKeyByPEMandPass=function(n,t){var r=wi.getDecryptedKeyHex(n,t),i=new h;i.readPrivateKeyFromASN1HexString(r);this.rsaPrvKey=i};this.sign=function(){this.asn1SignatureAlg=this.asn1TBSCertList.asn1SignatureAlg;sig=new r.crypto.Signature({alg:"SHA1withRSA",prov:"cryptojs/jsrsa"});sig.initSign(this.rsaPrvKey);sig.updateHex(this.asn1TBSCertList.getEncodedHex());this.hexSig=sig.sign();this.asn1Sig=new r.asn1.DERBitString({hex:"00"+this.hexSig});var n=new r.asn1.DERSequence({array:[this.asn1TBSCertList,this.asn1SignatureAlg,this.asn1Sig]});this.hTLV=n.getEncodedHex();this.isModified=!1};this.getEncodedHex=function(){if(this.isModified==!1&&this.hTLV!=null)return this.hTLV;throw"not signed yet";};this.getPEMString=function(){var n=this.getEncodedHex(),t=e.enc.Hex.parse(n),i=e.enc.Base64.stringify(t),r=i.replace(/(.{64})/g,"$1\r\n");return"-----BEGIN X509 CRL-----\r\n"+r+"\r\n-----END X509 CRL-----\r\n"};typeof n!="undefined"&&(typeof n.tbsobj!="undefined"&&(this.asn1TBSCertList=n.tbsobj),typeof n.rsaprvkey!="undefined"&&(this.rsaPrvKey=n.rsaprvkey),typeof n.rsaprvpem!="undefined"&&typeof n.rsaprvpas!="undefined"&&this.setRsaPrvKeyByPEMandPass(n.rsaprvpem,n.rsaprvpas))};o.lang.extend(r.asn1.x509.CRL,r.asn1.ASN1Object);r.asn1.x509.TBSCertList=function(){r.asn1.x509.TBSCertList.superclass.constructor.call(this);this.setSignatureAlgByParam=function(n){this.asn1SignatureAlg=new r.asn1.x509.AlgorithmIdentifier(n)};this.setIssuerByParam=function(n){this.asn1Issuer=new r.asn1.x509.X500Name(n)};this.setThisUpdateByParam=function(n){this.asn1ThisUpdate=new r.asn1.x509.Time(n)};this.setNextUpdateByParam=function(n){this.asn1NextUpdate=new r.asn1.x509.Time(n)};this.addRevokedCert=function(n,t){var i={},u;n!=undefined&&n!=null&&(i.sn=n);t!=undefined&&t!=null&&(i.time=t);u=new r.asn1.x509.CRLEntry(i);this.aRevokedCert.push(u)};this.getEncodedHex=function(){var n,t;return this.asn1Array=[],this.asn1Version!=null&&this.asn1Array.push(this.asn1Version),this.asn1Array.push(this.asn1SignatureAlg),this.asn1Array.push(this.asn1Issuer),this.asn1Array.push(this.asn1ThisUpdate),this.asn1NextUpdate!=null&&this.asn1Array.push(this.asn1NextUpdate),this.aRevokedCert.length>0&&(n=new r.asn1.DERSequence({array:this.aRevokedCert}),this.asn1Array.push(n)),t=new r.asn1.DERSequence({array:this.asn1Array}),this.hTLV=t.getEncodedHex(),this.isModified=!1,this.hTLV};this._initialize=function(){this.asn1Version=null;this.asn1SignatureAlg=null;this.asn1Issuer=null;this.asn1ThisUpdate=null;this.asn1NextUpdate=null;this.aRevokedCert=[]};this._initialize()};o.lang.extend(r.asn1.x509.TBSCertList,r.asn1.ASN1Object);r.asn1.x509.CRLEntry=function(n){r.asn1.x509.CRLEntry.superclass.constructor.call(this);this.setCertSerial=function(n){this.sn=new r.asn1.DERInteger(n)};this.setRevocationDate=function(n){this.time=new r.asn1.x509.Time(n)};this.getEncodedHex=function(){var n=new r.asn1.DERSequence({array:[this.sn,this.time]});return this.TLV=n.getEncodedHex(),this.TLV};typeof n!="undefined"&&(typeof n.time!="undefined"&&this.setRevocationDate(n.time),typeof n.sn!="undefined"&&this.setCertSerial(n.sn))};o.lang.extend(r.asn1.x509.CRLEntry,r.asn1.ASN1Object);r.asn1.x509.X500Name=function(n){var t;r.asn1.x509.X500Name.superclass.constructor.call(this);this.asn1Array=[];this.setByString=function(n){var i=n.split("/"),t;for(i.shift(),t=0;t<i.length;t++)this.asn1Array.push(new r.asn1.x509.RDN({str:i[t]}))};this.setByObject=function(n){var t,i;for(t in n)n.hasOwnProperty(t)&&(i=new r.asn1.x509.RDN({str:t+"="+n[t]}),this.asn1Array?this.asn1Array.push(i):this.asn1Array=[i])};this.getEncodedHex=function(){if(typeof this.hTLV=="string")return this.hTLV;var n=new r.asn1.DERSequence({array:this.asn1Array});return this.hTLV=n.getEncodedHex(),this.hTLV};typeof n!="undefined"&&(typeof n.str!="undefined"?this.setByString(n.str):typeof n=="object"&&this.setByObject(n),typeof n.certissuer!="undefined"&&(t=new c,t.hex=c.pemToHex(n.certissuer),this.hTLV=t.getIssuerHex()),typeof n.certsubject!="undefined"&&(t=new c,t.hex=c.pemToHex(n.certsubject),this.hTLV=t.getSubjectHex()))};o.lang.extend(r.asn1.x509.X500Name,r.asn1.ASN1Object);r.asn1.x509.RDN=function(n){r.asn1.x509.RDN.superclass.constructor.call(this);this.asn1Array=[];this.addByString=function(n){this.asn1Array.push(new r.asn1.x509.AttributeTypeAndValue({str:n}))};this.getEncodedHex=function(){var n=new r.asn1.DERSet({array:this.asn1Array});return this.TLV=n.getEncodedHex(),this.TLV};typeof n!="undefined"&&typeof n.str!="undefined"&&this.addByString(n.str)};o.lang.extend(r.asn1.x509.RDN,r.asn1.ASN1Object);r.asn1.x509.AttributeTypeAndValue=function(n){r.asn1.x509.AttributeTypeAndValue.superclass.constructor.call(this);var t="utf8";this.setByString=function(n){if(n.match(/^([^=]+)=(.+)$/))this.setByAttrTypeAndValueStr(RegExp.$1,RegExp.$2);else throw"malformed attrTypeAndValueStr: "+n;};this.setByAttrTypeAndValueStr=function(n,i){this.typeObj=r.asn1.x509.OID.atype2obj(n);var u=t;n=="C"&&(u="prn");this.valueObj=this.getValueObj(u,i)};this.getValueObj=function(n,t){if(n=="utf8")return new r.asn1.DERUTF8String({str:t});if(n=="prn")return new r.asn1.DERPrintableString({str:t});if(n=="tel")return new r.asn1.DERTeletexString({str:t});if(n=="ia5")return new r.asn1.DERIA5String({str:t});throw"unsupported directory string type: type="+n+" value="+t;};this.getEncodedHex=function(){var n=new r.asn1.DERSequence({array:[this.typeObj,this.valueObj]});return this.TLV=n.getEncodedHex(),this.TLV};typeof n!="undefined"&&typeof n.str!="undefined"&&this.setByString(n.str)};o.lang.extend(r.asn1.x509.AttributeTypeAndValue,r.asn1.ASN1Object);r.asn1.x509.SubjectPublicKeyInfo=function(n){r.asn1.x509.SubjectPublicKeyInfo.superclass.constructor.call(this);this.setRSAKey=function(n){if(!h.prototype.isPrototypeOf(n))throw"argument is not RSAKey instance";this.rsaKey=n;var t=new r.asn1.DERInteger({bigint:n.n}),i=new r.asn1.DERInteger({int:n.e}),u=new r.asn1.DERSequence({array:[t,i]}),f=u.getEncodedHex();this.asn1AlgId=new r.asn1.x509.AlgorithmIdentifier({name:"rsaEncryption"});this.asn1SubjPKey=new r.asn1.DERBitString({hex:"00"+f})};this.setRSAPEM=function(n){var t;if(n.match(/-----BEGIN PUBLIC KEY-----/)){t=n;t=t.replace(/^-----[^-]+-----/,"");t=t.replace(/-----[^-]+-----\s*$/,"");var u=t.replace(/\s+/g,""),f=e.enc.Base64.parse(u),o=e.enc.Hex.stringify(f),s=bi(o),c=s[1],l=c.substr(2),i=bi(l),r=new h;r.setPublic(i[0],i[1]);this.setRSAKey(r)}else throw"key not supported";};this.getASN1Object=function(){if(this.asn1AlgId==null||this.asn1SubjPKey==null)throw"algId and/or subjPubKey not set";return new r.asn1.DERSequence({array:[this.asn1AlgId,this.asn1SubjPKey]})};this.getEncodedHex=function(){var n=this.getASN1Object();return this.hTLV=n.getEncodedHex(),this.hTLV};this._setRSAKey=function(n){var t=r.asn1.ASN1Util.newObject({seq:[{int:{bigint:n.n}},{int:{int:n.e}}]}),i=t.getEncodedHex();this.asn1AlgId=new r.asn1.x509.AlgorithmIdentifier({name:"rsaEncryption"});this.asn1SubjPKey=new r.asn1.DERBitString({hex:"00"+i})};this._setEC=function(n){var t=new r.asn1.DERObjectIdentifier({name:n.curveName});this.asn1AlgId=new r.asn1.x509.AlgorithmIdentifier({name:"ecPublicKey",asn1params:t});this.asn1SubjPKey=new r.asn1.DERBitString({hex:"00"+n.pubKeyHex})};this._setDSA=function(n){var i=new r.asn1.ASN1Util.newObject({seq:[{int:{bigint:n.p}},{int:{bigint:n.q}},{int:{bigint:n.g}}]}),t;this.asn1AlgId=new r.asn1.x509.AlgorithmIdentifier({name:"dsa",asn1params:i});t=new r.asn1.DERInteger({bigint:n.y});this.asn1SubjPKey=new r.asn1.DERBitString({hex:"00"+t.getEncodedHex()})};typeof n!="undefined"&&(typeof h!="undefined"&&n instanceof h?this._setRSAKey(n):typeof r.crypto.ECDSA!="undefined"&&n instanceof r.crypto.ECDSA?this._setEC(n):typeof r.crypto.DSA!="undefined"&&n instanceof r.crypto.DSA?this._setDSA(n):typeof n.rsakey!="undefined"?this.setRSAKey(n.rsakey):typeof n.rsapem!="undefined"&&this.setRSAPEM(n.rsapem))};o.lang.extend(r.asn1.x509.SubjectPublicKeyInfo,r.asn1.ASN1Object);r.asn1.x509.Time=function(n){r.asn1.x509.Time.superclass.constructor.call(this);this.setTimeParams=function(n){this.timeParams=n};this.getEncodedHex=function(){var n=null;return n=this.timeParams!=null?this.type=="utc"?new r.asn1.DERUTCTime(this.timeParams):new r.asn1.DERGeneralizedTime(this.timeParams):this.type=="utc"?new r.asn1.DERUTCTime:new r.asn1.DERGeneralizedTime,this.TLV=n.getEncodedHex(),this.TLV};this.type="utc";typeof n!="undefined"&&(typeof n.type!="undefined"?this.type=n.type:typeof n.str!="undefined"&&(n.str.match(/^[0-9]{12}Z$/)&&(this.type="utc"),n.str.match(/^[0-9]{14}Z$/)&&(this.type="gen")),this.timeParams=n)};o.lang.extend(r.asn1.x509.Time,r.asn1.ASN1Object);r.asn1.x509.AlgorithmIdentifier=function(n){r.asn1.x509.AlgorithmIdentifier.superclass.constructor.call(this);this.getEncodedHex=function(){var n,t;if(this.nameAlg==null&&this.asn1Alg==null)throw"algorithm not specified";return this.nameAlg!=null&&this.asn1Alg==null&&(this.asn1Alg=r.asn1.x509.OID.name2obj(this.nameAlg)),n=[this.asn1Alg],this.paramEmpty||n.push(this.asn1Params),t=new r.asn1.DERSequence({array:n}),this.hTLV=t.getEncodedHex(),this.hTLV};typeof n!="undefined"&&(typeof n.name!="undefined"&&(this.nameAlg=n.name),typeof n.asn1params!="undefined"&&(this.asn1Params=n.asn1params),typeof n.paramempty!="undefined"&&(this.paramEmpty=n.paramempty));this.asn1Params==null&&(this.asn1Params=new r.asn1.DERNull)};o.lang.extend(r.asn1.x509.AlgorithmIdentifier,r.asn1.ASN1Object);r.asn1.x509.GeneralName=function(n){r.asn1.x509.GeneralName.superclass.constructor.call(this);var t={rfc822:"81",dns:"82",dn:"a4",uri:"86"};this.explicit=!1;this.setByParam=function(n){var f=null,i,u,e,o;if(typeof n!="undefined"){if(typeof n.rfc822!="undefined"&&(this.type="rfc822",f=new r.asn1.DERIA5String({str:n[this.type]})),typeof n.dns!="undefined"&&(this.type="dns",f=new r.asn1.DERIA5String({str:n[this.type]})),typeof n.uri!="undefined"&&(this.type="uri",f=new r.asn1.DERIA5String({str:n[this.type]})),typeof n.certissuer!="undefined"){if(this.type="dn",this.explicit=!0,i=n.certissuer,u=null,i.match(/^[0-9A-Fa-f]+$/)&&u==i,i.indexOf("-----BEGIN ")!=-1&&(u=c.pemToHex(i)),u==null)throw"certissuer param not cert";e=new c;e.hex=u;o=e.getIssuerHex();f=new r.asn1.ASN1Object;f.hTLV=o}if(typeof n.certsubj!="undefined"){if(this.type="dn",this.explicit=!0,i=n.certsubj,u=null,i.match(/^[0-9A-Fa-f]+$/)&&u==i,i.indexOf("-----BEGIN ")!=-1&&(u=c.pemToHex(i)),u==null)throw"certsubj param not cert";e=new c;e.hex=u;o=e.getSubjectHex();f=new r.asn1.ASN1Object;f.hTLV=o}if(this.type==null)throw"unsupported type in params="+n;this.asn1Obj=new r.asn1.DERTaggedObject({explicit:this.explicit,tag:t[this.type],obj:f})}};this.getEncodedHex=function(){return this.asn1Obj.getEncodedHex()};typeof n!="undefined"&&this.setByParam(n)};o.lang.extend(r.asn1.x509.GeneralName,r.asn1.ASN1Object);r.asn1.x509.GeneralNames=function(n){r.asn1.x509.GeneralNames.superclass.constructor.call(this);this.setByParamArray=function(n){for(var i,t=0;t<n.length;t++)i=new r.asn1.x509.GeneralName(n[t]),this.asn1Array.push(i)};this.getEncodedHex=function(){var n=new r.asn1.DERSequence({array:this.asn1Array});return n.getEncodedHex()};this.asn1Array=[];typeof n!="undefined"&&this.setByParamArray(n)};o.lang.extend(r.asn1.x509.GeneralNames,r.asn1.ASN1Object);r.asn1.x509.DistributionPointName=function(n){r.asn1.x509.DistributionPointName.superclass.constructor.call(this);if(this.getEncodedHex=function(){if(this.type!="full")throw"currently type shall be 'full': "+this.type;return this.asn1Obj=new r.asn1.DERTaggedObject({explicit:!1,tag:this.tag,obj:this.asn1V}),this.hTLV=this.asn1Obj.getEncodedHex(),this.hTLV},typeof n!="undefined")if(r.asn1.x509.GeneralNames.prototype.isPrototypeOf(n))this.type="full",this.tag="a0",this.asn1V=n;else throw"This class supports GeneralNames only as argument";};o.lang.extend(r.asn1.x509.DistributionPointName,r.asn1.ASN1Object);r.asn1.x509.DistributionPoint=function(n){r.asn1.x509.DistributionPoint.superclass.constructor.call(this);this.getEncodedHex=function(){var n=new r.asn1.DERSequence,t;return this.asn1DP!=null&&(t=new r.asn1.DERTaggedObject({explicit:!0,tag:"a0",obj:this.asn1DP}),n.appendASN1Object(t)),this.hTLV=n.getEncodedHex(),this.hTLV};typeof n!="undefined"&&typeof n.dpobj!="undefined"&&(this.asn1DP=n.dpobj)};o.lang.extend(r.asn1.x509.DistributionPoint,r.asn1.ASN1Object);r.asn1.x509.OID=new function(){this.atype2oidList={C:"2.5.4.6",O:"2.5.4.10",OU:"2.5.4.11",ST:"2.5.4.8",L:"2.5.4.7",CN:"2.5.4.3",SN:"2.5.4.4",DN:"2.5.4.49",DC:"0.9.2342.19200300.100.1.25"};this.name2oidList={sha1:"1.3.14.3.2.26",sha256:"2.16.840.1.101.3.4.2.1",sha384:"2.16.840.1.101.3.4.2.2",sha512:"2.16.840.1.101.3.4.2.3",sha224:"2.16.840.1.101.3.4.2.4",md5:"1.2.840.113549.2.5",md2:"1.3.14.7.2.2.1",ripemd160:"1.3.36.3.2.1",MD2withRSA:"1.2.840.113549.1.1.2",MD4withRSA:"1.2.840.113549.1.1.3",MD5withRSA:"1.2.840.113549.1.1.4",SHA1withRSA:"1.2.840.113549.1.1.5",SHA224withRSA:"1.2.840.113549.1.1.14",SHA256withRSA:"1.2.840.113549.1.1.11",SHA384withRSA:"1.2.840.113549.1.1.12",SHA512withRSA:"1.2.840.113549.1.1.13",SHA1withECDSA:"1.2.840.10045.4.1",SHA224withECDSA:"1.2.840.10045.4.3.1",SHA256withECDSA:"1.2.840.10045.4.3.2",SHA384withECDSA:"1.2.840.10045.4.3.3",SHA512withECDSA:"1.2.840.10045.4.3.4",dsa:"1.2.840.10040.4.1",SHA1withDSA:"1.2.840.10040.4.3",SHA224withDSA:"2.16.840.1.101.3.4.3.1",SHA256withDSA:"2.16.840.1.101.3.4.3.2",rsaEncryption:"1.2.840.113549.1.1.1",countryName:"2.5.4.6",organization:"2.5.4.10",organizationalUnit:"2.5.4.11",stateOrProvinceName:"2.5.4.8",locality:"2.5.4.7",commonName:"2.5.4.3",subjectKeyIdentifier:"2.5.29.14",keyUsage:"2.5.29.15",subjectAltName:"2.5.29.17",basicConstraints:"2.5.29.19",nameConstraints:"2.5.29.30",cRLDistributionPoints:"2.5.29.31",certificatePolicies:"2.5.29.32",authorityKeyIdentifier:"2.5.29.35",policyConstraints:"2.5.29.36",extKeyUsage:"2.5.29.37",authorityInfoAccess:"1.3.6.1.5.5.7.1.1",anyExtendedKeyUsage:"2.5.29.37.0",serverAuth:"1.3.6.1.5.5.7.3.1",clientAuth:"1.3.6.1.5.5.7.3.2",codeSigning:"1.3.6.1.5.5.7.3.3",emailProtection:"1.3.6.1.5.5.7.3.4",timeStamping:"1.3.6.1.5.5.7.3.8",ocspSigning:"1.3.6.1.5.5.7.3.9",ecPublicKey:"1.2.840.10045.2.1",secp256r1:"1.2.840.10045.3.1.7",secp256k1:"1.3.132.0.10",secp384r1:"1.3.132.0.34",pkcs5PBES2:"1.2.840.113549.1.5.13",pkcs5PBKDF2:"1.2.840.113549.1.5.12","des-EDE3-CBC":"1.2.840.113549.3.7",data:"1.2.840.113549.1.7.1","signed-data":"1.2.840.113549.1.7.2","enveloped-data":"1.2.840.113549.1.7.3","digested-data":"1.2.840.113549.1.7.5","encrypted-data":"1.2.840.113549.1.7.6","authenticated-data":"1.2.840.113549.1.9.16.1.2",tstinfo:"1.2.840.113549.1.9.16.1.4"};this.objCache={};this.name2obj=function(n){if(typeof this.objCache[n]!="undefined")return this.objCache[n];if(typeof this.name2oidList[n]=="undefined")throw"Name of ObjectIdentifier not defined: "+n;var i=this.name2oidList[n],t=new r.asn1.DERObjectIdentifier({oid:i});return this.objCache[n]=t,t};this.atype2obj=function(n){if(typeof this.objCache[n]!="undefined")return this.objCache[n];if(typeof this.atype2oidList[n]=="undefined")throw"AttributeType name undefined: "+n;var i=this.atype2oidList[n],t=new r.asn1.DERObjectIdentifier({oid:i});return this.objCache[n]=t,t}};r.asn1.x509.OID.oid2name=function(n){var i=r.asn1.x509.OID.name2oidList,t;for(t in i)if(i[t]==n)return t;return""};r.asn1.x509.OID.name2oid=function(n){var t=r.asn1.x509.OID.name2oidList;return t[n]===undefined?"":t[n]};r.asn1.x509.X509Util=new function(){this.getPKCS8PubKeyPEMfromRSAKey=function(n){var t=null,i=r.asn1.ASN1Util.bigIntToMinTwosComplementsHex(n.n),u=r.asn1.ASN1Util.integerToByteHex(n.e),f=new r.asn1.DERInteger({hex:i}),e=new r.asn1.DERInteger({hex:u}),o=new r.asn1.DERSequence({array:[f,e]}),s=o.getEncodedHex(),h=new r.asn1.x509.AlgorithmIdentifier({name:"rsaEncryption"}),c=new r.asn1.DERBitString({hex:"00"+s}),l=new r.asn1.DERSequence({array:[h,c]}),a=l.getEncodedHex(),t=r.asn1.ASN1Util.getPEMStringFromHex(a,"PUBLIC KEY");return t}};r.asn1.x509.X509Util.newCertPEM=function(n){var f=r.asn1.x509,t=new f.TBSCertificate,u,e,i;if(n.serial!==undefined)t.setSerialNumberByParam(n.serial);else throw"serial number undefined.";if(typeof n.sigalg.name=="string")t.setSignatureAlgByParam(n.sigalg);else throw"unproper signature algorithm name";if(n.issuer!==undefined)t.setIssuerByParam(n.issuer);else throw"issuer name undefined.";if(n.notbefore!==undefined)t.setNotBeforeByParam(n.notbefore);else throw"notbefore undefined.";if(n.notafter!==undefined)t.setNotAfterByParam(n.notafter);else throw"notafter undefined.";if(n.subject!==undefined)t.setSubjectByParam(n.subject);else throw"subject name undefined.";if(n.sbjpubkey!==undefined)t.setSubjectPublicKeyByGetKey(n.sbjpubkey);else throw"subject public key undefined.";if(n.ext!==undefined&&n.ext.length!==undefined)for(u=0;u<n.ext.length;u++)for(key in n.ext[u])t.appendExtensionByName(key,n.ext[u][key]);if(n.cakey===undefined&&n.sighex===undefined)throw"param cakey and sighex undefined.";return e=null,i=null,n.cakey&&(e=a.getKey.apply(null,n.cakey),i=new f.Certificate({tbscertobj:t,prvkeyobj:e}),i.sign()),n.sighex&&(i=new f.Certificate({tbscertobj:t}),i.setSignatureHex(n.sighex)),i.getPEMString()};typeof r!="undefined"&&r||(r={});typeof r.asn1!="undefined"&&r.asn1||(r.asn1={});typeof r.asn1.cms!="undefined"&&r.asn1.cms||(r.asn1.cms={});r.asn1.cms.Attribute=function(){r.asn1.cms.Attribute.superclass.constructor.call(this);this.getEncodedHex=function(){var t,n,i;t=new r.asn1.DERObjectIdentifier({oid:this.attrTypeOid});n=new r.asn1.DERSet({array:this.valueList});try{n.getEncodedHex()}catch(u){throw"fail valueSet.getEncodedHex in Attribute(1)/"+u;}i=new r.asn1.DERSequence({array:[t,n]});try{this.hTLV=i.getEncodedHex()}catch(u){throw"failed seq.getEncodedHex in Attribute(2)/"+u;}return this.hTLV}};o.lang.extend(r.asn1.cms.Attribute,r.asn1.ASN1Object);r.asn1.cms.ContentType=function(n){var t;r.asn1.cms.ContentType.superclass.constructor.call(this);this.attrTypeOid="1.2.840.113549.1.9.3";t=null;typeof n!="undefined"&&(t=new r.asn1.DERObjectIdentifier(n),this.valueList=[t])};o.lang.extend(r.asn1.cms.ContentType,r.asn1.cms.Attribute);r.asn1.cms.MessageDigest=function(n){var t;if(r.asn1.cms.MessageDigest.superclass.constructor.call(this),this.attrTypeOid="1.2.840.113549.1.9.4",typeof n!="undefined")if(n.eciObj instanceof r.asn1.cms.EncapsulatedContentInfo&&typeof n.hashAlg=="string"){var i=n.eciObj.eContentValueHex,u=n.hashAlg,f=r.crypto.Util.hashHex(i,u),t=new r.asn1.DEROctetString({hex:f});t.getEncodedHex();this.valueList=[t]}else t=new r.asn1.DEROctetString(n),t.getEncodedHex(),this.valueList=[t]};o.lang.extend(r.asn1.cms.MessageDigest,r.asn1.cms.Attribute);r.asn1.cms.SigningTime=function(n){if(r.asn1.cms.SigningTime.superclass.constructor.call(this),this.attrTypeOid="1.2.840.113549.1.9.5",typeof n!="undefined"){var t=new r.asn1.x509.Time(n);try{t.getEncodedHex()}catch(i){throw"SigningTime.getEncodedHex() failed/"+i;}this.valueList=[t]}};o.lang.extend(r.asn1.cms.SigningTime,r.asn1.cms.Attribute);r.asn1.cms.SigningCertificate=function(n){r.asn1.cms.SigningCertificate.superclass.constructor.call(this);this.attrTypeOid="1.2.840.113549.1.9.16.2.12";var t=r.asn1,i=r.asn1.cms,u=r.crypto;this.setCerts=function(n){for(var s=[],f,e,o,r=0;r<n.length;r++){var c=a.getHexFromPEM(n[r]),l=u.Util.hashHex(c,"sha1"),h=new t.DEROctetString({hex:l});h.getEncodedHex();f=new i.IssuerAndSerialNumber({cert:n[r]});f.getEncodedHex();e=new t.DERSequence({array:[h,f]});e.getEncodedHex();s.push(e)}o=new t.DERSequence({array:s});o.getEncodedHex();this.valueList=[o]};typeof n!="undefined"&&typeof n.array=="object"&&this.setCerts(n.array)};o.lang.extend(r.asn1.cms.SigningCertificate,r.asn1.cms.Attribute);r.asn1.cms.SigningCertificateV2=function(n){var i;r.asn1.cms.SigningCertificateV2.superclass.constructor.call(this);this.attrTypeOid="1.2.840.113549.1.9.16.2.47";var t=r.asn1,u=r.asn1.x509,f=r.asn1.cms,e=r.crypto;this.setCerts=function(n,i){for(var v=[],y,o,p,s,h,c,l,r=0;r<n.length;r++)y=a.getHexFromPEM(n[r]),o=[],i!="sha256"&&o.push(new u.AlgorithmIdentifier({name:i})),p=e.Util.hashHex(y,i),s=new t.DEROctetString({hex:p}),s.getEncodedHex(),o.push(s),h=new f.IssuerAndSerialNumber({cert:n[r]}),h.getEncodedHex(),o.push(h),c=new t.DERSequence({array:o}),c.getEncodedHex(),v.push(c);l=new t.DERSequence({array:v});l.getEncodedHex();this.valueList=[l]};typeof n!="undefined"&&typeof n.array=="object"&&(i="sha256",typeof n.hashAlg=="string"&&(i=n.hashAlg),this.setCerts(n.array,i))};o.lang.extend(r.asn1.cms.SigningCertificateV2,r.asn1.cms.Attribute);r.asn1.cms.IssuerAndSerialNumber=function(n){r.asn1.cms.IssuerAndSerialNumber.superclass.constructor.call(this);var t=r.asn1,i=t.x509;this.setByCertPEM=function(n){var e=a.getHexFromPEM(n),r=new c,u,f;r.hex=e;u=r.getIssuerHex();this.dIssuer=new i.X500Name;this.dIssuer.hTLV=u;f=r.getSerialNumberHex();this.dSerial=new t.DERInteger({hex:f})};this.getEncodedHex=function(){var n=new r.asn1.DERSequence({array:[this.dIssuer,this.dSerial]});return this.hTLV=n.getEncodedHex(),this.hTLV};typeof n!="undefined"&&(typeof n=="string"&&n.indexOf("-----BEGIN ")!=-1&&this.setByCertPEM(n),n.issuer&&n.serial&&(this.dIssuer=n.issuer instanceof r.asn1.x509.X500Name?n.issuer:new r.asn1.x509.X500Name(n.issuer),this.dSerial=n.serial instanceof r.asn1.DERInteger?n.serial:new r.asn1.DERInteger(n.serial)),typeof n.cert=="string"&&this.setByCertPEM(n.cert))};o.lang.extend(r.asn1.cms.IssuerAndSerialNumber,r.asn1.ASN1Object);r.asn1.cms.AttributeList=function(n){r.asn1.cms.AttributeList.superclass.constructor.call(this);this.list=[];this.sortFlag=!0;this.add=function(n){n instanceof r.asn1.cms.Attribute&&this.list.push(n)};this.length=function(){return this.list.length};this.clear=function(){this.list=[];this.hTLV=null;this.hV=null};this.getEncodedHex=function(){if(typeof this.hTLV=="string")return this.hTLV;var n=new r.asn1.DERSet({array:this.list,sortflag:this.sortFlag});return this.hTLV=n.getEncodedHex(),this.hTLV};typeof n!="undefined"&&typeof n.sortflag!="undefined"&&n.sortflag==!1&&(this.sortFlag=!1)};o.lang.extend(r.asn1.cms.AttributeList,r.asn1.ASN1Object);r.asn1.cms.SignerInfo=function(){r.asn1.cms.SignerInfo.superclass.constructor.call(this);var n=r.asn1,t=r.asn1.cms,i=r.asn1.x509;this.dCMSVersion=new n.DERInteger({int:1});this.dSignerIdentifier=null;this.dDigestAlgorithm=null;this.dSignedAttrs=new t.AttributeList;this.dSigAlg=null;this.dSig=null;this.dUnsignedAttrs=new t.AttributeList;this.setSignerIdentifier=function(n){if(typeof n=="string"&&n.indexOf("CERTIFICATE")!=-1&&n.indexOf("BEGIN")!=-1&&n.indexOf("END")!=-1){var i=n;this.dSignerIdentifier=new t.IssuerAndSerialNumber({cert:n})}};this.setForContentAndHash=function(n){typeof n!="undefined"&&(n.eciObj instanceof r.asn1.cms.EncapsulatedContentInfo&&(this.dSignedAttrs.add(new t.ContentType({oid:"1.2.840.113549.1.7.1"})),this.dSignedAttrs.add(new t.MessageDigest({eciObj:n.eciObj,hashAlg:n.hashAlg}))),typeof n.sdObj!="undefined"&&n.sdObj instanceof r.asn1.cms.SignedData&&n.sdObj.digestAlgNameList.join(":").indexOf(n.hashAlg)==-1&&n.sdObj.digestAlgNameList.push(n.hashAlg),typeof n.hashAlg=="string"&&(this.dDigestAlgorithm=new i.AlgorithmIdentifier({name:n.hashAlg})))};this.sign=function(t,u){var e;this.dSigAlg=new i.AlgorithmIdentifier({name:u});var o=this.dSignedAttrs.getEncodedHex(),s=a.getKey(t),f=new r.crypto.Signature({alg:u});f.init(s);f.updateHex(o);e=f.sign();this.dSig=new n.DEROctetString({hex:e})};this.addUnsigned=function(n){this.hTLV=null;this.dUnsignedAttrs.hTLV=null;this.dUnsignedAttrs.add(n)};this.getEncodedHex=function(){var u,t,i,f;if(this.dSignedAttrs instanceof r.asn1.cms.AttributeList&&this.dSignedAttrs.length()==0)throw"SignedAttrs length = 0 (empty)";return u=new n.DERTaggedObject({obj:this.dSignedAttrs,tag:"a0",explicit:!1}),t=null,this.dUnsignedAttrs.length()>0&&(t=new n.DERTaggedObject({obj:this.dUnsignedAttrs,tag:"a1",explicit:!1})),i=[this.dCMSVersion,this.dSignerIdentifier,this.dDigestAlgorithm,u,this.dSigAlg,this.dSig,],t!=null&&i.push(t),f=new n.DERSequence({array:i}),this.hTLV=f.getEncodedHex(),this.hTLV}};o.lang.extend(r.asn1.cms.SignerInfo,r.asn1.ASN1Object);r.asn1.cms.EncapsulatedContentInfo=function(){r.asn1.cms.EncapsulatedContentInfo.superclass.constructor.call(this);var n=r.asn1,t=r.asn1.cms,i=r.asn1.x509;this.dEContentType=new n.DERObjectIdentifier({name:"data"});this.dEContent=null;this.isDetached=!1;this.eContentValueHex=null;this.setContentType=function(t){this.dEContentType=t.match(/^[0-2][.][0-9.]+$/)?new n.DERObjectIdentifier({oid:t}):new n.DERObjectIdentifier({name:t})};this.setContentValue=function(n){typeof n!="undefined"&&(typeof n.hex=="string"?this.eContentValueHex=n.hex:typeof n.str=="string"&&(this.eContentValueHex=pi(n.str)))};this.setContentValueHex=function(n){this.eContentValueHex=n};this.setContentValueStr=function(n){this.eContentValueHex=pi(n)};this.getEncodedHex=function(){var i,t,r;if(typeof this.eContentValueHex!="string")throw"eContentValue not yet set";return i=new n.DEROctetString({hex:this.eContentValueHex}),this.dEContent=new n.DERTaggedObject({obj:i,tag:"a0",explicit:!0}),t=[this.dEContentType],this.isDetached||t.push(this.dEContent),r=new n.DERSequence({array:t}),this.hTLV=r.getEncodedHex(),this.hTLV}};o.lang.extend(r.asn1.cms.EncapsulatedContentInfo,r.asn1.ASN1Object);r.asn1.cms.ContentInfo=function(n){r.asn1.cms.ContentInfo.superclass.constructor.call(this);var t=r.asn1,u=r.asn1.cms,i=r.asn1.x509;this.dContentType=null;this.dContent=null;this.setContentType=function(n){typeof n=="string"&&(this.dContentType=i.OID.name2obj(n))};this.getEncodedHex=function(){var n=new t.DERTaggedObject({obj:this.dContent,tag:"a0",explicit:!0}),i=new t.DERSequence({array:[this.dContentType,n]});return this.hTLV=i.getEncodedHex(),this.hTLV};typeof n!="undefined"&&(n.type&&this.setContentType(n.type),n.obj&&n.obj instanceof t.ASN1Object&&(this.dContent=n.obj))};o.lang.extend(r.asn1.cms.ContentInfo,r.asn1.ASN1Object);r.asn1.cms.SignedData=function(){r.asn1.cms.SignedData.superclass.constructor.call(this);var n=r.asn1,t=r.asn1.cms,i=r.asn1.x509;this.dCMSVersion=new n.DERInteger({int:1});this.dDigestAlgs=null;this.digestAlgNameList=[];this.dEncapContentInfo=new t.EncapsulatedContentInfo;this.dCerts=null;this.certificateList=[];this.crlList=[];this.signerInfoList=[new t.SignerInfo];this.addCertificatesByPEM=function(t){var r=a.getHexFromPEM(t),i=new n.ASN1Object;i.hTLV=r;this.certificateList.push(i)};this.getEncodedHex=function(){var u,t,f,e,r,o,s,h;if(typeof this.hTLV=="string")return this.hTLV;if(this.dDigestAlgs==null){for(u=[],t=0;t<this.digestAlgNameList.length;t++)f=this.digestAlgNameList[t],e=new i.AlgorithmIdentifier({name:f}),u.push(e);this.dDigestAlgs=new n.DERSet({array:u})}return r=[this.dCMSVersion,this.dDigestAlgs,this.dEncapContentInfo],this.dCerts==null&&this.certificateList.length>0&&(o=new n.DERSet({array:this.certificateList}),this.dCerts=new n.DERTaggedObject({obj:o,tag:"a0",explicit:!1})),this.dCerts!=null&&r.push(this.dCerts),s=new n.DERSet({array:this.signerInfoList}),r.push(s),h=new n.DERSequence({array:r}),this.hTLV=h.getEncodedHex(),this.hTLV};this.getContentInfo=function(){this.getEncodedHex();return new t.ContentInfo({type:"signed-data",obj:this})};this.getContentInfoEncodedHex=function(){var n=this.getContentInfo();return n.getEncodedHex()};this.getPEM=function(){var t=this.getContentInfoEncodedHex();return n.ASN1Util.getPEMStringFromHex(t,"CMS")}};o.lang.extend(r.asn1.cms.SignedData,r.asn1.ASN1Object);r.asn1.cms.CMSUtil=new function(){};r.asn1.cms.CMSUtil.newSignedData=function(n){var o=r.asn1.cms,h=r.asn1.cades,f=new o.SignedData,i,e,u,s,t;if(f.dEncapContentInfo.setContentValue(n.content),typeof n.certs=="object")for(i=0;i<n.certs.length;i++)f.addCertificatesByPEM(n.certs[i]);for(f.signerInfoList=[],i=0;i<n.signerInfos.length;i++){e=n.signerInfos[i];u=new o.SignerInfo;u.setSignerIdentifier(e.signerCert);u.setForContentAndHash({sdObj:f,eciObj:f.dEncapContentInfo,hashAlg:e.hashAlg});for(attrName in e.sAttr)s=e.sAttr[attrName],attrName=="SigningTime"&&(t=new o.SigningTime(s),u.dSignedAttrs.add(t)),attrName=="SigningCertificate"&&(t=new o.SigningCertificate(s),u.dSignedAttrs.add(t)),attrName=="SigningCertificateV2"&&(t=new o.SigningCertificateV2(s),u.dSignedAttrs.add(t)),attrName=="SignaturePolicyIdentifier"&&(t=new h.SignaturePolicyIdentifier(s),u.dSignedAttrs.add(t));u.sign(e.signerPrvKey,e.sigAlg);f.signerInfoList.push(u)}return f};typeof r!="undefined"&&r||(r={});typeof r.asn1!="undefined"&&r.asn1||(r.asn1={});typeof r.asn1.tsp!="undefined"&&r.asn1.tsp||(r.asn1.tsp={});r.asn1.tsp.Accuracy=function(n){r.asn1.tsp.Accuracy.superclass.constructor.call(this);var t=r.asn1;this.seconds=null;this.millis=null;this.micros=null;this.getEncodedHex=function(){var i=null,r=null,u=null,n=[],f,e,o;return this.seconds!=null&&(i=new t.DERInteger({int:this.seconds}),n.push(i)),this.millis!=null&&(f=new t.DERInteger({int:this.millis}),r=new t.DERTaggedObject({obj:f,tag:"80",explicit:!1}),n.push(r)),this.micros!=null&&(e=new t.DERInteger({int:this.micros}),u=new t.DERTaggedObject({obj:e,tag:"81",explicit:!1}),n.push(u)),o=new t.DERSequence({array:n}),this.hTLV=o.getEncodedHex(),this.hTLV};typeof n!="undefined"&&(typeof n.seconds=="number"&&(this.seconds=n.seconds),typeof n.millis=="number"&&(this.millis=n.millis),typeof n.micros=="number"&&(this.micros=n.micros))};o.lang.extend(r.asn1.tsp.Accuracy,r.asn1.ASN1Object);r.asn1.tsp.MessageImprint=function(n){r.asn1.tsp.MessageImprint.superclass.constructor.call(this);var t=r.asn1,i=r.asn1.x509;this.dHashAlg=null;this.dHashValue=null;this.getEncodedHex=function(){if(typeof this.hTLV=="string")return this.hTLV;var n=new t.DERSequence({array:[this.dHashAlg,this.dHashValue]});return n.getEncodedHex()};typeof n!="undefined"&&(typeof n.hashAlg=="string"&&(this.dHashAlg=new i.AlgorithmIdentifier({name:n.hashAlg})),typeof n.hashValue=="string"&&(this.dHashValue=new t.DEROctetString({hex:n.hashValue})))};o.lang.extend(r.asn1.tsp.MessageImprint,r.asn1.ASN1Object);r.asn1.tsp.TimeStampReq=function(n){r.asn1.tsp.TimeStampReq.superclass.constructor.call(this);var t=r.asn1,i=r.asn1.tsp;this.dVersion=new t.DERInteger({int:1});this.dMessageImprint=null;this.dPolicy=null;this.dNonce=null;this.certReq=!0;this.setMessageImprint=function(n){if(n instanceof r.asn1.tsp.MessageImprint){this.dMessageImprint=n;return}typeof n=="object"&&(this.dMessageImprint=new i.MessageImprint(n))};this.getEncodedHex=function(){var n,i;if(this.dMessageImprint==null)throw"messageImprint shall be specified";return n=[this.dVersion,this.dMessageImprint],this.dPolicy!=null&&n.push(this.dPolicy),this.dNonce!=null&&n.push(this.dNonce),this.certReq&&n.push(new t.DERBoolean),i=new t.DERSequence({array:n}),this.hTLV=i.getEncodedHex(),this.hTLV};typeof n!="undefined"&&(typeof n.mi=="object"&&this.setMessageImprint(n.mi),typeof n.policy=="object"&&(this.dPolicy=new t.DERObjectIdentifier(n.policy)),typeof n.nonce=="object"&&(this.dNonce=new t.DERInteger(n.nonce)),typeof n.certreq=="boolean"&&(this.certReq=n.certreq))};o.lang.extend(r.asn1.tsp.TimeStampReq,r.asn1.ASN1Object);r.asn1.tsp.TSTInfo=function(n){r.asn1.tsp.TSTInfo.superclass.constructor.call(this);var t=r.asn1,u=r.asn1.x509,i=r.asn1.tsp;if(this.dVersion=new t.DERInteger({int:1}),this.dPolicy=null,this.dMessageImprint=null,this.dSerialNumber=null,this.dGenTime=null,this.dAccuracy=null,this.dOrdering=null,this.dNonce=null,this.dTsa=null,this.getEncodedHex=function(){var n=[this.dVersion],i;if(this.dPolicy==null)throw"policy shall be specified.";if(n.push(this.dPolicy),this.dMessageImprint==null)throw"messageImprint shall be specified.";if(n.push(this.dMessageImprint),this.dSerialNumber==null)throw"serialNumber shall be specified.";if(n.push(this.dSerialNumber),this.dGenTime==null)throw"genTime shall be specified.";return n.push(this.dGenTime),this.dAccuracy!=null&&n.push(this.dAccuracy),this.dOrdering!=null&&n.push(this.dOrdering),this.dNonce!=null&&n.push(this.dNonce),this.dTsa!=null&&n.push(this.dTsa),i=new t.DERSequence({array:n}),this.hTLV=i.getEncodedHex(),this.hTLV},typeof n!="undefined"){if(typeof n.policy=="string"){if(!n.policy.match(/^[0-9.]+$/))throw"policy shall be oid like 0.1.4.134";this.dPolicy=new t.DERObjectIdentifier({oid:n.policy})}typeof n.messageImprint!="undefined"&&(this.dMessageImprint=new i.MessageImprint(n.messageImprint));typeof n.serialNumber!="undefined"&&(this.dSerialNumber=new t.DERInteger(n.serialNumber));typeof n.genTime!="undefined"&&(this.dGenTime=new t.DERGeneralizedTime(n.genTime));typeof n.accuracy!="undefind"&&(this.dAccuracy=new i.Accuracy(n.accuracy));typeof n.ordering!="undefined"&&n.ordering==!0&&(this.dOrdering=new t.DERBoolean);typeof n.nonce!="undefined"&&(this.dNonce=new t.DERInteger(n.nonce));typeof n.tsa!="undefined"&&(this.dTsa=new u.X500Name(n.tsa))}};o.lang.extend(r.asn1.tsp.TSTInfo,r.asn1.ASN1Object);r.asn1.tsp.TimeStampResp=function(n){r.asn1.tsp.TimeStampResp.superclass.constructor.call(this);var t=r.asn1,i=r.asn1.tsp;this.dStatus=null;this.dTST=null;this.getEncodedHex=function(){var n,i;if(this.dStatus==null)throw"status shall be specified";return n=[this.dStatus],this.dTST!=null&&n.push(this.dTST),i=new t.DERSequence({array:n}),this.hTLV=i.getEncodedHex(),this.hTLV};typeof n!="undefined"&&(typeof n.status=="object"&&(this.dStatus=new i.PKIStatusInfo(n.status)),typeof n.tst!="undefined"&&n.tst instanceof r.asn1.ASN1Object&&(this.dTST=n.tst.getContentInfo()))};o.lang.extend(r.asn1.tsp.TimeStampResp,r.asn1.ASN1Object);r.asn1.tsp.PKIStatusInfo=function(n){r.asn1.tsp.PKIStatusInfo.superclass.constructor.call(this);var i=r.asn1,t=r.asn1.tsp;this.dStatus=null;this.dStatusString=null;this.dFailureInfo=null;this.getEncodedHex=function(){var n,t;if(this.dStatus==null)throw"status shall be specified";return n=[this.dStatus],this.dStatusString!=null&&n.push(this.dStatusString),this.dFailureInfo!=null&&n.push(this.dFailureInfo),t=new i.DERSequence({array:n}),this.hTLV=t.getEncodedHex(),this.hTLV};typeof n!="undefined"&&(typeof n.status=="object"&&(this.dStatus=new t.PKIStatus(n.status)),typeof n.statstr=="object"&&(this.dStatusString=new t.PKIFreeText({array:n.statstr})),typeof n.failinfo=="object"&&(this.dFailureInfo=new t.PKIFailureInfo(n.failinfo)))};o.lang.extend(r.asn1.tsp.PKIStatusInfo,r.asn1.ASN1Object);r.asn1.tsp.PKIStatus=function(n){var t;r.asn1.tsp.PKIStatus.superclass.constructor.call(this);var i=r.asn1,u=r.asn1.tsp;if(this.getEncodedHex=function(){return this.hTLV=this.dStatus.getEncodedHex(),this.hTLV},typeof n!="undefined")if(typeof n.name!="undefined"){if(t=u.PKIStatus.valueList,typeof t[n.name]=="undefined")throw"name undefined: "+n.name;this.dStatus=new i.DERInteger({int:t[n.name]})}else this.dStatus=new i.DERInteger(n)};o.lang.extend(r.asn1.tsp.PKIStatus,r.asn1.ASN1Object);r.asn1.tsp.PKIStatus.valueList={granted:0,grantedWithMods:1,rejection:2,waiting:3,revocationWarning:4,revocationNotification:5};r.asn1.tsp.PKIFreeText=function(n){r.asn1.tsp.PKIFreeText.superclass.constructor.call(this);var t=r.asn1;this.textList=[];this.getEncodedHex=function(){for(var i=[],r,n=0;n<this.textList.length;n++)i.push(new t.DERUTF8String({str:this.textList[n]}));return r=new t.DERSequence({array:i}),this.hTLV=r.getEncodedHex(),this.hTLV};typeof n!="undefined"&&typeof n.array=="object"&&(this.textList=n.array)};o.lang.extend(r.asn1.tsp.PKIFreeText,r.asn1.ASN1Object);r.asn1.tsp.PKIFailureInfo=function(n){var i,u,t;if(r.asn1.tsp.PKIFailureInfo.superclass.constructor.call(this),i=r.asn1,u=r.asn1.tsp,this.value=null,this.getEncodedHex=function(){if(this.value==null)throw"value shall be specified";var t=new Number(this.value).toString(2),n=new i.DERBitString;return n.setByBinaryString(t),this.hTLV=n.getEncodedHex(),this.hTLV},typeof n!="undefined")if(typeof n.name=="string"){if(t=u.PKIFailureInfo.valueList,typeof t[n.name]=="undefined")throw"name undefined: "+n.name;this.value=t[n.name]}else typeof n.int=="number"&&(this.value=n.int)};o.lang.extend(r.asn1.tsp.PKIFailureInfo,r.asn1.ASN1Object);r.asn1.tsp.PKIFailureInfo.valueList={badAlg:0,badRequest:2,badDataFormat:5,timeNotAvailable:14,unacceptedPolicy:15,unacceptedExtension:16,addInfoNotAvailable:17,systemFailure:25};r.asn1.tsp.AbstractTSAAdapter=function(){this.getTSTHex=function(){throw"not implemented yet";}};r.asn1.tsp.SimpleTSAAdapter=function(n){r.asn1.tsp.SimpleTSAAdapter.superclass.constructor.call(this);this.params=null;this.serial=0;this.getTSTHex=function(n,t){var f=r.crypto.Util.hashHex(n,t),i,u;return this.params.tstInfo.messageImprint={hashAlg:t,hashValue:f},this.params.tstInfo.serialNumber={int:this.serial++},i=Math.floor(Math.random()*1e9),this.params.tstInfo.nonce={int:i},u=r.asn1.tsp.TSPUtil.newTimeStampToken(this.params),u.getContentInfoEncodedHex()};typeof n!="undefined"&&(this.params=n)};o.lang.extend(r.asn1.tsp.SimpleTSAAdapter,r.asn1.tsp.AbstractTSAAdapter);r.asn1.tsp.FixedTSAAdapter=function(n){r.asn1.tsp.FixedTSAAdapter.superclass.constructor.call(this);this.params=null;this.getTSTHex=function(n,t){var u=r.crypto.Util.hashHex(n,t),i;return this.params.tstInfo.messageImprint={hashAlg:t,hashValue:u},i=r.asn1.tsp.TSPUtil.newTimeStampToken(this.params),i.getContentInfoEncodedHex()};typeof n!="undefined"&&(this.params=n)};o.lang.extend(r.asn1.tsp.FixedTSAAdapter,r.asn1.tsp.AbstractTSAAdapter);r.asn1.tsp.TSPUtil=new function(){};r.asn1.tsp.TSPUtil.newTimeStampToken=function(n){var f=r.asn1.cms,o=r.asn1.tsp,t=new f.SignedData,s=new o.TSTInfo(n.tstInfo),h=s.getEncodedHex(),u,i,e;if(t.dEncapContentInfo.setContentValue({hex:h}),t.dEncapContentInfo.setContentType("tstinfo"),typeof n.certs=="object")for(u=0;u<n.certs.length;u++)t.addCertificatesByPEM(n.certs[u]);return i=t.signerInfoList[0],i.setSignerIdentifier(n.signerCert),i.setForContentAndHash({sdObj:t,eciObj:t.dEncapContentInfo,hashAlg:n.hashAlg}),e=new f.SigningCertificate({array:[n.signerCert]}),i.dSignedAttrs.add(e),i.sign(n.signerPrvKey,n.sigAlg),t};r.asn1.tsp.TSPUtil.parseTimeStampReq=function(n){var t={},i,s,f,e,o,h;if(t.certreq=!1,i=u.getPosArrayOfChildren_AtObj(n,0),i.length<2)throw"TimeStampReq must have at least 2 items";for(s=u.getHexOfTLV_AtObj(n,i[1]),t.mi=r.asn1.tsp.TSPUtil.parseMessageImprint(s),f=2;f<i.length;f++)e=i[f],o=n.substr(e,2),o=="06"&&(h=u.getHexOfV_AtObj(n,e),t.policy=u.hextooidstr(h)),o=="02"&&(t.nonce=u.getHexOfV_AtObj(n,e)),o=="01"&&(t.certreq=!0);return t};r.asn1.tsp.TSPUtil.parseMessageImprint=function(n){var t={},e,o;if(n.substr(0,2)!="30")throw"head of messageImprint hex shall be '30'";var c=u.getPosArrayOfChildren_AtObj(n,0),s=u.getDecendantIndexByNthList(n,0,[0,0]),h=u.getHexOfV_AtObj(n,s),i=u.hextooidstr(h),f=r.asn1.x509.OID.oid2name(i);if(f=="")throw"hashAlg name undefined: "+i;return e=f,o=u.getDecendantIndexByNthList(n,0,[1]),t.hashAlg=e,t.hashValue=u.getHexOfV_AtObj(n,o),t};typeof r!="undefined"&&r||(r={});typeof r.asn1!="undefined"&&r.asn1||(r.asn1={});typeof r.asn1.cades!="undefined"&&r.asn1.cades||(r.asn1.cades={});r.asn1.cades.SignaturePolicyIdentifier=function(n){var t,i;if(r.asn1.cades.SignaturePolicyIdentifier.superclass.constructor.call(this),this.attrTypeOid="1.2.840.113549.1.9.16.2.15",t=r.asn1,i=r.asn1.cades,typeof n!="undefined"&&typeof n.oid=="string"&&typeof n.hash=="object"){var u=new t.DERObjectIdentifier({oid:n.oid}),f=new i.OtherHashAlgAndValue(n.hash),e=new t.DERSequence({array:[u,f]});this.valueList=[e]}};o.lang.extend(r.asn1.cades.SignaturePolicyIdentifier,r.asn1.cms.Attribute);r.asn1.cades.OtherHashAlgAndValue=function(n){r.asn1.cades.OtherHashAlgAndValue.superclass.constructor.call(this);var t=r.asn1,i=r.asn1.x509;this.dAlg=null;this.dHash=null;this.getEncodedHex=function(){var n=new t.DERSequence({array:[this.dAlg,this.dHash]});return this.hTLV=n.getEncodedHex(),this.hTLV};typeof n!="undefined"&&typeof n.alg=="string"&&typeof n.hash=="string"&&(this.dAlg=new i.AlgorithmIdentifier({name:n.alg}),this.dHash=new t.DEROctetString({hex:n.hash}))};o.lang.extend(r.asn1.cades.OtherHashAlgAndValue,r.asn1.ASN1Object);r.asn1.cades.SignatureTimeStamp=function(n){var i,t;if(r.asn1.cades.SignatureTimeStamp.superclass.constructor.call(this),this.attrTypeOid="1.2.840.113549.1.9.16.2.14",this.tstHex=null,i=r.asn1,typeof n!="undefined"){if(typeof n.res!="undefined"&&(typeof n.res!="string"||!n.res.match(/^[0-9A-Fa-f]+$/))&&!(n.res instanceof r.asn1.ASN1Object))throw"res param shall be ASN1Object or hex string";if(typeof n.tst!="undefined")if(typeof n.tst=="string"&&n.tst.match(/^[0-9A-Fa-f]+$/))t=new i.ASN1Object,this.tstHex=n.tst,t.hTLV=this.tstHex,t.getEncodedHex(),this.valueList=[t];else if(!(n.tst instanceof r.asn1.ASN1Object))throw"tst param shall be ASN1Object or hex string";}};o.lang.extend(r.asn1.cades.SignatureTimeStamp,r.asn1.cms.Attribute);r.asn1.cades.CompleteCertificateRefs=function(n){r.asn1.cades.CompleteCertificateRefs.superclass.constructor.call(this);this.attrTypeOid="1.2.840.113549.1.9.16.2.21";var i=r.asn1,t=r.asn1.cades;this.setByArray=function(n){var i,r;for(this.valueList=[],i=0;i<n.length;i++)r=new t.OtherCertID(n[i]),this.valueList.push(r)};typeof n!="undefined"&&typeof n=="object"&&typeof n.length=="number"&&this.setByArray(n)};o.lang.extend(r.asn1.cades.CompleteCertificateRefs,r.asn1.cms.Attribute);r.asn1.cades.OtherCertID=function(n){r.asn1.cades.OtherCertID.superclass.constructor.call(this);var t=r.asn1,i=r.asn1.cms,u=r.asn1.cades;this.hasIssuerSerial=!0;this.dOtherCertHash=null;this.dIssuerSerial=null;this.setByCertPEM=function(n){this.dOtherCertHash=new u.OtherHash(n);this.hasIssuerSerial&&(this.dIssuerSerial=new i.IssuerAndSerialNumber(n))};this.getEncodedHex=function(){var n,i;if(this.hTLV!=null)return this.hTLV;if(this.dOtherCertHash==null)throw"otherCertHash not set";return n=[this.dOtherCertHash],this.dIssuerSerial!=null&&n.push(this.dIssuerSerial),i=new t.DERSequence({array:n}),this.hTLV=i.getEncodedHex(),this.hTLV};typeof n!="undefined"&&(typeof n=="string"&&n.indexOf("-----BEGIN ")!=-1&&this.setByCertPEM(n),typeof n=="object"&&(n.hasis===!1&&(this.hasIssuerSerial=!1),typeof n.cert=="string"&&this.setByCertPEM(n.cert)))};o.lang.extend(r.asn1.cades.OtherCertID,r.asn1.ASN1Object);r.asn1.cades.OtherHash=function(n){r.asn1.cades.OtherHash.superclass.constructor.call(this);var i=r.asn1,t=r.asn1.cades;if(this.alg="sha256",this.dOtherHash=null,this.setByCertPEM=function(n){if(n.indexOf("-----BEGIN ")==-1)throw"certPEM not to seem PEM format";var i=c.pemToHex(n),u=r.crypto.Util.hashHex(i,this.alg);this.dOtherHash=new t.OtherHashAlgAndValue({alg:this.alg,hash:u})},this.getEncodedHex=function(){if(this.dOtherHash==null)throw"OtherHash not set";return this.dOtherHash.getEncodedHex()},typeof n!="undefined")if(typeof n=="string")if(n.indexOf("-----BEGIN ")!=-1)this.setByCertPEM(n);else if(n.match(/^[0-9A-Fa-f]+$/))this.dOtherHash=new i.DEROctetString({hex:n});else throw"unsupported string value for params";else typeof n=="object"&&(typeof n.cert=="string"?(typeof n.alg=="string"&&(this.alg=n.alg),this.setByCertPEM(n.cert)):this.dOtherHash=new t.OtherHashAlgAndValue(n))};o.lang.extend(r.asn1.cades.OtherHash,r.asn1.ASN1Object);r.asn1.cades.CAdESUtil=new function(){};r.asn1.cades.CAdESUtil.addSigTS=function(){};r.asn1.cades.CAdESUtil.parseSignedDataForAddingUnsigned=function(n){var s=r.asn1,b=r.asn1.cms,k=r.asn1.cades.CAdESUtil,t={},l,e,a,v,y,o,h,c,p,w,i,f;if(u.getDecendantHexTLVByNthList(n,0,[0])!="06092a864886f70d010702")throw"hex is not CMS SignedData";if(l=u.getDecendantIndexByNthList(n,0,[1,0]),e=u.getPosArrayOfChildren_AtObj(n,l),e.length<4)throw"num of SignedData elem shall be 4 at least";if(a=e.shift(),t.version=u.getHexOfTLV_AtObj(n,a),v=e.shift(),t.algs=u.getHexOfTLV_AtObj(n,v),y=e.shift(),t.encapcontent=u.getHexOfTLV_AtObj(n,y),t.certs=null,t.revs=null,t.si=[],o=e.shift(),n.substr(o,2)=="a0"&&(t.certs=u.getHexOfTLV_AtObj(n,o),o=e.shift()),n.substr(o,2)=="a1"&&(t.revs=u.getHexOfTLV_AtObj(n,o),o=e.shift()),h=o,n.substr(h,2)!="31")throw"Can't find signerInfos";for(c=u.getPosArrayOfChildren_AtObj(n,h),f=0;f<c.length;f++)p=c[f],w=k.parseSignerInfoForAddingUnsigned(n,p,f),t.si[f]=w;for(i=null,t.obj=new b.SignedData,i=new s.ASN1Object,i.hTLV=t.version,t.obj.dCMSVersion=i,i=new s.ASN1Object,i.hTLV=t.algs,t.obj.dDigestAlgs=i,i=new s.ASN1Object,i.hTLV=t.encapcontent,t.obj.dEncapContentInfo=i,i=new s.ASN1Object,i.hTLV=t.certs,t.obj.dCerts=i,t.obj.signerInfoList=[],f=0;f<t.si.length;f++)t.obj.signerInfoList.push(t.si[f].obj);return t};r.asn1.cades.CAdESUtil.parseSignerInfoForAddingUnsigned=function(n,t){var o=r.asn1,h=r.asn1.cms,i={},e=u.getPosArrayOfChildren_AtObj(n,t),c,l,a,v,y,s,f;if(e.length!=6)throw"not supported items for SignerInfo (!=6)";return c=e.shift(),i.version=u.getHexOfTLV_AtObj(n,c),l=e.shift(),i.si=u.getHexOfTLV_AtObj(n,l),a=e.shift(),i.digalg=u.getHexOfTLV_AtObj(n,a),v=e.shift(),i.sattrs=u.getHexOfTLV_AtObj(n,v),y=e.shift(),i.sigalg=u.getHexOfTLV_AtObj(n,y),s=e.shift(),i.sig=u.getHexOfTLV_AtObj(n,s),i.sigval=u.getHexOfV_AtObj(n,s),f=null,i.obj=new h.SignerInfo,f=new o.ASN1Object,f.hTLV=i.version,i.obj.dCMSVersion=f,f=new o.ASN1Object,f.hTLV=i.si,i.obj.dSignerIdentifier=f,f=new o.ASN1Object,f.hTLV=i.digalg,i.obj.dDigestAlgorithm=f,f=new o.ASN1Object,f.hTLV=i.sattrs,i.obj.dSignedAttrs=f,f=new o.ASN1Object,f.hTLV=i.sigalg,i.obj.dSigAlg=f,f=new o.ASN1Object,f.hTLV=i.sig,i.obj.dSig=f,i.obj.dUnsignedAttrs=new h.AttributeList,i};typeof r.asn1.csr!="undefined"&&r.asn1.csr||(r.asn1.csr={});r.asn1.csr.CertificationRequest=function(n){r.asn1.csr.CertificationRequest.superclass.constructor.call(this);this.sign=function(n,t){this.prvKey==null&&(this.prvKey=t);this.asn1SignatureAlg=new r.asn1.x509.AlgorithmIdentifier({name:n});sig=new r.crypto.Signature({alg:n});sig.initSign(this.prvKey);sig.updateHex(this.asn1CSRInfo.getEncodedHex());this.hexSig=sig.sign();this.asn1Sig=new r.asn1.DERBitString({hex:"00"+this.hexSig});var i=new r.asn1.DERSequence({array:[this.asn1CSRInfo,this.asn1SignatureAlg,this.asn1Sig]});this.hTLV=i.getEncodedHex();this.isModified=!1};this.getPEMString=function(){return r.asn1.ASN1Util.getPEMStringFromHex(this.getEncodedHex(),"CERTIFICATE REQUEST")};this.getEncodedHex=function(){if(this.isModified==!1&&this.hTLV!=null)return this.hTLV;throw"not signed yet";};typeof n!="undefined"&&typeof n.csrinfo!="undefined"&&(this.asn1CSRInfo=n.csrinfo)};o.lang.extend(r.asn1.csr.CertificationRequest,r.asn1.ASN1Object);r.asn1.csr.CertificationRequestInfo=function(){r.asn1.csr.CertificationRequestInfo.superclass.constructor.call(this);this._initialize=function(){this.asn1Array=[];this.asn1Version=new r.asn1.DERInteger({int:0});this.asn1Subject=null;this.asn1SubjPKey=null;this.extensionsArray=[]};this.setSubjectByParam=function(n){this.asn1Subject=new r.asn1.x509.X500Name(n)};this.setSubjectPublicKeyByGetKey=function(n){var t=a.getKey(n);this.asn1SubjPKey=new r.asn1.x509.SubjectPublicKeyInfo(t)};this.getEncodedHex=function(){var n,t,i;return this.asn1Array=[],this.asn1Array.push(this.asn1Version),this.asn1Array.push(this.asn1Subject),this.asn1Array.push(this.asn1SubjPKey),n=new r.asn1.DERSequence({array:this.extensionsArray}),t=new r.asn1.DERTaggedObject({explicit:!1,tag:"a0",obj:n}),this.asn1Array.push(t),i=new r.asn1.DERSequence({array:this.asn1Array}),this.hTLV=i.getEncodedHex(),this.isModified=!1,this.hTLV};this._initialize()};o.lang.extend(r.asn1.csr.CertificationRequestInfo,r.asn1.ASN1Object);r.asn1.csr.CSRUtil=new function(){};r.asn1.csr.CSRUtil.newCSRPEM=function(n){var u=r.asn1.csr,t,i,f;if(n.subject===undefined)throw"parameter subject undefined";if(n.sbjpubkey===undefined)throw"parameter sbjpubkey undefined";if(n.sigalg===undefined)throw"parameter sigalg undefined";if(n.sbjprvkey===undefined)throw"parameter sbjpubkey undefined";return t=new u.CertificationRequestInfo,t.setSubjectByParam(n.subject),t.setSubjectPublicKeyByGetKey(n.sbjpubkey),i=new u.CertificationRequest({csrinfo:t}),f=a.getKey(n.sbjprvkey),i.sign(n.sigalg,f),i.getPEMString()};typeof r!="undefined"&&r||(r={});typeof r.lang!="undefined"&&r.lang||(r.lang={});r.lang.String=function(){};typeof n=="function"?(si=function(t){return yi(new n(t,"utf8").toString("base64"))},ot=function(t){return new n(oi(t),"base64").toString("utf8")}):(si=function(n){return b(er(sr(n)))},ot=function(n){return decodeURIComponent(or(w(n)))});r.lang.String.isInteger=function(n){return n.match(/^[0-9]+$/)?!0:n.match(/^-[0-9]+$/)?!0:!1};r.lang.String.isHex=function(n){return n.length%2==0&&(n.match(/^[0-9a-f]+$/)||n.match(/^[0-9A-F]+$/))?!0:!1};r.lang.String.isBase64=function(n){return n=n.replace(/\s+/g,""),n.match(/^[0-9A-Za-z+\/]+={0,3}$/)&&n.length%4==0?!0:!1};r.lang.String.isBase64URL=function(n){return n.match(/[+/=]/)?!1:(n=oi(n),r.lang.String.isBase64(n))};r.lang.String.isIntegerArray=function(n){return n=n.replace(/\s+/g,""),n.match(/^\[[0-9,]+\]$/)?!0:!1};ru=function(n,t){var r=n.length,i;for(n.length>t.length&&(r=t.length),i=0;i<r;i++)if(n.charCodeAt(i)!=t.charCodeAt(i))return i;return n.length!=t.length?r:-1};typeof r!="undefined"&&r||(r={});typeof r.crypto!="undefined"&&r.crypto||(r.crypto={});r.crypto.Util=new function(){this.DIGESTINFOHEAD={sha1:"3021300906052b0e03021a05000414",sha224:"302d300d06096086480165030402040500041c",sha256:"3031300d060960864801650304020105000420",sha384:"3041300d060960864801650304020205000430",sha512:"3051300d060960864801650304020305000440",md2:"3020300c06082a864886f70d020205000410",md5:"3020300c06082a864886f70d020505000410",ripemd160:"3021300906052b2403020105000414"};this.DEFAULTPROVIDER={md5:"cryptojs",sha1:"cryptojs",sha224:"cryptojs",sha256:"cryptojs",sha384:"cryptojs",sha512:"cryptojs",ripemd160:"cryptojs",hmacmd5:"cryptojs",hmacsha1:"cryptojs",hmacsha224:"cryptojs",hmacsha256:"cryptojs",hmacsha384:"cryptojs",hmacsha512:"cryptojs",hmacripemd160:"cryptojs",MD5withRSA:"cryptojs/jsrsa",SHA1withRSA:"cryptojs/jsrsa",SHA224withRSA:"cryptojs/jsrsa",SHA256withRSA:"cryptojs/jsrsa",SHA384withRSA:"cryptojs/jsrsa",SHA512withRSA:"cryptojs/jsrsa",RIPEMD160withRSA:"cryptojs/jsrsa",MD5withECDSA:"cryptojs/jsrsa",SHA1withECDSA:"cryptojs/jsrsa",SHA224withECDSA:"cryptojs/jsrsa",SHA256withECDSA:"cryptojs/jsrsa",SHA384withECDSA:"cryptojs/jsrsa",SHA512withECDSA:"cryptojs/jsrsa",RIPEMD160withECDSA:"cryptojs/jsrsa",SHA1withDSA:"cryptojs/jsrsa",SHA224withDSA:"cryptojs/jsrsa",SHA256withDSA:"cryptojs/jsrsa",MD5withRSAandMGF1:"cryptojs/jsrsa",SHA1withRSAandMGF1:"cryptojs/jsrsa",SHA224withRSAandMGF1:"cryptojs/jsrsa",SHA256withRSAandMGF1:"cryptojs/jsrsa",SHA384withRSAandMGF1:"cryptojs/jsrsa",SHA512withRSAandMGF1:"cryptojs/jsrsa",RIPEMD160withRSAandMGF1:"cryptojs/jsrsa"};this.CRYPTOJSMESSAGEDIGESTNAME={md5:e.algo.MD5,sha1:e.algo.SHA1,sha224:e.algo.SHA224,sha256:e.algo.SHA256,sha384:e.algo.SHA384,sha512:e.algo.SHA512,ripemd160:e.algo.RIPEMD160};this.getDigestInfoHex=function(n,t){if(typeof this.DIGESTINFOHEAD[t]=="undefined")throw"alg not supported in Util.DIGESTINFOHEAD: "+t;return this.DIGESTINFOHEAD[t]+n};this.getPaddedDigestInfoHex=function(n,t,i){var u=this.getDigestInfoHex(n,t),f=i/4,r;if(u.length+22>f)throw"key is too short for SigAlg: keylen="+i+","+t;var e="0001",o="00"+u,s="",h=f-e.length-o.length;for(r=0;r<h;r+=2)s+="ff";return e+s+o};this.hashString=function(n,t){var i=new r.crypto.MessageDigest({alg:t});return i.digestString(n)};this.hashHex=function(n,t){var i=new r.crypto.MessageDigest({alg:t});return i.digestHex(n)};this.sha1=function(n){var t=new r.crypto.MessageDigest({alg:"sha1",prov:"cryptojs"});return t.digestString(n)};this.sha256=function(n){var t=new r.crypto.MessageDigest({alg:"sha256",prov:"cryptojs"});return t.digestString(n)};this.sha256Hex=function(n){var t=new r.crypto.MessageDigest({alg:"sha256",prov:"cryptojs"});return t.digestHex(n)};this.sha512=function(n){var t=new r.crypto.MessageDigest({alg:"sha512",prov:"cryptojs"});return t.digestString(n)};this.sha512Hex=function(n){var t=new r.crypto.MessageDigest({alg:"sha512",prov:"cryptojs"});return t.digestHex(n)};this.md5=function(n){var t=new r.crypto.MessageDigest({alg:"md5",prov:"cryptojs"});return t.digestString(n)};this.ripemd160=function(n){var t=new r.crypto.MessageDigest({alg:"ripemd160",prov:"cryptojs"});return t.digestString(n)};this.getCryptoJSMDByName=function(){}};r.crypto.MessageDigest=function(n){this.setAlgAndProvider=function(n,t){if(n!=null&&t===undefined&&(t=r.crypto.Util.DEFAULTPROVIDER[n]),":md5:sha1:sha224:sha256:sha384:sha512:ripemd160:".indexOf(n)!=-1&&t=="cryptojs"){try{this.md=r.crypto.Util.CRYPTOJSMESSAGEDIGESTNAME[n].create()}catch(i){throw"setAlgAndProvider hash alg set fail alg="+n+"/"+i;}this.updateString=function(n){this.md.update(n)};this.updateHex=function(n){var t=e.enc.Hex.parse(n);this.md.update(t)};this.digest=function(){var n=this.md.finalize();return n.toString(e.enc.Hex)};this.digestString=function(n){return this.updateString(n),this.digest()};this.digestHex=function(n){return this.updateHex(n),this.digest()}}if(":sha256:".indexOf(n)!=-1&&t=="sjcl"){try{this.md=new sjcl.hash.sha256}catch(i){throw"setAlgAndProvider hash alg set fail alg="+n+"/"+i;}this.updateString=function(n){this.md.update(n)};this.updateHex=function(n){var t=sjcl.codec.hex.toBits(n);this.md.update(t)};this.digest=function(){var n=this.md.finalize();return sjcl.codec.hex.fromBits(n)};this.digestString=function(n){return this.updateString(n),this.digest()};this.digestHex=function(n){return this.updateHex(n),this.digest()}}};this.updateString=function(){throw"updateString(str) not supported for this alg/prov: "+this.algName+"/"+this.provName;};this.updateHex=function(){throw"updateHex(hex) not supported for this alg/prov: "+this.algName+"/"+this.provName;};this.digest=function(){throw"digest() not supported for this alg/prov: "+this.algName+"/"+this.provName;};this.digestString=function(){throw"digestString(str) not supported for this alg/prov: "+this.algName+"/"+this.provName;};this.digestHex=function(){throw"digestHex(hex) not supported for this alg/prov: "+this.algName+"/"+this.provName;};n!==undefined&&n.alg!==undefined&&(this.algName=n.alg,n.prov===undefined&&(this.provName=r.crypto.Util.DEFAULTPROVIDER[this.algName]),this.setAlgAndProvider(this.algName,this.provName))};r.crypto.Mac=function(n){this.setAlgAndProvider=function(n,t){var i,u;if(n=n.toLowerCase(),n==null&&(n="hmacsha1"),n=n.toLowerCase(),n.substr(0,4)!="hmac")throw"setAlgAndProvider unsupported HMAC alg: "+n;if(t===undefined&&(t=r.crypto.Util.DEFAULTPROVIDER[n]),this.algProv=n+"/"+t,i=n.substr(4),":md5:sha1:sha224:sha256:sha384:sha512:ripemd160:".indexOf(i)!=-1&&t=="cryptojs"){try{u=r.crypto.Util.CRYPTOJSMESSAGEDIGESTNAME[i];this.mac=e.algo.HMAC.create(u,this.pass)}catch(f){throw"setAlgAndProvider hash alg set fail hashAlg="+i+"/"+f;}this.updateString=function(n){this.mac.update(n)};this.updateHex=function(n){var t=e.enc.Hex.parse(n);this.mac.update(t)};this.doFinal=function(){var n=this.mac.finalize();return n.toString(e.enc.Hex)};this.doFinalString=function(n){return this.updateString(n),this.doFinal()};this.doFinalHex=function(n){return this.updateHex(n),this.doFinal()}}};this.updateString=function(){throw"updateString(str) not supported for this alg/prov: "+this.algProv;};this.updateHex=function(){throw"updateHex(hex) not supported for this alg/prov: "+this.algProv;};this.doFinal=function(){throw"digest() not supported for this alg/prov: "+this.algProv;};this.doFinalString=function(){throw"digestString(str) not supported for this alg/prov: "+this.algProv;};this.doFinalHex=function(){throw"digestHex(hex) not supported for this alg/prov: "+this.algProv;};this.setPassword=function(n){var t;if(typeof n=="string"){t=n;n.length%2!=1&&n.match(/^[0-9A-Fa-f]+$/)||(t=vt(n));this.pass=e.enc.Hex.parse(t);return}if(typeof n!="object")throw"KJUR.crypto.Mac unsupported password type: "+n;if(t=null,n.hex!==undefined){if(n.hex.length%2!=0||!n.hex.match(/^[0-9A-Fa-f]+$/))throw"Mac: wrong hex password: "+n.hex;t=n.hex}if(n.utf8!==undefined&&(t=pi(n.utf8)),n.rstr!==undefined&&(t=vt(n.rstr)),n.b64!==undefined&&(t=st(n.b64)),n.b64u!==undefined&&(t=w(n.b64u)),t==null)throw"KJUR.crypto.Mac unsupported password type: "+n;this.pass=e.enc.Hex.parse(t)};n!==undefined&&(n.pass!==undefined&&this.setPassword(n.pass),n.alg!==undefined&&(this.algName=n.alg,n.prov===undefined&&(this.provName=r.crypto.Util.DEFAULTPROVIDER[this.algName]),this.setAlgAndProvider(this.algName,this.provName)))};r.crypto.Signature=function(n){var t=null;if(this._setAlgNames=function(){this.algName.match(/^(.+)with(.+)$/)&&(this.mdAlgName=RegExp.$1.toLowerCase(),this.pubkeyAlgName=RegExp.$2.toLowerCase())},this._zeroPaddingOfSignature=function(n,t){for(var i="",u=t/4-n.length,r=0;r<u;r++)i=i+"0";return i+n},this.setAlgAndProvider=function(n,t){if(this._setAlgNames(),t!="cryptojs/jsrsa")throw"provider not supported: "+t;if(":md5:sha1:sha224:sha256:sha384:sha512:ripemd160:".indexOf(this.mdAlgName)!=-1){try{this.md=new r.crypto.MessageDigest({alg:this.mdAlgName})}catch(i){throw"setAlgAndProvider hash alg set fail alg="+this.mdAlgName+"/"+i;}this.init=function(n,t){var i=null;try{i=t===undefined?a.getKey(n):a.getKey(n,t)}catch(r){throw"init failed:"+r;}if(i.isPrivate===!0)this.prvKey=i,this.state="SIGN";else if(i.isPublic===!0)this.pubKey=i,this.state="VERIFY";else throw"init failed.:"+i;};this.initSign=function(n){typeof n.ecprvhex=="string"&&typeof n.eccurvename=="string"?(this.ecprvhex=n.ecprvhex,this.eccurvename=n.eccurvename):this.prvKey=n;this.state="SIGN"};this.initVerifyByPublicKey=function(n){typeof n.ecpubhex=="string"&&typeof n.eccurvename=="string"?(this.ecpubhex=n.ecpubhex,this.eccurvename=n.eccurvename):n instanceof r.crypto.ECDSA?this.pubKey=n:n instanceof h&&(this.pubKey=n);this.state="VERIFY"};this.initVerifyByCertificatePEM=function(n){var t=new c;t.readCertPEM(n);this.pubKey=t.subjectPublicKeyRSA;this.state="VERIFY"};this.updateString=function(n){this.md.updateString(n)};this.updateHex=function(n){this.md.updateHex(n)};this.sign=function(){if(this.sHashHex=this.md.digest(),typeof this.ecprvhex!="undefined"&&typeof this.eccurvename!="undefined"){var n=new r.crypto.ECDSA({curve:this.eccurvename});this.hSign=n.signHex(this.sHashHex,this.ecprvhex)}else if(this.prvKey instanceof h&&this.pubkeyAlgName=="rsaandmgf1")this.hSign=this.prvKey.signWithMessageHashPSS(this.sHashHex,this.mdAlgName,this.pssSaltLen);else if(this.prvKey instanceof h&&this.pubkeyAlgName=="rsa")this.hSign=this.prvKey.signWithMessageHash(this.sHashHex,this.mdAlgName);else if(this.prvKey instanceof r.crypto.ECDSA)this.hSign=this.prvKey.signWithMessageHash(this.sHashHex);else if(this.prvKey instanceof r.crypto.DSA)this.hSign=this.prvKey.signWithMessageHash(this.sHashHex);else throw"Signature: unsupported public key alg: "+this.pubkeyAlgName;return this.hSign};this.signString=function(n){return this.updateString(n),this.sign()};this.signHex=function(n){return this.updateHex(n),this.sign()};this.verify=function(n){if(this.sHashHex=this.md.digest(),typeof this.ecpubhex!="undefined"&&typeof this.eccurvename!="undefined"){var t=new r.crypto.ECDSA({curve:this.eccurvename});return t.verifyHex(this.sHashHex,n,this.ecpubhex)}if(this.pubKey instanceof h&&this.pubkeyAlgName=="rsaandmgf1")return this.pubKey.verifyWithMessageHashPSS(this.sHashHex,n,this.mdAlgName,this.pssSaltLen);if(this.pubKey instanceof h&&this.pubkeyAlgName=="rsa"||this.pubKey instanceof r.crypto.ECDSA||this.pubKey instanceof r.crypto.DSA)return this.pubKey.verifyWithMessageHash(this.sHashHex,n);throw"Signature: unsupported public key alg: "+this.pubkeyAlgName;}}},this.init=function(){throw"init(key, pass) not supported for this alg:prov="+this.algProvName;},this.initVerifyByPublicKey=function(){throw"initVerifyByPublicKey(rsaPubKeyy) not supported for this alg:prov="+this.algProvName;},this.initVerifyByCertificatePEM=function(){throw"initVerifyByCertificatePEM(certPEM) not supported for this alg:prov="+this.algProvName;},this.initSign=function(){throw"initSign(prvKey) not supported for this alg:prov="+this.algProvName;},this.updateString=function(){throw"updateString(str) not supported for this alg:prov="+this.algProvName;},this.updateHex=function(){throw"updateHex(hex) not supported for this alg:prov="+this.algProvName;},this.sign=function(){throw"sign() not supported for this alg:prov="+this.algProvName;},this.signString=function(){throw"digestString(str) not supported for this alg:prov="+this.algProvName;},this.signHex=function(){throw"digestHex(hex) not supported for this alg:prov="+this.algProvName;},this.verify=function(){throw"verify(hSigVal) not supported for this alg:prov="+this.algProvName;},this.initParams=n,n!==undefined&&(n.alg!==undefined&&(this.algName=n.alg,this.provName=n.prov===undefined?r.crypto.Util.DEFAULTPROVIDER[this.algName]:n.prov,this.algProvName=this.algName+":"+this.provName,this.setAlgAndProvider(this.algName,this.provName),this._setAlgNames()),n.psssaltlen!==undefined&&(this.pssSaltLen=n.psssaltlen),n.prvkeypem!==undefined))if(n.prvkeypas!==undefined)throw"both prvkeypem and prvkeypas parameters not supported";else try{t=new h;t.readPrivateKeyFromPEMString(n.prvkeypem);this.initSign(t)}catch(i){throw"fatal error to load pem private key: "+i;}};r.crypto.OID=new function(){this.oidhex2name={"2a864886f70d010101":"rsaEncryption","2a8648ce3d0201":"ecPublicKey","2a8648ce380401":"dsa","2a8648ce3d030107":"secp256r1","2b8104001f":"secp192k1","2b81040021":"secp224r1","2b8104000a":"secp256k1","2b81040023":"secp521r1","2b81040022":"secp384r1","2a8648ce380403":"SHA1withDSA","608648016503040301":"SHA224withDSA","608648016503040302":"SHA256withDSA"}};typeof r!="undefined"&&r||(r={});typeof r.crypto!="undefined"&&r.crypto||(r.crypto={});r.crypto.ECDSA=function(n){var t=new ni;this.type="EC";this.getBigRandom=function(n){return new f(n.bitLength(),t).mod(n.subtract(f.ONE)).add(f.ONE)};this.setNamedCurve=function(n){this.ecparams=r.crypto.ECParameterDB.getByName(n);this.prvKeyHex=null;this.pubKeyHex=null;this.curveName=n};this.setPrivateKeyHex=function(n){this.isPrivate=!0;this.prvKeyHex=n};this.setPublicKeyHex=function(n){this.isPublic=!0;this.pubKeyHex=n};this.getPublicKeyXYHex=function(){var n=this.pubKeyHex,t,i;if(n.substr(0,2)!=="04")throw"this method supports uncompressed format(04) only";if(t=this.ecparams.keylen/4,n.length!==2+t*2)throw"malformed public key hex length";return i={},i.x=n.substr(2,t),i.y=n.substr(2+t),i};this.getShortNISTPCurveName=function(){var n=this.curveName;return n==="secp256r1"||n==="NIST P-256"||n==="P-256"||n==="prime256v1"?"P-256":n==="secp384r1"||n==="NIST P-384"||n==="P-384"?"P-384":null};this.generateKeyPairHex=function(){var f=this.ecparams.n,t=this.getBigRandom(f),i=this.ecparams.G.multiply(t),e=i.getX().toBigInteger(),o=i.getY().toBigInteger(),n=this.ecparams.keylen/4,r=("0000000000"+t.toString(16)).slice(-n),s=("0000000000"+e.toString(16)).slice(-n),h=("0000000000"+o.toString(16)).slice(-n),u="04"+s+h;return this.setPrivateKeyHex(r),this.setPublicKeyHex(u),{ecprvhex:r,ecpubhex:u}};this.signWithMessageHash=function(n){return this.signHex(n,this.prvKeyHex)};this.signHex=function(n,t){var s=new f(t,16),i=this.ecparams.n,h=new f(n,16),o;do var e=this.getBigRandom(i),c=this.ecparams.G,l=c.multiply(e),u=l.getX().toBigInteger().mod(i);while(u.compareTo(f.ZERO)<=0);return o=e.modInverse(i).multiply(h.add(s.multiply(u))).mod(i),r.crypto.ECDSA.biRSSigToASN1Sig(u,o)};this.sign=function(n,t){var o=t,i=this.ecparams.n,s=f.fromByteArrayUnsigned(n),e;do var u=this.getBigRandom(i),h=this.ecparams.G,c=h.multiply(u),r=c.getX().toBigInteger().mod(i);while(r.compareTo(f.ZERO)<=0);return e=u.modInverse(i).multiply(s.add(o.multiply(r))).mod(i),this.serializeSig(r,e)};this.verifyWithMessageHash=function(n,t){return this.verifyHex(n,t,this.pubKeyHex)};this.verifyHex=function(n,t,i){var u,e,o=r.crypto.ECDSA.parseSigHex(t),s,h;return u=o.r,e=o.s,s=y.decodeFromHex(this.ecparams.curve,i),h=new f(n,16),this.verifyRaw(h,u,e,s)};this.verify=function(n,t,i){var r,u,e,o,s;if(Bitcoin.Util.isArray(t))e=this.parseSig(t),r=e.r,u=e.s;else if("object"==typeof t&&t.r&&t.s)r=t.r,u=t.s;else throw"Invalid value for signature";if(i instanceof y)o=i;else if(Bitcoin.Util.isArray(i))o=y.decodeFrom(this.ecparams.curve,i);else throw"Invalid format for pubkey value, must be byte array or ECPointFp";return s=f.fromByteArrayUnsigned(n),this.verifyRaw(s,r,u,o)};this.verifyRaw=function(n,t,i,r){var u=this.ecparams.n,o=this.ecparams.G;if(t.compareTo(f.ONE)<0||t.compareTo(u)>=0||i.compareTo(f.ONE)<0||i.compareTo(u)>=0)return!1;var e=i.modInverse(u),s=n.multiply(e).mod(u),h=t.multiply(e).mod(u),c=o.multiply(s).add(r.multiply(h)),l=c.getX().toBigInteger().mod(u);return l.equals(t)};this.serializeSig=function(n,t){var r=n.toByteArraySigned(),u=t.toByteArraySigned(),i=[];return i.push(2),i.push(r.length),i=i.concat(r),i.push(2),i.push(u.length),i=i.concat(u),i.unshift(i.length),i.unshift(48),i};this.parseSig=function(n){var t,i,r,u,e;if(n[0]!=48)throw new Error("Signature not a valid DERSequence");if(t=2,n[t]!=2)throw new Error("First element in signature must be a DERInteger");if(i=n.slice(t+2,t+2+n[t+1]),t+=2+n[t+1],n[t]!=2)throw new Error("Second element in signature must be a DERInteger");return r=n.slice(t+2,t+2+n[t+1]),t+=2+n[t+1],u=f.fromByteArrayUnsigned(i),e=f.fromByteArrayUnsigned(r),{r:u,s:e}};this.parseSigCompact=function(n){var t;if(n.length!==65)throw"Signature has the wrong length";if(t=n[0]-27,t<0||t>7)throw"Invalid signature type";var i=this.ecparams.n,r=f.fromByteArrayUnsigned(n.slice(1,33)).mod(i),u=f.fromByteArrayUnsigned(n.slice(33,65)).mod(i);return{r:r,s:u,i:t}};n!==undefined&&n.curve!==undefined&&(this.curveName=n.curve);this.curveName===undefined&&(this.curveName="secp256r1");this.setNamedCurve(this.curveName);n!==undefined&&(n.prv!==undefined&&this.setPrivateKeyHex(n.prv),n.pub!==undefined&&this.setPublicKeyHex(n.pub))};r.crypto.ECDSA.parseSigHex=function(n){var t=r.crypto.ECDSA.parseSigHexInHexRS(n),i=new f(t.r,16),u=new f(t.s,16);return{r:i,s:u}};r.crypto.ECDSA.parseSigHexInHexRS=function(n){var t,i,r,f,e;if(n.substr(0,2)!="30")throw"signature is not a ASN.1 sequence";if(t=u.getPosArrayOfChildren_AtObj(n,0),t.length!=2)throw"number of signature ASN.1 sequence elements seem wrong";if(i=t[0],r=t[1],n.substr(i,2)!="02")throw"1st item of sequene of signature is not ASN.1 integer";if(n.substr(r,2)!="02")throw"2nd item of sequene of signature is not ASN.1 integer";return f=u.getHexOfV_AtObj(n,i),e=u.getHexOfV_AtObj(n,r),{r:f,s:e}};r.crypto.ECDSA.asn1SigToConcatSig=function(n){var u=r.crypto.ECDSA.parseSigHexInHexRS(n),t=u.r,i=u.s;if(t.substr(0,2)=="00"&&t.length*4%128==8&&(t=t.substr(2)),i.substr(0,2)=="00"&&i.length*4%128==8&&(i=i.substr(2)),t.length*4%128!=0)throw"unknown ECDSA sig r length error";if(i.length*4%128!=0)throw"unknown ECDSA sig s length error";return t+i};r.crypto.ECDSA.concatSigToASN1Sig=function(n){if(n.length*4%128!=0)throw"unknown ECDSA concatinated r-s sig  length error";var t=n.substr(0,n.length/2),i=n.substr(n.length/2);return r.crypto.ECDSA.hexRSSigToASN1Sig(t,i)};r.crypto.ECDSA.hexRSSigToASN1Sig=function(n,t){var i=new f(n,16),u=new f(t,16);return r.crypto.ECDSA.biRSSigToASN1Sig(i,u)};r.crypto.ECDSA.biRSSigToASN1Sig=function(n,t){var i=new r.asn1.DERInteger({bigint:n}),u=new r.asn1.DERInteger({bigint:t}),f=new r.asn1.DERSequence({array:[i,u]});return f.getEncodedHex()};typeof r!="undefined"&&r||(r={});typeof r.crypto!="undefined"&&r.crypto||(r.crypto={});r.crypto.ECParameterDB=new function(){function t(n){return new f(n,16)}var n={},i={};this.getByName=function(t){var r=t;if(typeof i[r]!="undefined"&&(r=i[t]),typeof n[r]!="undefined")return n[r];throw"unregistered EC curve name: "+r;};this.regist=function(r,u,f,e,o,s,h,c,l,a,v,y){var p;n[r]={};var b=t(f),k=t(e),d=t(o),g=t(s),nt=t(h),w=new bt(b,k,d),tt=w.decodePointHex("04"+c+l);for(n[r].name=r,n[r].keylen=u,n[r].curve=w,n[r].G=tt,n[r].n=g,n[r].h=nt,n[r].oid=v,n[r].info=y,p=0;p<a.length;p++)i[a[p]]=r}};r.crypto.ECParameterDB.regist("secp128r1",128,"FFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFF","FFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFC","E87579C11079F43DD824993C2CEE5ED3","FFFFFFFE0000000075A30D1B9038A115","1","161FF7528B899B2D0C28607CA52C5B86","CF5AC8395BAFEB13C02DA292DDED7A83",[],"","secp128r1 : SECG curve over a 128 bit prime field");r.crypto.ECParameterDB.regist("secp160k1",160,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFAC73","0","7","0100000000000000000001B8FA16DFAB9ACA16B6B3","1","3B4C382CE37AA192A4019E763036F4F5DD4D7EBB","938CF935318FDCED6BC28286531733C3F03C4FEE",[],"","secp160k1 : SECG curve over a 160 bit prime field");r.crypto.ECParameterDB.regist("secp160r1",160,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7FFFFFFF","FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7FFFFFFC","1C97BEFC54BD7A8B65ACF89F81D4D4ADC565FA45","0100000000000000000001F4C8F927AED3CA752257","1","4A96B5688EF573284664698968C38BB913CBFC82","23A628553168947D59DCC912042351377AC5FB32",[],"","secp160r1 : SECG curve over a 160 bit prime field");r.crypto.ECParameterDB.regist("secp192k1",192,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFEE37","0","3","FFFFFFFFFFFFFFFFFFFFFFFE26F2FC170F69466A74DEFD8D","1","DB4FF10EC057E9AE26B07D0280B7F4341DA5D1B1EAE06C7D","9B2F2F6D9C5628A7844163D015BE86344082AA88D95E2F9D",[]);r.crypto.ECParameterDB.regist("secp192r1",192,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFF","FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFC","64210519E59C80E70FA7E9AB72243049FEB8DEECC146B9B1","FFFFFFFFFFFFFFFFFFFFFFFF99DEF836146BC9B1B4D22831","1","188DA80EB03090F67CBF20EB43A18800F4FF0AFD82FF1012","07192B95FFC8DA78631011ED6B24CDD573F977A11E794811",[]);r.crypto.ECParameterDB.regist("secp224r1",224,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000001","FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFE","B4050A850C04B3ABF54132565044B0B7D7BFD8BA270B39432355FFB4","FFFFFFFFFFFFFFFFFFFFFFFFFFFF16A2E0B8F03E13DD29455C5C2A3D","1","B70E0CBD6BB4BF7F321390B94A03C1D356C21122343280D6115C1D21","BD376388B5F723FB4C22DFE6CD4375A05A07476444D5819985007E34",[]);r.crypto.ECParameterDB.regist("secp256k1",256,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F","0","7","FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141","1","79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798","483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8",[]);r.crypto.ECParameterDB.regist("secp256r1",256,"FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFF","FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFC","5AC635D8AA3A93E7B3EBBD55769886BC651D06B0CC53B0F63BCE3C3E27D2604B","FFFFFFFF00000000FFFFFFFFFFFFFFFFBCE6FAADA7179E84F3B9CAC2FC632551","1","6B17D1F2E12C4247F8BCE6E563A440F277037D812DEB33A0F4A13945D898C296","4FE342E2FE1A7F9B8EE7EB4A7C0F9E162BCE33576B315ECECBB6406837BF51F5",["NIST P-256","P-256","prime256v1"]);r.crypto.ECParameterDB.regist("secp384r1",384,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFF0000000000000000FFFFFFFF","FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFF0000000000000000FFFFFFFC","B3312FA7E23EE7E4988E056BE3F82D19181D9C6EFE8141120314088F5013875AC656398D8A2ED19D2A85C8EDD3EC2AEF","FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7634D81F4372DDF581A0DB248B0A77AECEC196ACCC52973","1","AA87CA22BE8B05378EB1C71EF320AD746E1D3B628BA79B9859F741E082542A385502F25DBF55296C3A545E3872760AB7","3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f",["NIST P-384","P-384"]);r.crypto.ECParameterDB.regist("secp521r1",521,"1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF","1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC","051953EB9618E1C9A1F929A21A0B68540EEA2DA725B99B315F3B8B489918EF109E156193951EC7E937B1652C0BD3BB1BF073573DF883D2C34F1EF451FD46B503F00","1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA51868783BF2F966B7FCC0148F709A5D03BB5C9B8899C47AEBB6FB71E91386409","1","C6858E06B70404E9CD9E3ECB662395B4429C648139053FB521F828AF606B4D3DBAA14B5E77EFE75928FE1DC127A2FFA8DE3348B3C1856A429BF97E7E31C2E5BD66","011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650",["NIST P-521","P-521"]);typeof r!="undefined"&&r||(r={});typeof r.crypto!="undefined"&&r.crypto||(r.crypto={});r.crypto.DSA=function(){function e(t,i,u,e,o,s){var h=r.crypto.Util.hashString(i,t.toLowerCase()),h=h.substr(0,o.bitLength()/4),v=new f(h,16),l=n(f.ONE.add(f.ONE),o.subtract(f.ONE)),a=u.modPow(l,e).mod(o),y=l.modInverse(o).multiply(v.add(s.multiply(a))).mod(o),c=[];return c[0]=a,c[1]=y,c}function o(n){var t=openpgp.config.config.prefer_hash_algorithm;switch(Math.round(n.bitLength()/8)){case 20:return t!=2&&t>11&&t!=10&&t<8?2:t;case 28:return t>11&&t<8?11:t;case 32:return t>10&&t<8?8:t;default:return util.print_debug("DSA select hash algorithm: returning null for an unknown length of q"),null}}function h(n,t,i,u,e,o,s,h){var c=r.crypto.Util.hashString(u,n.toLowerCase()),c=c.substr(0,o.bitLength()/4),a=new f(c,16);if(f.ZERO.compareTo(t)>0||t.compareTo(o)>0||f.ZERO.compareTo(i)>0||i.compareTo(o)>0)return util.print_error("invalid DSA Signature"),null;var l=i.modInverse(o),v=a.multiply(l).mod(o),y=t.multiply(l).mod(o),p=s.modPow(v,e).multiply(h.modPow(y,e)).mod(e).mod(o);return p.compareTo(t)==0}function n(n,i){if(!(i.compareTo(n)<=0)){for(var r=i.subtract(n),u=t(r.bitLength());u>r;)u=t(r.bitLength());return n.add(u)}}function t(n){if(n<0)return null;var r=Math.floor((n+7)/8),t=i(r);return n%8>0&&(t=String.fromCharCode(Math.pow(2,n%8)-1&t.charCodeAt(0))+t.substring(1)),new f(a(t),16)}function i(n){for(var i="",t=0;t<n;t++)i+=String.fromCharCode(c());return i}function c(){var n=new Uint32Array(1);return lt.crypto.getRandomValues(n),n[0]&255}function a(n){if(n==null)return"";for(var i=[],u=n.length,r=0,t;r<u;){for(t=n[r++].charCodeAt().toString(16);t.length<2;)t="0"+t;i.push(""+t)}return i.join("")}this.p=null;this.q=null;this.g=null;this.y=null;this.x=null;this.type="DSA";this.setPrivate=function(n,t,i,r,u){this.isPrivate=!0;this.p=n;this.q=t;this.g=i;this.y=r;this.x=u};this.setPublic=function(n,t,i,r){this.isPublic=!0;this.p=n;this.q=t;this.g=i;this.y=r;this.x=null};this.signWithMessageHash=function(t){var o=this.p,i=this.q,s=this.g,a=this.y,h=this.x,v=t.substr(0,i.bitLength()/4),c=new f(t,16),u=n(f.ONE.add(f.ONE),i.subtract(f.ONE)),e=s.modPow(u,o).mod(i),l=u.modInverse(i).multiply(c.add(h.multiply(e))).mod(i);return r.asn1.ASN1Util.jsonToASN1HEX({seq:[{int:{bigint:e}},{int:{bigint:l}}]})};this.verifyWithMessageHash=function(n,t){var u=this.p,i=this.q,h=this.g,c=this.y,o=this.parseASN1Signature(t),r=o[0],e=o[1],n=n.substr(0,i.bitLength()/4),l=new f(n,16);if(f.ZERO.compareTo(r)>0||r.compareTo(i)>0||f.ZERO.compareTo(e)>0||e.compareTo(i)>0)throw"invalid DSA signature";var s=e.modInverse(i),a=l.multiply(s).mod(i),v=r.multiply(s).mod(i),y=h.modPow(a,u).multiply(c.modPow(v,u)).mod(u).mod(i);return y.compareTo(r)==0};this.parseASN1Signature=function(n){try{var t=new f(u.getVbyList(n,0,[0],"02"),16),i=new f(u.getVbyList(n,0,[1],"02"),16);return[t,i]}catch(r){throw"malformed DSA signature";}};this.select_hash_algorithm=o;this.sign=e;this.verify=h;this.getRandomBigIntegerInRange=n;this.getRandomBigInteger=t;this.getRandomBytes=i};wi=function(){var t=function(n,t,i){return o(e.AES,n,t,i)},a=function(n,t,i){return o(e.TripleDES,n,t,i)},o=function(n,t,i,r){var h=e.enc.Hex.parse(t),f=e.enc.Hex.parse(i),o=e.enc.Hex.parse(r),u={},s;return u.key=f,u.iv=o,u.ciphertext=h,s=n.decrypt(u,f,{iv:o}),e.enc.Hex.stringify(s)},i=function(n,t,i){return s(e.AES,n,t,i)},v=function(n,t,i){return s(e.TripleDES,n,t,i)},s=function(n,t,i,r){var u=e.enc.Hex.parse(t),f=e.enc.Hex.parse(i),o=e.enc.Hex.parse(r),s=n.encrypt(u,f,{iv:o}),h=e.enc.Hex.parse(s.toString());return e.enc.Base64.stringify(h)},n={"AES-256-CBC":{proc:t,eproc:i,keylen:32,ivlen:16},"AES-192-CBC":{proc:t,eproc:i,keylen:24,ivlen:16},"AES-128-CBC":{proc:t,eproc:i,keylen:16,ivlen:16},"DES-EDE3-CBC":{proc:a,eproc:v,keylen:24,ivlen:8}},y=function(t){return n[t].proc},p=function(n){var t=e.lib.WordArray.random(n);return e.enc.Hex.stringify(t)},c=function(n){var t={},i,r,f,u;return n.match(new RegExp("DEK-Info: ([^,]+),([0-9A-Fa-f]+)","m"))&&(t.cipher=RegExp.$1,t.ivsalt=RegExp.$2),n.match(new RegExp("-----BEGIN ([A-Z]+) PRIVATE KEY-----"))&&(t.type=RegExp.$1),i=-1,r=0,n.indexOf("\r\n\r\n")!=-1&&(i=n.indexOf("\r\n\r\n"),r=2),n.indexOf("\n\n")!=-1&&(i=n.indexOf("\n\n"),r=1),f=n.indexOf("-----END"),i!=-1&&f!=-1&&(u=n.substring(i+r*2,f-r),u=u.replace(/\s+/g,""),t.data=u),t},f=function(t,i,r){for(var h=r.substring(0,16),c=e.enc.Hex.parse(h),l=e.enc.Utf8.parse(i),a=n[t].keylen+n[t].ivlen,u="",o=null,f,s;;)if(f=e.algo.MD5.create(),o!=null&&f.update(o),f.update(l),f.update(c),o=f.finalize(),u=u+e.enc.Hex.stringify(o),u.length>=a*2)break;return s={},s.keyhex=u.substr(0,n[t].keylen*2),s.ivhex=u.substr(n[t].keylen*2,n[t].ivlen*2),s},l=function(t,i,r,u){var f=e.enc.Base64.parse(t),o=e.enc.Hex.stringify(f),s=n[i].proc;return s(o,r,u)},w=function(t,i,r,u){var f=n[i].eproc;return f(t,r,u)};return{version:"1.0.5",getHexFromPEM:function(n,t){var i=n,r,u;if(i.indexOf("BEGIN "+t)==-1)throw"can't find PEM header: "+t;return i=i.replace("-----BEGIN "+t+"-----",""),i=i.replace("-----END "+t+"-----",""),r=i.replace(/\s+/g,""),u=st(r),u},getDecryptedKeyHexByKeyIV:function(n,t,i,r){var u=y(t);return u(n,i,r)},parsePKCS5PEM:function(n){return c(n)},getKeyAndUnusedIvByPasscodeAndIvsalt:function(n,t,i){return f(n,t,i)},decryptKeyB64:function(n,t,i,r){return l(n,t,i,r)},getDecryptedKeyHex:function(n,t){var i=c(n),h=i.type,r=i.cipher,u=i.ivsalt,e=i.data,o=f(r,t,u),s=o.keyhex;return l(e,r,s,u)},getRSAKeyFromEncryptedPKCS5PEM:function(n,t){var r=this.getDecryptedKeyHex(n,t),i=new h;return i.readPrivateKeyFromASN1HexString(r),i},getEryptedPKCS5PEMFromPrvKeyHex:function(t,i,r,u){var e="",o,s;if((typeof r=="undefined"||r==null)&&(r="AES-256-CBC"),typeof n[r]=="undefined")throw"PKCS5PKEY unsupported algorithm: "+r;(typeof u=="undefined"||u==null)&&(o=n[r].ivlen,s=p(o),u=s.toUpperCase());var h=f(r,i,u),c=h.keyhex,l=w(t,r,c,u),a=l.replace(/(.{64})/g,"$1\r\n"),e="-----BEGIN RSA PRIVATE KEY-----\r\n";return e+="Proc-Type: 4,ENCRYPTED\r\n",e+="DEK-Info: "+r+","+u+"\r\n",e+="\r\n",e+=a,e+"\r\n-----END RSA PRIVATE KEY-----\r\n"},getEryptedPKCS5PEMFromRSAKey:function(n,t,i,u){var f=new r.asn1.DERInteger({int:0}),e=new r.asn1.DERInteger({bigint:n.n}),o=new r.asn1.DERInteger({int:n.e}),s=new r.asn1.DERInteger({bigint:n.d}),h=new r.asn1.DERInteger({bigint:n.p}),c=new r.asn1.DERInteger({bigint:n.q}),l=new r.asn1.DERInteger({bigint:n.dmp1}),a=new r.asn1.DERInteger({bigint:n.dmq1}),v=new r.asn1.DERInteger({bigint:n.coeff}),y=new r.asn1.DERSequence({array:[f,e,o,s,h,c,l,a,v]}),p=y.getEncodedHex();return this.getEryptedPKCS5PEMFromPrvKeyHex(p,t,i,u)},newEncryptedPKCS5PEM:function(n,t,i,r){var u,f;return(typeof t=="undefined"||t==null)&&(t=1024),(typeof i=="undefined"||i==null)&&(i="10001"),u=new h,u.generate(t,i),f=null,typeof r=="undefined"||r==null?this.getEncryptedPKCS5PEMFromRSAKey(pkey,n):this.getEncryptedPKCS5PEMFromRSAKey(pkey,n,r)},getRSAKeyFromPlainPKCS8PEM:function(n){if(n.match(/ENCRYPTED/))throw"pem shall be not ENCRYPTED";var t=this.getHexFromPEM(n,"PRIVATE KEY");return this.getRSAKeyFromPlainPKCS8Hex(t)},getRSAKeyFromPlainPKCS8Hex:function(n){var t=u.getPosArrayOfChildren_AtObj(n,0),i;if(t.length!=3)throw"outer DERSequence shall have 3 elements: "+t.length;if(i=u.getHexOfTLV_AtObj(n,t[1]),i!="300d06092a864886f70d0101010500")throw"PKCS8 AlgorithmIdentifier is not rsaEnc: "+i;var i=u.getHexOfTLV_AtObj(n,t[1]),f=u.getHexOfTLV_AtObj(n,t[2]),e=u.getHexOfV_AtObj(f,0),r=new h;return r.readPrivateKeyFromASN1HexString(e),r},parseHexOfEncryptedPKCS8:function(n){var t={},o=u.getPosArrayOfChildren_AtObj(n,0),i,s,r,f,e,h;if(o.length!=2)throw"malformed format: SEQUENCE(0).items != 2: "+o.length;if(t.ciphertext=u.getHexOfV_AtObj(n,o[1]),i=u.getPosArrayOfChildren_AtObj(n,o[0]),i.length!=2)throw"malformed format: SEQUENCE(0.0).items != 2: "+i.length;if(u.getHexOfV_AtObj(n,i[0])!="2a864886f70d01050d")throw"this only supports pkcs5PBES2";if(s=u.getPosArrayOfChildren_AtObj(n,i[1]),i.length!=2)throw"malformed format: SEQUENCE(0.0.1).items != 2: "+s.length;if(r=u.getPosArrayOfChildren_AtObj(n,s[1]),r.length!=2)throw"malformed format: SEQUENCE(0.0.1.1).items != 2: "+r.length;if(u.getHexOfV_AtObj(n,r[0])!="2a864886f70d0307")throw"this only supports TripleDES";if(t.encryptionSchemeAlg="TripleDES",t.encryptionSchemeIV=u.getHexOfV_AtObj(n,r[1]),f=u.getPosArrayOfChildren_AtObj(n,s[0]),f.length!=2)throw"malformed format: SEQUENCE(0.0.1.0).items != 2: "+f.length;if(u.getHexOfV_AtObj(n,f[0])!="2a864886f70d01050c")throw"this only supports pkcs5PBKDF2";if(e=u.getPosArrayOfChildren_AtObj(n,f[1]),e.length<2)throw"malformed format: SEQUENCE(0.0.1.0.1).items < 2: "+e.length;t.pbkdf2Salt=u.getHexOfV_AtObj(n,e[0]);h=u.getHexOfV_AtObj(n,e[1]);try{t.pbkdf2Iter=parseInt(h,16)}catch(c){throw"malformed format pbkdf2Iter: "+h;}return t},getPBKDF2KeyHexFromParam:function(n,t){var i=e.enc.Hex.parse(n.pbkdf2Salt),r=n.pbkdf2Iter,u=e.PBKDF2(t,i,{keySize:6,iterations:r});return e.enc.Hex.stringify(u)},getPlainPKCS8HexFromEncryptedPKCS8PEM:function(n,t){var u=this.getHexFromPEM(n,"ENCRYPTED PRIVATE KEY"),i=this.parseHexOfEncryptedPKCS8(u),f=wi.getPBKDF2KeyHexFromParam(i,t),r={};r.ciphertext=e.enc.Hex.parse(i.ciphertext);var o=e.enc.Hex.parse(f),s=e.enc.Hex.parse(i.encryptionSchemeIV),h=e.TripleDES.decrypt(r,o,{iv:s});return e.enc.Hex.stringify(h)},getRSAKeyFromEncryptedPKCS8PEM:function(n,t){var i=this.getPlainPKCS8HexFromEncryptedPKCS8PEM(n,t);return this.getRSAKeyFromPlainPKCS8Hex(i)},getKeyFromEncryptedPKCS8PEM:function(n,t){var i=this.getPlainPKCS8HexFromEncryptedPKCS8PEM(n,t);return this.getKeyFromPlainPrivatePKCS8Hex(i)},parsePlainPrivatePKCS8Hex:function(n){var r={},t,i;if(r.algparam=null,n.substr(0,2)!="30")throw"malformed plain PKCS8 private key(code:001)";if(t=u.getPosArrayOfChildren_AtObj(n,0),t.length!=3)throw"malformed plain PKCS8 private key(code:002)";if(n.substr(t[1],2)!="30")throw"malformed PKCS8 private key(code:003)";if(i=u.getPosArrayOfChildren_AtObj(n,t[1]),i.length!=2)throw"malformed PKCS8 private key(code:004)";if(n.substr(i[0],2)!="06")throw"malformed PKCS8 private key(code:005)";if(r.algoid=u.getHexOfV_AtObj(n,i[0]),n.substr(i[1],2)=="06"&&(r.algparam=u.getHexOfV_AtObj(n,i[1])),n.substr(t[2],2)!="04")throw"malformed PKCS8 private key(code:006)";return r.keyidx=u.getStartPosOfV_AtObj(n,t[2]),r},getKeyFromPlainPrivatePKCS8PEM:function(n){var t=this.getHexFromPEM(n,"PRIVATE KEY");return this.getKeyFromPlainPrivatePKCS8Hex(t)},getKeyFromPlainPrivatePKCS8Hex:function(n){var t=this.parsePlainPrivatePKCS8Hex(n),i,f,u;if(t.algoid=="2a864886f70d010101")return this.parsePrivateRawRSAKeyHexAtObj(n,t),i=t.key,u=new h,u.setPrivateEx(i.n,i.e,i.d,i.p,i.q,i.dp,i.dq,i.co),u;if(t.algoid=="2a8648ce3d0201"){if(this.parsePrivateRawECKeyHexAtObj(n,t),r.crypto.OID.oidhex2name[t.algparam]===undefined)throw"KJUR.crypto.OID.oidhex2name undefined: "+t.algparam;return f=r.crypto.OID.oidhex2name[t.algparam],u=new r.crypto.ECDSA({curve:f,prv:t.key}),u}throw"unsupported private key algorithm";},getRSAKeyFromPublicPKCS8PEM:function(n){var t=this.getHexFromPEM(n,"PUBLIC KEY");return this.getRSAKeyFromPublicPKCS8Hex(t)},getKeyFromPublicPKCS8PEM:function(n){var t=this.getHexFromPEM(n,"PUBLIC KEY");return this.getKeyFromPublicPKCS8Hex(t)},getKeyFromPublicPKCS8Hex:function(n){var t=this.parsePublicPKCS8Hex(n),u,f,i;if(t.algoid=="2a864886f70d010101")return u=this.parsePublicRawRSAKeyHex(t.key),i=new h,i.setPublic(u.n,u.e),i;if(t.algoid=="2a8648ce3d0201"){if(r.crypto.OID.oidhex2name[t.algparam]===undefined)throw"KJUR.crypto.OID.oidhex2name undefined: "+t.algparam;return f=r.crypto.OID.oidhex2name[t.algparam],i=new r.crypto.ECDSA({curve:f,pub:t.key}),i}throw"unsupported public key algorithm";},parsePublicRawRSAKeyHex:function(n){var i={},t;if(n.substr(0,2)!="30")throw"malformed RSA key(code:001)";if(t=u.getPosArrayOfChildren_AtObj(n,0),t.length!=2)throw"malformed RSA key(code:002)";if(n.substr(t[0],2)!="02")throw"malformed RSA key(code:003)";if(i.n=u.getHexOfV_AtObj(n,t[0]),n.substr(t[1],2)!="02")throw"malformed RSA key(code:004)";return i.e=u.getHexOfV_AtObj(n,t[1]),i},parsePrivateRawRSAKeyHexAtObj:function(n,t){var r=t.keyidx,i;if(n.substr(r,2)!="30")throw"malformed RSA private key(code:001)";if(i=u.getPosArrayOfChildren_AtObj(n,r),i.length!=9)throw"malformed RSA private key(code:002)";t.key={};t.key.n=u.getHexOfV_AtObj(n,i[1]);t.key.e=u.getHexOfV_AtObj(n,i[2]);t.key.d=u.getHexOfV_AtObj(n,i[3]);t.key.p=u.getHexOfV_AtObj(n,i[4]);t.key.q=u.getHexOfV_AtObj(n,i[5]);t.key.dp=u.getHexOfV_AtObj(n,i[6]);t.key.dq=u.getHexOfV_AtObj(n,i[7]);t.key.co=u.getHexOfV_AtObj(n,i[8])},parsePrivateRawECKeyHexAtObj:function(n,t){var r=t.keyidx,i;if(n.substr(r,2)!="30")throw"malformed ECC private key(code:001)";if(i=u.getPosArrayOfChildren_AtObj(n,r),i.length!=3)throw"malformed ECC private key(code:002)";if(n.substr(i[1],2)!="04")throw"malformed ECC private key(code:003)";t.key=u.getHexOfV_AtObj(n,i[1])},parsePublicPKCS8Hex:function(n){var r={},t,f,i;if(r.algparam=null,t=u.getPosArrayOfChildren_AtObj(n,0),t.length!=2)throw"outer DERSequence shall have 2 elements: "+t.length;if(f=t[0],n.substr(f,2)!="30")throw"malformed PKCS8 public key(code:001)";if(i=u.getPosArrayOfChildren_AtObj(n,f),i.length!=2)throw"malformed PKCS8 public key(code:002)";if(n.substr(i[0],2)!="06")throw"malformed PKCS8 public key(code:003)";if(r.algoid=u.getHexOfV_AtObj(n,i[0]),n.substr(i[1],2)=="06"&&(r.algparam=u.getHexOfV_AtObj(n,i[1])),n.substr(t[1],2)!="03")throw"malformed PKCS8 public key(code:004)";return r.key=u.getHexOfV_AtObj(n,t[1]).substr(2),r},getRSAKeyFromPublicPKCS8Hex:function(n){var i=u.getPosArrayOfChildren_AtObj(n,0),f,r,t;if(i.length!=2)throw"outer DERSequence shall have 2 elements: "+i.length;if(f=u.getHexOfTLV_AtObj(n,i[0]),f!="300d06092a864886f70d0101010500")throw"PKCS8 AlgorithmId is not rsaEncryption";if(n.substr(i[1],2)!="03")throw"PKCS8 Public Key is not BITSTRING encapslated.";if(r=u.getStartPosOfV_AtObj(n,i[1])+2,n.substr(r,2)!="30")throw"PKCS8 Public Key is not SEQUENCE.";if(t=u.getPosArrayOfChildren_AtObj(n,r),t.length!=2)throw"inner DERSequence shall have 2 elements: "+t.length;if(n.substr(t[0],2)!="02")throw"N is not ASN.1 INTEGER";if(n.substr(t[1],2)!="02")throw"E is not ASN.1 INTEGER";var o=u.getHexOfV_AtObj(n,t[0]),s=u.getHexOfV_AtObj(n,t[1]),e=new h;return e.setPublic(o,s),e}}}();a=function(){var t=function(n,t,r){return i(e.AES,n,t,r)},y=function(n,t,r){return i(e.TripleDES,n,t,r)},p=function(n,t,r){return i(e.DES,n,t,r)},i=function(n,t,i,r){var h=e.enc.Hex.parse(t),f=e.enc.Hex.parse(i),o=e.enc.Hex.parse(r),u={},s;return u.key=f,u.iv=o,u.ciphertext=h,s=n.decrypt(u,f,{iv:o}),e.enc.Hex.stringify(s)},o=function(n,t,i){return s(e.AES,n,t,i)},w=function(n,t,i){return s(e.TripleDES,n,t,i)},b=function(n,t,i){return s(e.DES,n,t,i)},s=function(n,t,i,r){var u=e.enc.Hex.parse(t),f=e.enc.Hex.parse(i),o=e.enc.Hex.parse(r),s=n.encrypt(u,f,{iv:o}),h=e.enc.Hex.parse(s.toString());return e.enc.Base64.stringify(h)},n={"AES-256-CBC":{proc:t,eproc:o,keylen:32,ivlen:16},"AES-192-CBC":{proc:t,eproc:o,keylen:24,ivlen:16},"AES-128-CBC":{proc:t,eproc:o,keylen:16,ivlen:16},"DES-EDE3-CBC":{proc:y,eproc:w,keylen:24,ivlen:8},"DES-CBC":{proc:p,eproc:b,keylen:8,ivlen:8}},k=function(t){return n[t].proc},d=function(n){var t=e.lib.WordArray.random(n);return e.enc.Hex.stringify(t)},l=function(n){var t={},i,r,f,u;return n.match(new RegExp("DEK-Info: ([^,]+),([0-9A-Fa-f]+)","m"))&&(t.cipher=RegExp.$1,t.ivsalt=RegExp.$2),n.match(new RegExp("-----BEGIN ([A-Z]+) PRIVATE KEY-----"))&&(t.type=RegExp.$1),i=-1,r=0,n.indexOf("\r\n\r\n")!=-1&&(i=n.indexOf("\r\n\r\n"),r=2),n.indexOf("\n\n")!=-1&&(i=n.indexOf("\n\n"),r=1),f=n.indexOf("-----END"),i!=-1&&f!=-1&&(u=n.substring(i+r*2,f-r),u=u.replace(/\s+/g,""),t.data=u),t},c=function(t,i,r){for(var h=r.substring(0,16),c=e.enc.Hex.parse(h),l=e.enc.Utf8.parse(i),a=n[t].keylen+n[t].ivlen,u="",o=null,f,s;;)if(f=e.algo.MD5.create(),o!=null&&f.update(o),f.update(l),f.update(c),o=f.finalize(),u=u+e.enc.Hex.stringify(o),u.length>=a*2)break;return s={},s.keyhex=u.substr(0,n[t].keylen*2),s.ivhex=u.substr(n[t].keylen*2,n[t].ivlen*2),s},v=function(t,i,r,u){var f=e.enc.Base64.parse(t),o=e.enc.Hex.stringify(f),s=n[i].proc;return s(o,r,u)},g=function(t,i,r,u){var f=n[i].eproc;return f(t,r,u)};return{version:"1.0.0",getHexFromPEM:function(n,t){var i=n,r,u;if(i.indexOf("-----BEGIN ")==-1)throw"can't find PEM header: "+t;return typeof t=="string"&&t!=""?(i=i.replace("-----BEGIN "+t+"-----",""),i=i.replace("-----END "+t+"-----","")):(i=i.replace(/-----BEGIN [^-]+-----/,""),i=i.replace(/-----END [^-]+-----/,"")),r=i.replace(/\s+/g,""),u=st(r),u},getDecryptedKeyHexByKeyIV:function(n,t,i,r){var u=k(t);return u(n,i,r)},parsePKCS5PEM:function(n){return l(n)},getKeyAndUnusedIvByPasscodeAndIvsalt:function(n,t,i){return c(n,t,i)},decryptKeyB64:function(n,t,i,r){return v(n,t,i,r)},getDecryptedKeyHex:function(n,t){var i=l(n),s=i.type,r=i.cipher,u=i.ivsalt,f=i.data,e=c(r,t,u),o=e.keyhex;return v(f,r,o,u)},getRSAKeyFromEncryptedPKCS5PEM:function(n,t){var r=this.getDecryptedKeyHex(n,t),i=new h;return i.readPrivateKeyFromASN1HexString(r),i},getEncryptedPKCS5PEMFromPrvKeyHex:function(t,i,r,u,f){var e="",o,s;if((typeof u=="undefined"||u==null)&&(u="AES-256-CBC"),typeof n[u]=="undefined")throw"KEYUTIL unsupported algorithm: "+u;(typeof f=="undefined"||f==null)&&(o=n[u].ivlen,s=d(o),f=s.toUpperCase());var h=c(u,r,f),l=h.keyhex,a=g(i,u,l,f),v=a.replace(/(.{64})/g,"$1\r\n"),e="-----BEGIN "+t+" PRIVATE KEY-----\r\n";return e+="Proc-Type: 4,ENCRYPTED\r\n",e+="DEK-Info: "+u+","+f+"\r\n",e+="\r\n",e+=v,e+("\r\n-----END "+t+" PRIVATE KEY-----\r\n")},getEncryptedPKCS5PEMFromRSAKey:function(n,t,i,u){var f=new r.asn1.DERInteger({int:0}),e=new r.asn1.DERInteger({bigint:n.n}),o=new r.asn1.DERInteger({int:n.e}),s=new r.asn1.DERInteger({bigint:n.d}),h=new r.asn1.DERInteger({bigint:n.p}),c=new r.asn1.DERInteger({bigint:n.q}),l=new r.asn1.DERInteger({bigint:n.dmp1}),a=new r.asn1.DERInteger({bigint:n.dmq1}),v=new r.asn1.DERInteger({bigint:n.coeff}),y=new r.asn1.DERSequence({array:[f,e,o,s,h,c,l,a,v]}),p=y.getEncodedHex();return this.getEncryptedPKCS5PEMFromPrvKeyHex("RSA",p,t,i,u)},newEncryptedPKCS5PEM:function(n,t,i,r){var u,f;return(typeof t=="undefined"||t==null)&&(t=1024),(typeof i=="undefined"||i==null)&&(i="10001"),u=new h,u.generate(t,i),f=null,typeof r=="undefined"||r==null?this.getEncryptedPKCS5PEMFromRSAKey(u,n):this.getEncryptedPKCS5PEMFromRSAKey(u,n,r)},getRSAKeyFromPlainPKCS8PEM:function(n){if(n.match(/ENCRYPTED/))throw"pem shall be not ENCRYPTED";var t=this.getHexFromPEM(n,"PRIVATE KEY");return this.getRSAKeyFromPlainPKCS8Hex(t)},getRSAKeyFromPlainPKCS8Hex:function(n){var t=u.getPosArrayOfChildren_AtObj(n,0),i;if(t.length!=3)throw"outer DERSequence shall have 3 elements: "+t.length;if(i=u.getHexOfTLV_AtObj(n,t[1]),i!="300d06092a864886f70d0101010500")throw"PKCS8 AlgorithmIdentifier is not rsaEnc: "+i;var i=u.getHexOfTLV_AtObj(n,t[1]),f=u.getHexOfTLV_AtObj(n,t[2]),e=u.getHexOfV_AtObj(f,0),r=new h;return r.readPrivateKeyFromASN1HexString(e),r},parseHexOfEncryptedPKCS8:function(n){var t={},o=u.getPosArrayOfChildren_AtObj(n,0),i,s,r,f,e,h;if(o.length!=2)throw"malformed format: SEQUENCE(0).items != 2: "+o.length;if(t.ciphertext=u.getHexOfV_AtObj(n,o[1]),i=u.getPosArrayOfChildren_AtObj(n,o[0]),i.length!=2)throw"malformed format: SEQUENCE(0.0).items != 2: "+i.length;if(u.getHexOfV_AtObj(n,i[0])!="2a864886f70d01050d")throw"this only supports pkcs5PBES2";if(s=u.getPosArrayOfChildren_AtObj(n,i[1]),i.length!=2)throw"malformed format: SEQUENCE(0.0.1).items != 2: "+s.length;if(r=u.getPosArrayOfChildren_AtObj(n,s[1]),r.length!=2)throw"malformed format: SEQUENCE(0.0.1.1).items != 2: "+r.length;if(u.getHexOfV_AtObj(n,r[0])!="2a864886f70d0307")throw"this only supports TripleDES";if(t.encryptionSchemeAlg="TripleDES",t.encryptionSchemeIV=u.getHexOfV_AtObj(n,r[1]),f=u.getPosArrayOfChildren_AtObj(n,s[0]),f.length!=2)throw"malformed format: SEQUENCE(0.0.1.0).items != 2: "+f.length;if(u.getHexOfV_AtObj(n,f[0])!="2a864886f70d01050c")throw"this only supports pkcs5PBKDF2";if(e=u.getPosArrayOfChildren_AtObj(n,f[1]),e.length<2)throw"malformed format: SEQUENCE(0.0.1.0.1).items < 2: "+e.length;t.pbkdf2Salt=u.getHexOfV_AtObj(n,e[0]);h=u.getHexOfV_AtObj(n,e[1]);try{t.pbkdf2Iter=parseInt(h,16)}catch(c){throw"malformed format pbkdf2Iter: "+h;}return t},getPBKDF2KeyHexFromParam:function(n,t){var i=e.enc.Hex.parse(n.pbkdf2Salt),r=n.pbkdf2Iter,u=e.PBKDF2(t,i,{keySize:6,iterations:r});return e.enc.Hex.stringify(u)},getPlainPKCS8HexFromEncryptedPKCS8PEM:function(n,t){var u=this.getHexFromPEM(n,"ENCRYPTED PRIVATE KEY"),i=this.parseHexOfEncryptedPKCS8(u),f=a.getPBKDF2KeyHexFromParam(i,t),r={};r.ciphertext=e.enc.Hex.parse(i.ciphertext);var o=e.enc.Hex.parse(f),s=e.enc.Hex.parse(i.encryptionSchemeIV),h=e.TripleDES.decrypt(r,o,{iv:s});return e.enc.Hex.stringify(h)},getRSAKeyFromEncryptedPKCS8PEM:function(n,t){var i=this.getPlainPKCS8HexFromEncryptedPKCS8PEM(n,t);return this.getRSAKeyFromPlainPKCS8Hex(i)},getKeyFromEncryptedPKCS8PEM:function(n,t){var i=this.getPlainPKCS8HexFromEncryptedPKCS8PEM(n,t);return this.getKeyFromPlainPrivatePKCS8Hex(i)},parsePlainPrivatePKCS8Hex:function(n){var r={},t,i;if(r.algparam=null,n.substr(0,2)!="30")throw"malformed plain PKCS8 private key(code:001)";if(t=u.getPosArrayOfChildren_AtObj(n,0),t.length!=3)throw"malformed plain PKCS8 private key(code:002)";if(n.substr(t[1],2)!="30")throw"malformed PKCS8 private key(code:003)";if(i=u.getPosArrayOfChildren_AtObj(n,t[1]),i.length!=2)throw"malformed PKCS8 private key(code:004)";if(n.substr(i[0],2)!="06")throw"malformed PKCS8 private key(code:005)";if(r.algoid=u.getHexOfV_AtObj(n,i[0]),n.substr(i[1],2)=="06"&&(r.algparam=u.getHexOfV_AtObj(n,i[1])),n.substr(t[2],2)!="04")throw"malformed PKCS8 private key(code:006)";return r.keyidx=u.getStartPosOfV_AtObj(n,t[2]),r},getKeyFromPlainPrivatePKCS8PEM:function(n){var t=this.getHexFromPEM(n,"PRIVATE KEY");return this.getKeyFromPlainPrivatePKCS8Hex(t)},getKeyFromPlainPrivatePKCS8Hex:function(n){var i=this.parsePlainPrivatePKCS8Hex(n),e,o,t;if(i.algoid=="2a864886f70d010101")return this.parsePrivateRawRSAKeyHexAtObj(n,i),e=i.key,t=new h,t.setPrivateEx(e.n,e.e,e.d,e.p,e.q,e.dp,e.dq,e.co),t;if(i.algoid=="2a8648ce3d0201"){if(this.parsePrivateRawECKeyHexAtObj(n,i),r.crypto.OID.oidhex2name[i.algparam]===undefined)throw"KJUR.crypto.OID.oidhex2name undefined: "+i.algparam;return o=r.crypto.OID.oidhex2name[i.algparam],t=new r.crypto.ECDSA({curve:o}),t.setPublicKeyHex(i.pubkey),t.setPrivateKeyHex(i.key),t.isPublic=!1,t}if(i.algoid=="2a8648ce380401"){var s=u.getVbyList(n,0,[1,1,0],"02"),c=u.getVbyList(n,0,[1,1,1],"02"),l=u.getVbyList(n,0,[1,1,2],"02"),a=u.getVbyList(n,0,[2,0],"02"),v=new f(s,16),y=new f(c,16),p=new f(l,16),w=new f(a,16),t=new r.crypto.DSA;return t.setPrivate(v,y,p,null,w),t}throw"unsupported private key algorithm";},getRSAKeyFromPublicPKCS8PEM:function(n){var t=this.getHexFromPEM(n,"PUBLIC KEY");return this.getRSAKeyFromPublicPKCS8Hex(t)},getKeyFromPublicPKCS8PEM:function(n){var t=this.getHexFromPEM(n,"PUBLIC KEY");return this.getKeyFromPublicPKCS8Hex(t)},getKeyFromPublicPKCS8Hex:function(n){var t=this.parsePublicPKCS8Hex(n),e,s,i;if(t.algoid=="2a864886f70d010101")return e=this.parsePublicRawRSAKeyHex(t.key),i=new h,i.setPublic(e.n,e.e),i;if(t.algoid=="2a8648ce3d0201"){if(r.crypto.OID.oidhex2name[t.algparam]===undefined)throw"KJUR.crypto.OID.oidhex2name undefined: "+t.algparam;return s=r.crypto.OID.oidhex2name[t.algparam],i=new r.crypto.ECDSA({curve:s,pub:t.key}),i}if(t.algoid=="2a8648ce380401"){var o=t.algparam,c=u.getHexOfV_AtObj(t.key,0),i=new r.crypto.DSA;return i.setPublic(new f(o.p,16),new f(o.q,16),new f(o.g,16),new f(c,16)),i}throw"unsupported public key algorithm";},parsePublicRawRSAKeyHex:function(n){var i={},t;if(n.substr(0,2)!="30")throw"malformed RSA key(code:001)";if(t=u.getPosArrayOfChildren_AtObj(n,0),t.length!=2)throw"malformed RSA key(code:002)";if(n.substr(t[0],2)!="02")throw"malformed RSA key(code:003)";if(i.n=u.getHexOfV_AtObj(n,t[0]),n.substr(t[1],2)!="02")throw"malformed RSA key(code:004)";return i.e=u.getHexOfV_AtObj(n,t[1]),i},parsePrivateRawRSAKeyHexAtObj:function(n,t){var r=t.keyidx,i;if(n.substr(r,2)!="30")throw"malformed RSA private key(code:001)";if(i=u.getPosArrayOfChildren_AtObj(n,r),i.length!=9)throw"malformed RSA private key(code:002)";t.key={};t.key.n=u.getHexOfV_AtObj(n,i[1]);t.key.e=u.getHexOfV_AtObj(n,i[2]);t.key.d=u.getHexOfV_AtObj(n,i[3]);t.key.p=u.getHexOfV_AtObj(n,i[4]);t.key.q=u.getHexOfV_AtObj(n,i[5]);t.key.dp=u.getHexOfV_AtObj(n,i[6]);t.key.dq=u.getHexOfV_AtObj(n,i[7]);t.key.co=u.getHexOfV_AtObj(n,i[8])},parsePrivateRawECKeyHexAtObj:function(n,t){var i=t.keyidx,r=u.getVbyList(n,i,[1],"04"),f=u.getVbyList(n,i,[2,0],"03").substr(2);t.key=r;t.pubkey=f},parsePublicPKCS8Hex:function(n){var i={},r,f,t;if(i.algparam=null,r=u.getPosArrayOfChildren_AtObj(n,0),r.length!=2)throw"outer DERSequence shall have 2 elements: "+r.length;if(f=r[0],n.substr(f,2)!="30")throw"malformed PKCS8 public key(code:001)";if(t=u.getPosArrayOfChildren_AtObj(n,f),t.length!=2)throw"malformed PKCS8 public key(code:002)";if(n.substr(t[0],2)!="06")throw"malformed PKCS8 public key(code:003)";if(i.algoid=u.getHexOfV_AtObj(n,t[0]),n.substr(t[1],2)=="06"?i.algparam=u.getHexOfV_AtObj(n,t[1]):n.substr(t[1],2)=="30"&&(i.algparam={},i.algparam.p=u.getVbyList(n,t[1],[0],"02"),i.algparam.q=u.getVbyList(n,t[1],[1],"02"),i.algparam.g=u.getVbyList(n,t[1],[2],"02")),n.substr(r[1],2)!="03")throw"malformed PKCS8 public key(code:004)";return i.key=u.getHexOfV_AtObj(n,r[1]).substr(2),i},getRSAKeyFromPublicPKCS8Hex:function(n){var i=u.getPosArrayOfChildren_AtObj(n,0),f,r,t;if(i.length!=2)throw"outer DERSequence shall have 2 elements: "+i.length;if(f=u.getHexOfTLV_AtObj(n,i[0]),f!="300d06092a864886f70d0101010500")throw"PKCS8 AlgorithmId is not rsaEncryption";if(n.substr(i[1],2)!="03")throw"PKCS8 Public Key is not BITSTRING encapslated.";if(r=u.getStartPosOfV_AtObj(n,i[1])+2,n.substr(r,2)!="30")throw"PKCS8 Public Key is not SEQUENCE.";if(t=u.getPosArrayOfChildren_AtObj(n,r),t.length!=2)throw"inner DERSequence shall have 2 elements: "+t.length;if(n.substr(t[0],2)!="02")throw"N is not ASN.1 INTEGER";if(n.substr(t[1],2)!="02")throw"E is not ASN.1 INTEGER";var o=u.getHexOfV_AtObj(n,t[0]),s=u.getHexOfV_AtObj(n,t[1]),e=new h;return e.setPublic(o,s),e}}}();a.getKey=function(n,t,i){var e,it,s;if(typeof h!="undefined"&&n instanceof h||typeof r.crypto.ECDSA!="undefined"&&n instanceof r.crypto.ECDSA||typeof r.crypto.DSA!="undefined"&&n instanceof r.crypto.DSA)return n;if(n.curve!==undefined&&n.xy!==undefined&&n.d===undefined)return new r.crypto.ECDSA({pub:n.xy,curve:n.curve});if(n.curve!==undefined&&n.d!==undefined)return new r.crypto.ECDSA({prv:n.d,curve:n.curve});if(n.kty===undefined&&n.n!==undefined&&n.e!==undefined&&n.d===undefined)return e=new h,e.setPublic(n.n,n.e),e;if(n.kty===undefined&&n.n!==undefined&&n.e!==undefined&&n.d!==undefined&&n.p!==undefined&&n.q!==undefined&&n.dp!==undefined&&n.dq!==undefined&&n.co!==undefined&&n.qi===undefined)return e=new h,e.setPrivateEx(n.n,n.e,n.d,n.p,n.q,n.dp,n.dq,n.co),e;if(n.kty===undefined&&n.n!==undefined&&n.e!==undefined&&n.d!==undefined&&n.p===undefined)return e=new h,e.setPrivate(n.n,n.e,n.d),e;if(n.p!==undefined&&n.q!==undefined&&n.g!==undefined&&n.y!==undefined&&n.x===undefined)return e=new r.crypto.DSA,e.setPublic(n.p,n.q,n.g,n.y),e;if(n.p!==undefined&&n.q!==undefined&&n.g!==undefined&&n.y!==undefined&&n.x!==undefined)return e=new r.crypto.DSA,e.setPrivate(n.p,n.q,n.g,n.y,n.x),e;if(n.kty==="RSA"&&n.n!==undefined&&n.e!==undefined&&n.d===undefined)return e=new h,e.setPublic(w(n.n),w(n.e)),e;if(n.kty==="RSA"&&n.n!==undefined&&n.e!==undefined&&n.d!==undefined&&n.p!==undefined&&n.q!==undefined&&n.dp!==undefined&&n.dq!==undefined&&n.qi!==undefined)return e=new h,e.setPrivateEx(w(n.n),w(n.e),w(n.d),w(n.p),w(n.q),w(n.dp),w(n.dq),w(n.qi)),e;if(n.kty==="RSA"&&n.n!==undefined&&n.e!==undefined&&n.d!==undefined)return e=new h,e.setPrivate(w(n.n),w(n.e),w(n.d)),e;if(n.kty==="EC"&&n.crv!==undefined&&n.x!==undefined&&n.y!==undefined&&n.d===undefined){var s=new r.crypto.ECDSA({curve:n.crv}),l=s.ecparams.keylen/4,v=("0000000000"+w(n.x)).slice(-l),y=("0000000000"+w(n.y)).slice(-l),p="04"+v+y;return s.setPublicKeyHex(p),s}if(n.kty==="EC"&&n.crv!==undefined&&n.x!==undefined&&n.y!==undefined&&n.d!==undefined){var s=new r.crypto.ECDSA({curve:n.crv}),l=s.ecparams.keylen/4,v=("0000000000"+w(n.x)).slice(-l),y=("0000000000"+w(n.y)).slice(-l),p="04"+v+y,ut=("0000000000"+w(n.d)).slice(-l);return s.setPublicKeyHex(p),s.setPrivateKeyHex(ut),s}if(n.indexOf("-END CERTIFICATE-",0)!=-1||n.indexOf("-END X509 CERTIFICATE-",0)!=-1||n.indexOf("-END TRUSTED CERTIFICATE-",0)!=-1)return c.getPublicKeyFromCertPEM(n);if(i==="pkcs8pub")return a.getKeyFromPublicPKCS8Hex(n);if(n.indexOf("-END PUBLIC KEY-")!=-1)return a.getKeyFromPublicPKCS8PEM(n);if(i==="pkcs5prv"||i==="pkcs5prv")return e=new h,e.readPrivateKeyFromASN1HexString(n),e;if(n.indexOf("-END RSA PRIVATE KEY-")!=-1&&n.indexOf("4,ENCRYPTED")==-1)return it=a.getHexFromPEM(n,"RSA PRIVATE KEY"),a.getKey(it,null,"pkcs5prv");if(n.indexOf("-END DSA PRIVATE KEY-")!=-1&&n.indexOf("4,ENCRYPTED")==-1){var o=this.getHexFromPEM(n,"DSA PRIVATE KEY"),b=u.getVbyList(o,0,[1],"02"),k=u.getVbyList(o,0,[2],"02"),d=u.getVbyList(o,0,[3],"02"),g=u.getVbyList(o,0,[4],"02"),nt=u.getVbyList(o,0,[5],"02"),e=new r.crypto.DSA;return e.setPrivate(new f(b,16),new f(k,16),new f(d,16),new f(g,16),new f(nt,16)),e}if(n.indexOf("-END PRIVATE KEY-")!=-1)return a.getKeyFromPlainPrivatePKCS8PEM(n);if(n.indexOf("-END RSA PRIVATE KEY-")!=-1&&n.indexOf("4,ENCRYPTED")!=-1)return a.getRSAKeyFromEncryptedPKCS5PEM(n,t);if(n.indexOf("-END EC PRIVATE KEY-")!=-1&&n.indexOf("4,ENCRYPTED")!=-1){var o=a.getDecryptedKeyHex(n,t),e=u.getVbyList(o,0,[1],"04"),tt=u.getVbyList(o,0,[2,0],"06"),ft=u.getVbyList(o,0,[3,0],"03").substr(2),rt="";if(r.crypto.OID.oidhex2name[tt]!==undefined)rt=r.crypto.OID.oidhex2name[tt];else throw"undefined OID(hex) in KJUR.crypto.OID: "+tt;return s=new r.crypto.ECDSA({name:rt}),s.setPublicKeyHex(ft),s.setPrivateKeyHex(e),s.isPublic=!1,s}if(n.indexOf("-END DSA PRIVATE KEY-")!=-1&&n.indexOf("4,ENCRYPTED")!=-1){var o=a.getDecryptedKeyHex(n,t),b=u.getVbyList(o,0,[1],"02"),k=u.getVbyList(o,0,[2],"02"),d=u.getVbyList(o,0,[3],"02"),g=u.getVbyList(o,0,[4],"02"),nt=u.getVbyList(o,0,[5],"02"),e=new r.crypto.DSA;return e.setPrivate(new f(b,16),new f(k,16),new f(d,16),new f(g,16),new f(nt,16)),e}if(n.indexOf("-END ENCRYPTED PRIVATE KEY-")!=-1)return a.getKeyFromEncryptedPKCS8PEM(n,t);throw"not supported argument";};a.generateKeypair=function(n,t){var s,i,u,f;if(n=="RSA"){s=t;i=new h;i.generate(s,"10001");i.isPrivate=!0;i.isPublic=!0;var u=new h,c=i.n.toString(16),l=i.e.toString(16);return u.setPublic(c,l),u.isPrivate=!1,u.isPublic=!0,f={},f.prvKeyObj=i,f.pubKeyObj=u,f}if(n=="EC"){var e=t,a=new r.crypto.ECDSA({curve:e}),o=a.generateKeyPairHex(),i=new r.crypto.ECDSA({curve:e});return i.setPublicKeyHex(o.ecpubhex),i.setPrivateKeyHex(o.ecprvhex),i.isPrivate=!0,i.isPublic=!1,u=new r.crypto.ECDSA({curve:e}),u.setPublicKeyHex(o.ecpubhex),u.isPrivate=!1,u.isPublic=!0,f={},f.prvKeyObj=i,f.pubKeyObj=u,f}throw"unknown algorithm: "+n;};a.getPEM=function(n,t,i,u){function p(n){return r.asn1.ASN1Util.newObject({seq:[{int:0},{int:{bigint:n.n}},{int:n.e},{int:{bigint:n.d}},{int:{bigint:n.p}},{int:{bigint:n.q}},{int:{bigint:n.dmp1}},{int:{bigint:n.dmq1}},{int:{bigint:n.coeff}}]})}function w(n){return r.asn1.ASN1Util.newObject({seq:[{int:1},{octstr:{hex:n.prvKeyHex}},{tag:["a0",!0,{oid:{name:n.curveName}}]},{tag:["a1",!0,{bitstr:{hex:"00"+n.pubKeyHex}}]}]})}function b(n){return r.asn1.ASN1Util.newObject({seq:[{int:0},{int:{bigint:n.p}},{int:{bigint:n.q}},{int:{bigint:n.g}},{int:{bigint:n.y}},{int:{bigint:n.x}}]})}var s=r.asn1,v=r.crypto,o,f,y,d,c;if((typeof h!="undefined"&&n instanceof h||typeof v.DSA!="undefined"&&n instanceof v.DSA||typeof v.ECDSA!="undefined"&&n instanceof v.ECDSA)&&n.isPublic==!0&&(t===undefined||t=="PKCS8PUB"))return o=new r.asn1.x509.SubjectPublicKeyInfo(n),f=o.getEncodedHex(),s.ASN1Util.getPEMStringFromHex(f,"PUBLIC KEY");if(t=="PKCS1PRV"&&typeof h!="undefined"&&n instanceof h&&(i===undefined||i==null)&&n.isPrivate==!0)return o=p(n),f=o.getEncodedHex(),s.ASN1Util.getPEMStringFromHex(f,"RSA PRIVATE KEY");if(t=="PKCS1PRV"&&typeof h!="undefined"&&n instanceof r.crypto.ECDSA&&(i===undefined||i==null)&&n.isPrivate==!0){var g=new r.asn1.DERObjectIdentifier({name:n.curveName}),nt=g.getEncodedHex(),tt=w(n),c=tt.getEncodedHex(),k="";return k+=s.ASN1Util.getPEMStringFromHex(nt,"EC PARAMETERS"),k+s.ASN1Util.getPEMStringFromHex(c,"EC PRIVATE KEY")}if(t=="PKCS1PRV"&&typeof r.crypto.DSA!="undefined"&&n instanceof r.crypto.DSA&&(i===undefined||i==null)&&n.isPrivate==!0)return o=b(n),f=o.getEncodedHex(),s.ASN1Util.getPEMStringFromHex(f,"DSA PRIVATE KEY");if(t=="PKCS5PRV"&&typeof h!="undefined"&&n instanceof h&&i!==undefined&&i!=null&&n.isPrivate==!0)return o=p(n),f=o.getEncodedHex(),u===undefined&&(u="DES-EDE3-CBC"),this.getEncryptedPKCS5PEMFromPrvKeyHex("RSA",f,i,u);if(t=="PKCS5PRV"&&typeof r.crypto.ECDSA!="undefined"&&n instanceof r.crypto.ECDSA&&i!==undefined&&i!=null&&n.isPrivate==!0)return o=w(n),f=o.getEncodedHex(),u===undefined&&(u="DES-EDE3-CBC"),this.getEncryptedPKCS5PEMFromPrvKeyHex("EC",f,i,u);if(t=="PKCS5PRV"&&typeof r.crypto.DSA!="undefined"&&n instanceof r.crypto.DSA&&i!==undefined&&i!=null&&n.isPrivate==!0)return o=b(n),f=o.getEncodedHex(),u===undefined&&(u="DES-EDE3-CBC"),this.getEncryptedPKCS5PEMFromPrvKeyHex("DSA",f,i,u);if(y=function(n,t){var i=d(n,t),u=new r.asn1.ASN1Util.newObject({seq:[{seq:[{oid:{name:"pkcs5PBES2"}},{seq:[{seq:[{oid:{name:"pkcs5PBKDF2"}},{seq:[{octstr:{hex:i.pbkdf2Salt}},{int:i.pbkdf2Iter}]}]},{seq:[{oid:{name:"des-EDE3-CBC"}},{octstr:{hex:i.encryptionSchemeIV}}]}]}]},{octstr:{hex:i.ciphertext}}]});return u.getEncodedHex()},d=function(n,t){var r=100,u=e.lib.WordArray.random(8),f=e.lib.WordArray.random(8),o=e.PBKDF2(t,u,{keySize:6,iterations:r}),s=e.enc.Hex.parse(n),h=e.TripleDES.encrypt(s,o,{iv:f})+"",i={};return i.ciphertext=h,i.pbkdf2Salt=e.enc.Hex.stringify(u),i.pbkdf2Iter=r,i.encryptionSchemeAlg="DES-EDE3-CBC",i.encryptionSchemeIV=e.enc.Hex.stringify(f),i},t=="PKCS8PRV"&&typeof h!="undefined"&&n instanceof h&&n.isPrivate==!0){var l=p(n),a=l.getEncodedHex(),o=r.asn1.ASN1Util.newObject({seq:[{int:0},{seq:[{oid:{name:"rsaEncryption"}},{"null":!0}]},{octstr:{hex:a}}]}),f=o.getEncodedHex();return i===undefined||i==null?s.ASN1Util.getPEMStringFromHex(f,"PRIVATE KEY"):(c=y(f,i),s.ASN1Util.getPEMStringFromHex(c,"ENCRYPTED PRIVATE KEY"))}if(t=="PKCS8PRV"&&typeof r.crypto.ECDSA!="undefined"&&n instanceof r.crypto.ECDSA&&n.isPrivate==!0){var l=new r.asn1.ASN1Util.newObject({seq:[{int:1},{octstr:{hex:n.prvKeyHex}},{tag:["a1",!0,{bitstr:{hex:"00"+n.pubKeyHex}}]}]}),a=l.getEncodedHex(),o=r.asn1.ASN1Util.newObject({seq:[{int:0},{seq:[{oid:{name:"ecPublicKey"}},{oid:{name:n.curveName}}]},{octstr:{hex:a}}]}),f=o.getEncodedHex();return i===undefined||i==null?s.ASN1Util.getPEMStringFromHex(f,"PRIVATE KEY"):(c=y(f,i),s.ASN1Util.getPEMStringFromHex(c,"ENCRYPTED PRIVATE KEY"))}if(t=="PKCS8PRV"&&typeof r.crypto.DSA!="undefined"&&n instanceof r.crypto.DSA&&n.isPrivate==!0){var l=new r.asn1.DERInteger({bigint:n.x}),a=l.getEncodedHex(),o=r.asn1.ASN1Util.newObject({seq:[{int:0},{seq:[{oid:{name:"dsa"}},{seq:[{int:{bigint:n.p}},{int:{bigint:n.q}},{int:{bigint:n.g}}]}]},{octstr:{hex:a}}]}),f=o.getEncodedHex();return i===undefined||i==null?s.ASN1Util.getPEMStringFromHex(f,"PRIVATE KEY"):(c=y(f,i),s.ASN1Util.getPEMStringFromHex(c,"ENCRYPTED PRIVATE KEY"))}throw"unsupported object nor format";};a.getKeyFromCSRPEM=function(n){var t=a.getHexFromPEM(n,"CERTIFICATE REQUEST");return a.getKeyFromCSRHex(t)};a.getKeyFromCSRHex=function(n){var t=a.parseCSRHex(n);return a.getKey(t.p8pubkeyhex,null,"pkcs8pub")};a.parseCSRHex=function(n){var f={},t=n,i,r;if(t.substr(0,2)!="30")throw"malformed CSR(code:001)";if(i=u.getPosArrayOfChildren_AtObj(t,0),i.length<1)throw"malformed CSR(code:002)";if(t.substr(i[0],2)!="30")throw"malformed CSR(code:003)";if(r=u.getPosArrayOfChildren_AtObj(t,i[0]),r.length<3)throw"malformed CSR(code:004)";return f.p8pubkeyhex=u.getHexOfTLV_AtObj(t,r[2]),f};a.getJWKFromKey=function(n){var t={},i,u;if(n instanceof h&&n.isPrivate)return t.kty="RSA",t.n=b(n.n.toString(16)),t.e=b(n.e.toString(16)),t.d=b(n.d.toString(16)),t.p=b(n.p.toString(16)),t.q=b(n.q.toString(16)),t.dp=b(n.dmp1.toString(16)),t.dq=b(n.dmq1.toString(16)),t.qi=b(n.coeff.toString(16)),t;if(n instanceof h&&n.isPublic)return t.kty="RSA",t.n=b(n.n.toString(16)),t.e=b(n.e.toString(16)),t;if(n instanceof r.crypto.ECDSA&&n.isPrivate){if(i=n.getShortNISTPCurveName(),i!=="P-256"&&i!=="P-384")throw"unsupported curve name for JWT: "+i;return u=n.getPublicKeyXYHex(),t.kty="EC",t.crv=i,t.x=b(u.x),t.y=b(u.y),t.d=b(n.prvKeyHex),t}if(n instanceof r.crypto.ECDSA&&n.isPublic){if(i=n.getShortNISTPCurveName(),i!=="P-256"&&i!=="P-384")throw"unsupported curve name for JWT: "+i;return u=n.getPublicKeyXYHex(),t.kty="EC",t.crv=i,t.x=b(u.x),t.y=b(u.y),t}throw"not supported key object";};h.prototype.readPrivateKeyFromPEMString=yl;h.prototype.readPrivateKeyFromASN1HexString=vl;ki=new RegExp("");ki.compile("[^0-9a-f]","gi");h.prototype.signWithMessageHash=pl;h.prototype.signString=di;h.prototype.signStringWithSHA1=fu;h.prototype.signStringWithSHA256=eu;h.prototype.sign=di;h.prototype.signWithSHA1=fu;h.prototype.signWithSHA256=eu;h.prototype.signWithMessageHashPSS=wl;h.prototype.signStringPSS=su;h.prototype.signPSS=su;h.SALT_LEN_HLEN=-1;h.SALT_LEN_MAX=-2;h.prototype.verifyWithMessageHash=gl;h.prototype.verifyString=cu;h.prototype.verifyHexSignatureForMessage=hu;h.prototype.verify=cu;h.prototype.verifyHexSignatureForByteArrayMessage=hu;h.prototype.verifyWithMessageHashPSS=na;h.prototype.verifyStringPSS=lu;h.prototype.verifyPSS=lu;h.SALT_LEN_RECOVER=-2;c.pemToBase64=function(n){var t=n;return t=t.replace("-----BEGIN CERTIFICATE-----",""),t=t.replace("-----END CERTIFICATE-----",""),t.replace(/[ \n]+/g,"")};c.pemToHex=function(n){var t=c.pemToBase64(n);return st(t)};c.getSubjectPublicKeyPosFromCertHex=function(n){var f=c.getSubjectPublicKeyInfoPosFromCertHex(n),r,t,i;return f==-1?-1:(r=u.getPosArrayOfChildren_AtObj(n,f),r.length!=2)?-1:(t=r[1],n.substring(t,t+2)!="03")?-1:(i=u.getStartPosOfV_AtObj(n,t),n.substring(i,i+2)!="00")?-1:i+2};c.getSubjectPublicKeyInfoPosFromCertHex=function(n){var i=u.getStartPosOfV_AtObj(n,0),t=u.getPosArrayOfChildren_AtObj(n,i);return t.length<1?-1:n.substring(t[0],t[0]+10)=="a003020102"?t.length<6?-1:t[6]:t.length<5?-1:t[5]};c.getPublicKeyHexArrayFromCertHex=function(n){var f=c.getSubjectPublicKeyPosFromCertHex(n),t=u.getPosArrayOfChildren_AtObj(n,f),i,r;return t.length!=2?[]:(i=u.getHexOfV_AtObj(n,t[0]),r=u.getHexOfV_AtObj(n,t[1]),i!=null&&r!=null?[i,r]:[])};c.getHexTbsCertificateFromCert=function(n){return u.getStartPosOfV_AtObj(n,0)};c.getPublicKeyHexArrayFromCertPEM=function(n){var t=c.pemToHex(n);return c.getPublicKeyHexArrayFromCertHex(t)};c.hex2dn=function(n){for(var i="",r=u.getPosArrayOfChildren_AtObj(n,0),f,t=0;t<r.length;t++)f=u.getHexOfTLV_AtObj(n,r[t]),i=i+"/"+c.hex2rdn(f);return i};c.hex2rdn=function(n){var r=u.getDecendantHexTLVByNthList(n,0,[0,0]),t=u.getDecendantHexVByNthList(n,0,[0,1]),i="",f;try{i=c.DN_ATTRHEX[r]}catch(e){i=r}return t=t.replace(/(..)/g,"%$1"),f=decodeURIComponent(t),i+"="+f};c.DN_ATTRHEX={"0603550406":"C","060355040a":"O","060355040b":"OU","0603550403":"CN","0603550405":"SN","0603550408":"ST","0603550407":"L","0603550409":"streetAddress","060355040f":"businessCategory","0603550411":"postalCode","060b2b0601040182373c020102":"jurisdictionOfIncorporationSP","060b2b0601040182373c020103":"jurisdictionOfIncorporationC"};c.getPublicKeyFromCertPEM=function(n){var t=c.getPublicKeyInfoPropOfCertPEM(n),e,s,i;if(t.algoid=="2a864886f70d010101")return e=a.parsePublicRawRSAKeyHex(t.keyhex),i=new h,i.setPublic(e.n,e.e),i;if(t.algoid=="2a8648ce3d0201")return s=r.crypto.OID.oidhex2name[t.algparam],i=new r.crypto.ECDSA({curve:s,info:t.keyhex}),i.setPublicKeyHex(t.keyhex),i;if(t.algoid=="2a8648ce380401"){var l=u.getVbyList(t.algparam,0,[0],"02"),v=u.getVbyList(t.algparam,0,[1],"02"),y=u.getVbyList(t.algparam,0,[2],"02"),o=u.getHexOfV_AtObj(t.keyhex,0);return o=o.substr(2),i=new r.crypto.DSA,i.setPublic(new f(l,16),new f(v,16),new f(y,16),new f(o,16)),i}throw"unsupported key";};c.getPublicKeyInfoPropOfCertPEM=function(n){var r={},t,e,o,s,f,i,h;if(r.algparam=null,t=c.pemToHex(n),e=u.getPosArrayOfChildren_AtObj(t,0),e.length!=3)throw"malformed X.509 certificate PEM (code:001)";if(t.substr(e[0],2)!="30")throw"malformed X.509 certificate PEM (code:002)";if(o=u.getPosArrayOfChildren_AtObj(t,e[0]),s=6,t.substr(o[0],2)!=="a0"&&(s=5),o.length<s+1)throw"malformed X.509 certificate PEM (code:003)";if(f=u.getPosArrayOfChildren_AtObj(t,o[s]),f.length!=2)throw"malformed X.509 certificate PEM (code:004)";if(i=u.getPosArrayOfChildren_AtObj(t,f[0]),i.length!=2)throw"malformed X.509 certificate PEM (code:005)";if(r.algoid=u.getHexOfV_AtObj(t,i[0]),t.substr(i[1],2)=="06"?r.algparam=u.getHexOfV_AtObj(t,i[1]):t.substr(i[1],2)=="30"&&(r.algparam=u.getHexOfTLV_AtObj(t,i[1])),t.substr(f[1],2)!="03")throw"malformed X.509 certificate PEM (code:006)";return h=u.getHexOfV_AtObj(t,f[1]),r.keyhex=h.substr(2),r};c.getPublicKeyInfoPosOfCertHEX=function(n){var t=u.getPosArrayOfChildren_AtObj(n,0),i;if(t.length!=3)throw"malformed X.509 certificate PEM (code:001)";if(n.substr(t[0],2)!="30")throw"malformed X.509 certificate PEM (code:002)";if(i=u.getPosArrayOfChildren_AtObj(n,t[0]),i.length<7)throw"malformed X.509 certificate PEM (code:003)";return i[6]};c.getV3ExtInfoListOfCertHex=function(n){var f=u.getPosArrayOfChildren_AtObj(n,0),i,r,t;if(f.length!=3)throw"malformed X.509 certificate PEM (code:001)";if(n.substr(f[0],2)!="30")throw"malformed X.509 certificate PEM (code:002)";if(i=u.getPosArrayOfChildren_AtObj(n,f[0]),i.length<8)throw"malformed X.509 certificate PEM (code:003)";if(n.substr(i[7],2)!="a3")throw"malformed X.509 certificate PEM (code:004)";if(r=u.getPosArrayOfChildren_AtObj(n,i[7]),r.length!=1)throw"malformed X.509 certificate PEM (code:005)";if(n.substr(r[0],2)!="30")throw"malformed X.509 certificate PEM (code:006)";var e=u.getPosArrayOfChildren_AtObj(n,r[0]),o=e.length,s=new Array(o);for(t=0;t<o;t++)s[t]=c.getV3ExtItemInfo_AtObj(n,e[t]);return s};c.getV3ExtItemInfo_AtObj=function(n,t){var r={},i,e,f;if(r.posTLV=t,i=u.getPosArrayOfChildren_AtObj(n,t),i.length!=2&&i.length!=3)throw"malformed X.509v3 Ext (code:001)";if(n.substr(i[0],2)!="06")throw"malformed X.509v3 Ext (code:002)";if(e=u.getHexOfV_AtObj(n,i[0]),r.oid=u.hextooidstr(e),r.critical=!1,i.length==3&&(r.critical=!0),f=i[i.length-1],n.substr(f,2)!="04")throw"malformed X.509v3 Ext (code:003)";return r.posV=u.getStartPosOfV_AtObj(n,f),r};c.getHexOfTLV_V3ExtValue=function(n,t){var i=c.getPosOfTLV_V3ExtValue(n,t);return i==-1?null:u.getHexOfTLV_AtObj(n,i)};c.getHexOfV_V3ExtValue=function(n,t){var i=c.getPosOfTLV_V3ExtValue(n,t);return i==-1?null:u.getHexOfV_AtObj(n,i)};c.getPosOfTLV_V3ExtValue=function(n,t){var u=t,f,i,e;if(t.match(/^[0-9.]+$/)||(u=r.asn1.x509.OID.name2oid(t)),u=="")return-1;for(f=c.getV3ExtInfoListOfCertHex(n),i=0;i<f.length;i++)if(e=f[i],e.oid==u)return e.posV;return-1};c.getExtBasicConstraints=function(n){var t=c.getHexOfV_V3ExtValue(n,"basicConstraints"),i,r;if(t===null)return null;if(t==="")return{};if(t==="0101ff")return{cA:!0};if(t.substr(0,8)==="0101ff02")return i=u.getHexOfV_AtObj(t,6),r=parseInt(i,16),{cA:!0,pathLen:r};throw"unknown error";};c.KEYUSAGE_NAME=["digitalSignature","nonRepudiation","keyEncipherment","dataEncipherment","keyAgreement","keyCertSign","cRLSign","encipherOnly","decipherOnly"];c.getExtKeyUsageBin=function(n){var t=c.getHexOfV_V3ExtValue(n,"keyUsage"),r,i;if(t=="")return"";if(t.length%2!=0||t.length<=2)throw"malformed key usage value";return r=parseInt(t.substr(0,2)),i=parseInt(t.substr(2),16).toString(2),i.substr(0,i.length-r)};c.getExtKeyUsageString=function(n){for(var i=c.getExtKeyUsageBin(n),r=[],t=0;t<i.length;t++)i.substr(t,1)=="1"&&r.push(c.KEYUSAGE_NAME[t]);return r.join(",")};c.getExtSubjectKeyIdentifier=function(n){return c.getHexOfV_V3ExtValue(n,"subjectKeyIdentifier")};c.getExtAuthorityKeyIdentifier=function(n){var f={},i=c.getHexOfTLV_V3ExtValue(n,"authorityKeyIdentifier"),r,t;if(i===null)return null;for(r=u.getPosArrayOfChildren_AtObj(i,0),t=0;t<r.length;t++)i.substr(r[t],2)==="80"&&(f.kid=u.getHexOfV_AtObj(i,r[t]));return f};c.getExtExtKeyUsageName=function(n){var e=[],i=c.getHexOfTLV_V3ExtValue(n,"extKeyUsage"),f,t;if(i===null)return null;for(f=u.getPosArrayOfChildren_AtObj(i,0),t=0;t<f.length;t++){var o=u.getHexOfV_AtObj(i,f[t]),s=r.asn1.ASN1Util.oidHexToInt(o),h=r.asn1.x509.OID.oid2name(s);e.push(h)}return e};c.getExtSubjectAltName=function(n){for(var f=[],i=c.getHexOfTLV_V3ExtValue(n,"subjectAltName"),r=u.getPosArrayOfChildren_AtObj(i,0),e,t=0;t<r.length;t++)i.substr(r[t],2)==="82"&&(e=ft(u.getHexOfV_AtObj(i,r[t])),f.push(e));return f};c.getExtCRLDistributionPointsURI=function(n){for(var s=[],h=c.getHexOfTLV_V3ExtValue(n,"cRLDistributionPoints"),l=u.getPosArrayOfChildren_AtObj(h,0),r,f,t,e,o,a,v,i=0;i<l.length;i++)for(r=u.getHexOfTLV_AtObj(h,l[i]),f=u.getPosArrayOfChildren_AtObj(r,0),t=0;t<f.length;t++)r.substr(f[t],2)==="a0"&&(e=u.getHexOfV_AtObj(r,f[t]),e.substr(0,2)==="a0"&&(o=u.getHexOfV_AtObj(e,0),o.substr(0,2)==="86"&&(a=u.getHexOfV_AtObj(o,0),v=ft(a),s.push(v))));return s};c.getExtAIAInfo=function(n){var t={},r,o,f,h,e,s,i;if(t.ocsp=[],t.caissuer=[],r=c.getPosOfTLV_V3ExtValue(n,"authorityInfoAccess"),r==-1)return null;if(n.substr(r,2)!="30")throw"malformed AIA Extn Value";for(o=u.getPosArrayOfChildren_AtObj(n,r),f=0;f<o.length;f++){if(h=o[f],e=u.getPosArrayOfChildren_AtObj(n,h),e.length!=2)throw"malformed AccessDescription of AIA Extn";s=e[0];i=e[1];u.getHexOfV_AtObj(n,s)=="2b06010505073001"&&n.substr(i,2)=="86"&&t.ocsp.push(ft(u.getHexOfV_AtObj(n,i)));u.getHexOfV_AtObj(n,s)=="2b06010505073002"&&n.substr(i,2)=="86"&&t.caissuer.push(ft(u.getHexOfV_AtObj(n,i)))}return t};c.getSignatureAlgorithmName=function(n){var t=u.getDecendantHexVByNthList(n,0,[1,0]),i=r.asn1.ASN1Util.oidHexToInt(t);return r.asn1.x509.OID.oid2name(i)};c.getSignatureValueHex=function(n){var t=u.getDecendantHexVByNthList(n,0,[2]);if(t.substr(0,2)!=="00")throw"can't get signature value";return t.substr(2)};c.getSerialNumberHex=function(n){return u.getDecendantHexVByNthList(n,0,[0,1])};typeof r!="undefined"&&r||(r={});typeof r.jws!="undefined"&&r.jws||(r.jws={});r.jws.JWS=function(){var n=r.jws.JWS;this.parseJWS=function(t,i){var e,s,r,h;if(this.parsedJWS===undefined||!i&&this.parsedJWS.sigvalH===undefined){if(t.match(/^([^.]+)\.([^.]+)\.([^.]+)$/)==null)throw"JWS signature is not a form of 'Head.Payload.SigValue'.";var u=RegExp.$1,f=RegExp.$2,o=RegExp.$3,c=u+"."+f;if(this.parsedJWS={},this.parsedJWS.headB64U=u,this.parsedJWS.payloadB64U=f,this.parsedJWS.sigvalB64U=o,this.parsedJWS.si=c,i||(e=w(o),s=nt(e,16),this.parsedJWS.sigvalH=e,this.parsedJWS.sigvalBI=s),r=ot(u),h=ot(f),this.parsedJWS.headS=r,this.parsedJWS.payloadS=h,!n.isSafeJSONString(r,this.parsedJWS,"headP"))throw"malformed JSON string for JWS Head: "+r;}}};r.jws.JWS.sign=function(n,t,i,u,f){var c=r.jws.JWS,h,e,v,s,y,o,p;if(typeof t!="string"&&typeof t!="object")throw"spHeader must be JSON string or object: "+t;if(typeof t=="object"&&(e=t,h=JSON.stringify(e)),typeof t=="string"){if(h=t,!c.isSafeJSONString(h))throw"JWS Head is not safe JSON string: "+h;e=c.readSafeJSONString(h)}if(v=i,typeof i=="object"&&(v=JSON.stringify(i)),(n==""||n==null)&&e.alg!==undefined&&(n=e.alg),n!=""&&n!=null&&e.alg===undefined&&(e.alg=n,h=JSON.stringify(e)),n!==e.alg)throw"alg and sHeader.alg doesn't match: "+n+"!="+e.alg;if(s=null,c.jwsalg2sigalg[n]===undefined)throw"unsupported alg name: "+n;else s=c.jwsalg2sigalg[n];var w=si(h),k=si(v),l=w+"."+k,a="";if(s.substr(0,4)=="Hmac"){if(u===undefined)throw"mac key shall be specified for HS* alg";y=new r.crypto.Mac({alg:s,prov:"cryptojs",pass:u});y.updateString(l);a=y.doFinal()}else s.indexOf("withECDSA")!=-1?(o=new r.crypto.Signature({alg:s}),o.init(u,f),o.updateString(l),hASN1Sig=o.sign(),a=r.crypto.ECDSA.asn1SigToConcatSig(hASN1Sig)):s!="none"&&(o=new r.crypto.Signature({alg:s}),o.init(u,f),o.updateString(l),a=o.sign());return p=b(a),l+"."+p};r.jws.JWS.verify=function(n,t,i){var c=r.jws.JWS,o=n.split("."),g=o[0],nt=o[1],l=g+"."+nt,v=w(o[2]),y=c.readSafeJSONString(ot(o[0])),f=null,s=null,d,e,p,b,k,u;if(y.alg===undefined)throw"algorithm not specified in header";else f=y.alg,s=f.substr(0,2);if(i!=null&&Object.prototype.toString.call(i)==="[object Array]"&&i.length>0&&(d=":"+i.join(":")+":",d.indexOf(":"+f+":")==-1))throw"algorithm '"+f+"' not accepted in the list";if(f!="none"&&t===null)throw"key shall be specified to verify.";if(typeof t=="string"&&t.indexOf("-----BEGIN ")!=-1&&(t=a.getKey(t)),(s=="RS"||s=="PS")&&!(t instanceof h))throw"key shall be a RSAKey obj for RS* and PS* algs";if(s=="ES"&&!(t instanceof r.crypto.ECDSA))throw"key shall be a ECDSA obj for ES* algs";if(f=="none",e=null,c.jwsalg2sigalg[y.alg]===undefined)throw"unsupported alg name: "+f;else e=c.jwsalg2sigalg[f];if(e=="none")throw"not supported";else{if(e.substr(0,4)=="Hmac"){if(p=null,t===undefined)throw"hexadecimal key shall be specified for HMAC";return b=new r.crypto.Mac({alg:e,pass:t}),b.updateString(l),p=b.doFinal(),v==p}if(e.indexOf("withECDSA")!=-1){k=null;try{k=r.crypto.ECDSA.concatSigToASN1Sig(v)}catch(tt){return!1}return u=new r.crypto.Signature({alg:e}),u.init(t),u.updateString(l),u.verify(k)}return u=new r.crypto.Signature({alg:e}),u.init(t),u.updateString(l),u.verify(v)}};r.jws.JWS.parse=function(n){var i=n.split("."),t={},e,u,f;if(i.length!=2&&i.length!=3)throw"malformed sJWS: wrong number of '.' splitted elements";return e=i[0],u=i[1],i.length==3&&(f=i[2]),t.headerObj=r.jws.JWS.readSafeJSONString(ot(e)),t.payloadObj=r.jws.JWS.readSafeJSONString(ot(u)),t.headerPP=JSON.stringify(t.headerObj,null,"  "),t.payloadPP=t.payloadObj==null?ot(u):JSON.stringify(t.payloadObj,null,"  "),f!==undefined&&(t.sigHex=w(f)),t};r.jws.JWS.verifyJWT=function(n,t,i){var f=r.jws.JWS,o=n.split("."),s=o[0],h=o[1],l=s+"."+h,a=w(o[2]),c=f.readSafeJSONString(ot(s)),u=f.readSafeJSONString(ot(h)),e;if(c.alg===undefined)return!1;if(i.alg===undefined)throw"acceptField.alg shall be specified";if(!f.inArray(c.alg,i.alg)||u.iss!==undefined&&typeof i.iss=="object"&&!f.inArray(u.iss,i.iss)||u.sub!==undefined&&typeof i.sub=="object"&&!f.inArray(u.sub,i.sub))return!1;if(u.aud!==undefined&&typeof i.aud=="object")if(typeof u.aud=="string"){if(!f.inArray(u.aud,i.aud))return!1}else if(typeof u.aud=="object"&&!f.includedArray(u.aud,i.aud))return!1;return(e=r.jws.IntDate.getNow(),i.verifyAt!==undefined&&typeof i.verifyAt=="number"&&(e=i.verifyAt),(i.gracePeriod===undefined||typeof i.gracePeriod!="number")&&(i.gracePeriod=0),u.exp!==undefined&&typeof u.exp=="number"&&u.exp+i.gracePeriod<e)?!1:u.nbf!==undefined&&typeof u.nbf=="number"&&e<u.nbf-i.gracePeriod?!1:u.iat!==undefined&&typeof u.iat=="number"&&e<u.iat-i.gracePeriod?!1:u.jti!==undefined&&i.jti!==undefined&&u.jti!==i.jti?!1:r.jws.JWS.verify(n,t,i.alg)?!0:!1};r.jws.JWS.includedArray=function(n,t){var u=r.jws.JWS.inArray,i;if(n===null||typeof n!="object"||typeof n.length!="number")return!1;for(i=0;i<n.length;i++)if(!u(n[i],t))return!1;return!0};r.jws.JWS.inArray=function(n,t){if(t===null||typeof t!="object"||typeof t.length!="number")return!1;for(var i=0;i<t.length;i++)if(t[i]==n)return!0;return!1};r.jws.JWS.jwsalg2sigalg={HS256:"HmacSHA256",HS384:"HmacSHA384",HS512:"HmacSHA512",RS256:"SHA256withRSA",RS384:"SHA384withRSA",RS512:"SHA512withRSA",ES256:"SHA256withECDSA",ES384:"SHA384withECDSA",PS256:"SHA256withRSAandMGF1",PS384:"SHA384withRSAandMGF1",PS512:"SHA512withRSAandMGF1",none:"none"};r.jws.JWS.isSafeJSONString=function(n,t,i){var r=null;try{return(r=fr(n),typeof r!="object")?0:r.constructor===Array?0:(t&&(t[i]=r),1)}catch(u){return 0}};r.jws.JWS.readSafeJSONString=function(n){var t=null;try{return(t=fr(n),typeof t!="object")?null:t.constructor===Array?null:t}catch(i){return null}};r.jws.JWS.getEncodedSignatureValueFromJWS=function(n){if(n.match(/^[^.]+\.[^.]+\.([^.]+)$/)==null)throw"JWS signature is not a form of 'Head.Payload.SigValue'.";return RegExp.$1};r.jws.JWS.getJWKthumbprint=function(n){var t;if(n.kty!=="RSA"&&n.kty!=="EC"&&n.kty!=="oct")throw"unsupported algorithm for JWK Thumprint";if(t="{",n.kty==="RSA"){if(typeof n.n!="string"||typeof n.e!="string")throw"wrong n and e value for RSA key";t+='"e":"'+n.e+'",';t+='"kty":"'+n.kty+'",';t+='"n":"'+n.n+'"}'}else if(n.kty==="EC"){if(typeof n.crv!="string"||typeof n.x!="string"||typeof n.y!="string")throw"wrong crv, x and y value for EC key";t+='"crv":"'+n.crv+'",';t+='"kty":"'+n.kty+'",';t+='"x":"'+n.x+'",';t+='"y":"'+n.y+'"}'}else if(n.kty==="oct"){if(typeof n.k!="string")throw"wrong k value for oct(symmetric) key";t+='"kty":"'+n.kty+'",';t+='"k":"'+n.k+'"}'}var i=vt(t),u=r.crypto.Util.hashHex(i,"sha256");return b(u)};r.jws.IntDate={};r.jws.IntDate.get=function(n){if(n=="now")return r.jws.IntDate.getNow();if(n=="now + 1hour")return r.jws.IntDate.getNow()+3600;if(n=="now + 1day")return r.jws.IntDate.getNow()+86400;if(n=="now + 1month")return r.jws.IntDate.getNow()+2592e3;if(n=="now + 1year")return r.jws.IntDate.getNow()+31536e3;if(n.match(/Z$/))return r.jws.IntDate.getZulu(n);if(n.match(/^[0-9]+$/))return parseInt(n);throw"unsupported format: "+n;};r.jws.IntDate.getZulu=function(n){var r,i,t;if(r=n.match(/(\d+)(\d\d)(\d\d)(\d\d)(\d\d)(\d\d)Z/)){if(i=RegExp.$1,t=parseInt(i),i.length!=4)if(i.length==2)if(50<=t&&t<100)t=1900+t;else if(0<=t&&t<50)t=2e3+t;else throw"malformed year string for UTCTime";else throw"malformed year string";var u=parseInt(RegExp.$2)-1,f=parseInt(RegExp.$3),e=parseInt(RegExp.$4),o=parseInt(RegExp.$5),s=parseInt(RegExp.$6),h=new Date(Date.UTC(t,u,f,e,o,s));return~~(h/1e3)}throw"unsupported format: "+n;};r.jws.IntDate.getNow=function(){return~~(new Date/1e3)};r.jws.IntDate.intDate2UTCString=function(n){var t=new Date(n*1e3);return t.toUTCString()};r.jws.IntDate.intDate2Zulu=function(n){var t=new Date(n*1e3),i=("0000"+t.getUTCFullYear()).slice(-4),r=("00"+(t.getUTCMonth()+1)).slice(-2),u=("00"+t.getUTCDate()).slice(-2),f=("00"+t.getUTCHours()).slice(-2),e=("00"+t.getUTCMinutes()).slice(-2),o=("00"+t.getUTCSeconds()).slice(-2);return i+r+u+f+e+o+"Z"};typeof r!="undefined"&&r||(r={});typeof r.jws!="undefined"&&r.jws||(r.jws={});r.jws.JWSJS=function(){var n=r.jws.JWS,t=r.jws.JWS;this.aHeader=[];this.sPayload="";this.aSignature=[];this.init=function(){this.aHeader=[];this.sPayload=undefined;this.aSignature=[]};this.initWithJWS=function(n){this.init();var t=n.split(".");if(t.length!=3)throw"malformed input JWS";this.aHeader.push(t[0]);this.sPayload=t[1];this.aSignature.push(t[2])};this.addSignature=function(n,t,i,u){var e;if(this.sPayload===undefined||this.sPayload===null)throw"there's no JSON-JS signature to add.";if(e=this.aHeader.length,this.aHeader.length!=this.aSignature.length)throw"aHeader.length != aSignature.length";try{var o=r.jws.JWS.sign(n,t,this.sPayload,i,u),f=o.split("."),h=f[0],c=f[2];this.aHeader.push(f[0]);this.aSignature.push(f[2])}catch(s){this.aHeader.length>e&&this.aHeader.pop();this.aSignature.length>e&&this.aSignature.pop();throw"addSignature failed: "+s;}};this.addSignatureByHeaderKey=function(n,t){var u=ot(this.sPayload),i=new r.jws.JWS,f=i.generateJWSByP1PrvKey(n,u,t);this.aHeader.push(i.parsedJWS.headB64U);this.aSignature.push(i.parsedJWS.sigvalB64U)};this.addSignatureByHeaderPayloadKey=function(n,t,i){var u=new r.jws.JWS,f=u.generateJWSByP1PrvKey(n,t,i);this.aHeader.push(u.parsedJWS.headB64U);this.sPayload=u.parsedJWS.payloadB64U;this.aSignature.push(u.parsedJWS.sigvalB64U)};this.verifyAll=function(n){var t,i,r;if(this.aHeader.length!==n.length||this.aSignature.length!==n.length)return!1;for(t=0;t<n.length;t++)if((i=n[t],i.length!==2)||(r=this.verifyNth(t,i[0],i[1]),r===!1))return!1;return!0};this.verifyNth=function(n,i,r){if(this.aHeader.length<=n||this.aSignature.length<=n)return!1;var f=this.aHeader[n],e=this.aSignature[n],o=f+"."+this.sPayload+"."+e,u=!1;try{u=t.verify(o,i,r)}catch(s){return!1}return u};this.verifyWithCerts=function(n){var u,i,t,f;if(this.aHeader.length!=n.length)throw"num headers does not match with num certs";if(this.aSignature.length!=n.length)throw"num signatures does not match with num certs";for(u=this.sPayload,i="",t=0;t<n.length;t++){var e=n[t],o=this.aHeader[t],s=this.aSignature[t],h=o+"."+u+"."+s,c=new r.jws.JWS;try{f=c.verifyJWSByPemX509Cert(h,e);f!=1&&(i+=t+1+"th signature unmatch. ")}catch(l){i+=t+1+"th signature fail("+l+"). "}}if(i=="")return 1;throw i;};this.readJWSJS=function(t){if(typeof t=="string"){var i=n.readSafeJSONString(t);if(i==null)throw"argument is not safe JSON object string";this.aHeader=i.headers;this.sPayload=i.payload;this.aSignature=i.signatures}else try{if(t.headers.length>0)this.aHeader=t.headers;else throw"malformed header";if(typeof t.payload=="string")this.sPayload=t.payload;else throw"malformed signatures";if(t.signatures.length>0)this.signatures=t.signatures;else throw"malformed signatures";}catch(r){throw"malformed JWS-JS JSON object: "+r;}};this.getJSON=function(){return{headers:this.aHeader,payload:this.sPayload,signatures:this.aSignature}};this.isEmpty=function(){return this.aHeader.length==0?1:0}};t.SecureRandom=ni;t.rng_seed_time=ir;t.BigInteger=f;t.RSAKey=h;t.ECDSA=r.crypto.ECDSA;t.DSA=r.crypto.DSA;t.Signature=r.crypto.Signature;t.MessageDigest=r.crypto.MessageDigest;t.Mac=r.crypto.Mac;t.KEYUTIL=a;t.ASN1HEX=u;t.X509=c;t.CryptoJS=e;t.b64tohex=st;t.b64toBA=cr;t.stoBA=gr;t.BAtos=nu;t.BAtohex=tu;t.stohex=ct;t.stob64=rl;t.stob64u=ul;t.b64utos=fl;t.b64tob64u=yi;t.b64utob64=oi;t.hex2b64=ti;t.hextob64u=b;t.b64utohex=w;t.b64tohex=st;t.utf8tob64u=si;t.b64utoutf8=ot;t.utf8tob64=el;t.b64toutf8=ol;t.utf8tohex=pi;t.hextoutf8=ft;t.hextorstr=ui;t.rstrtohex=vt;t.newline_toUnix=sl;t.newline_toDos=hl;t.intarystrtohex=cl;t.strdiffidx=ru;t.KJUR=r;t.crypto=r.crypto;t.asn1=r.asn1;t.jws=r.jws;t.lang=r.lang;t.readFileUTF8=ta;t.readFileHexByBin=ia;t.readFile=ra;t.saveFile=ua;t.saveFileBinByHex=fa}).call(t,i(339).Buffer)},function(n,t,i){(function(n){"use strict";function lt(){try{var n=new Uint8Array(1);return n.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},n.foo()===42&&typeof n.subarray=="function"&&n.subarray(1,1).byteLength===0}catch(t){return!1}}function h(){return r.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function e(n,t){if(h()<t)throw new RangeError("Invalid typed array length");return r.TYPED_ARRAY_SUPPORT?(n=new Uint8Array(t),n.__proto__=r.prototype):(n===null&&(n=new r(t)),n.length=t),n}function r(n,t,i){if(!r.TYPED_ARRAY_SUPPORT&&!(this instanceof r))return new r(n,t,i);if(typeof n=="number"){if(typeof t=="string")throw new Error("If encoding is specified then the first argument must be a string");return p(this,n)}return g(this,n,t,i)}function g(n,t,i,r){if(typeof t=="number")throw new TypeError('"value" argument must not be a number');return typeof ArrayBuffer!="undefined"&&t instanceof ArrayBuffer?yt(n,t,i,r):typeof t=="string"?vt(n,t,i):pt(n,t)}function nt(n){if(typeof n!="number")throw new TypeError('"size" argument must be a number');else if(n<0)throw new RangeError('"size" argument must not be negative');}function at(n,t,i,r){return(nt(t),t<=0)?e(n,t):i!==undefined?typeof r=="string"?e(n,t).fill(i,r):e(n,t).fill(i):e(n,t)}function p(n,t){if(nt(t),n=e(n,t<0?0:b(t)|0),!r.TYPED_ARRAY_SUPPORT)for(var i=0;i<t;++i)n[i]=0;return n}function vt(n,t,i){var u,f;if((typeof i!="string"||i==="")&&(i="utf8"),!r.isEncoding(i))throw new TypeError('"encoding" must be a valid string encoding');return u=tt(t,i)|0,n=e(n,u),f=n.write(t,i),f!==u&&(n=n.slice(0,f)),n}function w(n,t){var r=t.length<0?0:b(t.length)|0,i;for(n=e(n,r),i=0;i<r;i+=1)n[i]=t[i]&255;return n}function yt(n,t,i,u){if(t.byteLength,i<0||t.byteLength<i)throw new RangeError("'offset' is out of bounds");if(t.byteLength<i+(u||0))throw new RangeError("'length' is out of bounds");return t=i===undefined&&u===undefined?new Uint8Array(t):u===undefined?new Uint8Array(t,i):new Uint8Array(t,i,u),r.TYPED_ARRAY_SUPPORT?(n=t,n.__proto__=r.prototype):n=w(n,t),n}function pt(n,t){if(r.isBuffer(t)){var i=b(t.length)|0;return(n=e(n,i),n.length===0)?n:(t.copy(n,0,0,i),n)}if(t){if(typeof ArrayBuffer!="undefined"&&t.buffer instanceof ArrayBuffer||"length"in t)return typeof t.length!="number"||vi(t.length)?e(n,0):w(n,t);if(t.type==="Buffer"&&d(t.data))return w(n,t.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.");}function b(n){if(n>=h())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+h().toString(16)+" bytes");return n|0}function wt(n){return+n!=n&&(n=0),r.alloc(+n)}function tt(n,t){var i,u;if(r.isBuffer(n))return n.length;if(typeof ArrayBuffer!="undefined"&&typeof ArrayBuffer.isView=="function"&&(ArrayBuffer.isView(n)||n instanceof ArrayBuffer))return n.byteLength;if(typeof n!="string"&&(n=""+n),i=n.length,i===0)return 0;for(u=!1;;)switch(t){case"ascii":case"latin1":case"binary":return i;case"utf8":case"utf-8":case undefined:return a(n).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return i*2;case"hex":return i>>>1;case"base64":return ct(n).length;default:if(u)return a(n).length;t=(""+t).toLowerCase();u=!0}}function bt(n,t,i){var r=!1;if(((t===undefined||t<0)&&(t=0),t>this.length)||((i===undefined||i>this.length)&&(i=this.length),i<=0)||(i>>>=0,t>>>=0,i<=t))return"";for(n||(n="utf8");;)switch(n){case"hex":return ei(this,t,i);case"utf8":case"utf-8":return ft(this,t,i);case"ascii":return ui(this,t,i);case"latin1":case"binary":return fi(this,t,i);case"base64":return ii(this,t,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return oi(this,t,i);default:if(r)throw new TypeError("Unknown encoding: "+n);n=(n+"").toLowerCase();r=!0}}function o(n,t,i){var r=n[t];n[t]=n[i];n[i]=r}function it(n,t,i,u,f){if(n.length===0)return-1;if(typeof i=="string"?(u=i,i=0):i>2147483647?i=2147483647:i<-2147483648&&(i=-2147483648),i=+i,isNaN(i)&&(i=f?0:n.length-1),i<0&&(i=n.length+i),i>=n.length){if(f)return-1;i=n.length-1}else if(i<0)if(f)i=0;else return-1;if(typeof t=="string"&&(t=r.from(t,u)),r.isBuffer(t))return t.length===0?-1:rt(n,t,i,u,f);if(typeof t=="number")return(t=t&255,r.TYPED_ARRAY_SUPPORT&&typeof Uint8Array.prototype.indexOf=="function")?f?Uint8Array.prototype.indexOf.call(n,t,i):Uint8Array.prototype.lastIndexOf.call(n,t,i):rt(n,[t],i,u,f);throw new TypeError("val must be string, number or Buffer");}function rt(n,t,i,r,u){function l(n,t){return h===1?n[t]:n.readUInt16BE(t*h)}var h=1,c=n.length,o=t.length,f,e,a,s;if(r!==undefined&&(r=String(r).toLowerCase(),r==="ucs2"||r==="ucs-2"||r==="utf16le"||r==="utf-16le")){if(n.length<2||t.length<2)return-1;h=2;c/=2;o/=2;i/=2}if(u)for(e=-1,f=i;f<c;f++)if(l(n,f)===l(t,e===-1?0:f-e)){if(e===-1&&(e=f),f-e+1===o)return e*h}else e!==-1&&(f-=f-e),e=-1;else for(i+o>c&&(i=c-o),f=i;f>=0;f--){for(a=!0,s=0;s<o;s++)if(l(n,f+s)!==l(t,s)){a=!1;break}if(a)return f}return-1}function kt(n,t,i,r){var f,e,u,o;if(i=Number(i)||0,f=n.length-i,r?(r=Number(r),r>f&&(r=f)):r=f,e=t.length,e%2!=0)throw new TypeError("Invalid hex string");for(r>e/2&&(r=e/2),u=0;u<r;++u){if(o=parseInt(t.substr(u*2,2),16),isNaN(o))return u;n[i+u]=o}return u}function dt(n,t,i,r){return v(a(t,n.length-i),n,i,r)}function ut(n,t,i,r){return v(li(t),n,i,r)}function gt(n,t,i,r){return ut(n,t,i,r)}function ni(n,t,i,r){return v(ct(t),n,i,r)}function ti(n,t,i,r){return v(ai(t,n.length-i),n,i,r)}function ii(n,t,i){return t===0&&i===n.length?y.fromByteArray(n):y.fromByteArray(n.slice(t,i))}function ft(n,t,i){var h,f,e,s,l,u;for(i=Math.min(n.length,i),h=[],f=t;f<i;){var o=n[f],r=null,c=o>239?4:o>223?3:o>191?2:1;if(f+c<=i)switch(c){case 1:o<128&&(r=o);break;case 2:e=n[f+1];(e&192)==128&&(u=(o&31)<<6|e&63,u>127&&(r=u));break;case 3:e=n[f+1];s=n[f+2];(e&192)==128&&(s&192)==128&&(u=(o&15)<<12|(e&63)<<6|s&63,u>2047&&(u<55296||u>57343)&&(r=u));break;case 4:e=n[f+1];s=n[f+2];l=n[f+3];(e&192)==128&&(s&192)==128&&(l&192)==128&&(u=(o&15)<<18|(e&63)<<12|(s&63)<<6|l&63,u>65535&&u<1114112&&(r=u))}r===null?(r=65533,c=1):r>65535&&(r-=65536,h.push(r>>>10&1023|55296),r=56320|r&1023);h.push(r);f+=c}return ri(h)}function ri(n){var r=n.length,i,t;if(r<=k)return String.fromCharCode.apply(String,n);for(i="",t=0;t<r;)i+=String.fromCharCode.apply(String,n.slice(t,t+=k));return i}function ui(n,t,i){var u="",r;for(i=Math.min(n.length,i),r=t;r<i;++r)u+=String.fromCharCode(n[r]&127);return u}function fi(n,t,i){var u="",r;for(i=Math.min(n.length,i),r=t;r<i;++r)u+=String.fromCharCode(n[r]);return u}function ei(n,t,i){var f=n.length,u,r;for((!t||t<0)&&(t=0),(!i||i<0||i>f)&&(i=f),u="",r=t;r<i;++r)u+=ci(n[r]);return u}function oi(n,t,i){for(var u=n.slice(t,i),f="",r=0;r<u.length;r+=2)f+=String.fromCharCode(u[r]+u[r+1]*256);return f}function u(n,t,i){if(n%1!=0||n<0)throw new RangeError("offset is not uint");if(n+t>i)throw new RangeError("Trying to access beyond buffer length");}function f(n,t,i,u,f,e){if(!r.isBuffer(n))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>f||t<e)throw new RangeError('"value" argument is out of bounds');if(i+u>n.length)throw new RangeError("Index out of range");}function c(n,t,i,r){t<0&&(t=65535+t+1);for(var u=0,f=Math.min(n.length-i,2);u<f;++u)n[i+u]=(t&255<<8*(r?u:1-u))>>>(r?u:1-u)*8}function l(n,t,i,r){t<0&&(t=4294967295+t+1);for(var u=0,f=Math.min(n.length-i,4);u<f;++u)n[i+u]=t>>>(r?u:3-u)*8&255}function et(n,t,i,r){if(i+r>n.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("Index out of range");}function ot(n,t,i,r,u){return u||et(n,t,i,4,34028234663852886e22,-34028234663852886e22),s.write(n,t,i,r,23,4),i+4}function st(n,t,i,r,u){return u||et(n,t,i,8,17976931348623157e292,-17976931348623157e292),s.write(n,t,i,r,52,8),i+8}function si(n){if(n=hi(n).replace(ht,""),n.length<2)return"";while(n.length%4!=0)n=n+"=";return n}function hi(n){return n.trim?n.trim():n.replace(/^\s+|\s+$/g,"")}function ci(n){return n<16?"0"+n.toString(16):n.toString(16)}function a(n,t){var f;t=t||Infinity;var i,e=n.length,u=null,r=[];for(f=0;f<e;++f){if(i=n.charCodeAt(f),i>55295&&i<57344){if(!u){if(i>56319){(t-=3)>-1&&r.push(239,191,189);continue}else if(f+1===e){(t-=3)>-1&&r.push(239,191,189);continue}u=i;continue}if(i<56320){(t-=3)>-1&&r.push(239,191,189);u=i;continue}i=(u-55296<<10|i-56320)+65536}else u&&(t-=3)>-1&&r.push(239,191,189);if(u=null,i<128){if((t-=1)<0)break;r.push(i)}else if(i<2048){if((t-=2)<0)break;r.push(i>>6|192,i&63|128)}else if(i<65536){if((t-=3)<0)break;r.push(i>>12|224,i>>6&63|128,i&63|128)}else if(i<1114112){if((t-=4)<0)break;r.push(i>>18|240,i>>12&63|128,i>>6&63|128,i&63|128)}else throw new Error("Invalid code point");}return r}function li(n){for(var i=[],t=0;t<n.length;++t)i.push(n.charCodeAt(t)&255);return i}function ai(n,t){for(var r,f,e,u=[],i=0;i<n.length;++i){if((t-=2)<0)break;r=n.charCodeAt(i);f=r>>8;e=r%256;u.push(e);u.push(f)}return u}function ct(n){return y.toByteArray(si(n))}function v(n,t,i,r){for(var u=0;u<r;++u){if(u+i>=t.length||u>=n.length)break;t[u+i]=n[u]}return u}function vi(n){return n!==n}var y=i(340),s=i(341),d=i(342),k,ht;t.Buffer=r;t.SlowBuffer=wt;t.INSPECT_MAX_BYTES=50;r.TYPED_ARRAY_SUPPORT=n.TYPED_ARRAY_SUPPORT!==undefined?n.TYPED_ARRAY_SUPPORT:lt();t.kMaxLength=h();r.poolSize=8192;r._augment=function(n){return n.__proto__=r.prototype,n};r.from=function(n,t,i){return g(null,n,t,i)};r.TYPED_ARRAY_SUPPORT&&(r.prototype.__proto__=Uint8Array.prototype,r.__proto__=Uint8Array,typeof Symbol!="undefined"&&Symbol.species&&r[Symbol.species]===r&&Object.defineProperty(r,Symbol.species,{value:null,configurable:!0}));r.alloc=function(n,t,i){return at(null,n,t,i)};r.allocUnsafe=function(n){return p(null,n)};r.allocUnsafeSlow=function(n){return p(null,n)};r.isBuffer=function(n){return!!(n!=null&&n._isBuffer)};r.compare=function(n,t){var u,f,i,e;if(!r.isBuffer(n)||!r.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(n===t)return 0;for(u=n.length,f=t.length,i=0,e=Math.min(u,f);i<e;++i)if(n[i]!==t[i]){u=n[i];f=t[i];break}return u<f?-1:f<u?1:0};r.isEncoding=function(n){switch(String(n).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}};r.concat=function(n,t){var i,f,e,u;if(!d(n))throw new TypeError('"list" argument must be an Array of Buffers');if(n.length===0)return r.alloc(0);if(t===undefined)for(t=0,i=0;i<n.length;++i)t+=n[i].length;for(f=r.allocUnsafe(t),e=0,i=0;i<n.length;++i){if(u=n[i],!r.isBuffer(u))throw new TypeError('"list" argument must be an Array of Buffers');u.copy(f,e);e+=u.length}return f};r.byteLength=tt;r.prototype._isBuffer=!0;r.prototype.swap16=function(){var t=this.length,n;if(t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(n=0;n<t;n+=2)o(this,n,n+1);return this};r.prototype.swap32=function(){var t=this.length,n;if(t%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(n=0;n<t;n+=4)o(this,n,n+3),o(this,n+1,n+2);return this};r.prototype.swap64=function(){var t=this.length,n;if(t%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(n=0;n<t;n+=8)o(this,n,n+7),o(this,n+1,n+6),o(this,n+2,n+5),o(this,n+3,n+4);return this};r.prototype.toString=function(){var n=this.length|0;return n===0?"":arguments.length===0?ft(this,0,n):bt.apply(this,arguments)};r.prototype.equals=function(n){if(!r.isBuffer(n))throw new TypeError("Argument must be a Buffer");return this===n?!0:r.compare(this,n)===0};r.prototype.inspect=function(){var n="",i=t.INSPECT_MAX_BYTES;return this.length>0&&(n=this.toString("hex",0,i).match(/.{2}/g).join(" "),this.length>i&&(n+=" ... ")),"<Buffer "+n+">"};r.prototype.compare=function(n,t,i,u,f){var e;if(!r.isBuffer(n))throw new TypeError("Argument must be a Buffer");if(t===undefined&&(t=0),i===undefined&&(i=n?n.length:0),u===undefined&&(u=0),f===undefined&&(f=this.length),t<0||i>n.length||u<0||f>this.length)throw new RangeError("out of range index");if(u>=f&&t>=i)return 0;if(u>=f)return-1;if(t>=i)return 1;if(t>>>=0,i>>>=0,u>>>=0,f>>>=0,this===n)return 0;var o=f-u,s=i-t,l=Math.min(o,s),h=this.slice(u,f),c=n.slice(t,i);for(e=0;e<l;++e)if(h[e]!==c[e]){o=h[e];s=c[e];break}return o<s?-1:s<o?1:0};r.prototype.includes=function(n,t,i){return this.indexOf(n,t,i)!==-1};r.prototype.indexOf=function(n,t,i){return it(this,n,t,i,!0)};r.prototype.lastIndexOf=function(n,t,i){return it(this,n,t,i,!1)};r.prototype.write=function(n,t,i,r){var u,f;if(t===undefined)r="utf8",i=this.length,t=0;else if(i===undefined&&typeof t=="string")r=t,i=this.length,t=0;else if(isFinite(t))t=t|0,isFinite(i)?(i=i|0,r===undefined&&(r="utf8")):(r=i,i=undefined);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");if(u=this.length-t,(i===undefined||i>u)&&(i=u),n.length>0&&(i<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");for(r||(r="utf8"),f=!1;;)switch(r){case"hex":return kt(this,n,t,i);case"utf8":case"utf-8":return dt(this,n,t,i);case"ascii":return ut(this,n,t,i);case"latin1":case"binary":return gt(this,n,t,i);case"base64":return ni(this,n,t,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ti(this,n,t,i);default:if(f)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase();f=!0}};r.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};k=4096;r.prototype.slice=function(n,t){var i=this.length,u,e,f;if(n=~~n,t=t===undefined?i:~~t,n<0?(n+=i,n<0&&(n=0)):n>i&&(n=i),t<0?(t+=i,t<0&&(t=0)):t>i&&(t=i),t<n&&(t=n),r.TYPED_ARRAY_SUPPORT)u=this.subarray(n,t),u.__proto__=r.prototype;else for(e=t-n,u=new r(e,undefined),f=0;f<e;++f)u[f]=this[f+n];return u};r.prototype.readUIntLE=function(n,t,i){n=n|0;t=t|0;i||u(n,t,this.length);for(var r=this[n],f=1,e=0;++e<t&&(f*=256);)r+=this[n+e]*f;return r};r.prototype.readUIntBE=function(n,t,i){n=n|0;t=t|0;i||u(n,t,this.length);for(var r=this[n+--t],f=1;t>0&&(f*=256);)r+=this[n+--t]*f;return r};r.prototype.readUInt8=function(n,t){return t||u(n,1,this.length),this[n]};r.prototype.readUInt16LE=function(n,t){return t||u(n,2,this.length),this[n]|this[n+1]<<8};r.prototype.readUInt16BE=function(n,t){return t||u(n,2,this.length),this[n]<<8|this[n+1]};r.prototype.readUInt32LE=function(n,t){return t||u(n,4,this.length),(this[n]|this[n+1]<<8|this[n+2]<<16)+this[n+3]*16777216};r.prototype.readUInt32BE=function(n,t){return t||u(n,4,this.length),this[n]*16777216+(this[n+1]<<16|this[n+2]<<8|this[n+3])};r.prototype.readIntLE=function(n,t,i){n=n|0;t=t|0;i||u(n,t,this.length);for(var r=this[n],f=1,e=0;++e<t&&(f*=256);)r+=this[n+e]*f;return f*=128,r>=f&&(r-=Math.pow(2,8*t)),r};r.prototype.readIntBE=function(n,t,i){n=n|0;t=t|0;i||u(n,t,this.length);for(var e=t,r=1,f=this[n+--e];e>0&&(r*=256);)f+=this[n+--e]*r;return r*=128,f>=r&&(f-=Math.pow(2,8*t)),f};r.prototype.readInt8=function(n,t){return(t||u(n,1,this.length),!(this[n]&128))?this[n]:(256-this[n])*-1};r.prototype.readInt16LE=function(n,t){t||u(n,2,this.length);var i=this[n]|this[n+1]<<8;return i&32768?i|4294901760:i};r.prototype.readInt16BE=function(n,t){t||u(n,2,this.length);var i=this[n+1]|this[n]<<8;return i&32768?i|4294901760:i};r.prototype.readInt32LE=function(n,t){return t||u(n,4,this.length),this[n]|this[n+1]<<8|this[n+2]<<16|this[n+3]<<24};r.prototype.readInt32BE=function(n,t){return t||u(n,4,this.length),this[n]<<24|this[n+1]<<16|this[n+2]<<8|this[n+3]};r.prototype.readFloatLE=function(n,t){return t||u(n,4,this.length),s.read(this,n,!0,23,4)};r.prototype.readFloatBE=function(n,t){return t||u(n,4,this.length),s.read(this,n,!1,23,4)};r.prototype.readDoubleLE=function(n,t){return t||u(n,8,this.length),s.read(this,n,!0,52,8)};r.prototype.readDoubleBE=function(n,t){return t||u(n,8,this.length),s.read(this,n,!1,52,8)};r.prototype.writeUIntLE=function(n,t,i,r){var o,u,e;for(n=+n,t=t|0,i=i|0,r||(o=Math.pow(2,8*i)-1,f(this,n,t,i,o,0)),u=1,e=0,this[t]=n&255;++e<i&&(u*=256);)this[t+e]=n/u&255;return t+i};r.prototype.writeUIntBE=function(n,t,i,r){var o,u,e;for(n=+n,t=t|0,i=i|0,r||(o=Math.pow(2,8*i)-1,f(this,n,t,i,o,0)),u=i-1,e=1,this[t+u]=n&255;--u>=0&&(e*=256);)this[t+u]=n/e&255;return t+i};r.prototype.writeUInt8=function(n,t,i){return n=+n,t=t|0,i||f(this,n,t,1,255,0),r.TYPED_ARRAY_SUPPORT||(n=Math.floor(n)),this[t]=n&255,t+1};r.prototype.writeUInt16LE=function(n,t,i){return n=+n,t=t|0,i||f(this,n,t,2,65535,0),r.TYPED_ARRAY_SUPPORT?(this[t]=n&255,this[t+1]=n>>>8):c(this,n,t,!0),t+2};r.prototype.writeUInt16BE=function(n,t,i){return n=+n,t=t|0,i||f(this,n,t,2,65535,0),r.TYPED_ARRAY_SUPPORT?(this[t]=n>>>8,this[t+1]=n&255):c(this,n,t,!1),t+2};r.prototype.writeUInt32LE=function(n,t,i){return n=+n,t=t|0,i||f(this,n,t,4,4294967295,0),r.TYPED_ARRAY_SUPPORT?(this[t+3]=n>>>24,this[t+2]=n>>>16,this[t+1]=n>>>8,this[t]=n&255):l(this,n,t,!0),t+4};r.prototype.writeUInt32BE=function(n,t,i){return n=+n,t=t|0,i||f(this,n,t,4,4294967295,0),r.TYPED_ARRAY_SUPPORT?(this[t]=n>>>24,this[t+1]=n>>>16,this[t+2]=n>>>8,this[t+3]=n&255):l(this,n,t,!1),t+4};r.prototype.writeIntLE=function(n,t,i,r){var u;n=+n;t=t|0;r||(u=Math.pow(2,8*i-1),f(this,n,t,i,u-1,-u));var e=0,s=1,o=0;for(this[t]=n&255;++e<i&&(s*=256);)n<0&&o===0&&this[t+e-1]!==0&&(o=1),this[t+e]=(n/s>>0)-o&255;return t+i};r.prototype.writeIntBE=function(n,t,i,r){var e;n=+n;t=t|0;r||(e=Math.pow(2,8*i-1),f(this,n,t,i,e-1,-e));var u=i-1,s=1,o=0;for(this[t+u]=n&255;--u>=0&&(s*=256);)n<0&&o===0&&this[t+u+1]!==0&&(o=1),this[t+u]=(n/s>>0)-o&255;return t+i};r.prototype.writeInt8=function(n,t,i){return n=+n,t=t|0,i||f(this,n,t,1,127,-128),r.TYPED_ARRAY_SUPPORT||(n=Math.floor(n)),n<0&&(n=255+n+1),this[t]=n&255,t+1};r.prototype.writeInt16LE=function(n,t,i){return n=+n,t=t|0,i||f(this,n,t,2,32767,-32768),r.TYPED_ARRAY_SUPPORT?(this[t]=n&255,this[t+1]=n>>>8):c(this,n,t,!0),t+2};r.prototype.writeInt16BE=function(n,t,i){return n=+n,t=t|0,i||f(this,n,t,2,32767,-32768),r.TYPED_ARRAY_SUPPORT?(this[t]=n>>>8,this[t+1]=n&255):c(this,n,t,!1),t+2};r.prototype.writeInt32LE=function(n,t,i){return n=+n,t=t|0,i||f(this,n,t,4,2147483647,-2147483648),r.TYPED_ARRAY_SUPPORT?(this[t]=n&255,this[t+1]=n>>>8,this[t+2]=n>>>16,this[t+3]=n>>>24):l(this,n,t,!0),t+4};r.prototype.writeInt32BE=function(n,t,i){return n=+n,t=t|0,i||f(this,n,t,4,2147483647,-2147483648),n<0&&(n=4294967295+n+1),r.TYPED_ARRAY_SUPPORT?(this[t]=n>>>24,this[t+1]=n>>>16,this[t+2]=n>>>8,this[t+3]=n&255):l(this,n,t,!1),t+4};r.prototype.writeFloatLE=function(n,t,i){return ot(this,n,t,!0,i)};r.prototype.writeFloatBE=function(n,t,i){return ot(this,n,t,!1,i)};r.prototype.writeDoubleLE=function(n,t,i){return st(this,n,t,!0,i)};r.prototype.writeDoubleBE=function(n,t,i){return st(this,n,t,!1,i)};r.prototype.copy=function(n,t,i,u){if((i||(i=0),u||u===0||(u=this.length),t>=n.length&&(t=n.length),t||(t=0),u>0&&u<i&&(u=i),u===i)||n.length===0||this.length===0)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(i<0||i>=this.length)throw new RangeError("sourceStart out of bounds");if(u<0)throw new RangeError("sourceEnd out of bounds");u>this.length&&(u=this.length);n.length-t<u-i&&(u=n.length-t+i);var e=u-i,f;if(this===n&&i<t&&t<u)for(f=e-1;f>=0;--f)n[f+t]=this[f+i];else if(e<1e3||!r.TYPED_ARRAY_SUPPORT)for(f=0;f<e;++f)n[f+t]=this[f+i];else Uint8Array.prototype.set.call(n,this.subarray(i,i+e),t);return e};r.prototype.fill=function(n,t,i,u){var e,f,o,s;if(typeof n=="string"){if(typeof t=="string"?(u=t,t=0,i=this.length):typeof i=="string"&&(u=i,i=this.length),n.length===1&&(e=n.charCodeAt(0),e<256&&(n=e)),u!==undefined&&typeof u!="string")throw new TypeError("encoding must be a string");if(typeof u=="string"&&!r.isEncoding(u))throw new TypeError("Unknown encoding: "+u);}else typeof n=="number"&&(n=n&255);if(t<0||this.length<t||this.length<i)throw new RangeError("Out of range index");if(i<=t)return this;if(t=t>>>0,i=i===undefined?this.length:i>>>0,n||(n=0),typeof n=="number")for(f=t;f<i;++f)this[f]=n;else for(o=r.isBuffer(n)?n:a(new r(n,u).toString()),s=o.length,f=0;f<i-t;++f)this[f+t]=o[f%s];return this};ht=/[^+\/0-9A-Za-z-_]/g}).call(t,function(){return this}())},function(n,t){"use strict";function o(n){var t=n.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");return n[t-2]==="="?2:n[t-1]==="="?1:0}function h(n){return n.length*3/4-o(n)}function c(n){var t,c,r,e,u,h=n.length,f;for(e=o(n),u=new s(h*3/4-e),c=e>0?h-4:h,f=0,t=0;t<c;t+=4)r=i[n.charCodeAt(t)]<<18|i[n.charCodeAt(t+1)]<<12|i[n.charCodeAt(t+2)]<<6|i[n.charCodeAt(t+3)],u[f++]=r>>16&255,u[f++]=r>>8&255,u[f++]=r&255;return e===2?(r=i[n.charCodeAt(t)]<<2|i[n.charCodeAt(t+1)]>>4,u[f++]=r&255):e===1&&(r=i[n.charCodeAt(t)]<<10|i[n.charCodeAt(t+1)]<<4|i[n.charCodeAt(t+2)]>>2,u[f++]=r>>8&255,u[f++]=r&255),u}function l(n){return r[n>>18&63]+r[n>>12&63]+r[n>>6&63]+r[n&63]}function a(n,t,i){for(var u,f=[],r=t;r<i;r+=3)u=(n[r]<<16)+(n[r+1]<<8)+n[r+2],f.push(l(u));return f.join("")}function v(n){for(var i,f=n.length,o=f%3,t="",s=[],h=16383,u=0,e=f-o;u<e;u+=h)s.push(a(n,u,u+h>e?e:u+h));return o===1?(i=n[f-1],t+=r[i>>2],t+=r[i<<4&63],t+="=="):o===2&&(i=(n[f-2]<<8)+n[f-1],t+=r[i>>10],t+=r[i>>4&63],t+=r[i<<2&63],t+="="),s.push(t),s.join("")}var u,e;t.byteLength=h;t.toByteArray=c;t.fromByteArray=v;var r=[],i=[],s=typeof Uint8Array!="undefined"?Uint8Array:Array,f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(u=0,e=f.length;u<e;++u)r[u]=f[u],i[f.charCodeAt(u)]=u;i["-".charCodeAt(0)]=62;i["_".charCodeAt(0)]=63},function(n,t){t.read=function(n,t,i,r,u){var f,o,l=u*8-r-1,a=(1<<l)-1,v=a>>1,e=-7,s=i?u-1:0,c=i?-1:1,h=n[t+s];for(s+=c,f=h&(1<<-e)-1,h>>=-e,e+=l;e>0;f=f*256+n[t+s],s+=c,e-=8);for(o=f&(1<<-e)-1,f>>=-e,e+=r;e>0;o=o*256+n[t+s],s+=c,e-=8);if(f===0)f=1-v;else{if(f===a)return o?NaN:(h?-1:1)*Infinity;o=o+Math.pow(2,r);f=f-v}return(h?-1:1)*o*Math.pow(2,f-r)};t.write=function(n,t,i,r,u,f){var e,o,s,l=f*8-u-1,a=(1<<l)-1,h=a>>1,y=u===23?Math.pow(2,-24)-Math.pow(2,-77):0,c=r?0:f-1,v=r?1:-1,p=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===Infinity?(o=isNaN(t)?1:0,e=a):(e=Math.floor(Math.log(t)/Math.LN2),t*(s=Math.pow(2,-e))<1&&(e--,s*=2),t+=e+h>=1?y/s:y*Math.pow(2,1-h),t*s>=2&&(e++,s/=2),e+h>=a?(o=0,e=a):e+h>=1?(o=(t*s-1)*Math.pow(2,u),e=e+h):(o=t*Math.pow(2,h-1)*Math.pow(2,u),e=0));u>=8;n[i+c]=o&255,c+=v,o/=256,u-=8);for(e=e<<u|o,l+=u;l>0;n[i+c]=e&255,c+=v,e/=256,l-=8);n[i+c-v]|=p*128}},function(n){var t={}.toString;n.exports=Array.isArray||function(n){return t.call(n)=="[object Array]"}},function(){},function(n,t,i){"use strict";function f(n){return n&&n.__esModule?n:{"default":n}}function l(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var e;Object.defineProperty(t,"__esModule",{value:!0});var o=i(327),u=f(o),s=i(345),r=f(s),h=i(346),c=f(h);e=function(){function n(t){var i=t.url,o=t.client_id,v=t.redirect_uri,s=t.response_type,y=t.scope,p=t.authority,b=t.data,k=t.prompt,d=t.display,g=t.max_age,nt=t.ui_locales,tt=t.id_token_hint,it=t.login_hint,rt=t.acr_values,ut=t.resource,ft=t.request,et=t.request_uri,w=t.extraQueryParams,h,f,e,a;if(l(this,n),!i){u.default.error("No url passed to SigninRequest");throw new Error("url");}if(!o){u.default.error("No client_id passed to SigninRequest");throw new Error("client_id");}if(!v){u.default.error("No redirect_uri passed to SigninRequest");throw new Error("redirect_uri");}if(!s){u.default.error("No response_type passed to SigninRequest");throw new Error("response_type");}if(!y){u.default.error("No scope passed to SigninRequest");throw new Error("scope");}if(!p){u.default.error("No authority passed to SigninRequest");throw new Error("authority");}h=n.isOidc(s);this.state=new c.default({nonce:h,data:b,client_id:o,authority:p});i=r.default.addQueryParam(i,"client_id",o);i=r.default.addQueryParam(i,"redirect_uri",v);i=r.default.addQueryParam(i,"response_type",s);i=r.default.addQueryParam(i,"scope",y);i=r.default.addQueryParam(i,"state",this.state.id);h&&(i=r.default.addQueryParam(i,"nonce",this.state.nonce));f={prompt:k,display:d,max_age:g,ui_locales:nt,id_token_hint:tt,login_hint:it,acr_values:rt,resource:ut,request:ft,request_uri:et};for(e in f)f[e]&&(i=r.default.addQueryParam(i,e,f[e]));for(a in w)i=r.default.addQueryParam(i,a,w[a]);this.url=i}return n.isOidc=function(n){var t=n.split(/\s+/g).filter(function(n){return n==="id_token"});return!!t[0]},n.isOAuth=function(n){var t=n.split(/\s+/g).filter(function(n){return n==="token"});return!!t[0]},n}();t.default=e;n.exports=t["default"]},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}function h(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var f;Object.defineProperty(t,"__esModule",{value:!0});var e=i(327),r=u(e),o=i(331),s=u(o);f=function(){function n(){h(this,n)}return n.addQueryParam=function(n,t,i){return n.indexOf("?")<0&&(n+="?"),n[n.length-1]!=="?"&&(n+="&"),n+=encodeURIComponent(t),n+="=",n+encodeURIComponent(i)},n.parseUrlFragment=function(n){var f=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"#",e=arguments.length>2&&arguments[2]!==undefined?arguments[2]:s.default,t,c;r.default.debug("UrlUtility.parseUrlFragment");typeof n!="string"&&(n=e.location.href);t=n.lastIndexOf(f);t>=0&&(n=n.substr(t+1));for(var i={},o=/([^&=]+)=([^&]*)/g,u,h=0;u=o.exec(n);)if(i[decodeURIComponent(u[1])]=decodeURIComponent(u[2]),h++>50)return r.default.error("response exceeded expected number of parameters",n),{error:"Response exceeded expected number of parameters"};for(c in i)return i;return{}},n}();t.default=f;n.exports=t["default"]},function(n,t,i){"use strict";function r(n){return n&&n.__esModule?n:{"default":n}}function a(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}function v(n,t){if(!n)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t&&(typeof t=="object"||typeof t=="function")?t:n}function y(n,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof t);n.prototype=Object.create(t&&t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}});t&&(Object.setPrototypeOf?Object.setPrototypeOf(n,t):n.__proto__=t)}var f;Object.defineProperty(t,"__esModule",{value:!0});var e=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),o=i(327),u=r(o),s=i(347),h=r(s),c=i(348),l=r(c);f=function(n){function t(){var r=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},u=r.nonce,f=r.authority,e=r.client_id,i;return a(this,t),i=v(this,n.call(this,arguments[0])),u===!0?i._nonce=l.default():u&&(i._nonce=u),i._authority=f,i._client_id=e,i}return y(t,n),t.prototype.toStorageString=function(){return u.default.debug("SigninState.toStorageString"),JSON.stringify({id:this.id,data:this.data,created:this.created,nonce:this.nonce,authority:this.authority,client_id:this.client_id})},t.fromStorageString=function(n){u.default.debug("SigninState.fromStorageString");var i=JSON.parse(n);return new t(i)},e(t,[{key:"nonce",get:function(){return this._nonce}},{key:"authority",get:function(){return this._authority}},{key:"client_id",get:function(){return this._client_id}}]),t}(h.default);t.default=f;n.exports=t["default"]},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}function c(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var f;Object.defineProperty(t,"__esModule",{value:!0});var e=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),o=i(327),r=u(o),s=i(348),h=u(s);f=function(){function n(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},r=t.id,u=t.data,i=t.created;c(this,n);this._id=r||h.default();this._data=u;this._created=typeof i=="number"&&i>0?i:parseInt(Date.now()/1e3)}return n.prototype.toStorageString=function(){return r.default.debug("State.toStorageString"),JSON.stringify({id:this.id,data:this.data,created:this.created})},n.fromStorageString=function(t){return r.default.debug("State.fromStorageString"),new n(JSON.parse(t))},n.clearStaleState=function(t,i){r.default.debug("State.clearStaleState");var u=Date.now()/1e3-i;return t.getAllKeys().then(function(i){var c,f,l,a;r.default.debug("got keys",i);var e=[],o=!0,s=!1,h=undefined;try{for(c=function(){var i=l.value;a=t.get(i).then(function(f){var e=!1,o;if(f)try{o=n.fromStorageString(f);r.default.debug("got item from key: ",i,o.created);o.created<=u&&(e=!0)}catch(s){r.default.error("Error parsing state for key",i,s.message);e=!0}else r.default.debug("no item in storage for key: ",i),e=!0;if(e)return r.default.debug("removed item for key: ",i),t.remove(i)});e.push(a)},f=i[Symbol.iterator]();!(o=(l=f.next()).done);o=!0)c()}catch(v){s=!0;h=v}finally{try{!o&&f.return&&f.return()}finally{if(s)throw h;}}return r.default.debug("waiting on promise count:",e.length),Promise.all(e)})},e(n,[{key:"id",get:function(){return this._id}},{key:"data",get:function(){return this._data}},{key:"created",get:function(){return this._created}}]),n}();t.default=f;n.exports=t["default"]},function(n,t){"use strict";function i(){for(var t="xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx",u="0123456789abcdef",i=0,r="",n=0;n<t.length;n++)t[n]!=="-"&&t[n]!=="4"&&(i=Math.random()*16|0),t[n]==="x"?r+=u[i]:t[n]==="y"?(i&=3,i|=8,r+=u[i]):r+=t[n];return r}Object.defineProperty(t,"__esModule",{value:!0});t.default=i;n.exports=t["default"]},function(n,t,i){"use strict";function s(n){return n&&n.__esModule?n:{"default":n}}function h(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var r,u;Object.defineProperty(t,"__esModule",{value:!0});var f=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),e=i(345),o=s(e);r="openid";u=function(){function n(t){var i,r,u;h(this,n);i=o.default.parseUrlFragment(t,"#");this.error=i.error;this.error_description=i.error_description;this.error_uri=i.error_uri;this.state=i.state;this.id_token=i.id_token;this.session_state=i.session_state;this.access_token=i.access_token;this.token_type=i.token_type;this.scope=i.scope;this.profile=undefined;r=parseInt(i.expires_in);typeof r=="number"&&r>0&&(u=parseInt(Date.now()/1e3),this.expires_at=u+r)}return f(n,[{key:"expires_in",get:function(){if(this.expires_at){var n=parseInt(Date.now()/1e3);return this.expires_at-n}return undefined}},{key:"expired",get:function(){var n=this.expires_in;return n!==undefined?n<=0:undefined}},{key:"scopes",get:function(){return(this.scope||"").split(" ")}},{key:"isOpenIdConnect",get:function(){return this.scopes.indexOf(r)>=0||!!this.id_token}}]),n}();t.default=u;n.exports=t["default"]},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}function l(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var f;Object.defineProperty(t,"__esModule",{value:!0});var e=i(327),o=u(e),s=i(345),r=u(s),h=i(347),c=u(h);f=function f(n){var t=n.url,i=n.id_token_hint,u=n.post_logout_redirect_uri,e=n.data;if(l(this,f),!t){o.default.error("No url passed to SignoutRequest");throw new Error("url");}i&&(t=r.default.addQueryParam(t,"id_token_hint",i));u&&(t=r.default.addQueryParam(t,"post_logout_redirect_uri",u),e&&(this.state=new c.default({data:e}),t=r.default.addQueryParam(t,"state",this.state.id)));this.url=t};t.default=f;n.exports=t["default"]},function(n,t,i){"use strict";function e(n){return n&&n.__esModule?n:{"default":n}}function o(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var u,f,r;Object.defineProperty(t,"__esModule",{value:!0});u=i(345);f=e(u);r=function r(n){o(this,r);var t=f.default.parseUrlFragment(n,"?");this.error=t.error;this.error_description=t.error_description;this.error_uri=t.error_uri;this.state=t.state};t.default=r;n.exports=t["default"]},function(n,t,i){"use strict";function o(n){return n&&n.__esModule?n:{"default":n}}function s(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var u;Object.defineProperty(t,"__esModule",{value:!0});var f=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),e=i(327),r=o(e);u=function(){function n(){s(this,n);this._data={}}return n.prototype.getItem=function(n){return r.default.debug("InMemoryWebStorage.getItem",n),this._data[n]},n.prototype.setItem=function(n,t){r.default.debug("InMemoryWebStorage.setItem",n);this._data[n]=t},n.prototype.removeItem=function(n){r.default.debug("InMemoryWebStorage.removeItem",n);delete this._data[n]},n.prototype.key=function(n){return Object.getOwnPropertyNames(this._data)[n]},f(n,[{key:"length",get:function(){return Object.getOwnPropertyNames(this._data).length}}]),n}();t.default=u;n.exports=t["default"]},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}function tt(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}function it(n,t){if(!n)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t&&(typeof t=="object"||typeof t=="function")?t:n}function rt(n,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof t);n.prototype=Object.create(t&&t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}});t&&(Object.setPrototypeOf?Object.setPrototypeOf(n,t):n.__proto__=t)}var o;Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),h=i(327),r=u(h),c=i(328),l=u(c),a=i(354),f=u(a),v=i(360),e=u(v),y=i(361),p=u(y),w=i(365),b=u(w),k=i(366),d=u(k),g=i(368),nt=u(g);o=function(n){function t(){var u=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:b.default,o=arguments.length>2&&arguments[2]!==undefined?arguments[2]:d.default,s=arguments.length>3&&arguments[3]!==undefined?arguments[3]:nt.default,i;return tt(this,t),u instanceof f.default||(u=new f.default(u)),i=it(this,n.call(this,u)),i._events=new p.default(u),i._silentRenewService=new e(i),i.settings.automaticSilentRenew&&(r.default.debug("automaticSilentRenew is configured, setting up silent renew"),i.startSilentRenew()),i.settings.monitorSession&&(r.default.debug("monitorSession is configured, setting up session monitor"),i._sessionMonitor=new o(i)),i._tokenRevocationClient=new s(i._settings),i}return rt(t,n),t.prototype.getUser=function(){var n=this;return r.default.debug("UserManager.getUser"),this._loadUser().then(function(t){return t?(r.default.info("user loaded"),n._events.load(t,!1),t):(r.default.info("user not found in storage"),null)})},t.prototype.removeUser=function(){var n=this;return r.default.debug("UserManager.removeUser"),this.storeUser(null).then(function(){r.default.info("user removed from storage");n._events.unload()})},t.prototype.signinRedirect=function(n){return r.default.debug("UserManager.signinRedirect"),this._signinStart(n,this._redirectNavigator).then(function(){r.default.info("signinRedirect successful")})},t.prototype.signinRedirectCallback=function(n){return r.default.debug("UserManager.signinRedirectCallback"),this._signinEnd(n||this._redirectNavigator.url).then(function(n){return n&&(n.profile&&n.profile.sub?r.default.info("signinRedirectCallback successful, signed in sub: ",n.profile.sub):r.default.info("signinRedirectCallback successful")),n})},t.prototype.signinPopup=function(){var n=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},t;return(r.default.debug("UserManager.signinPopup"),t=n.redirect_uri||this.settings.popup_redirect_uri||this.settings.redirect_uri,!t)?(r.default.error("No popup_redirect_uri or redirect_uri configured"),Promise.reject(new Error("No popup_redirect_uri or redirect_uri configured"))):(n.redirect_uri=t,n.display="popup",this._signin(n,this._popupNavigator,{startUrl:t,popupWindowFeatures:n.popupWindowFeatures||this.settings.popupWindowFeatures,popupWindowTarget:n.popupWindowTarget||this.settings.popupWindowTarget}).then(function(n){return n&&(n.profile&&n.profile.sub?r.default.info("signinPopup successful, signed in sub: ",n.profile.sub):r.default.info("signinPopup successful")),n}))},t.prototype.signinPopupCallback=function(n){return r.default.debug("UserManager.signinPopupCallback"),this._signinCallback(n,this._popupNavigator).then(function(n){return n&&(n.profile&&n.profile.sub?r.default.info("signinPopupCallback successful, signed in sub: ",n.profile.sub):r.default.info("signinPopupCallback successful")),n})},t.prototype.signinSilent=function(){var i=this,n=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},t,u;return(r.default.debug("UserManager.signinSilent"),t=n.redirect_uri||this.settings.silent_redirect_uri,!t)?(r.default.error("No silent_redirect_uri configured"),Promise.reject(new Error("No silent_redirect_uri configured"))):(n.redirect_uri=t,n.prompt="none",u=void 0,u=n.id_token_hint||!this.settings.includeIdTokenInSilentRenew?Promise.resolve():this._loadUser().then(function(t){n.id_token_hint=t&&t.id_token}),u.then(function(){return i._signin(n,i._iframeNavigator,{startUrl:t,silentRequestTimeout:n.silentRequestTimeout||i.settings.silentRequestTimeout})}).then(function(n){return n&&(n.profile&&n.profile.sub?r.default.info("signinSilent successful, signed in sub: ",n.profile.sub):r.default.info("signinSilent successful")),n}))},t.prototype.signinSilentCallback=function(n){return r.default.debug("UserManager.signinSilentCallback"),this._signinCallback(n,this._iframeNavigator).then(function(n){return n&&(n.profile&&n.profile.sub?r.default.info("signinSilentCallback successful, signed in sub: ",n.profile.sub):r.default.info("signinSilentCallback successful")),n})},t.prototype.querySessionStatus=function(){var i=this,n=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},t;return(r.default.debug("UserManager.querySessionStatus"),t=n.redirect_uri||this.settings.silent_redirect_uri,!t)?(r.default.error("No silent_redirect_uri configured"),Promise.reject(new Error("No silent_redirect_uri configured"))):(n.redirect_uri=t,n.prompt="none",n.response_type="id_token",n.scope="openid",this._signinStart(n,this._iframeNavigator,{startUrl:t,silentRequestTimeout:n.silentRequestTimeout||this.settings.silentRequestTimeout}).then(function(n){return i.processSigninResponse(n.url).then(function(n){if(r.default.debug("got signin response"),n.session_state&&n.profile.sub&&n.profile.sid)return r.default.info("querySessionStatus success for sub: ",n.profile.sub),{session_state:n.session_state,sub:n.profile.sub,sid:n.profile.sid};r.default.info("querySessionStatus successful, user not authenticated")})}))},t.prototype._signin=function(n,t){var i=this,u=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};return r.default.debug("_signin"),this._signinStart(n,t,u).then(function(n){return i._signinEnd(n.url)})},t.prototype._signinStart=function(n,t){var u=this,i=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};return r.default.debug("_signinStart"),t.prepare(i).then(function(t){return r.default.debug("got navigator window handle"),u.createSigninRequest(n).then(function(n){return r.default.debug("got signin request"),i.url=n.url,i.id=n.state.id,t.navigate(i)}).catch(function(n){t.close&&(r.default.debug("Error after preparing navigator, closing navigator window"),t.close());throw n;})})},t.prototype._signinEnd=function(n){var t=this;return r.default.debug("_signinEnd"),this.processSigninResponse(n).then(function(n){r.default.debug("got signin response");var i=new e.default(n);return t.storeUser(i).then(function(){return r.default.debug("user stored"),t._events.load(i),i})})},t.prototype._signinCallback=function(n,t){return r.default.debug("_signinCallback"),t.callback(n)},t.prototype.signoutRedirect=function(){var n=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},t;return r.default.debug("UserManager.signoutRedirect"),t=n.post_logout_redirect_uri||this.settings.post_logout_redirect_uri,t&&(n.post_logout_redirect_uri=t),this._signoutStart(n,this._redirectNavigator).then(function(){r.default.info("signoutRedirect successful")})},t.prototype.signoutRedirectCallback=function(n){return r.default.debug("UserManager.signoutRedirectCallback"),this._signoutEnd(n||this._redirectNavigator.url).then(function(n){return r.default.info("signoutRedirectCallback successful"),n})},t.prototype.signoutPopup=function(){var n=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},t;return r.default.debug("UserManager.signinPopup"),t=n.post_logout_redirect_uri||this.settings.popup_post_logout_redirect_uri||this.settings.post_logout_redirect_uri,n.post_logout_redirect_uri=t,n.display="popup",n.post_logout_redirect_uri&&(n.state=n.state||{}),this._signout(n,this._popupNavigator,{startUrl:t,popupWindowFeatures:n.popupWindowFeatures||this.settings.popupWindowFeatures,popupWindowTarget:n.popupWindowTarget||this.settings.popupWindowTarget}).then(function(){r.default.info("signoutPopup successful")})},t.prototype.signoutPopupCallback=function(n,t){typeof t=="undefined"&&typeof n=="boolean"&&(n=null,t=!0);r.default.debug("UserManager.signoutPopupCallback");return this._popupNavigator.callback(n,t,"?").then(function(){r.default.info("signoutPopupCallback successful")})},t.prototype._signout=function(n,t){var i=this,u=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};return r.default.debug("_signout"),this._signoutStart(n,t,u).then(function(n){return i._signoutEnd(n.url)})},t.prototype._signoutStart=function(){var i=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},n=this,u=arguments[1],t=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};return r.default.debug("_signoutStart"),u.prepare(t).then(function(u){return r.default.debug("got navigator window handle"),n._loadUser().then(function(f){r.default.debug("loaded current user from storage");var e=n._settings.revokeAccessTokenOnSignout?n._revokeInternal(f):Promise.resolve();return e.then(function(){var e=i.id_token_hint||f&&f.id_token;return e&&(r.default.debug("Setting id_token into signout request"),i.id_token_hint=e),n.removeUser().then(function(){return r.default.debug("user removed, creating signout request"),n.createSignoutRequest(i).then(function(n){return r.default.debug("got signout request"),t.url=n.url,n.state&&(t.id=n.state.id),u.navigate(t)})})})}).catch(function(n){u.close&&(r.default.debug("Error after preparing navigator, closing navigator window"),u.close());throw n;})})},t.prototype._signoutEnd=function(n){return r.default.debug("_signoutEnd"),this.processSignoutResponse(n).then(function(n){return r.default.debug("got signout response"),n})},t.prototype.revokeAccessToken=function(){var n=this;return r.default.debug("UserManager.revokeAccessToken"),this._loadUser().then(function(t){return n._revokeInternal(t,!0).then(function(i){if(i)return r.default.debug("removing token properties from user and re-storing"),t.access_token=null,t.expires_at=null,t.token_type=null,n.storeUser(t).then(function(){r.default.debug("user stored");n._events.load(t)})})}).then(function(){r.default.info("access token revoked successfully")})},t.prototype._revokeInternal=function(n,t){r.default.debug("checking if token revocation is necessary");var i=n&&n.access_token;return!i||i.indexOf(".")>=0?(r.default.debug("no need to revoke due to no user, token, or JWT format"),Promise.resolve(!1)):this._tokenRevocationClient.revoke(i,t).then(function(){return!0})},t.prototype.startSilentRenew=function(){this._silentRenewService.start()},t.prototype.stopSilentRenew=function(){this._silentRenewService.stop()},t.prototype._loadUser=function(){return r.default.debug("_loadUser"),this._userStore.get(this._userStoreKey).then(function(n){return n?(r.default.debug("user storageString loaded"),e.default.fromStorageString(n)):(r.default.debug("no user storageString"),null)})},t.prototype.storeUser=function(n){if(n){r.default.debug("storeUser storing user");var t=n.toStorageString();return this._userStore.set(this._userStoreKey,t)}return r.default.debug("storeUser removing user storage"),this._userStore.remove(this._userStoreKey)},s(t,[{key:"_redirectNavigator",get:function(){return this.settings.redirectNavigator}},{key:"_popupNavigator",get:function(){return this.settings.popupNavigator}},{key:"_iframeNavigator",get:function(){return this.settings.iframeNavigator}},{key:"_userStore",get:function(){return this.settings.userStore}},{key:"events",get:function(){return this._events}},{key:"_userStoreKey",get:function(){return"user:"+this.settings.authority+":"+this.settings.client_id}}]),t}(l.default);t.default=o;n.exports=t["default"]},function(n,t,i){"use strict";function r(n){return n&&n.__esModule?n:{"default":n}}function k(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}function d(n,t){if(!n)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t&&(typeof t=="object"||typeof t=="function")?t:n}function g(n,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof t);n.prototype=Object.create(t&&t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}});t&&(Object.setPrototypeOf?Object.setPrototypeOf(n,t):n.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var u=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),f=i(327),rt=r(f),e=i(329),o=r(e),s=i(355),h=r(s),c=i(356),l=r(c),a=i(358),v=r(a),y=i(330),p=r(y),w=i(331),b=r(w);var nt=60,tt=2e3,it=function(n){function t(){var r=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},it=r.popup_redirect_uri,rt=r.popup_post_logout_redirect_uri,ut=r.popupWindowFeatures,ft=r.popupWindowTarget,et=r.silent_redirect_uri,ot=r.silentRequestTimeout,u=r.automaticSilentRenew,st=u===undefined?!1:u,f=r.includeIdTokenInSilentRenew,ht=f===undefined?!0:f,e=r.monitorSession,ct=e===undefined?!0:e,o=r.checkSessionInterval,lt=o===undefined?tt:o,s=r.revokeAccessTokenOnSignout,at=s===undefined?!1:s,c=r.accessTokenExpiringNotificationTime,vt=c===undefined?nt:c,a=r.redirectNavigator,yt=a===undefined?new h.default:a,y=r.popupNavigator,pt=y===undefined?new l.default:y,w=r.iframeNavigator,wt=w===undefined?new v.default:w,g=r.userStore,bt=g===undefined?new p.default({store:b.default.sessionStorage}):g,i;return k(this,t),i=d(this,n.call(this,arguments[0])),i._popup_redirect_uri=it,i._popup_post_logout_redirect_uri=rt,i._popupWindowFeatures=ut,i._popupWindowTarget=ft,i._silent_redirect_uri=et,i._silentRequestTimeout=ot,i._automaticSilentRenew=!!st,i._includeIdTokenInSilentRenew=ht,i._accessTokenExpiringNotificationTime=vt,i._monitorSession=ct,i._checkSessionInterval=lt,i._revokeAccessTokenOnSignout=at,i._redirectNavigator=yt,i._popupNavigator=pt,i._iframeNavigator=wt,i._userStore=bt,i}return g(t,n),u(t,[{key:"popup_redirect_uri",get:function(){return this._popup_redirect_uri}},{key:"popup_post_logout_redirect_uri",get:function(){return this._popup_post_logout_redirect_uri}},{key:"popupWindowFeatures",get:function(){return this._popupWindowFeatures}},{key:"popupWindowTarget",get:function(){return this._popupWindowTarget}},{key:"silent_redirect_uri",get:function(){return this._silent_redirect_uri}},{key:"silentRequestTimeout",get:function(){return this._silentRequestTimeout}},{key:"automaticSilentRenew",get:function(){return!!(this.silent_redirect_uri&&this._automaticSilentRenew)}},{key:"includeIdTokenInSilentRenew",get:function(){return this._includeIdTokenInSilentRenew}},{key:"accessTokenExpiringNotificationTime",get:function(){return this._accessTokenExpiringNotificationTime}},{key:"monitorSession",get:function(){return this._monitorSession}},{key:"checkSessionInterval",get:function(){return this._checkSessionInterval}},{key:"revokeAccessTokenOnSignout",get:function(){return this._revokeAccessTokenOnSignout}},{key:"redirectNavigator",get:function(){return this._redirectNavigator}},{key:"popupNavigator",get:function(){return this._popupNavigator}},{key:"iframeNavigator",get:function(){return this._iframeNavigator}},{key:"userStore",get:function(){return this._userStore}}]),t}(o.default);t.default=it;n.exports=t["default"]},function(n,t,i){"use strict";function o(n){return n&&n.__esModule?n:{"default":n}}function s(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var u;Object.defineProperty(t,"__esModule",{value:!0});var f=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),e=i(327),r=o(e);u=function(){function n(){s(this,n)}return n.prototype.prepare=function(){return Promise.resolve(this)},n.prototype.navigate=function(n){return(r.default.debug("RedirectNavigator.navigate"),!n||!n.url)?(r.default.error("No url provided"),Promise.reject(new Error("No url provided"))):(window.location=n.url,Promise.resolve())},f(n,[{key:"url",get:function(){return r.default.debug("RedirectNavigator.url"),window.location.href}}]),n}();t.default=u;n.exports=t["default"]},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}function h(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var f;Object.defineProperty(t,"__esModule",{value:!0});var e=i(327),o=u(e),s=i(357),r=u(s);f=function(){function n(){h(this,n)}return n.prototype.prepare=function(n){var t=new r.default(n);return Promise.resolve(t)},n.prototype.callback=function(n,t,i){o.default.debug("PopupNavigator.callback");try{return r.default.notifyOpener(n,t,i),Promise.resolve()}catch(u){return Promise.reject(u)}},n}();t.default=f;n.exports=t["default"]},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}function h(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}Object.defineProperty(t,"__esModule",{value:!0});var f=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),e=i(327),r=u(e),o=i(345),s=u(o);var c=500,l="location=no,toolbar=no,width=500,height=500,left=100,top=100;",a="_blank",v=function(){function n(t){var i=this,u,f;h(this,n);r.default.debug("PopupWindow.ctor");this._promise=new Promise(function(n,t){i._resolve=n;i._reject=t});u=t.popupWindowTarget||a;f=t.popupWindowFeatures||l;this._popup=window.open("",u,f);this._popup&&(r.default.debug("popup successfully created"),this._checkForPopupClosedTimer=window.setInterval(this._checkForPopupClosed.bind(this),c))}return n.prototype.navigate=function(n){return r.default.debug("PopupWindow.navigate"),this._popup?n&&n.url?(r.default.debug("Setting URL in popup"),this._id=n.id,this._id&&(window["popupCallback_"+n.id]=this._callback.bind(this)),this._popup.focus(),this._popup.window.location=n.url):this._error("No url provided"):this._error("Error opening popup window"),this.promise},n.prototype._success=function(n){this._cleanup();r.default.debug("Successful response from popup window");this._resolve(n)},n.prototype._error=function(n){this._cleanup();r.default.error(n);this._reject(new Error(n))},n.prototype.close=function(){this._cleanup(!1)},n.prototype._cleanup=function(n){r.default.debug("PopupWindow._cleanup");window.clearInterval(this._checkForPopupClosedTimer);this._checkForPopupClosedTimer=null;delete window["popupCallback_"+this._id];this._popup&&!n&&this._popup.close();this._popup=null},n.prototype._checkForPopupClosed=function(){r.default.debug("PopupWindow._checkForPopupClosed");(!this._popup||this._popup.closed)&&this._error("Popup window closed")},n.prototype._callback=function(n,t){r.default.debug("PopupWindow._callback");this._cleanup(t);n?this._success({url:n}):this._error("Invalid response from popup")},n.notifyOpener=function(n,t,i){var u,e,f;r.default.debug("PopupWindow.notifyOpener");window.opener&&(n=n||window.location.href,n&&(u=s.default.parseUrlFragment(n,i),u.state?(e="popupCallback_"+u.state,f=window.opener[e],f?(r.default.debug("passing url message to opener"),f(n,t)):r.default.warn("no matching callback found on opener")):r.default.warn("no state found in response url")))},f(n,[{key:"promise",get:function(){return this._promise}}]),n}();t.default=v;n.exports=t["default"]},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}function h(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var f;Object.defineProperty(t,"__esModule",{value:!0});var e=i(327),o=u(e),s=i(359),r=u(s);f=function(){function n(){h(this,n)}return n.prototype.prepare=function(n){var t=new r.default(n);return Promise.resolve(t)},n.prototype.callback=function(n){o.default.debug("IFrameNavigator.callback");try{return r.default.notifyParent(n),Promise.resolve()}catch(t){return Promise.reject(t)}},n}();t.default=f;n.exports=t["default"]},function(n,t,i){"use strict";function s(n){return n&&n.__esModule?n:{"default":n}}function h(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var u,f;Object.defineProperty(t,"__esModule",{value:!0});var e=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),o=i(327),r=s(o);u=1e4;f=function(){function n(){var t=this;h(this,n);r.default.debug("IFrameWindow.ctor");this._promise=new Promise(function(n,i){t._resolve=n;t._reject=i});this._boundMessageEvent=this._message.bind(this);window.addEventListener("message",this._boundMessageEvent,!1);this._frame=window.document.createElement("iframe");this._frame.style.visibility="hidden";this._frame.style.position="absolute";this._frame.style.display="none";this._frame.style.width=0;this._frame.style.height=0;window.document.body.appendChild(this._frame)}return n.prototype.navigate=function(n){if(r.default.debug("IFrameWindow.navigate"),n&&n.url){var t=n.silentRequestTimeout||u;r.default.debug("Using timeout of:",t);this._timer=window.setTimeout(this._timeout.bind(this),t);this._frame.src=n.url}else this._error("No url provided");return this.promise},n.prototype._success=function(n){this._cleanup();r.default.debug("Successful response from frame window");this._resolve(n)},n.prototype._error=function(n){this._cleanup();r.default.error(n);this._reject(new Error(n))},n.prototype.close=function(){this._cleanup()},n.prototype._cleanup=function(){this._frame&&(r.default.debug("IFrameWindow._cleanup"),window.removeEventListener("message",this._boundMessageEvent,!1),window.clearTimeout(this._timer),window.document.body.removeChild(this._frame),this._timer=null,this._frame=null,this._boundMessageEvent=null)},n.prototype._timeout=function(){r.default.debug("IFrameWindow._timeout");this._error("Frame window timed out")},n.prototype._message=function(n){if(r.default.debug("IFrameWindow._message"),this._timer&&n.origin===this._origin&&n.source===this._frame.contentWindow){var t=n.data;t?this._success({url:t}):this._error("Invalid response from frame")}},n.notifyParent=function(n){r.default.debug("IFrameWindow.notifyParent");window.parent&&window!==window.parent&&(n=n||window.location.href,n&&(r.default.debug("posting url message to parent"),window.parent.postMessage(n,location.protocol+"//"+location.host)))},e(n,[{key:"promise",get:function(){return this._promise}},{key:"_origin",get:function(){return location.protocol+"//"+location.host}}]),n}();t.default=f;n.exports=t["default"]},function(n,t,i){"use strict";function o(n){return n&&n.__esModule?n:{"default":n}}function s(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var u;Object.defineProperty(t,"__esModule",{value:!0});var f=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),e=i(327),r=o(e);u=function(){function n(t){var i=t.id_token,r=t.session_state,u=t.access_token,f=t.token_type,e=t.scope,o=t.profile,h=t.expires_at,c=t.state;s(this,n);this.id_token=i;this.session_state=r;this.access_token=u;this.token_type=f;this.scope=e;this.profile=o;this.expires_at=h;this.state=c}return n.prototype.toStorageString=function(){return r.default.debug("User.toStorageString"),JSON.stringify({id_token:this.id_token,session_state:this.session_state,access_token:this.access_token,token_type:this.token_type,scope:this.scope,profile:this.profile,expires_at:this.expires_at})},n.fromStorageString=function(t){return r.default.debug("User.fromStorageString"),new n(JSON.parse(t))},f(n,[{key:"expires_in",get:function(){if(this.expires_at){var n=parseInt(Date.now()/1e3);return this.expires_at-n}return undefined}},{key:"expired",get:function(){var n=this.expires_in;return n!==undefined?n<=0:undefined}},{key:"scopes",get:function(){return(this.scope||"").split(" ")}}]),n}();t.default=u;n.exports=t["default"]},function(n,t,i){"use strict";function f(n){return n&&n.__esModule?n:{"default":n}}function l(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}function a(n,t){if(!n)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t&&(typeof t=="object"||typeof t=="function")?t:n}function v(n,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof t);n.prototype=Object.create(t&&t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}});t&&(Object.setPrototypeOf?Object.setPrototypeOf(n,t):n.__proto__=t)}var e;Object.defineProperty(t,"__esModule",{value:!0});var o=i(327),r=f(o),s=i(362),h=f(s),c=i(364),u=f(c);e=function(n){function t(i){l(this,t);var r=a(this,n.call(this,i));return r._userLoaded=new u.default("User loaded"),r._userUnloaded=new u.default("User unloaded"),r._silentRenewError=new u.default("Silent renew error"),r._userSignedOut=new u.default("User signed out"),r._userSessionChanged=new u.default("User session changed"),r}return v(t,n),t.prototype.load=function(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;r.default.debug("UserManagerEvents.load");n.prototype.load.call(this,t);i&&this._userLoaded.raise(t)},t.prototype.unload=function(){r.default.debug("UserManagerEvents.unload");n.prototype.unload.call(this);this._userUnloaded.raise()},t.prototype.addUserLoaded=function(n){this._userLoaded.addHandler(n)},t.prototype.removeUserLoaded=function(n){this._userLoaded.removeHandler(n)},t.prototype.addUserUnloaded=function(n){this._userUnloaded.addHandler(n)},t.prototype.removeUserUnloaded=function(n){this._userUnloaded.removeHandler(n)},t.prototype.addSilentRenewError=function(n){this._silentRenewError.addHandler(n)},t.prototype.removeSilentRenewError=function(n){this._silentRenewError.removeHandler(n)},t.prototype._raiseSilentRenewError=function(n){r.default.debug("UserManagerEvents._raiseSilentRenewError",n.message);this._silentRenewError.raise(n)},t.prototype.addUserSignedOut=function(n){this._userSignedOut.addHandler(n)},t.prototype.removeUserSignedOut=function(n){this._userSignedOut.removeHandler(n)},t.prototype._raiseUserSignedOut=function(n){r.default.debug("UserManagerEvents._raiseUserSignedOut");this._userSignedOut.raise(n)},t.prototype.addUserSessionChanged=function(n){this._userSessionChanged.addHandler(n)},t.prototype.removeUserSessionChanged=function(n){this._userSessionChanged.removeHandler(n)},t.prototype._raiseUserSessionChanged=function(n){r.default.debug("UserManagerEvents._raiseUserSessionChanged");this._userSessionChanged.raise(n)},t}(h.default);t.default=e;n.exports=t["default"]},function(n,t,i){"use strict";function f(n){return n&&n.__esModule?n:{"default":n}}function c(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var e,o;Object.defineProperty(t,"__esModule",{value:!0});var s=i(327),r=f(s),h=i(363),u=f(h);e=60;o=function(){function n(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},i=t.accessTokenExpiringNotificationTime,o=i===undefined?e:i,r=t.accessTokenExpiringTimer,s=r===undefined?new u.default("Access token expiring"):r,f=t.accessTokenExpiredTimer,h=f===undefined?new u.default("Access token expired"):f;c(this,n);this._accessTokenExpiringNotificationTime=o;this._accessTokenExpiring=s;this._accessTokenExpired=h}return n.prototype.load=function(n){var t,i,u;r.default.debug("AccessTokenEvents.load");this._cancelTimers();n.access_token&&(t=n.expires_in,r.default.debug("access token present, remaining duration:",t),t>0&&(i=t-this._accessTokenExpiringNotificationTime,i<=0&&(i=1),r.default.debug("registering expiring timer in:",i),this._accessTokenExpiring.init(i)),u=t+1,r.default.debug("registering expired timer in:",u),this._accessTokenExpired.init(u))},n.prototype.unload=function(){r.default.debug("AccessTokenEvents.unload");this._cancelTimers()},n.prototype._cancelTimers=function(){r.default.debug("canceling existing access token timers");this._accessTokenExpiring.cancel();this._accessTokenExpired.cancel()},n.prototype.addAccessTokenExpiring=function(n){this._accessTokenExpiring.addHandler(n)},n.prototype.removeAccessTokenExpiring=function(n){this._accessTokenExpiring.removeHandler(n)},n.prototype.addAccessTokenExpired=function(n){this._accessTokenExpired.addHandler(n)},n.prototype.removeAccessTokenExpired=function(n){this._accessTokenExpired.removeHandler(n)},n}();t.default=o;n.exports=t["default"]},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}function v(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}function y(n,t){if(!n)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t&&(typeof t=="object"||typeof t=="function")?t:n}function p(n,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof t);n.prototype=Object.create(t&&t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}});t&&(Object.setPrototypeOf?Object.setPrototypeOf(n,t):n.__proto__=t)}var f,e;Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),s=i(327),r=u(s),h=i(331),c=u(h),l=i(364),a=u(l);f=5;e=function(n){function t(i){var u=arguments.length>1&&arguments[1]!==undefined?arguments[1]:c.default.timer,r;return v(this,t),r=y(this,n.call(this,i)),r._timer=u,r._nowFunc=function(){return Date.now()/1e3},r}return p(t,n),t.prototype.init=function(n){this.cancel();n<=0&&(n=1);n=parseInt(n);r.default.debug("Timer.init timer "+this._name+" for duration:",n);this._expiration=this.now+n;var t=f;n<t&&(t=n);this._timerHandle=this._timer.setInterval(this._callback.bind(this),t*1e3)},t.prototype.cancel=function(){this._timerHandle&&(r.default.debug("Timer.cancel: ",this._name),this._timer.clearInterval(this._timerHandle),this._timerHandle=null)},t.prototype._callback=function(){var t=this._expiration-this.now;r.default.debug("Timer._callback; "+this._name+" timer expires in:",t);this._expiration<=this.now&&(this.cancel(),n.prototype.raise.call(this))},o(t,[{key:"now",get:function(){return parseInt(this._nowFunc())}}]),t}(a.default);t.default=e;n.exports=t["default"]},function(n,t,i){"use strict";function e(n){return n&&n.__esModule?n:{"default":n}}function o(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var r,u,f;Object.defineProperty(t,"__esModule",{value:!0});r=i(327);u=e(r);f=function(){function n(t){o(this,n);this._name=t;this._callbacks=[]}return n.prototype.addHandler=function(n){this._callbacks.push(n)},n.prototype.removeHandler=function(n){var t=this._callbacks.findIndex(function(t){return t===n});t>=0&&this._callbacks.splice(t,1)},n.prototype.raise=function(){var n,f,e;u.default.debug("Raising event: "+this._name);var t=!0,i=!1,r=undefined;try{for(n=this._callbacks[Symbol.iterator]();!(t=(f=n.next()).done);t=!0)e=f.value,e.apply(undefined,arguments)}catch(o){i=!0;r=o}finally{try{!t&&n.return&&n.return()}finally{if(i)throw r;}}},n}();t.default=f;n.exports=t["default"]},function(n,t,i){"use strict";function e(n){return n&&n.__esModule?n:{"default":n}}function o(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var u,r,f;Object.defineProperty(t,"__esModule",{value:!0});u=i(327);r=e(u);f=function(){function n(t){o(this,n);this._userManager=t}return n.prototype.start=function(){this._callback||(this._callback=this._tokenExpiring.bind(this),this._userManager.events.addAccessTokenExpiring(this._callback),this._userManager.getUser().then(function(){}).catch(function(n){r.default.error("Error from getUser:",n.message)}))},n.prototype.stop=function(){this._callback&&(this._userManager.events.removeAccessTokenExpiring(this._callback),delete this._callback)},n.prototype._tokenExpiring=function(){var n=this;r.default.debug("SilentRenewService automatically renewing access token");this._userManager.signinSilent().then(function(){r.default.debug("Silent token renewal successful")},function(t){r.default.error("Error from signinSilent:",t.message);n._userManager.events._raiseSilentRenewError(t)})},n}();t.default=f;n.exports=t["default"]},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}function c(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var f;Object.defineProperty(t,"__esModule",{value:!0});var e=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),o=i(327),r=u(o),s=i(367),h=u(s);f=function(){function n(t){var i=this,u=arguments.length>1&&arguments[1]!==undefined?arguments[1]:h.default;if(c(this,n),!t){r.default.error("No user manager passed to SessionMonitor");throw new Error("userManager");}this._userManager=t;this._CheckSessionIFrameCtor=u;this._userManager.events.addUserLoaded(this._start.bind(this));this._userManager.events.addUserUnloaded(this._stop.bind(this));this._userManager.getUser().then(function(n){n&&i._start(n)}).catch(function(n){r.default.error("SessionMonitor ctor; error from getUser:",n.message)})}return n.prototype._start=function(n){var t=this,i=n.session_state;i&&(this._sub=n.profile.sub,this._sid=n.profile.sid,r.default.debug("SessionMonitor._start; session_state:",i,", sub:",this._sub),this._checkSessionIFrame?this._checkSessionIFrame.start(i):this._metadataService.getCheckSessionIframe().then(function(n){if(n){r.default.debug("Initializing check session iframe");var u=t._client_id,f=t._checkSessionInterval;t._checkSessionIFrame=new t._CheckSessionIFrameCtor(t._callback.bind(t),u,n,f);t._checkSessionIFrame.load().then(function(){t._checkSessionIFrame.start(i)})}else r.default.warn("No check session iframe found in the metadata")}).catch(function(n){r.default.error("Error from getCheckSessionIframe:",n.message)}))},n.prototype._stop=function(){r.default.debug("SessionMonitor._stop");this._sub=null;this._sid=null;this._checkSessionIFrame&&this._checkSessionIFrame.stop()},n.prototype._callback=function(){var n=this;r.default.debug("SessionMonitor._callback");this._userManager.querySessionStatus().then(function(t){var i=!0;t?t.sub===n._sub?(i=!1,n._checkSessionIFrame.start(t.session_state),t.sid===n._sid?r.default.debug("Same sub still logged in at OP, restarting check session iframe; session_state:",t.session_state):(r.default.debug("Same sub still logged in at OP, session state has changed, restarting check session iframe; session_state:",t.session_state),n._userManager.events._raiseUserSessionChanged())):r.default.debug("Different subject signed into OP:",t.sub):r.default.debug("Subject no longer signed into OP");i&&(r.default.debug("SessionMonitor._callback; raising signed out event"),n._userManager.events._raiseUserSignedOut())}).catch(function(t){r.default.debug("Error calling queryCurrentSigninSession; raising signed out event",t.message);n._userManager.events._raiseUserSignedOut()})},e(n,[{key:"_settings",get:function(){return this._userManager.settings}},{key:"_metadataService",get:function(){return this._userManager.metadataService}},{key:"_client_id",get:function(){return this._settings.client_id}},{key:"_checkSessionInterval",get:function(){return this._settings.checkSessionInterval}}]),n}();t.default=f;n.exports=t["default"]},function(n,t,i){"use strict";function o(n){return n&&n.__esModule?n:{"default":n}}function s(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var u,r,f,e;Object.defineProperty(t,"__esModule",{value:!0});u=i(327);r=o(u);f=2e3;e=function(){function n(t,i,r,u){s(this,n);this._callback=t;this._client_id=i;this._url=r;this._interval=u||f;var e=r.indexOf("/",r.indexOf("//")+2);this._frame_origin=r.substr(0,e);this._frame=window.document.createElement("iframe");this._frame.style.visibility="hidden";this._frame.style.position="absolute";this._frame.style.display="none";this._frame.style.width=0;this._frame.style.height=0;this._frame.src=r}return n.prototype.load=function(){var n=this;return new Promise(function(t){n._frame.onload=function(){t()};window.document.body.appendChild(n._frame);n._boundMessageEvent=n._message.bind(n);window.addEventListener("message",n._boundMessageEvent,!1)})},n.prototype._message=function(n){n.origin===this._frame_origin&&n.source===this._frame.contentWindow&&(n.data==="error"?(r.default.error("error message from check session op iframe"),this.stop()):n.data==="changed"?(r.default.debug("changed message from check session op iframe"),this.stop(),this._callback()):r.default.debug(n.data+" message from check session op iframe"))},n.prototype.start=function(n){var t=this;this._session_state!==n&&(r.default.debug("CheckSessionIFrame.start"),this.stop(),this._session_state=n,this._timer=window.setInterval(function(){t._frame.contentWindow.postMessage(t._client_id+" "+t._session_state,t._frame_origin)},this._interval))},n.prototype.stop=function(){r.default.debug("CheckSessionIFrame.stop");this._session_state=null;this._timer&&(window.clearInterval(this._timer),this._timer=null)},n}();t.default=e;n.exports=t["default"]},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}function a(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var f,e;Object.defineProperty(t,"__esModule",{value:!0});var o=i(327),r=u(o),s=i(333),h=u(s),c=i(331),l=u(c);f="access_token";e=function(){function n(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:l.default.XMLHttpRequest,u=arguments.length>2&&arguments[2]!==undefined?arguments[2]:h.default;if(a(this,n),!t){r.default.error("No settings provided");throw new Error("No settings provided.");}this._settings=t;this._XMLHttpRequestCtor=i;this._metadataService=new u(this._settings)}return n.prototype.revoke=function(n,t){var i=this;if(r.default.debug("TokenRevocationClient.revoke"),!n){r.default.error("No accessToken provided");throw new Error("No accessToken provided.");}return this._metadataService.getRevocationEndpoint().then(function(u){if(!u){if(t){r.default.error("Revocation not supported");throw new Error("Revocation not supported");}return}var f=i._settings.client_id,e=i._settings.client_secret;return i._revoke(u,f,e,n)})},n.prototype._revoke=function(n,t,i,u){var e=this;return r.default.debug("Calling revocation endpoint"),new Promise(function(o,s){var h=new e._XMLHttpRequestCtor,c;h.open("POST",n);h.onload=function(){r.default.debug("HTTP response received, status",h.status);h.status===200?o():s(Error(h.statusText+" ("+h.status+")"))};c="client_id="+encodeURIComponent(t);i&&(c+="&client_secret="+encodeURIComponent(i));c+="&token_type_hint="+encodeURIComponent(f);c+="&token="+encodeURIComponent(u);h.setRequestHeader("Content-Type","application/x-www-form-urlencoded");h.send(c)})},n}();t.default=e;n.exports=t["default"]},function(n,t,i){"use strict";function r(n){return n&&n.__esModule?n:{"default":n}}function s(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var u;Object.defineProperty(t,"__esModule",{value:!0});var f=i(327),h=r(f),e=i(370),o=r(e);u=function(){function n(){s(this,n)}return n.prototype.prepare=function(n){var t=new o.default(n);return Promise.resolve(t)},n}();t.default=u;n.exports=t["default"]},function(n,t,i){"use strict";function e(n){return n&&n.__esModule?n:{"default":n}}function o(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}Object.defineProperty(t,"__esModule",{value:!0});var u=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),f=i(327),r=e(f);var s="location=no,toolbar=no,zoom=no",h="_blank",c=function(){function n(t){var i=this;o(this,n);r.default.debug("CordovaPopupWindow.ctor");this._promise=new Promise(function(n,t){i._resolve=n;i._reject=t});this.features=t.popupWindowFeatures||s;this.target=t.popupWindowTarget||h;this.redirect_uri=t.startUrl;r.default.debug("redirect_uri: "+this.redirect_uri)}return n.prototype._isInAppBrowserInstalled=function(n){return["cordova-plugin-inappbrowser","cordova-plugin-inappbrowser.inappbrowser","org.apache.cordova.inappbrowser"].some(function(t){return n.hasOwnProperty(t)})},n.prototype.navigate=function(n){if(r.default.debug("CordovaPopupWindow.navigate"),n&&n.url){if(!window.cordova)return this._error("cordova is undefined");var t=window.cordova.require("cordova/plugin_list").metadata;if(this._isInAppBrowserInstalled(t)===!1)return this._error("InAppBrowser plugin not found");this._popup=cordova.InAppBrowser.open(n.url,this.target,this.features);this._popup?(r.default.debug("popup successfully created"),this._exitCallbackEvent=this._exitCallback.bind(this),this._loadStartCallbackEvent=this._loadStartCallback.bind(this),this._popup.addEventListener("exit",this._exitCallbackEvent,!1),this._popup.addEventListener("loadstart",this._loadStartCallbackEvent,!1)):this._error("Error opening popup window")}else this._error("No url provided");return this.promise},n.prototype._loadStartCallback=function(n){n.url.indexOf(this.redirect_uri)===0&&this._success({url:n.url})},n.prototype._exitCallback=function(n){this._error(n)},n.prototype._success=function(n){this._cleanup();r.default.debug("Successful response from cordova popup window");this._resolve(n)},n.prototype._error=function(n){this._cleanup();r.default.error(n);this._reject(new Error(n))},n.prototype.close=function(){this._cleanup()},n.prototype._cleanup=function(){r.default.debug("CordovaPopupWindow._cleanup");this._popup&&(this._popup.removeEventListener("exit",this._exitCallbackEvent,!1),this._popup.removeEventListener("loadstart",this._loadStartCallbackEvent,!1),this._popup.close());this._popup=null},u(n,[{key:"promise",get:function(){return this._promise}}]),n}();t.default=c;n.exports=t["default"]},function(n,t,i){"use strict";function r(n){return n&&n.__esModule?n:{"default":n}}function s(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var u;Object.defineProperty(t,"__esModule",{value:!0});var f=i(327),h=r(f),e=i(370),o=r(e);u=function(){function n(){s(this,n)}return n.prototype.prepare=function(n){n.popupWindowFeatures="hidden=yes";var t=new o.default(n);return Promise.resolve(t)},n}();t.default=u;n.exports=t["default"]}])