From c234c394e5fb0e41b5fad39a362d930ea3a935d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BD=87=E6=B4=92?= <78096245+PizazzGY@users.noreply.github.com> Date: Sun, 13 Oct 2024 09:52:40 +0800 Subject: [PATCH] Add files via upload --- JS/cheerio.min.js | 4331 +++++++++-------- JS/crypto-hiker.js | 1361 +++--- JS/crypto-js.js | 1376 +++--- JS/drpy2.js | 75 +- JS/drpy2.min.js | 97 +- JS/gbk.js | 34 +- JS/jinja.js | 25 +- JS/jsencrypt.js | 360 +- JS/json5.js | 127 +- JS/node-rsa.js | 11152 ++++++++++++++++++++++--------------------- JS/pako.min.js | 957 ++-- JS/模板.js | 3 +- 12 files changed, 10405 insertions(+), 9493 deletions(-) diff --git a/JS/cheerio.min.js b/JS/cheerio.min.js index 087e782..1c5337a 100644 --- a/JS/cheerio.min.js +++ b/JS/cheerio.min.js @@ -1,22 +1,33 @@ var e, t = function() { - return t = Object.assign || function(e) { - for (var t, n = 1, r = arguments.length; n < r; n++) for (var i in t = arguments[n]) Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]); - return e - }, t.apply(this, arguments) -}, n = { - xml: !1, - decodeEntities: !0 -}, r = { - _useHtmlParser2: !0, - xmlMode: !0 -}; + return t = Object.assign || function(e) { + for (var t, n = 1, r = arguments.length; n < r; n++) + for (var i in t = arguments[n]) Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]); + return e + }, t.apply(this, arguments) + }, + n = { + xml: !1, + decodeEntities: !0 + }, + r = { + _useHtmlParser2: !0, + xmlMode: !0 + }; function i(e) { return (null == e ? void 0 : e.xml) ? "boolean" == typeof e.xml ? r : t(t({}, r), e.xml) : null != e ? e : void 0 }! function(e) { e.Root = "root", e.Text = "text", e.Directive = "directive", e.Comment = "comment", e.Script = "script", e.Style = "style", e.Tag = "tag", e.CDATA = "cdata", e.Doctype = "doctype" }(e || (e = {})); -const s = e.Root, a = e.Text, o = e.Directive, c = e.Comment, l = e.Script, h = e.Style, u = e.Tag, p = e.CDATA, f = e.Doctype; +const s = e.Root, + a = e.Text, + o = e.Directive, + c = e.Comment, + l = e.Script, + h = e.Style, + u = e.Tag, + p = e.CDATA, + f = e.Doctype; class d { constructor() { this.parent = null, this.prev = null, this.next = null, this.startIndex = null, this.endIndex = null @@ -137,52 +148,68 @@ class C extends A { })) } } + function I(t) { return (n = t).type === e.Tag || n.type === e.Script || n.type === e.Style; var n } + function S(t) { return t.type === e.CDATA } + function b(t) { return t.type === e.Text } + function O(t) { return t.type === e.Comment } + function y(t) { return t.type === e.Directive } + function L(t) { return t.type === e.Root } + function k(e) { return Object.prototype.hasOwnProperty.call(e, "children") } + function v(e, t = !1) { let n; if (b(e)) n = new m(e.data); else if (O(e)) n = new T(e.data); else if (I(e)) { - const r = t ? D(e.children) : [], i = new C(e.name, {...e.attribs - }, r); - r.forEach((e => e.parent = i)), null != e.namespace && (i.namespace = e.namespace), e["x-attribsNamespace"] && (i["x-attribsNamespace"] = {...e["x-attribsNamespace"] - }), e["x-attribsPrefix"] && (i["x-attribsPrefix"] = {...e["x-attribsPrefix"] + const r = t ? D(e.children) : [], + i = new C(e.name, { + ...e.attribs + }, r); + r.forEach((e => e.parent = i)), null != e.namespace && (i.namespace = e.namespace), e["x-attribsNamespace"] && (i["x-attribsNamespace"] = { + ...e["x-attribsNamespace"] + }), e["x-attribsPrefix"] && (i["x-attribsPrefix"] = { + ...e["x-attribsPrefix"] }), n = i } else if (S(e)) { - const r = t ? D(e.children) : [], i = new g(r); + const r = t ? D(e.children) : [], + i = new g(r); r.forEach((e => e.parent = i)), n = i } else if (L(e)) { - const r = t ? D(e.children) : [], i = new N(r); + const r = t ? D(e.children) : [], + i = new N(r); r.forEach((e => e.parent = i)), e["x-mode"] && (i["x-mode"] = e["x-mode"]), n = i } else { - if (!y(e)) throw new Error(`Not implemented yet: ${e.type}`); { + if (!y(e)) throw new Error(`Not implemented yet: ${e.type}`); + { const t = new _(e.name, e.data); null != e["x-name"] && (t["x-name"] = e["x-name"], t["x-publicId"] = e["x-publicId"], t["x-systemId"] = e["x-systemId"]), n = t } } return n.startIndex = e.startIndex, n.endIndex = e.endIndex, null != e.sourceCodeLocation && (n.sourceCodeLocation = e.sourceCodeLocation), n } + function D(e) { const t = e.map((e => v(e, !0))); for (let e = 1; e < t.length; e++) t[e].prev = t[e - 1], t[e - 1].next = t[e]; @@ -215,7 +242,8 @@ class M { this.options.withEndIndices && (e.endIndex = this.parser.endIndex), this.elementCB && this.elementCB(e) } onopentag(t, n) { - const r = this.options.xmlMode ? e.Tag : void 0, i = new C(t, n, void 0, r); + const r = this.options.xmlMode ? e.Tag : void 0, + i = new C(t, n, void 0, r); this.addNode(i), this.tagStack.push(i) } ontext(t) { @@ -237,7 +265,8 @@ class M { this.lastNode = null } oncdatastart() { - const e = new m(""), t = new g([e]); + const e = new m(""), + t = new g([e]); this.addNode(t), e.parent = t, this.lastNode = e } oncdataend() { @@ -252,43 +281,55 @@ class M { else if (e) throw e } addNode(e) { - const t = this.tagStack[this.tagStack.length - 1], n = t.children[t.children.length - 1]; + const t = this.tagStack[this.tagStack.length - 1], + n = t.children[t.children.length - 1]; this.options.withStartIndices && (e.startIndex = this.parser.startIndex), this.options.withEndIndices && (e.endIndex = this.parser.endIndex), t.children.push(e), n && (e.prev = n, n.next = e), e.parent = t, this.lastNode = null } } -const P = /["&'<>$\x80-\uFFFF]/g, x = new Map([ - [34, """], - [38, "&"], - [39, "'"], - [60, "<"], - [62, ">"] -]), w = null != String.prototype.codePointAt ? (e, t) => e.codePointAt(t) : (e, t) => 55296 == (64512 & e.charCodeAt(t)) ? 1024 * (e.charCodeAt(t) - 55296) + e.charCodeAt(t + 1) - 56320 + 65536 : e.charCodeAt(t); +const P = /["&'<>$\x80-\uFFFF]/g, + x = new Map([ + [34, """], + [38, "&"], + [39, "'"], + [60, "<"], + [62, ">"] + ]), + w = null != String.prototype.codePointAt ? (e, t) => e.codePointAt(t) : (e, t) => 55296 == (64512 & e.charCodeAt(t)) ? 1024 * (e.charCodeAt(t) - 55296) + e.charCodeAt(t + 1) - 56320 + 65536 : e.charCodeAt(t); function B(e) { - let t, n = "", r = 0; + let t, n = "", + r = 0; for (; null !== (t = P.exec(e));) { - const i = t.index, s = e.charCodeAt(i), a = x.get(s); + const i = t.index, + s = e.charCodeAt(i), + a = x.get(s); void 0 !== a ? (n += e.substring(r, i) + a, r = i + 1) : (n += `${e.substring(r,i)}&#x${w(e,i).toString(16)};`, r = P.lastIndex += Number(55296 == (64512 & s))) } return n + e.substr(r) } + function F(e, t) { return function(n) { - let r, i = 0, s = ""; + let r, i = 0, + s = ""; for (; r = e.exec(n);) i !== r.index && (s += n.substring(i, r.index)), s += t.get(r[0].charCodeAt(0)), i = r.index + 1; return s + n.substring(i) } } const U = F(/["&\u00A0]/g, new Map([ - [34, """], - [38, "&"], - [160, " "] -])), H = F(/[&<>\u00A0]/g, new Map([ - [38, "&"], - [60, "<"], - [62, ">"], - [160, " "] -])), G = new Map(["altGlyph", "altGlyphDef", "altGlyphItem", "animateColor", "animateMotion", "animateTransform", "clipPath", "feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feDropShadow", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence", "foreignObject", "glyphRef", "linearGradient", "radialGradient", "textPath"].map((e => [e.toLowerCase(), e]))), Y = new Map(["definitionURL", "attributeName", "attributeType", "baseFrequency", "baseProfile", "calcMode", "clipPathUnits", "diffuseConstant", "edgeMode", "filterUnits", "glyphRef", "gradientTransform", "gradientUnits", "kernelMatrix", "kernelUnitLength", "keyPoints", "keySplines", "keyTimes", "lengthAdjust", "limitingConeAngle", "markerHeight", "markerUnits", "markerWidth", "maskContentUnits", "maskUnits", "numOctaves", "pathLength", "patternContentUnits", "patternTransform", "patternUnits", "pointsAtX", "pointsAtY", "pointsAtZ", "preserveAlpha", "preserveAspectRatio", "primitiveUnits", "refX", "refY", "repeatCount", "repeatDur", "requiredExtensions", "requiredFeatures", "specularConstant", "specularExponent", "spreadMethod", "startOffset", "stdDeviation", "stitchTiles", "surfaceScale", "systemLanguage", "tableValues", "targetX", "targetY", "textLength", "viewBox", "viewTarget", "xChannelSelector", "yChannelSelector", "zoomAndPan"].map((e => [e.toLowerCase(), e]))), q = new Set(["style", "script", "xmp", "iframe", "noembed", "noframes", "plaintext", "noscript"]); + [34, """], + [38, "&"], + [160, " "] + ])), + H = F(/[&<>\u00A0]/g, new Map([ + [38, "&"], + [60, "<"], + [62, ">"], + [160, " "] + ])), + G = new Map(["altGlyph", "altGlyphDef", "altGlyphItem", "animateColor", "animateMotion", "animateTransform", "clipPath", "feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feDropShadow", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence", "foreignObject", "glyphRef", "linearGradient", "radialGradient", "textPath"].map((e => [e.toLowerCase(), e]))), + Y = new Map(["definitionURL", "attributeName", "attributeType", "baseFrequency", "baseProfile", "calcMode", "clipPathUnits", "diffuseConstant", "edgeMode", "filterUnits", "glyphRef", "gradientTransform", "gradientUnits", "kernelMatrix", "kernelUnitLength", "keyPoints", "keySplines", "keyTimes", "lengthAdjust", "limitingConeAngle", "markerHeight", "markerUnits", "markerWidth", "maskContentUnits", "maskUnits", "numOctaves", "pathLength", "patternContentUnits", "patternTransform", "patternUnits", "pointsAtX", "pointsAtY", "pointsAtZ", "preserveAlpha", "preserveAspectRatio", "primitiveUnits", "refX", "refY", "repeatCount", "repeatDur", "requiredExtensions", "requiredFeatures", "specularConstant", "specularExponent", "spreadMethod", "startOffset", "stdDeviation", "stitchTiles", "surfaceScale", "systemLanguage", "tableValues", "targetX", "targetY", "textLength", "viewBox", "viewTarget", "xChannelSelector", "yChannelSelector", "zoomAndPan"].map((e => [e.toLowerCase(), e]))), + q = new Set(["style", "script", "xmp", "iframe", "noembed", "noframes", "plaintext", "noscript"]); function K(e) { return e.replace(/"/g, """) @@ -301,6 +342,7 @@ function V(e, t = {}) { for (let e = 0; e < n.length; e++) r += W(n[e], t); return r } + function W(e, t) { switch (e.type) { case s: @@ -321,9 +363,13 @@ function W(e, t) { case u: return function(e, t) { var n; - "foreign" === t.xmlMode && (e.name = null !== (n = G.get(e.name)) && void 0 !== n ? n : e.name, e.parent && Q.has(e.parent.name) && (t = {...t, xmlMode: !1 + "foreign" === t.xmlMode && (e.name = null !== (n = G.get(e.name)) && void 0 !== n ? n : e.name, e.parent && Q.has(e.parent.name) && (t = { + ...t, + xmlMode: !1 })); - !t.xmlMode && X.has(e.name) && (t = {...t, xmlMode: "foreign" + !t.xmlMode && X.has(e.name) && (t = { + ...t, + xmlMode: "foreign" }); let r = `<${e.name}`; const i = function(e, t) { @@ -349,23 +395,29 @@ function W(e, t) { }(e, t) } } -const Q = new Set(["mi", "mo", "mn", "ms", "mtext", "annotation-xml", "foreignObject", "desc", "title"]), X = new Set(["svg", "math"]); +const Q = new Set(["mi", "mo", "mn", "ms", "mtext", "annotation-xml", "foreignObject", "desc", "title"]), + X = new Set(["svg", "math"]); function $(e, t) { return V(e, t) } + function z(e) { return Array.isArray(e) ? e.map(z).join("") : k(e) && !O(e) ? z(e.children) : b(e) ? e.data : "" } + function J(t) { return Array.isArray(t) ? t.map(J).join("") : k(t) && (t.type === e.Tag || S(t)) ? J(t.children) : b(t) ? t.data : "" } + function Z(e) { return k(e) ? e.children : [] } + function ee(e) { return e.parent || null } + function te(e) { const t = ee(e); if (null != t) return Z(t); @@ -382,6 +434,7 @@ function te(e) { } = i); return n } + function ne(e) { let { next: t @@ -391,6 +444,7 @@ function ne(e) { } = t); return t } + function re(e) { let { prev: t @@ -400,15 +454,18 @@ function re(e) { } = t); return t } + function ie(e) { if (e.prev && (e.prev.next = e.next), e.next && (e.next.prev = e.prev), e.parent) { const t = e.parent.children; t.splice(t.lastIndexOf(e), 1) } } + function se(e, t, n = !0, r = 1 / 0) { return Array.isArray(t) || (t = [t]), ae(e, t, n, r) } + function ae(e, t, n, r) { const i = []; for (const s of t) { @@ -420,6 +477,7 @@ function ae(e, t, n, r) { } return i } + function oe(e, t, n = !0) { let r = null; for (let i = 0; i < t.length && !r; i++) { @@ -437,9 +495,11 @@ const ce = { function le(e, t) { return "function" == typeof t ? n => I(n) && t(n.attribs[e]) : n => I(n) && n.attribs[e] === t } + function he(e, t) { return n => e(n) || t(n) } + function ue(e) { const t = Object.keys(e).map((t => { const n = e[t]; @@ -447,13 +507,15 @@ function ue(e) { })); return 0 === t.length ? null : t.reduce(he) } + function pe(e, t, n = !0, r = 1 / 0) { return se(ce.tag_name(e), t, n, r) } var fe; function de(e, t) { - const n = [], r = []; + const n = [], + r = []; if (e === t) return 0; let i = k(e) ? e : e.parent; for (; i;) n.unshift(i), i = i.parent; @@ -462,9 +524,13 @@ function de(e, t) { let a = 0; for (; a < s && n[a] === r[a];) a++; if (0 === a) return fe.DISCONNECTED; - const o = n[a - 1], c = o.children, l = n[a], h = r[a]; + const o = n[a - 1], + c = o.children, + l = n[a], + h = r[a]; return c.indexOf(l) > c.indexOf(h) ? o === t ? fe.FOLLOWING | fe.CONTAINED_BY : fe.FOLLOWING : o === e ? fe.PRECEDING | fe.CONTAINS : fe.PRECEDING } + function Ee(e) { return (e = e.filter(((e, t, n) => !n.includes(e, t + 1)))).sort(((e, t) => { const n = de(e, t); @@ -473,7 +539,8 @@ function Ee(e) { }! function(e) { e[e.DISCONNECTED = 1] = "DISCONNECTED", e[e.PRECEDING = 2] = "PRECEDING", e[e.FOLLOWING = 4] = "FOLLOWING", e[e.CONTAINS = 8] = "CONTAINS", e[e.CONTAINED_BY = 16] = "CONTAINED_BY" }(fe || (fe = {})); -const me = ["url", "type", "lang"], Te = ["fileSize", "bitrate", "framerate", "samplingrate", "channels", "duration", "height", "width"]; +const me = ["url", "type", "lang"], + Te = ["fileSize", "bitrate", "framerate", "samplingrate", "channels", "duration", "height", "width"]; function _e(e) { return pe("media:content", e).map((e => { @@ -481,208 +548,217 @@ function _e(e) { attribs: t } = e, n = { medium: t.medium, - isDefault: !! t.isDefault + isDefault: !!t.isDefault }; for (const e of me) t[e] && (n[e] = t[e]); for (const e of Te) t[e] && (n[e] = parseInt(t[e], 10)); return t.expression && (n.expression = t.expression), n })) } + function Ae(e, t) { return pe(e, t, !0, 1)[0] } + function ge(e, t, n = !1) { return z(pe(e, t, n, 1)).trim() } + function Ne(e, t, n, r, i = !1) { const s = ge(n, r, i); s && (e[t] = s) } + function Ce(e) { return "rss" === e || "feed" === e || "rdf:RDF" === e } var Ie, Se = Object.freeze({ - __proto__: null, - isTag: I, - isCDATA: S, - isText: b, - isComment: O, - isDocument: L, - hasChildren: k, - getOuterHTML: $, - getInnerHTML: function(e, t) { - return k(e) ? e.children.map((e => $(e, t))).join("") : "" - }, - getText: function e(t) { - return Array.isArray(t) ? t.map(e).join("") : I(t) ? "br" === t.name ? "\n" : e(t.children) : S(t) ? e(t.children) : b(t) ? t.data : "" - }, - textContent: z, - innerText: J, - getChildren: Z, - getParent: ee, - getSiblings: te, - getAttributeValue: function(e, t) { - var n; - return null === (n = e.attribs) || void 0 === n ? void 0 : n[t] - }, - hasAttrib: function(e, t) { - return null != e.attribs && Object.prototype.hasOwnProperty.call(e.attribs, t) && null != e.attribs[t] - }, - getName: function(e) { - return e.name - }, - nextElementSibling: ne, - prevElementSibling: re, - removeElement: ie, - replaceElement: function(e, t) { - const n = t.prev = e.prev; - n && (n.next = t); - const r = t.next = e.next; - r && (r.prev = t); - const i = t.parent = e.parent; - if (i) { - const n = i.children; - n[n.lastIndexOf(e)] = t, e.parent = null - } - }, - appendChild: function(e, t) { - if (ie(t), t.next = null, t.parent = e, e.children.push(t) > 1) { - const n = e.children[e.children.length - 2]; - n.next = t, t.prev = n - } else t.prev = null - }, - append: function(e, t) { - ie(t); - const { - parent: n - } = e, r = e.next; - if (t.next = r, t.prev = e, e.next = t, t.parent = n, r) { - if (r.prev = t, n) { - const e = n.children; - e.splice(e.lastIndexOf(r), 0, t) + __proto__: null, + isTag: I, + isCDATA: S, + isText: b, + isComment: O, + isDocument: L, + hasChildren: k, + getOuterHTML: $, + getInnerHTML: function(e, t) { + return k(e) ? e.children.map((e => $(e, t))).join("") : "" + }, + getText: function e(t) { + return Array.isArray(t) ? t.map(e).join("") : I(t) ? "br" === t.name ? "\n" : e(t.children) : S(t) ? e(t.children) : b(t) ? t.data : "" + }, + textContent: z, + innerText: J, + getChildren: Z, + getParent: ee, + getSiblings: te, + getAttributeValue: function(e, t) { + var n; + return null === (n = e.attribs) || void 0 === n ? void 0 : n[t] + }, + hasAttrib: function(e, t) { + return null != e.attribs && Object.prototype.hasOwnProperty.call(e.attribs, t) && null != e.attribs[t] + }, + getName: function(e) { + return e.name + }, + nextElementSibling: ne, + prevElementSibling: re, + removeElement: ie, + replaceElement: function(e, t) { + const n = t.prev = e.prev; + n && (n.next = t); + const r = t.next = e.next; + r && (r.prev = t); + const i = t.parent = e.parent; + if (i) { + const n = i.children; + n[n.lastIndexOf(e)] = t, e.parent = null } - } else n && n.children.push(t) - }, - prependChild: function(e, t) { - if (ie(t), t.parent = e, t.prev = null, 1 !== e.children.unshift(t)) { - const n = e.children[1]; - n.prev = t, t.next = n - } else t.next = null - }, - prepend: function(e, t) { - ie(t); - const { - parent: n - } = e; - if (n) { - const r = n.children; - r.splice(r.indexOf(e), 0, t) - } - e.prev && (e.prev.next = t), t.parent = n, t.prev = e.prev, t.next = e, e.prev = t - }, - filter: se, - find: ae, - findOneChild: function(e, t) { - return t.find(e) - }, - findOne: oe, - existsOne: function e(t, n) { - return n.some((n => I(n) && (t(n) || n.children.length > 0 && e(t, n.children)))) - }, - findAll: function(e, t) { - var n; - const r = [], i = t.filter(I); - let s; - for (; s = i.shift();) { - const t = null === (n = s.children) || void 0 === n ? void 0 : n.filter(I); - t && t.length > 0 && i.unshift(...t), e(s) && r.push(s) - } - return r - }, - testElement: function(e, t) { - const n = ue(e); - return !n || n(t) - }, - getElements: function(e, t, n, r = 1 / 0) { - const i = ue(e); - return i ? se(i, t, n, r) : [] - }, - getElementById: function(e, t, n = !0) { - return Array.isArray(t) || (t = [t]), oe(le("id", e), t, n) - }, - getElementsByTagName: pe, - getElementsByTagType: function(e, t, n = !0, r = 1 / 0) { - return se(ce.tag_type(e), t, n, r) - }, - removeSubsets: function(e) { - let t = e.length; - for (; --t >= 0;) { - const n = e[t]; - if (t > 0 && e.lastIndexOf(n, t - 1) >= 0) e.splice(t, 1); - else for (let r = n.parent; r; r = r.parent) if (e.includes(r)) { - e.splice(t, 1); - break + }, + appendChild: function(e, t) { + if (ie(t), t.next = null, t.parent = e, e.children.push(t) > 1) { + const n = e.children[e.children.length - 2]; + n.next = t, t.prev = n + } else t.prev = null + }, + append: function(e, t) { + ie(t); + const { + parent: n + } = e, r = e.next; + if (t.next = r, t.prev = e, e.next = t, t.parent = n, r) { + if (r.prev = t, n) { + const e = n.children; + e.splice(e.lastIndexOf(r), 0, t) + } + } else n && n.children.push(t) + }, + prependChild: function(e, t) { + if (ie(t), t.parent = e, t.prev = null, 1 !== e.children.unshift(t)) { + const n = e.children[1]; + n.prev = t, t.next = n + } else t.next = null + }, + prepend: function(e, t) { + ie(t); + const { + parent: n + } = e; + if (n) { + const r = n.children; + r.splice(r.indexOf(e), 0, t) } + e.prev && (e.prev.next = t), t.parent = n, t.prev = e.prev, t.next = e, e.prev = t + }, + filter: se, + find: ae, + findOneChild: function(e, t) { + return t.find(e) + }, + findOne: oe, + existsOne: function e(t, n) { + return n.some((n => I(n) && (t(n) || n.children.length > 0 && e(t, n.children)))) + }, + findAll: function(e, t) { + var n; + const r = [], + i = t.filter(I); + let s; + for (; s = i.shift();) { + const t = null === (n = s.children) || void 0 === n ? void 0 : n.filter(I); + t && t.length > 0 && i.unshift(...t), e(s) && r.push(s) + } + return r + }, + testElement: function(e, t) { + const n = ue(e); + return !n || n(t) + }, + getElements: function(e, t, n, r = 1 / 0) { + const i = ue(e); + return i ? se(i, t, n, r) : [] + }, + getElementById: function(e, t, n = !0) { + return Array.isArray(t) || (t = [t]), oe(le("id", e), t, n) + }, + getElementsByTagName: pe, + getElementsByTagType: function(e, t, n = !0, r = 1 / 0) { + return se(ce.tag_type(e), t, n, r) + }, + removeSubsets: function(e) { + let t = e.length; + for (; --t >= 0;) { + const n = e[t]; + if (t > 0 && e.lastIndexOf(n, t - 1) >= 0) e.splice(t, 1); + else + for (let r = n.parent; r; r = r.parent) + if (e.includes(r)) { + e.splice(t, 1); + break + } + } + return e + }, + get DocumentPosition() { + return fe + }, + compareDocumentPosition: de, + uniqueSort: Ee, + getFeed: function(e) { + const t = Ae(Ce, e); + return t ? "feed" === t.name ? function(e) { + var t; + const n = e.children, + r = { + type: "atom", + items: pe("entry", n).map((e => { + var t; + const { + children: n + } = e, r = { + media: _e(n) + }; + Ne(r, "id", "id", n), Ne(r, "title", "title", n); + const i = null === (t = Ae("link", n)) || void 0 === t ? void 0 : t.attribs.href; + i && (r.link = i); + const s = ge("summary", n) || ge("content", n); + s && (r.description = s); + const a = ge("updated", n); + return a && (r.pubDate = new Date(a)), r + })) + }; + Ne(r, "id", "id", n), Ne(r, "title", "title", n); + const i = null === (t = Ae("link", n)) || void 0 === t ? void 0 : t.attribs.href; + i && (r.link = i); + Ne(r, "description", "subtitle", n); + const s = ge("updated", n); + s && (r.updated = new Date(s)); + return Ne(r, "author", "email", n, !0), r + }(t) : function(e) { + var t, n; + const r = null !== (n = null === (t = Ae("channel", e.children)) || void 0 === t ? void 0 : t.children) && void 0 !== n ? n : [], + i = { + type: e.name.substr(0, 3), + id: "", + items: pe("item", e.children).map((e => { + const { + children: t + } = e, n = { + media: _e(t) + }; + Ne(n, "id", "guid", t), Ne(n, "title", "title", t), Ne(n, "link", "link", t), Ne(n, "description", "description", t); + const r = ge("pubDate", t); + return r && (n.pubDate = new Date(r)), n + })) + }; + Ne(i, "title", "title", r), Ne(i, "link", "link", r), Ne(i, "description", "description", r); + const s = ge("lastBuildDate", r); + s && (i.updated = new Date(s)); + return Ne(i, "author", "managingEditor", r, !0), i + }(t) : null } - return e - }, - get DocumentPosition() { - return fe - }, - compareDocumentPosition: de, - uniqueSort: Ee, - getFeed: function(e) { - const t = Ae(Ce, e); - return t ? "feed" === t.name ? function(e) { - var t; - const n = e.children, r = { - type: "atom", - items: pe("entry", n).map((e => { - var t; - const { - children: n - } = e, r = { - media: _e(n) - }; - Ne(r, "id", "id", n), Ne(r, "title", "title", n); - const i = null === (t = Ae("link", n)) || void 0 === t ? void 0 : t.attribs.href; - i && (r.link = i); - const s = ge("summary", n) || ge("content", n); - s && (r.description = s); - const a = ge("updated", n); - return a && (r.pubDate = new Date(a)), r - })) - }; - Ne(r, "id", "id", n), Ne(r, "title", "title", n); - const i = null === (t = Ae("link", n)) || void 0 === t ? void 0 : t.attribs.href; - i && (r.link = i); - Ne(r, "description", "subtitle", n); - const s = ge("updated", n); - s && (r.updated = new Date(s)); - return Ne(r, "author", "email", n, !0), r - }(t) : function(e) { - var t, n; - const r = null !== (n = null === (t = Ae("channel", e.children)) || void 0 === t ? void 0 : t.children) && void 0 !== n ? n : [], i = { - type: e.name.substr(0, 3), - id: "", - items: pe("item", e.children).map((e => { - const { - children: t - } = e, n = { - media: _e(t) - }; - Ne(n, "id", "guid", t), Ne(n, "title", "title", t), Ne(n, "link", "link", t), Ne(n, "description", "description", t); - const r = ge("pubDate", t); - return r && (n.pubDate = new Date(r)), n - })) - }; - Ne(i, "title", "title", r), Ne(i, "link", "link", r), Ne(i, "description", "description", r); - const s = ge("lastBuildDate", r); - s && (i.updated = new Date(s)); - return Ne(i, "author", "managingEditor", r, !0), i - }(t) : null - } -}), + }), be = "undefined" != typeof global ? global : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {}; function Oe(e) { @@ -691,21 +767,23 @@ function Oe(e) { for (var n in e) t.push(n); return t } + function ye(e, t) { if (e.forEach) return e.forEach(t); for (var n = 0; n < e.length; n++) t(e[n], n, e) } + function Le() { try { return Object.defineProperty({}, "_", {}), - function(e, t, n) { - Object.defineProperty(e, t, { - writable: !0, - enumerable: !1, - configurable: !0, - value: n - }) - } + function(e, t, n) { + Object.defineProperty(e, t, { + writable: !0, + enumerable: !1, + configurable: !0, + value: n + }) + } } catch (e) { return function(e, t, n) { e[t] = n @@ -715,10 +793,12 @@ function Le() { var ke = ["Array", "Boolean", "Date", "Error", "EvalError", "Function", "Infinity", "JSON", "Math", "NaN", "Number", "Object", "RangeError", "ReferenceError", "RegExp", "String", "SyntaxError", "TypeError", "URIError", "decodeURI", "decodeURIComponent", "encodeURI", "encodeURIComponent", "escape", "eval", "isFinite", "isNaN", "parseFloat", "parseInt", "undefined", "unescape"]; function ve() {} + function De(e) { if (!(this instanceof De)) return new De(e); this.code = e } + function Re(e) { if (Me(e)) return e; var t = new ve; @@ -726,6 +806,7 @@ function Re(e) { t[n] = e[n] })), t } + function Me(e) { return e instanceof ve } @@ -747,7 +828,8 @@ ve.prototype = {}, De.prototype.runInContext = function(e) { return ye(Oe(n), (function(t) { (t in e || -1 === function(e, t) { if (xe) return e.indexOf(t); - for (var n = 0; n < e.length; ++n) if (e[n] === t) return n; + for (var n = 0; n < e.length; ++n) + if (e[n] === t) return n; return -1 }(s, t)) && (e[t] = n[t]) })), ye(ke, (function(t) { @@ -772,22 +854,23 @@ ve.prototype = {}, De.prototype.runInContext = function(e) { })), n }; var Pe = { - runInContext: function(e, t, n) { - return new De(e).runInContext(t, n) + runInContext: function(e, t, n) { + return new De(e).runInContext(t, n) + }, + isContext: Me, + createContext: Re, + createScript: function(e) { + return new De(e) + }, + Script: De, + runInThisContext: function(e, t) { + return new De(e).runInThisContext(t) + }, + runInNewContext: function(e, t, n) { + return new De(e).runInNewContext(t, n) + } }, - isContext: Me, - createContext: Re, - createScript: function(e) { - return new De(e) - }, - Script: De, - runInThisContext: function(e, t) { - return new De(e).runInThisContext(t) - }, - runInNewContext: function(e, t, n) { - return new De(e).runInNewContext(t, n) - } -}, xe = [].indexOf; + xe = [].indexOf; const { hasOwnProperty: we } = Object.prototype; @@ -795,6 +878,7 @@ const { function Be(e, t) { return (e = e.slice()).push(t), e } + function Fe(e, t) { return (t = t.slice()).unshift(e), t } @@ -803,6 +887,7 @@ class Ue extends Error { super('JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'), this.avoidNew = !0, this.value = e, this.name = "NewError" } } + function He(e, t, n, r, i) { if (!(this instanceof He)) try { return new He(e, t, n, r, i) @@ -813,8 +898,8 @@ function He(e, t, n, r, i) { "string" == typeof e && (i = r, r = n, n = t, t = e, e = null); const s = e && "object" == typeof e; if (e = e || {}, this.json = e.json || n, this.path = e.path || t, this.resultType = e.resultType || "value", this.flatten = e.flatten || !1, this.wrap = !we.call(e, "wrap") || e.wrap, this.sandbox = e.sandbox || {}, this.preventEval = e.preventEval || !1, this.parent = e.parent || null, this.parentProperty = e.parentProperty || null, this.callback = e.callback || r || null, this.otherTypeCallback = e.otherTypeCallback || i || function() { - throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.") - }, !1 !== e.autostart) { + throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.") + }, !1 !== e.autostart) { const r = { path: s ? e.path : t }; @@ -825,10 +910,12 @@ function He(e, t, n, r, i) { } } He.prototype.evaluate = function(e, t, n, r) { - let i = this.parent, s = this.parentProperty, { - flatten: a, - wrap: o - } = this; + let i = this.parent, + s = this.parentProperty, + { + flatten: a, + wrap: o + } = this; if (this.currResultType = this.resultType, this.currPreventEval = this.preventEval, this.currSandbox = this.sandbox, n = n || this.callback, this.currOtherTypeCallback = r || this.otherTypeCallback, t = t || this.json, (e = e || this.path) && "object" == typeof e && !Array.isArray(e)) { if (!e.path && "" !== e.path) throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().'); if (!we.call(e, "json")) throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().'); @@ -849,11 +936,10 @@ He.prototype.evaluate = function(e, t, n, r) { }, He.prototype._getPreferredOutput = function(e) { const t = this.currResultType; switch (t) { - case "all": - { - const t = Array.isArray(e.path) ? e.path : He.toPathArray(e.path); - return e.pointer = He.toPointer(t), e.path = "string" == typeof e.path ? e.path : He.toPathString(e.path), e - } + case "all": { + const t = Array.isArray(e.path) ? e.path : He.toPathArray(e.path); + return e.pointer = He.toPointer(t), e.path = "string" == typeof e.path ? e.path : He.toPathString(e.path), e + } case "value": case "parent": case "parentProperty": @@ -879,7 +965,9 @@ He.prototype.evaluate = function(e, t, n, r) { parentProperty: i, hasArrExpr: a }, this._handleCallback(c, s, "value"), c; - const l = e[0], h = e.slice(1), u = []; + const l = e[0], + h = e.slice(1), + u = []; function p(e) { Array.isArray(e) ? e.forEach((e => { @@ -967,17 +1055,18 @@ He.prototype.evaluate = function(e, t, n, r) { for (const a of e) p(this._trace(Fe(a, h), t, n, r, i, s, !0)) } else !o && t && we.call(t, l) && p(this._trace(h, t[l], Be(n, l), t, l, s, a, !0)) } - if (this._hasParentSelector) for (let e = 0; e < u.length; e++) { - const n = u[e]; - if (n && n.isParentSelector) { - const o = this._trace(n.expr, t, n.path, r, i, s, a); - if (Array.isArray(o)) { - u[e] = o[0]; - const t = o.length; - for (let n = 1; n < t; n++) e++, u.splice(e, 0, o[n]) - } else u[e] = o + if (this._hasParentSelector) + for (let e = 0; e < u.length; e++) { + const n = u[e]; + if (n && n.isParentSelector) { + const o = this._trace(n.expr, t, n.path, r, i, s, a); + if (Array.isArray(o)) { + u[e] = o[0]; + const t = o.length; + for (let n = 1; n < t; n++) e++, u.splice(e, 0, o[n]) + } else u[e] = o + } } - } return u }, He.prototype._walk = function(e, t) { if (Array.isArray(e)) { @@ -988,8 +1077,11 @@ He.prototype.evaluate = function(e, t, n, r) { })) }, He.prototype._slice = function(e, t, n, r, i, s, a) { if (!Array.isArray(n)) return; - const o = n.length, c = e.split(":"), l = c[2] && Number.parseInt(c[2]) || 1; - let h = c[0] && Number.parseInt(c[0]) || 0, u = c[1] && Number.parseInt(c[1]) || o; + const o = n.length, + c = e.split(":"), + l = c[2] && Number.parseInt(c[2]) || 1; + let h = c[0] && Number.parseInt(c[0]) || 0, + u = c[1] && Number.parseInt(c[1]) || o; h = h < 0 ? Math.max(0, h + o) : Math.min(o, h), u = u < 0 ? Math.max(0, u + o) : Math.min(o, u); const p = []; for (let e = h; e < u; e += l) { @@ -1013,12 +1105,14 @@ He.prototype.evaluate = function(e, t, n, r) { throw new Error("jsonPath: " + t.message + ": " + e) } }, He.cache = {}, He.toPathString = function(e) { - const t = e, n = t.length; + const t = e, + n = t.length; let r = "$"; for (let e = 1; e < n; e++) /^(~|\^|@.*?\(\))$/u.test(t[e]) || (r += /^[0-9*]+$/u.test(t[e]) ? "[" + t[e] + "]" : "['" + t[e] + "']"); return r }, He.toPointer = function(e) { - const t = e, n = t.length; + const t = e, + n = t.length; let r = ""; for (let e = 1; e < n; e++) /^(~|\^|@.*?\(\))$/u.test(t[e]) || (r += "/" + t[e].toString().replace(/~/gu, "~0").replace(/\//gu, "~1")); return r @@ -1027,16 +1121,18 @@ He.prototype.evaluate = function(e, t, n, r) { cache: t } = He; if (t[e]) return t[e].concat(); - const n = [], r = e.replace(/@(?:null|boolean|number|string|integer|undefined|nonFinite|scalar|array|object|function|other)\(\)/gu, ";$&;").replace(/[['](\??\(.*?\))[\]']/gu, (function(e, t) { - return "[#" + (n.push(t) - 1) + "]" - })).replace(/\[['"]([^'\]]*)['"]\]/gu, (function(e, t) { - return "['" + t.replace(/\./gu, "%@%").replace(/~/gu, "%%@@%%") + "']" - })).replace(/~/gu, ";~;").replace(/['"]?\.['"]?(?![^[]*\])|\[['"]?/gu, ";").replace(/%@%/gu, ".").replace(/%%@@%%/gu, "~").replace(/(?:;)?(\^+)(?:;)?/gu, (function(e, t) { - return ";" + t.split("").join(";") + ";" - })).replace(/;;;|;;/gu, ";..;").replace(/;$|'?\]|'$/gu, ""), i = r.split(";").map((function(e) { - const t = e.match(/#(\d+)/u); - return t && t[1] ? n[t[1]] : e - })); + const n = [], + r = e.replace(/@(?:null|boolean|number|string|integer|undefined|nonFinite|scalar|array|object|function|other)\(\)/gu, ";$&;").replace(/[['](\??\(.*?\))[\]']/gu, (function(e, t) { + return "[#" + (n.push(t) - 1) + "]" + })).replace(/\[['"]([^'\]]*)['"]\]/gu, (function(e, t) { + return "['" + t.replace(/\./gu, "%@%").replace(/~/gu, "%%@@%%") + "']" + })).replace(/~/gu, ";~;").replace(/['"]?\.['"]?(?![^[]*\])|\[['"]?/gu, ";").replace(/%@%/gu, ".").replace(/%%@@%%/gu, "~").replace(/(?:;)?(\^+)(?:;)?/gu, (function(e, t) { + return ";" + t.split("").join(";") + ";" + })).replace(/;;;|;;/gu, ";..;").replace(/;$|'?\]|'$/gu, ""), + i = r.split(";").map((function(e) { + const t = e.match(/#(\d+)/u); + return t && t[1] ? n[t[1]] : e + })); return t[e] = i, t[e].concat() }, He.prototype.vm = Pe; var Ge = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : {}; @@ -1044,10 +1140,11 @@ var Ge = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof w function Ye() { throw new Error("Dynamic requires are not currently supported by rollup-plugin-commonjs") } + function qe(e) { - return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e. - default : e + return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e } + function Ke(e, t) { return e(t = { exports: {} @@ -1062,24 +1159,27 @@ var je = Ke((function(e) { "'": "'", "<": "<", ">": ">" - }, i = /[&"'<>]/g, + }, + i = /[&"'<>]/g, s = e.exports = {}; function a(e, t) { return n.hasOwnProperty.call(e, t) } + function o(e) { return r[e] } + function c(e, t, n) { var r, i, s; if (e instanceof Error && (e = (i = e).name + ": " + i.message), Object.setPrototypeOf ? (r = new Error(e), Object.setPrototypeOf(r, c.prototype)) : (r = this, Object.defineProperty(r, "message", { - enumerable: !1, - writable: !0, - value: e - })), Object.defineProperty(r, "name", { - value: "Template render error" - }), Error.captureStackTrace && Error.captureStackTrace(r, this.constructor), i) { + enumerable: !1, + writable: !0, + value: e + })), Object.defineProperty(r, "name", { + value: "Template render error" + }), Error.captureStackTrace && Error.captureStackTrace(r, this.constructor), i) { var a = Object.getOwnPropertyDescriptor(i, "stack"); (s = a && (a.get || function() { return a.value @@ -1103,18 +1203,23 @@ var je = Ke((function(e) { return this.firstUpdate && (this.lineno && this.colno ? t += " [Line " + this.lineno + ", Column " + this.colno + "]" : this.lineno && (t += " [Line " + this.lineno + "]")), t += "\n ", this.firstUpdate && (t += " "), this.message = t + (this.message || ""), this.firstUpdate = !1, this }, r } + function l(e) { return "[object Function]" === n.toString.call(e) } + function h(e) { return "[object Array]" === n.toString.call(e) } + function u(e) { return "[object String]" === n.toString.call(e) } + function p(e) { return "[object Object]" === n.toString.call(e) } + function f(e) { var t = function(e) { return e ? "string" == typeof e ? e.split(".") : [e] : [] @@ -1128,12 +1233,15 @@ var je = Ke((function(e) { return n } } + function d(e) { return Array.prototype.slice.call(e) } + function E(e, t, n) { return Array.prototype.indexOf.call(e || [], t, n) } + function m(e) { var t = []; for (var n in e) a(e, n) && t.push(n); @@ -1168,8 +1276,10 @@ var je = Ke((function(e) { for (var n = "", r = 0; r < t; r++) n += e; return n }, s.each = function(e, n, r) { - if (null != e) if (t.forEach && e.forEach === t.forEach) e.forEach(n, r); - else if (e.length === +e.length) for (var i = 0, s = e.length; i < s; i++) n.call(r, e[i], i, e) + if (null != e) + if (t.forEach && e.forEach === t.forEach) e.forEach(n, r); + else if (e.length === +e.length) + for (var i = 0, s = e.length; i < s; i++) n.call(r, e[i], i, e) }, s.map = function(e, n) { var r = []; if (null == e) return r; @@ -1212,6 +1322,7 @@ var je = Ke((function(e) { function Ve() { throw new Error("setTimeout has not been defined") } + function We() { throw new Error("clearTimeout has not been defined") } @@ -1239,6 +1350,7 @@ var ze, Je = [], function tt() { Ze && ze && (Ze = !1, ze.length ? Je = ze.concat(Je) : et = -1, Je.length && nt()) } + function nt() { if (!Ze) { var e = $e(tt); @@ -1248,21 +1360,22 @@ function nt() { et = -1, t = Je.length } ze = null, Ze = !1, - function(e) { - if (Xe === clearTimeout) return clearTimeout(e); - if ((Xe === We || !Xe) && clearTimeout) return Xe = clearTimeout, clearTimeout(e); - try { - Xe(e) - } catch (t) { + function(e) { + if (Xe === clearTimeout) return clearTimeout(e); + if ((Xe === We || !Xe) && clearTimeout) return Xe = clearTimeout, clearTimeout(e); try { - return Xe.call(null, e) + Xe(e) } catch (t) { - return Xe.call(this, e) + try { + return Xe.call(null, e) + } catch (t) { + return Xe.call(this, e) + } } - } - }(e) + }(e) } } + function rt(e, t) { this.fun = e, this.array = t } @@ -1278,14 +1391,16 @@ var st = it, lt = it, ht = it, ut = it; -var pt = be.performance || {}, ft = pt.now || pt.mozNow || pt.msNow || pt.oNow || pt.webkitNow || function() { +var pt = be.performance || {}, + ft = pt.now || pt.mozNow || pt.msNow || pt.oNow || pt.webkitNow || function() { return (new Date).getTime() }; var dt = new Date; var Et = { nextTick: function(e) { var t = new Array(arguments.length - 1); - if (arguments.length > 1) for (var n = 1; n < arguments.length; n++) t[n - 1] = arguments[n]; + if (arguments.length > 1) + for (var n = 1; n < arguments.length; n++) t[n - 1] = arguments[n]; Je.push(new rt(e, t)), 1 !== Je.length || Ze || $e(nt) }, title: "browser", @@ -1328,32 +1443,45 @@ var Et = { }; function mt() {} + function Tt() { Tt.init.call(this) } + function _t(e) { return void 0 === e._maxListeners ? Tt.defaultMaxListeners : e._maxListeners } + function At(e, t, n) { if (t) e.call(n); - else for (var r = e.length, i = yt(e, r), s = 0; s < r; ++s) i[s].call(n) + else + for (var r = e.length, i = yt(e, r), s = 0; s < r; ++s) i[s].call(n) } + function gt(e, t, n, r) { if (t) e.call(n, r); - else for (var i = e.length, s = yt(e, i), a = 0; a < i; ++a) s[a].call(n, r) + else + for (var i = e.length, s = yt(e, i), a = 0; a < i; ++a) s[a].call(n, r) } + function Nt(e, t, n, r, i) { if (t) e.call(n, r, i); - else for (var s = e.length, a = yt(e, s), o = 0; o < s; ++o) a[o].call(n, r, i) + else + for (var s = e.length, a = yt(e, s), o = 0; o < s; ++o) a[o].call(n, r, i) } + function Ct(e, t, n, r, i, s) { if (t) e.call(n, r, i, s); - else for (var a = e.length, o = yt(e, a), c = 0; c < a; ++c) o[c].call(n, r, i, s) + else + for (var a = e.length, o = yt(e, a), c = 0; c < a; ++c) o[c].call(n, r, i, s) } + function It(e, t, n, r) { if (t) e.apply(n, r); - else for (var i = e.length, s = yt(e, i), a = 0; a < i; ++a) s[a].apply(n, r) + else + for (var i = e.length, s = yt(e, i), a = 0; a < i; ++a) s[a].apply(n, r) } + function St(e, t, n, r) { var i, s, a; if ("function" != typeof n) throw new TypeError('"listener" argument must be a function'); @@ -1362,13 +1490,14 @@ function St(e, t, n, r) { a.warned = !0; var o = new Error("Possible EventEmitter memory leak detected. " + a.length + " " + t + " listeners added. Use emitter.setMaxListeners() to increase limit"); o.name = "MaxListenersExceededWarning", o.emitter = e, o.type = t, o.count = a.length, - function(e) { - "function" == typeof console.warn ? console.warn(e) : console.log(e) - }(o) + function(e) { + "function" == typeof console.warn ? console.warn(e) : console.log(e) + }(o) } } else a = s[t] = n, ++e._eventsCount; return e } + function bt(e, t, n) { var r = !1; @@ -1377,6 +1506,7 @@ function bt(e, t, n) { } return i.listener = n, i } + function Ot(e) { var t = this._events; if (t) { @@ -1386,16 +1516,19 @@ function Ot(e) { } return 0 } + function yt(e, t) { for (var n = new Array(t); t--;) n[t] = e[t]; return n } + function Lt() { var e; Tt.call(this), this.__emitError = (e = this, function(t) { e.emit("error", t) }) } + function kt() { return new Lt } @@ -1455,11 +1588,11 @@ mt.prototype = Object.create(null), Tt.EventEmitter = Tt, Tt.usingDomains = !1, if (!(n = r[e])) return this; if (n === t || n.listener && n.listener === t) 0 == --this._eventsCount ? this._events = new mt : (delete r[e], r.removeListener && this.emit("removeListener", e, n.listener || t)); else if ("function" != typeof n) { - for (i = -1, s = n.length; s-- > 0;) if (n[s] === t || n[s].listener && n[s].listener === t) { - a = n[s].listener, i = s; - break - } - if (i < 0) return this; + for (i = -1, s = n.length; s-- > 0;) + if (n[s] === t || n[s].listener && n[s].listener === t) { + a = n[s].listener, i = s; + break + } if (i < 0) return this; if (1 === n.length) { if (n[0] = void 0, 0 == --this._eventsCount) return this._events = new mt, this; delete r[e] @@ -1479,9 +1612,10 @@ mt.prototype = Object.create(null), Tt.EventEmitter = Tt, Tt.usingDomains = !1, return this.removeAllListeners("removeListener"), this._events = new mt, this._eventsCount = 0, this } if ("function" == typeof(t = n[e])) this.removeListener(e, t); - else if (t) do { - this.removeListener(e, t[t.length - 1]) - } while (t[0]); + else if (t) + do { + this.removeListener(e, t[t.length - 1]) + } while (t[0]); return this }, Tt.prototype.listeners = function(e) { var t, n = this._events; @@ -1547,10 +1681,11 @@ mt.prototype = Object.create(null), Tt.EventEmitter = Tt, Tt.usingDomains = !1, return this }; var vt, Dt = { - Domain: Lt, - createDomain: kt, - create: kt -}, Rt = "function" == typeof setImmediate, + Domain: Lt, + createDomain: kt, + create: kt + }, + Rt = "function" == typeof setImmediate, Mt = Pt; function Pt(e) { @@ -1570,6 +1705,7 @@ function Ft() { } xt.length = 0, Bt = 0, wt = !1 } + function Ut() { var e = Et.domain; e && (vt || (vt = Dt), vt.active = Et.domain = null), wt && Rt ? setImmediate(Ft) : Et.nextTick(Ft), e && (vt.active = Et.domain = e) @@ -1597,13 +1733,16 @@ Yt.prototype.call = function() { var qt = Ke((function(e) { ! function(t) { var n = function() { - var e = Array.prototype.slice.call(arguments); - "function" == typeof e[0] && e[0].apply(null, e.splice(1)) - }, r = function(e) { - "function" == typeof setImmediate ? setImmediate(e) : void 0 !== Et && Et.nextTick ? Et.nextTick(e) : setTimeout(e, 0) - }, i = Array.isArray || function(e) { + var e = Array.prototype.slice.call(arguments); + "function" == typeof e[0] && e[0].apply(null, e.splice(1)) + }, + r = function(e) { + "function" == typeof setImmediate ? setImmediate(e) : void 0 !== Et && Et.nextTick ? Et.nextTick(e) : setTimeout(e, 0) + }, + i = Array.isArray || function(e) { return "[object Array]" === Object.prototype.toString.call(e) - }, s = function(e, t, s) { + }, + s = function(e, t, s) { var a = s ? r : n; if (t = t || function() {}, !i(e)) { var o = new Error("First argument to waterfall must be an array of functions"); @@ -1647,183 +1786,183 @@ function Kt(e, t, n, r) { } } var jt = function() { - function e(e, t) { - this.str = e, this.index = 0, this.len = e.length, this.lineno = 0, this.colno = 0, this.in_code = !1; - var n = (t = t || {}).tags || {}; - this.tags = { - BLOCK_START: n.blockStart || "{%", - BLOCK_END: n.blockEnd || "%}", - VARIABLE_START: n.variableStart || "{{", - VARIABLE_END: n.variableEnd || "}}", - COMMENT_START: n.commentStart || "{#", - COMMENT_END: n.commentEnd || "#}" - }, this.trimBlocks = !! t.trimBlocks, this.lstripBlocks = !! t.lstripBlocks - } - var t = e.prototype; - return t.nextToken = function() { - var e, t = this.lineno, - n = this.colno; - if (this.in_code) { - var r = this.current(); - if (this.isFinished()) return null; - if ('"' === r || "'" === r) return Kt("string", this._parseString(r), t, n); - if (e = this._extract(" \n\t\r ")) return Kt("whitespace", e, t, n); - if ((e = this._extractString(this.tags.BLOCK_END)) || (e = this._extractString("-" + this.tags.BLOCK_END))) return this.in_code = !1, this.trimBlocks && ("\n" === (r = this.current()) ? this.forward() : "\r" === r && (this.forward(), "\n" === (r = this.current()) ? this.forward() : this.back())), Kt("block-end", e, t, n); - if ((e = this._extractString(this.tags.VARIABLE_END)) || (e = this._extractString("-" + this.tags.VARIABLE_END))) return this.in_code = !1, Kt("variable-end", e, t, n); - if ("r" === r && "/" === this.str.charAt(this.index + 1)) { - this.forwardN(2); - for (var i = ""; !this.isFinished();) { - if ("/" === this.current() && "\\" !== this.previous()) { - this.forward(); - break + function e(e, t) { + this.str = e, this.index = 0, this.len = e.length, this.lineno = 0, this.colno = 0, this.in_code = !1; + var n = (t = t || {}).tags || {}; + this.tags = { + BLOCK_START: n.blockStart || "{%", + BLOCK_END: n.blockEnd || "%}", + VARIABLE_START: n.variableStart || "{{", + VARIABLE_END: n.variableEnd || "}}", + COMMENT_START: n.commentStart || "{#", + COMMENT_END: n.commentEnd || "#}" + }, this.trimBlocks = !!t.trimBlocks, this.lstripBlocks = !!t.lstripBlocks + } + var t = e.prototype; + return t.nextToken = function() { + var e, t = this.lineno, + n = this.colno; + if (this.in_code) { + var r = this.current(); + if (this.isFinished()) return null; + if ('"' === r || "'" === r) return Kt("string", this._parseString(r), t, n); + if (e = this._extract(" \n\t\r ")) return Kt("whitespace", e, t, n); + if ((e = this._extractString(this.tags.BLOCK_END)) || (e = this._extractString("-" + this.tags.BLOCK_END))) return this.in_code = !1, this.trimBlocks && ("\n" === (r = this.current()) ? this.forward() : "\r" === r && (this.forward(), "\n" === (r = this.current()) ? this.forward() : this.back())), Kt("block-end", e, t, n); + if ((e = this._extractString(this.tags.VARIABLE_END)) || (e = this._extractString("-" + this.tags.VARIABLE_END))) return this.in_code = !1, Kt("variable-end", e, t, n); + if ("r" === r && "/" === this.str.charAt(this.index + 1)) { + this.forwardN(2); + for (var i = ""; !this.isFinished();) { + if ("/" === this.current() && "\\" !== this.previous()) { + this.forward(); + break + } + i += this.current(), this.forward() } - i += this.current(), this.forward() + for (var s = ["g", "i", "m", "y"], a = ""; !this.isFinished();) { + if (!(-1 !== s.indexOf(this.current()))) break; + a += this.current(), this.forward() + } + return Kt("regex", { + body: i, + flags: a + }, t, n) } - for (var s = ["g", "i", "m", "y"], a = ""; !this.isFinished();) { - if (!(-1 !== s.indexOf(this.current()))) break; - a += this.current(), this.forward() + if (-1 !== "()[]{}%*-+~/#,:|.<>=!".indexOf(r)) { + this.forward(); + var o, c = ["==", "===", "!=", "!==", "<=", ">=", "//", "**"], + l = r + this.current(); + switch (-1 !== je.indexOf(c, l) && (this.forward(), r = l, -1 !== je.indexOf(c, l + this.current()) && (r = l + this.current(), this.forward())), r) { + case "(": + o = "left-paren"; + break; + case ")": + o = "right-paren"; + break; + case "[": + o = "left-bracket"; + break; + case "]": + o = "right-bracket"; + break; + case "{": + o = "left-curly"; + break; + case "}": + o = "right-curly"; + break; + case ",": + o = "comma"; + break; + case ":": + o = "colon"; + break; + case "~": + o = "tilde"; + break; + case "|": + o = "pipe"; + break; + default: + o = "operator" + } + return Kt(o, r, t, n) } - return Kt("regex", { - body: i, - flags: a - }, t, n) + if ((e = this._extractUntil(" \n\t\r ()[]{}%*-+~/#,:|.<>=!")).match(/^[-+]?[0-9]+$/)) return "." === this.current() ? (this.forward(), Kt("float", e + "." + this._extract("0123456789"), t, n)) : Kt("int", e, t, n); + if (e.match(/^(true|false)$/)) return Kt("boolean", e, t, n); + if ("none" === e) return Kt("none", e, t, n); + if ("null" === e) return Kt("none", e, t, n); + if (e) return Kt("symbol", e, t, n); + throw new Error("Unexpected value while parsing: " + e) } - if (-1 !== "()[]{}%*-+~/#,:|.<>=!".indexOf(r)) { - this.forward(); - var o, c = ["==", "===", "!=", "!==", "<=", ">=", "//", "**"], - l = r + this.current(); - switch (-1 !== je.indexOf(c, l) && (this.forward(), r = l, -1 !== je.indexOf(c, l + this.current()) && (r = l + this.current(), this.forward())), r) { - case "(": - o = "left-paren"; - break; - case ")": - o = "right-paren"; - break; - case "[": - o = "left-bracket"; - break; - case "]": - o = "right-bracket"; - break; - case "{": - o = "left-curly"; - break; - case "}": - o = "right-curly"; - break; - case ",": - o = "comma"; - break; - case ":": - o = "colon"; - break; - case "~": - o = "tilde"; - break; - case "|": - o = "pipe"; - break; - default: - o = "operator" + var h, u = this.tags.BLOCK_START.charAt(0) + this.tags.VARIABLE_START.charAt(0) + this.tags.COMMENT_START.charAt(0) + this.tags.COMMENT_END.charAt(0); + if (this.isFinished()) return null; + if ((e = this._extractString(this.tags.BLOCK_START + "-")) || (e = this._extractString(this.tags.BLOCK_START))) return this.in_code = !0, Kt("block-start", e, t, n); + if ((e = this._extractString(this.tags.VARIABLE_START + "-")) || (e = this._extractString(this.tags.VARIABLE_START))) return this.in_code = !0, Kt("variable-start", e, t, n); + e = ""; + var p = !1; + for (this._matches(this.tags.COMMENT_START) && (p = !0, e = this._extractString(this.tags.COMMENT_START)); null !== (h = this._extractUntil(u));) { + if (e += h, (this._matches(this.tags.BLOCK_START) || this._matches(this.tags.VARIABLE_START) || this._matches(this.tags.COMMENT_START)) && !p) { + if (this.lstripBlocks && this._matches(this.tags.BLOCK_START) && this.colno > 0 && this.colno <= e.length) { + var f = e.slice(-this.colno); + if (/^\s+$/.test(f) && !(e = e.slice(0, -this.colno)).length) return this.nextToken() + } + break } - return Kt(o, r, t, n) - } - if ((e = this._extractUntil(" \n\t\r ()[]{}%*-+~/#,:|.<>=!")).match(/^[-+]?[0-9]+$/)) return "." === this.current() ? (this.forward(), Kt("float", e + "." + this._extract("0123456789"), t, n)) : Kt("int", e, t, n); - if (e.match(/^(true|false)$/)) return Kt("boolean", e, t, n); - if ("none" === e) return Kt("none", e, t, n); - if ("null" === e) return Kt("none", e, t, n); - if (e) return Kt("symbol", e, t, n); - throw new Error("Unexpected value while parsing: " + e) - } - var h, u = this.tags.BLOCK_START.charAt(0) + this.tags.VARIABLE_START.charAt(0) + this.tags.COMMENT_START.charAt(0) + this.tags.COMMENT_END.charAt(0); - if (this.isFinished()) return null; - if ((e = this._extractString(this.tags.BLOCK_START + "-")) || (e = this._extractString(this.tags.BLOCK_START))) return this.in_code = !0, Kt("block-start", e, t, n); - if ((e = this._extractString(this.tags.VARIABLE_START + "-")) || (e = this._extractString(this.tags.VARIABLE_START))) return this.in_code = !0, Kt("variable-start", e, t, n); - e = ""; - var p = !1; - for (this._matches(this.tags.COMMENT_START) && (p = !0, e = this._extractString(this.tags.COMMENT_START)); null !== (h = this._extractUntil(u));) { - if (e += h, (this._matches(this.tags.BLOCK_START) || this._matches(this.tags.VARIABLE_START) || this._matches(this.tags.COMMENT_START)) && !p) { - if (this.lstripBlocks && this._matches(this.tags.BLOCK_START) && this.colno > 0 && this.colno <= e.length) { - var f = e.slice(-this.colno); - if (/^\s+$/.test(f) && !(e = e.slice(0, -this.colno)).length) return this.nextToken() + if (this._matches(this.tags.COMMENT_END)) { + if (!p) throw new Error("unexpected end of comment"); + e += this._extractString(this.tags.COMMENT_END); + break } - break + e += this.current(), this.forward() } - if (this._matches(this.tags.COMMENT_END)) { - if (!p) throw new Error("unexpected end of comment"); - e += this._extractString(this.tags.COMMENT_END); - break - } - e += this.current(), this.forward() - } - if (null === h && p) throw new Error("expected end of comment, got end of file"); - return Kt(p ? "comment" : "data", e, t, n) - }, t._parseString = function(e) { - this.forward(); - for (var t = ""; !this.isFinished() && this.current() !== e;) { - var n = this.current(); - if ("\\" === n) { - switch (this.forward(), this.current()) { - case "n": - t += "\n"; - break; - case "t": - t += "\t"; - break; - case "r": - t += "\r"; - break; - default: - t += this.current() - } - this.forward() - } else t += n, this.forward() - } - return this.forward(), t - }, t._matches = function(e) { - return this.index + e.length > this.len ? null : this.str.slice(this.index, this.index + e.length) === e - }, t._extractString = function(e) { - return this._matches(e) ? (this.forwardN(e.length), e) : null - }, t._extractUntil = function(e) { - return this._extractMatching(!0, e || "") - }, t._extract = function(e) { - return this._extractMatching(!1, e) - }, t._extractMatching = function(e, t) { - if (this.isFinished()) return null; - var n = t.indexOf(this.current()); - if (e && -1 === n || !e && -1 !== n) { - var r = this.current(); + if (null === h && p) throw new Error("expected end of comment, got end of file"); + return Kt(p ? "comment" : "data", e, t, n) + }, t._parseString = function(e) { this.forward(); - for (var i = t.indexOf(this.current()); - (e && -1 === i || !e && -1 !== i) && !this.isFinished();) r += this.current(), this.forward(), i = t.indexOf(this.current()); - return r - } - return "" - }, t._extractRegex = function(e) { - var t = this.currentStr().match(e); - return t ? (this.forwardN(t[0].length), t) : null - }, t.isFinished = function() { - return this.index >= this.len - }, t.forwardN = function(e) { - for (var t = 0; t < e; t++) this.forward() - }, t.forward = function() { - this.index++, "\n" === this.previous() ? (this.lineno++, this.colno = 0) : this.colno++ - }, t.backN = function(e) { - for (var t = 0; t < e; t++) this.back() - }, t.back = function() { - if (this.index--, "\n" === this.current()) { - this.lineno--; - var e = this.src.lastIndexOf("\n", this.index - 1); - this.colno = -1 === e ? this.index : this.index - e - } else this.colno-- - }, t.current = function() { - return this.isFinished() ? "" : this.str.charAt(this.index) - }, t.currentStr = function() { - return this.isFinished() ? "" : this.str.substr(this.index) - }, t.previous = function() { - return this.str.charAt(this.index - 1) - }, e -}(), + for (var t = ""; !this.isFinished() && this.current() !== e;) { + var n = this.current(); + if ("\\" === n) { + switch (this.forward(), this.current()) { + case "n": + t += "\n"; + break; + case "t": + t += "\t"; + break; + case "r": + t += "\r"; + break; + default: + t += this.current() + } + this.forward() + } else t += n, this.forward() + } + return this.forward(), t + }, t._matches = function(e) { + return this.index + e.length > this.len ? null : this.str.slice(this.index, this.index + e.length) === e + }, t._extractString = function(e) { + return this._matches(e) ? (this.forwardN(e.length), e) : null + }, t._extractUntil = function(e) { + return this._extractMatching(!0, e || "") + }, t._extract = function(e) { + return this._extractMatching(!1, e) + }, t._extractMatching = function(e, t) { + if (this.isFinished()) return null; + var n = t.indexOf(this.current()); + if (e && -1 === n || !e && -1 !== n) { + var r = this.current(); + this.forward(); + for (var i = t.indexOf(this.current()); + (e && -1 === i || !e && -1 !== i) && !this.isFinished();) r += this.current(), this.forward(), i = t.indexOf(this.current()); + return r + } + return "" + }, t._extractRegex = function(e) { + var t = this.currentStr().match(e); + return t ? (this.forwardN(t[0].length), t) : null + }, t.isFinished = function() { + return this.index >= this.len + }, t.forwardN = function(e) { + for (var t = 0; t < e; t++) this.forward() + }, t.forward = function() { + this.index++, "\n" === this.previous() ? (this.lineno++, this.colno = 0) : this.colno++ + }, t.backN = function(e) { + for (var t = 0; t < e; t++) this.back() + }, t.back = function() { + if (this.index--, "\n" === this.current()) { + this.lineno--; + var e = this.src.lastIndexOf("\n", this.index - 1); + this.colno = -1 === e ? this.index : this.index - e + } else this.colno-- + }, t.current = function() { + return this.isFinished() ? "" : this.str.charAt(this.index) + }, t.currentStr = function() { + return this.isFinished() ? "" : this.str.substr(this.index) + }, t.previous = function() { + return this.str.charAt(this.index - 1) + }, e + }(), Vt = { lex: function(e, t) { return new jt(e, t) @@ -1862,17 +2001,21 @@ function Wt(e, t) { r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r) } } + function Qt(e, t, n) { return t && Wt(e.prototype, t), n && Wt(e, n), e } + function Xt(e, t) { e.prototype = Object.create(t.prototype), e.prototype.constructor = e, $t(e, t) } + function $t(e, t) { return $t = Object.setPrototypeOf || function(e, t) { return e.__proto__ = t, e }, $t(e, t) } + function zt(e, t, n) { n = n || {}, je.keys(n).forEach((function(t) { n[t] = function(e, t) { @@ -1898,18 +2041,18 @@ function zt(e, t, n) { return je._assign(r.prototype, n), r } var Jt = function() { - function e() { - this.init.apply(this, arguments) - } - return e.prototype.init = function() {}, e.extend = function(e, t) { - return "object" == typeof e && (t = e, e = "anonymous"), zt(this, e, t) - }, Qt(e, [{ - key: "typename", - get: function() { - return this.constructor.name + function e() { + this.init.apply(this, arguments) } - }]), e -}(), + return e.prototype.init = function() {}, e.extend = function(e, t) { + return "object" == typeof e && (t = e, e = "anonymous"), zt(this, e, t) + }, Qt(e, [{ + key: "typename", + get: function() { + return this.constructor.name + } + }]), e + }(), Zt = function(e) { function t() { var t, n; @@ -1935,46 +2078,50 @@ function tn(e, t) { r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r) } } + function nn(e, t, n) { return t && tn(e.prototype, t), n && tn(e, n), e } + function rn(e, t) { e.prototype = Object.create(t.prototype), e.prototype.constructor = e, sn(e, t) } + function sn(e, t) { return sn = Object.setPrototypeOf || function(e, t) { return e.__proto__ = t, e }, sn(e, t) } + function an(e, t, n) { e instanceof t && n.push(e), e instanceof on && e.findAll(t, n) } var on = function(e) { - function t() { - return e.apply(this, arguments) || this - } - rn(t, e); - var n = t.prototype; - return n.init = function(e, t) { - for (var n = arguments, r = this, i = arguments.length, s = new Array(i > 2 ? i - 2 : 0), a = 2; a < i; a++) s[a - 2] = arguments[a]; - this.lineno = e, this.colno = t, this.fields.forEach((function(e, t) { - var i = n[t + 2]; - void 0 === i && (i = null), r[e] = i - })) - }, n.findAll = function(e, t) { - var n = this; - return t = t || [], this instanceof ln ? this.children.forEach((function(n) { - return an(n, e, t) - })) : this.fields.forEach((function(r) { - return an(n[r], e, t) - })), t - }, n.iterFields = function(e) { - var t = this; - this.fields.forEach((function(n) { - e(t[n], n) - })) - }, t -}(en.Obj), + function t() { + return e.apply(this, arguments) || this + } + rn(t, e); + var n = t.prototype; + return n.init = function(e, t) { + for (var n = arguments, r = this, i = arguments.length, s = new Array(i > 2 ? i - 2 : 0), a = 2; a < i; a++) s[a - 2] = arguments[a]; + this.lineno = e, this.colno = t, this.fields.forEach((function(e, t) { + var i = n[t + 2]; + void 0 === i && (i = null), r[e] = i + })) + }, n.findAll = function(e, t) { + var n = this; + return t = t || [], this instanceof ln ? this.children.forEach((function(n) { + return an(n, e, t) + })) : this.fields.forEach((function(r) { + return an(n[r], e, t) + })), t + }, n.iterFields = function(e) { + var t = this; + this.fields.forEach((function(n) { + e(t[n], n) + })) + }, t + }(en.Obj), cn = function(e) { function t() { return e.apply(this, arguments) || this @@ -2223,477 +2370,482 @@ function ur(e, t) { } hr.Node, hr.Root, hr.NodeList, hr.Value, hr.Literal, hr.Group, hr.Pair, hr.Dict, hr.Output, hr.Capture, hr.TemplateData, hr.If, hr.IfAsync, hr.InlineIf, hr.For, hr.AsyncEach, hr.AsyncAll, hr.Macro, hr.Caller, hr.Import, hr.FromImport, hr.FunCall, hr.Filter, hr.FilterAsync, hr.KeywordArgs, hr.Block, hr.Super, hr.Extends, hr.Include, hr.Switch, hr.Case, hr.LookupVal, hr.BinOp, hr.In, hr.Is, hr.Or, hr.And, hr.Not, hr.Add, hr.Concat, hr.Sub, hr.Mul, hr.Div, hr.FloorDiv, hr.Mod, hr.Pow, hr.Neg, hr.Pos, hr.Compare, hr.CompareOperand, hr.CallExtension, hr.CallExtensionAsync, hr.printNodes; var pr = function(e) { - var t, n; + var t, n; - function r() { - return e.apply(this, arguments) || this - } - n = e, (t = r).prototype = Object.create(n.prototype), t.prototype.constructor = t, ur(t, n); - var i = r.prototype; - return i.init = function(e) { - this.tokens = e, this.peeked = null, this.breakOnBlocks = null, this.dropLeadingWhitespace = !1, this.extensions = [] - }, i.nextToken = function(e) { - var t; - if (this.peeked) { - if (e || this.peeked.type !== Vt.TOKEN_WHITESPACE) return t = this.peeked, this.peeked = null, t; - this.peeked = null + function r() { + return e.apply(this, arguments) || this } - if (t = this.tokens.nextToken(), !e) for (; t && t.type === Vt.TOKEN_WHITESPACE;) t = this.tokens.nextToken(); - return t - }, i.peekToken = function() { - return this.peeked = this.peeked || this.nextToken(), this.peeked - }, i.pushToken = function(e) { - if (this.peeked) throw new Error("pushToken: can only push one token on between reads"); - this.peeked = e - }, i.error = function(e, t, n) { - if (void 0 === t || void 0 === n) { - var r = this.peekToken() || {}; - t = r.lineno, n = r.colno - } - return void 0 !== t && (t += 1), void 0 !== n && (n += 1), new je.TemplateError(e, t, n) - }, i.fail = function(e, t, n) { - throw this.error(e, t, n) - }, i.skip = function(e) { - var t = this.nextToken(); - return !(!t || t.type !== e) || (this.pushToken(t), !1) - }, i.expect = function(e) { - var t = this.nextToken(); - return t.type !== e && this.fail("expected " + e + ", got " + t.type, t.lineno, t.colno), t - }, i.skipValue = function(e, t) { - var n = this.nextToken(); - return !(!n || n.type !== e || n.value !== t) || (this.pushToken(n), !1) - }, i.skipSymbol = function(e) { - return this.skipValue(Vt.TOKEN_SYMBOL, e) - }, i.advanceAfterBlockEnd = function(e) { - var t; - return e || ((t = this.peekToken()) || this.fail("unexpected end of file"), t.type !== Vt.TOKEN_SYMBOL && this.fail("advanceAfterBlockEnd: expected symbol token or explicit name to be passed"), e = this.nextToken().value), (t = this.nextToken()) && t.type === Vt.TOKEN_BLOCK_END ? "-" === t.value.charAt(0) && (this.dropLeadingWhitespace = !0) : this.fail("expected block end in " + e + " statement"), t - }, i.advanceAfterVariableEnd = function() { - var e = this.nextToken(); - e && e.type === Vt.TOKEN_VARIABLE_END ? this.dropLeadingWhitespace = "-" === e.value.charAt(e.value.length - this.tokens.tags.VARIABLE_END.length - 1) : (this.pushToken(e), this.fail("expected variable end")) - }, i.parseFor = function() { - var e, t, n = this.peekToken(); - if (this.skipSymbol("for") ? (e = new hr.For(n.lineno, n.colno), t = "endfor") : this.skipSymbol("asyncEach") ? (e = new hr.AsyncEach(n.lineno, n.colno), t = "endeach") : this.skipSymbol("asyncAll") ? (e = new hr.AsyncAll(n.lineno, n.colno), t = "endall") : this.fail("parseFor: expected for{Async}", n.lineno, n.colno), e.name = this.parsePrimary(), e.name instanceof hr.Symbol || this.fail("parseFor: variable name expected for loop"), this.peekToken().type === Vt.TOKEN_COMMA) { - var r = e.name; - for (e.name = new hr.Array(r.lineno, r.colno), e.name.addChild(r); this.skip(Vt.TOKEN_COMMA);) { - var i = this.parsePrimary(); - e.name.addChild(i) + n = e, (t = r).prototype = Object.create(n.prototype), t.prototype.constructor = t, ur(t, n); + var i = r.prototype; + return i.init = function(e) { + this.tokens = e, this.peeked = null, this.breakOnBlocks = null, this.dropLeadingWhitespace = !1, this.extensions = [] + }, i.nextToken = function(e) { + var t; + if (this.peeked) { + if (e || this.peeked.type !== Vt.TOKEN_WHITESPACE) return t = this.peeked, this.peeked = null, t; + this.peeked = null } - } - return this.skipSymbol("in") || this.fail('parseFor: expected "in" keyword for loop', n.lineno, n.colno), e.arr = this.parseExpression(), this.advanceAfterBlockEnd(n.value), e.body = this.parseUntilBlocks(t, "else"), this.skipSymbol("else") && (this.advanceAfterBlockEnd("else"), e.else_ = this.parseUntilBlocks(t)), this.advanceAfterBlockEnd(), e - }, i.parseMacro = function() { - var e = this.peekToken(); - this.skipSymbol("macro") || this.fail("expected macro"); - var t = this.parsePrimary(!0), - n = this.parseSignature(), - r = new hr.Macro(e.lineno, e.colno, t, n); - return this.advanceAfterBlockEnd(e.value), r.body = this.parseUntilBlocks("endmacro"), this.advanceAfterBlockEnd(), r - }, i.parseCall = function() { - var e = this.peekToken(); - this.skipSymbol("call") || this.fail("expected call"); - var t = this.parseSignature(!0) || new hr.NodeList, - n = this.parsePrimary(); - this.advanceAfterBlockEnd(e.value); - var r = this.parseUntilBlocks("endcall"); - this.advanceAfterBlockEnd(); - var i = new hr.Symbol(e.lineno, e.colno, "caller"), - s = new hr.Caller(e.lineno, e.colno, i, t, r), - a = n.args.children; - return a[a.length - 1] instanceof hr.KeywordArgs || a.push(new hr.KeywordArgs), a[a.length - 1].addChild(new hr.Pair(e.lineno, e.colno, i, s)), new hr.Output(e.lineno, e.colno, [n]) - }, i.parseWithContext = function() { - var e = this.peekToken(), - t = null; - return this.skipSymbol("with") ? t = !0 : this.skipSymbol("without") && (t = !1), null !== t && (this.skipSymbol("context") || this.fail("parseFrom: expected context after with/without", e.lineno, e.colno)), t - }, i.parseImport = function() { - var e = this.peekToken(); - this.skipSymbol("import") || this.fail("parseImport: expected import", e.lineno, e.colno); - var t = this.parseExpression(); - this.skipSymbol("as") || this.fail('parseImport: expected "as" keyword', e.lineno, e.colno); - var n = this.parseExpression(), - r = this.parseWithContext(), - i = new hr.Import(e.lineno, e.colno, t, n, r); - return this.advanceAfterBlockEnd(e.value), i - }, i.parseFrom = function() { - var e = this.peekToken(); - this.skipSymbol("from") || this.fail("parseFrom: expected from"); - var t = this.parseExpression(); - this.skipSymbol("import") || this.fail("parseFrom: expected import", e.lineno, e.colno); - for (var n, r = new hr.NodeList;;) { - var i = this.peekToken(); - if (i.type === Vt.TOKEN_BLOCK_END) { - r.children.length || this.fail("parseFrom: Expected at least one import name", e.lineno, e.colno), "-" === i.value.charAt(0) && (this.dropLeadingWhitespace = !0), this.nextToken(); - break + if (t = this.tokens.nextToken(), !e) + for (; t && t.type === Vt.TOKEN_WHITESPACE;) t = this.tokens.nextToken(); + return t + }, i.peekToken = function() { + return this.peeked = this.peeked || this.nextToken(), this.peeked + }, i.pushToken = function(e) { + if (this.peeked) throw new Error("pushToken: can only push one token on between reads"); + this.peeked = e + }, i.error = function(e, t, n) { + if (void 0 === t || void 0 === n) { + var r = this.peekToken() || {}; + t = r.lineno, n = r.colno } - r.children.length > 0 && !this.skip(Vt.TOKEN_COMMA) && this.fail("parseFrom: expected comma", e.lineno, e.colno); - var s = this.parsePrimary(); - if ("_" === s.value.charAt(0) && this.fail("parseFrom: names starting with an underscore cannot be imported", s.lineno, s.colno), this.skipSymbol("as")) { - var a = this.parsePrimary(); - r.addChild(new hr.Pair(s.lineno, s.colno, s, a)) - } else r.addChild(s); - n = this.parseWithContext() - } - return new hr.FromImport(e.lineno, e.colno, t, r, n) - }, i.parseBlock = function() { - var e = this.peekToken(); - this.skipSymbol("block") || this.fail("parseBlock: expected block", e.lineno, e.colno); - var t = new hr.Block(e.lineno, e.colno); - t.name = this.parsePrimary(), t.name instanceof hr.Symbol || this.fail("parseBlock: variable name expected", e.lineno, e.colno), this.advanceAfterBlockEnd(e.value), t.body = this.parseUntilBlocks("endblock"), this.skipSymbol("endblock"), this.skipSymbol(t.name.value); - var n = this.peekToken(); - return n || this.fail("parseBlock: expected endblock, got end of file"), this.advanceAfterBlockEnd(n.value), t - }, i.parseExtends = function() { - var e = "extends", - t = this.peekToken(); - this.skipSymbol(e) || this.fail("parseTemplateRef: expected extends"); - var n = new hr.Extends(t.lineno, t.colno); - return n.template = this.parseExpression(), this.advanceAfterBlockEnd(t.value), n - }, i.parseInclude = function() { - var e = "include", - t = this.peekToken(); - this.skipSymbol(e) || this.fail("parseInclude: expected include"); - var n = new hr.Include(t.lineno, t.colno); - return n.template = this.parseExpression(), this.skipSymbol("ignore") && this.skipSymbol("missing") && (n.ignoreMissing = !0), this.advanceAfterBlockEnd(t.value), n - }, i.parseIf = function() { - var e, t = this.peekToken(); - this.skipSymbol("if") || this.skipSymbol("elif") || this.skipSymbol("elseif") ? e = new hr.If(t.lineno, t.colno) : this.skipSymbol("ifAsync") ? e = new hr.IfAsync(t.lineno, t.colno) : this.fail("parseIf: expected if, elif, or elseif", t.lineno, t.colno), e.cond = this.parseExpression(), this.advanceAfterBlockEnd(t.value), e.body = this.parseUntilBlocks("elif", "elseif", "else", "endif"); - var n = this.peekToken(); - switch (n && n.value) { - case "elseif": - case "elif": - e.else_ = this.parseIf(); - break; - case "else": - this.advanceAfterBlockEnd(), e.else_ = this.parseUntilBlocks("endif"), this.advanceAfterBlockEnd(); - break; - case "endif": - e.else_ = null, this.advanceAfterBlockEnd(); - break; - default: - this.fail("parseIf: expected elif, else, or endif, got end of file") - } - return e - }, i.parseSet = function() { - var e = this.peekToken(); - this.skipSymbol("set") || this.fail("parseSet: expected set", e.lineno, e.colno); - for (var t, n = new hr.Set(e.lineno, e.colno, []); - (t = this.parsePrimary()) && (n.targets.push(t), this.skip(Vt.TOKEN_COMMA));); - return this.skipValue(Vt.TOKEN_OPERATOR, "=") ? (n.value = this.parseExpression(), this.advanceAfterBlockEnd(e.value)) : this.skip(Vt.TOKEN_BLOCK_END) ? (n.body = new hr.Capture(e.lineno, e.colno, this.parseUntilBlocks("endset")), n.value = null, this.advanceAfterBlockEnd()) : this.fail("parseSet: expected = or block end in set tag", e.lineno, e.colno), n - }, i.parseSwitch = function() { - var e = "switch", - t = "endswitch", - n = "case", - r = "default", - i = this.peekToken(); - this.skipSymbol(e) || this.skipSymbol(n) || this.skipSymbol(r) || this.fail('parseSwitch: expected "switch," "case" or "default"', i.lineno, i.colno); - var s = this.parseExpression(); - this.advanceAfterBlockEnd(e), this.parseUntilBlocks(n, r, t); - var a, o = this.peekToken(), - c = []; - do { - this.skipSymbol(n); - var l = this.parseExpression(); - this.advanceAfterBlockEnd(e); - var h = this.parseUntilBlocks(n, r, t); - c.push(new hr.Case(o.line, o.col, l, h)), o = this.peekToken() - } while (o && o.value === n); - switch (o.value) { - case r: - this.advanceAfterBlockEnd(), a = this.parseUntilBlocks(t), this.advanceAfterBlockEnd(); - break; - case t: - this.advanceAfterBlockEnd(); - break; - default: - this.fail('parseSwitch: expected "case," "default" or "endswitch," got EOF.') - } - return new hr.Switch(i.lineno, i.colno, s, c, a) - }, i.parseStatement = function() { - var e = this.peekToken(); - if (e.type !== Vt.TOKEN_SYMBOL && this.fail("tag name expected", e.lineno, e.colno), this.breakOnBlocks && -1 !== je.indexOf(this.breakOnBlocks, e.value)) return null; - switch (e.value) { - case "raw": - return this.parseRaw(); - case "verbatim": - return this.parseRaw("verbatim"); - case "if": - case "ifAsync": - return this.parseIf(); - case "for": - case "asyncEach": - case "asyncAll": - return this.parseFor(); - case "block": - return this.parseBlock(); - case "extends": - return this.parseExtends(); - case "include": - return this.parseInclude(); - case "set": - return this.parseSet(); - case "macro": - return this.parseMacro(); - case "call": - return this.parseCall(); - case "import": - return this.parseImport(); - case "from": - return this.parseFrom(); - case "filter": - return this.parseFilterStatement(); - case "switch": - return this.parseSwitch(); - default: - if (this.extensions.length) for (var t = 0; t < this.extensions.length; t++) { - var n = this.extensions[t]; - if (-1 !== je.indexOf(n.tags || [], e.value)) return n.parse(this, hr, Vt) - } - this.fail("unknown block tag: " + e.value, e.lineno, e.colno) - } - }, i.parseRaw = function(e) { - for (var t = "end" + (e = e || "raw"), n = new RegExp("([\\s\\S]*?){%\\s*(" + e + "|" + t + ")\\s*(?=%})%}"), r = 1, i = "", s = null, a = this.advanceAfterBlockEnd(); - (s = this.tokens._extractRegex(n)) && r > 0;) { - var o = s[0], - c = s[1], - l = s[2]; - l === e ? r += 1 : l === t && (r -= 1), 0 === r ? (i += c, this.tokens.backN(o.length - c.length)) : i += o - } - return new hr.Output(a.lineno, a.colno, [new hr.TemplateData(a.lineno, a.colno, i)]) - }, i.parsePostfix = function(e) { - for (var t, n = this.peekToken(); n;) { - if (n.type === Vt.TOKEN_LEFT_PAREN) e = new hr.FunCall(n.lineno, n.colno, e, this.parseSignature()); - else if (n.type === Vt.TOKEN_LEFT_BRACKET)(t = this.parseAggregate()).children.length > 1 && this.fail("invalid index"), e = new hr.LookupVal(n.lineno, n.colno, e, t.children[0]); - else { - if (n.type !== Vt.TOKEN_OPERATOR || "." !== n.value) break; - this.nextToken(); - var r = this.nextToken(); - r.type !== Vt.TOKEN_SYMBOL && this.fail("expected name as lookup value, got " + r.value, r.lineno, r.colno), t = new hr.Literal(r.lineno, r.colno, r.value), e = new hr.LookupVal(n.lineno, n.colno, e, t) - } - n = this.peekToken() - } - return e - }, i.parseExpression = function() { - return this.parseInlineIf() - }, i.parseInlineIf = function() { - var e = this.parseOr(); - if (this.skipSymbol("if")) { - var t = this.parseOr(), - n = e; - (e = new hr.InlineIf(e.lineno, e.colno)).body = n, e.cond = t, this.skipSymbol("else") ? e.else_ = this.parseOr() : e.else_ = null - } - return e - }, i.parseOr = function() { - for (var e = this.parseAnd(); this.skipSymbol("or");) { - var t = this.parseAnd(); - e = new hr.Or(e.lineno, e.colno, e, t) - } - return e - }, i.parseAnd = function() { - for (var e = this.parseNot(); this.skipSymbol("and");) { - var t = this.parseNot(); - e = new hr.And(e.lineno, e.colno, e, t) - } - return e - }, i.parseNot = function() { - var e = this.peekToken(); - return this.skipSymbol("not") ? new hr.Not(e.lineno, e.colno, this.parseNot()) : this.parseIn() - }, i.parseIn = function() { - for (var e = this.parseIs();;) { + return void 0 !== t && (t += 1), void 0 !== n && (n += 1), new je.TemplateError(e, t, n) + }, i.fail = function(e, t, n) { + throw this.error(e, t, n) + }, i.skip = function(e) { var t = this.nextToken(); - if (!t) break; - var n = t.type === Vt.TOKEN_SYMBOL && "not" === t.value; - if (n || this.pushToken(t), !this.skipSymbol("in")) { - n && this.pushToken(t); - break + return !(!t || t.type !== e) || (this.pushToken(t), !1) + }, i.expect = function(e) { + var t = this.nextToken(); + return t.type !== e && this.fail("expected " + e + ", got " + t.type, t.lineno, t.colno), t + }, i.skipValue = function(e, t) { + var n = this.nextToken(); + return !(!n || n.type !== e || n.value !== t) || (this.pushToken(n), !1) + }, i.skipSymbol = function(e) { + return this.skipValue(Vt.TOKEN_SYMBOL, e) + }, i.advanceAfterBlockEnd = function(e) { + var t; + return e || ((t = this.peekToken()) || this.fail("unexpected end of file"), t.type !== Vt.TOKEN_SYMBOL && this.fail("advanceAfterBlockEnd: expected symbol token or explicit name to be passed"), e = this.nextToken().value), (t = this.nextToken()) && t.type === Vt.TOKEN_BLOCK_END ? "-" === t.value.charAt(0) && (this.dropLeadingWhitespace = !0) : this.fail("expected block end in " + e + " statement"), t + }, i.advanceAfterVariableEnd = function() { + var e = this.nextToken(); + e && e.type === Vt.TOKEN_VARIABLE_END ? this.dropLeadingWhitespace = "-" === e.value.charAt(e.value.length - this.tokens.tags.VARIABLE_END.length - 1) : (this.pushToken(e), this.fail("expected variable end")) + }, i.parseFor = function() { + var e, t, n = this.peekToken(); + if (this.skipSymbol("for") ? (e = new hr.For(n.lineno, n.colno), t = "endfor") : this.skipSymbol("asyncEach") ? (e = new hr.AsyncEach(n.lineno, n.colno), t = "endeach") : this.skipSymbol("asyncAll") ? (e = new hr.AsyncAll(n.lineno, n.colno), t = "endall") : this.fail("parseFor: expected for{Async}", n.lineno, n.colno), e.name = this.parsePrimary(), e.name instanceof hr.Symbol || this.fail("parseFor: variable name expected for loop"), this.peekToken().type === Vt.TOKEN_COMMA) { + var r = e.name; + for (e.name = new hr.Array(r.lineno, r.colno), e.name.addChild(r); this.skip(Vt.TOKEN_COMMA);) { + var i = this.parsePrimary(); + e.name.addChild(i) + } } - var r = this.parseIs(); - e = new hr.In(e.lineno, e.colno, e, r), n && (e = new hr.Not(e.lineno, e.colno, e)) - } - return e - }, i.parseIs = function() { - var e = this.parseCompare(); - if (this.skipSymbol("is")) { - var t = this.skipSymbol("not"), - n = this.parseCompare(); - e = new hr.Is(e.lineno, e.colno, e, n), t && (e = new hr.Not(e.lineno, e.colno, e)) - } - return e - }, i.parseCompare = function() { - for (var e = ["==", "===", "!=", "!==", "<", ">", "<=", ">="], t = this.parseConcat(), n = [];;) { - var r = this.nextToken(); - if (!r) break; - if (-1 === e.indexOf(r.value)) { - this.pushToken(r); - break + return this.skipSymbol("in") || this.fail('parseFor: expected "in" keyword for loop', n.lineno, n.colno), e.arr = this.parseExpression(), this.advanceAfterBlockEnd(n.value), e.body = this.parseUntilBlocks(t, "else"), this.skipSymbol("else") && (this.advanceAfterBlockEnd("else"), e.else_ = this.parseUntilBlocks(t)), this.advanceAfterBlockEnd(), e + }, i.parseMacro = function() { + var e = this.peekToken(); + this.skipSymbol("macro") || this.fail("expected macro"); + var t = this.parsePrimary(!0), + n = this.parseSignature(), + r = new hr.Macro(e.lineno, e.colno, t, n); + return this.advanceAfterBlockEnd(e.value), r.body = this.parseUntilBlocks("endmacro"), this.advanceAfterBlockEnd(), r + }, i.parseCall = function() { + var e = this.peekToken(); + this.skipSymbol("call") || this.fail("expected call"); + var t = this.parseSignature(!0) || new hr.NodeList, + n = this.parsePrimary(); + this.advanceAfterBlockEnd(e.value); + var r = this.parseUntilBlocks("endcall"); + this.advanceAfterBlockEnd(); + var i = new hr.Symbol(e.lineno, e.colno, "caller"), + s = new hr.Caller(e.lineno, e.colno, i, t, r), + a = n.args.children; + return a[a.length - 1] instanceof hr.KeywordArgs || a.push(new hr.KeywordArgs), a[a.length - 1].addChild(new hr.Pair(e.lineno, e.colno, i, s)), new hr.Output(e.lineno, e.colno, [n]) + }, i.parseWithContext = function() { + var e = this.peekToken(), + t = null; + return this.skipSymbol("with") ? t = !0 : this.skipSymbol("without") && (t = !1), null !== t && (this.skipSymbol("context") || this.fail("parseFrom: expected context after with/without", e.lineno, e.colno)), t + }, i.parseImport = function() { + var e = this.peekToken(); + this.skipSymbol("import") || this.fail("parseImport: expected import", e.lineno, e.colno); + var t = this.parseExpression(); + this.skipSymbol("as") || this.fail('parseImport: expected "as" keyword', e.lineno, e.colno); + var n = this.parseExpression(), + r = this.parseWithContext(), + i = new hr.Import(e.lineno, e.colno, t, n, r); + return this.advanceAfterBlockEnd(e.value), i + }, i.parseFrom = function() { + var e = this.peekToken(); + this.skipSymbol("from") || this.fail("parseFrom: expected from"); + var t = this.parseExpression(); + this.skipSymbol("import") || this.fail("parseFrom: expected import", e.lineno, e.colno); + for (var n, r = new hr.NodeList;;) { + var i = this.peekToken(); + if (i.type === Vt.TOKEN_BLOCK_END) { + r.children.length || this.fail("parseFrom: Expected at least one import name", e.lineno, e.colno), "-" === i.value.charAt(0) && (this.dropLeadingWhitespace = !0), this.nextToken(); + break + } + r.children.length > 0 && !this.skip(Vt.TOKEN_COMMA) && this.fail("parseFrom: expected comma", e.lineno, e.colno); + var s = this.parsePrimary(); + if ("_" === s.value.charAt(0) && this.fail("parseFrom: names starting with an underscore cannot be imported", s.lineno, s.colno), this.skipSymbol("as")) { + var a = this.parsePrimary(); + r.addChild(new hr.Pair(s.lineno, s.colno, s, a)) + } else r.addChild(s); + n = this.parseWithContext() } - n.push(new hr.CompareOperand(r.lineno, r.colno, this.parseConcat(), r.value)) - } - return n.length ? new hr.Compare(n[0].lineno, n[0].colno, t, n) : t - }, i.parseConcat = function() { - for (var e = this.parseAdd(); this.skipValue(Vt.TOKEN_TILDE, "~");) { - var t = this.parseAdd(); - e = new hr.Concat(e.lineno, e.colno, e, t) - } - return e - }, i.parseAdd = function() { - for (var e = this.parseSub(); this.skipValue(Vt.TOKEN_OPERATOR, "+");) { - var t = this.parseSub(); - e = new hr.Add(e.lineno, e.colno, e, t) - } - return e - }, i.parseSub = function() { - for (var e = this.parseMul(); this.skipValue(Vt.TOKEN_OPERATOR, "-");) { - var t = this.parseMul(); - e = new hr.Sub(e.lineno, e.colno, e, t) - } - return e - }, i.parseMul = function() { - for (var e = this.parseDiv(); this.skipValue(Vt.TOKEN_OPERATOR, "*");) { - var t = this.parseDiv(); - e = new hr.Mul(e.lineno, e.colno, e, t) - } - return e - }, i.parseDiv = function() { - for (var e = this.parseFloorDiv(); this.skipValue(Vt.TOKEN_OPERATOR, "/");) { - var t = this.parseFloorDiv(); - e = new hr.Div(e.lineno, e.colno, e, t) - } - return e - }, i.parseFloorDiv = function() { - for (var e = this.parseMod(); this.skipValue(Vt.TOKEN_OPERATOR, "//");) { - var t = this.parseMod(); - e = new hr.FloorDiv(e.lineno, e.colno, e, t) - } - return e - }, i.parseMod = function() { - for (var e = this.parsePow(); this.skipValue(Vt.TOKEN_OPERATOR, "%");) { - var t = this.parsePow(); - e = new hr.Mod(e.lineno, e.colno, e, t) - } - return e - }, i.parsePow = function() { - for (var e = this.parseUnary(); this.skipValue(Vt.TOKEN_OPERATOR, "**");) { - var t = this.parseUnary(); - e = new hr.Pow(e.lineno, e.colno, e, t) - } - return e - }, i.parseUnary = function(e) { - var t, n = this.peekToken(); - return t = this.skipValue(Vt.TOKEN_OPERATOR, "-") ? new hr.Neg(n.lineno, n.colno, this.parseUnary(!0)) : this.skipValue(Vt.TOKEN_OPERATOR, "+") ? new hr.Pos(n.lineno, n.colno, this.parseUnary(!0)) : this.parsePrimary(), e || (t = this.parseFilter(t)), t - }, i.parsePrimary = function(e) { - var t, n = this.nextToken(), - r = null; - if (n ? n.type === Vt.TOKEN_STRING ? t = n.value : n.type === Vt.TOKEN_INT ? t = parseInt(n.value, 10) : n.type === Vt.TOKEN_FLOAT ? t = parseFloat(n.value) : n.type === Vt.TOKEN_BOOLEAN ? "true" === n.value ? t = !0 : "false" === n.value ? t = !1 : this.fail("invalid boolean: " + n.value, n.lineno, n.colno) : n.type === Vt.TOKEN_NONE ? t = null : n.type === Vt.TOKEN_REGEX && (t = new RegExp(n.value.body, n.value.flags)) : this.fail("expected expression, got end of file"), void 0 !== t ? r = new hr.Literal(n.lineno, n.colno, t) : n.type === Vt.TOKEN_SYMBOL ? r = new hr.Symbol(n.lineno, n.colno, n.value) : (this.pushToken(n), r = this.parseAggregate()), e || (r = this.parsePostfix(r)), r) return r; - throw this.error("unexpected token: " + n.value, n.lineno, n.colno) - }, i.parseFilterName = function() { - for (var e = this.expect(Vt.TOKEN_SYMBOL), t = e.value; this.skipValue(Vt.TOKEN_OPERATOR, ".");) t += "." + this.expect(Vt.TOKEN_SYMBOL).value; - return new hr.Symbol(e.lineno, e.colno, t) - }, i.parseFilterArgs = function(e) { - return this.peekToken().type === Vt.TOKEN_LEFT_PAREN ? this.parsePostfix(e).args.children : [] - }, i.parseFilter = function(e) { - for (; this.skip(Vt.TOKEN_PIPE);) { - var t = this.parseFilterName(); - e = new hr.Filter(t.lineno, t.colno, t, new hr.NodeList(t.lineno, t.colno, [e].concat(this.parseFilterArgs(e)))) - } - return e - }, i.parseFilterStatement = function() { - var e = this.peekToken(); - this.skipSymbol("filter") || this.fail("parseFilterStatement: expected filter"); - var t = this.parseFilterName(), - n = this.parseFilterArgs(t); - this.advanceAfterBlockEnd(e.value); - var r = new hr.Capture(t.lineno, t.colno, this.parseUntilBlocks("endfilter")); - this.advanceAfterBlockEnd(); - var i = new hr.Filter(t.lineno, t.colno, t, new hr.NodeList(t.lineno, t.colno, [r].concat(n))); - return new hr.Output(t.lineno, t.colno, [i]) - }, i.parseAggregate = function() { - var e, t = this.nextToken(); - switch (t.type) { - case Vt.TOKEN_LEFT_PAREN: - e = new hr.Group(t.lineno, t.colno); - break; - case Vt.TOKEN_LEFT_BRACKET: - e = new hr.Array(t.lineno, t.colno); - break; - case Vt.TOKEN_LEFT_CURLY: - e = new hr.Dict(t.lineno, t.colno); - break; - default: - return null - } - for (;;) { - var n = this.peekToken().type; - if (n === Vt.TOKEN_RIGHT_PAREN || n === Vt.TOKEN_RIGHT_BRACKET || n === Vt.TOKEN_RIGHT_CURLY) { - this.nextToken(); - break + return new hr.FromImport(e.lineno, e.colno, t, r, n) + }, i.parseBlock = function() { + var e = this.peekToken(); + this.skipSymbol("block") || this.fail("parseBlock: expected block", e.lineno, e.colno); + var t = new hr.Block(e.lineno, e.colno); + t.name = this.parsePrimary(), t.name instanceof hr.Symbol || this.fail("parseBlock: variable name expected", e.lineno, e.colno), this.advanceAfterBlockEnd(e.value), t.body = this.parseUntilBlocks("endblock"), this.skipSymbol("endblock"), this.skipSymbol(t.name.value); + var n = this.peekToken(); + return n || this.fail("parseBlock: expected endblock, got end of file"), this.advanceAfterBlockEnd(n.value), t + }, i.parseExtends = function() { + var e = "extends", + t = this.peekToken(); + this.skipSymbol(e) || this.fail("parseTemplateRef: expected extends"); + var n = new hr.Extends(t.lineno, t.colno); + return n.template = this.parseExpression(), this.advanceAfterBlockEnd(t.value), n + }, i.parseInclude = function() { + var e = "include", + t = this.peekToken(); + this.skipSymbol(e) || this.fail("parseInclude: expected include"); + var n = new hr.Include(t.lineno, t.colno); + return n.template = this.parseExpression(), this.skipSymbol("ignore") && this.skipSymbol("missing") && (n.ignoreMissing = !0), this.advanceAfterBlockEnd(t.value), n + }, i.parseIf = function() { + var e, t = this.peekToken(); + this.skipSymbol("if") || this.skipSymbol("elif") || this.skipSymbol("elseif") ? e = new hr.If(t.lineno, t.colno) : this.skipSymbol("ifAsync") ? e = new hr.IfAsync(t.lineno, t.colno) : this.fail("parseIf: expected if, elif, or elseif", t.lineno, t.colno), e.cond = this.parseExpression(), this.advanceAfterBlockEnd(t.value), e.body = this.parseUntilBlocks("elif", "elseif", "else", "endif"); + var n = this.peekToken(); + switch (n && n.value) { + case "elseif": + case "elif": + e.else_ = this.parseIf(); + break; + case "else": + this.advanceAfterBlockEnd(), e.else_ = this.parseUntilBlocks("endif"), this.advanceAfterBlockEnd(); + break; + case "endif": + e.else_ = null, this.advanceAfterBlockEnd(); + break; + default: + this.fail("parseIf: expected elif, else, or endif, got end of file") } - if (e.children.length > 0 && (this.skip(Vt.TOKEN_COMMA) || this.fail("parseAggregate: expected comma after expression", t.lineno, t.colno)), e instanceof hr.Dict) { - var r = this.parsePrimary(); - this.skip(Vt.TOKEN_COLON) || this.fail("parseAggregate: expected colon after dict key", t.lineno, t.colno); - var i = this.parseExpression(); - e.addChild(new hr.Pair(r.lineno, r.colno, r, i)) - } else { - var s = this.parseExpression(); - e.addChild(s) + return e + }, i.parseSet = function() { + var e = this.peekToken(); + this.skipSymbol("set") || this.fail("parseSet: expected set", e.lineno, e.colno); + for (var t, n = new hr.Set(e.lineno, e.colno, []); + (t = this.parsePrimary()) && (n.targets.push(t), this.skip(Vt.TOKEN_COMMA));); + return this.skipValue(Vt.TOKEN_OPERATOR, "=") ? (n.value = this.parseExpression(), this.advanceAfterBlockEnd(e.value)) : this.skip(Vt.TOKEN_BLOCK_END) ? (n.body = new hr.Capture(e.lineno, e.colno, this.parseUntilBlocks("endset")), n.value = null, this.advanceAfterBlockEnd()) : this.fail("parseSet: expected = or block end in set tag", e.lineno, e.colno), n + }, i.parseSwitch = function() { + var e = "switch", + t = "endswitch", + n = "case", + r = "default", + i = this.peekToken(); + this.skipSymbol(e) || this.skipSymbol(n) || this.skipSymbol(r) || this.fail('parseSwitch: expected "switch," "case" or "default"', i.lineno, i.colno); + var s = this.parseExpression(); + this.advanceAfterBlockEnd(e), this.parseUntilBlocks(n, r, t); + var a, o = this.peekToken(), + c = []; + do { + this.skipSymbol(n); + var l = this.parseExpression(); + this.advanceAfterBlockEnd(e); + var h = this.parseUntilBlocks(n, r, t); + c.push(new hr.Case(o.line, o.col, l, h)), o = this.peekToken() + } while (o && o.value === n); + switch (o.value) { + case r: + this.advanceAfterBlockEnd(), a = this.parseUntilBlocks(t), this.advanceAfterBlockEnd(); + break; + case t: + this.advanceAfterBlockEnd(); + break; + default: + this.fail('parseSwitch: expected "case," "default" or "endswitch," got EOF.') } - } - return e - }, i.parseSignature = function(e, t) { - var n = this.peekToken(); - if (!t && n.type !== Vt.TOKEN_LEFT_PAREN) { - if (e) return null; - this.fail("expected arguments", n.lineno, n.colno) - } - n.type === Vt.TOKEN_LEFT_PAREN && (n = this.nextToken()); - for (var r = new hr.NodeList(n.lineno, n.colno), i = new hr.KeywordArgs(n.lineno, n.colno), s = !1;;) { - if (n = this.peekToken(), !t && n.type === Vt.TOKEN_RIGHT_PAREN) { - this.nextToken(); - break + return new hr.Switch(i.lineno, i.colno, s, c, a) + }, i.parseStatement = function() { + var e = this.peekToken(); + if (e.type !== Vt.TOKEN_SYMBOL && this.fail("tag name expected", e.lineno, e.colno), this.breakOnBlocks && -1 !== je.indexOf(this.breakOnBlocks, e.value)) return null; + switch (e.value) { + case "raw": + return this.parseRaw(); + case "verbatim": + return this.parseRaw("verbatim"); + case "if": + case "ifAsync": + return this.parseIf(); + case "for": + case "asyncEach": + case "asyncAll": + return this.parseFor(); + case "block": + return this.parseBlock(); + case "extends": + return this.parseExtends(); + case "include": + return this.parseInclude(); + case "set": + return this.parseSet(); + case "macro": + return this.parseMacro(); + case "call": + return this.parseCall(); + case "import": + return this.parseImport(); + case "from": + return this.parseFrom(); + case "filter": + return this.parseFilterStatement(); + case "switch": + return this.parseSwitch(); + default: + if (this.extensions.length) + for (var t = 0; t < this.extensions.length; t++) { + var n = this.extensions[t]; + if (-1 !== je.indexOf(n.tags || [], e.value)) return n.parse(this, hr, Vt) + } + this.fail("unknown block tag: " + e.value, e.lineno, e.colno) } - if (t && n.type === Vt.TOKEN_BLOCK_END) break; - if (s && !this.skip(Vt.TOKEN_COMMA)) this.fail("parseSignature: expected comma after expression", n.lineno, n.colno); - else { + }, i.parseRaw = function(e) { + for (var t = "end" + (e = e || "raw"), n = new RegExp("([\\s\\S]*?){%\\s*(" + e + "|" + t + ")\\s*(?=%})%}"), r = 1, i = "", s = null, a = this.advanceAfterBlockEnd(); + (s = this.tokens._extractRegex(n)) && r > 0;) { + var o = s[0], + c = s[1], + l = s[2]; + l === e ? r += 1 : l === t && (r -= 1), 0 === r ? (i += c, this.tokens.backN(o.length - c.length)) : i += o + } + return new hr.Output(a.lineno, a.colno, [new hr.TemplateData(a.lineno, a.colno, i)]) + }, i.parsePostfix = function(e) { + for (var t, n = this.peekToken(); n;) { + if (n.type === Vt.TOKEN_LEFT_PAREN) e = new hr.FunCall(n.lineno, n.colno, e, this.parseSignature()); + else if (n.type === Vt.TOKEN_LEFT_BRACKET)(t = this.parseAggregate()).children.length > 1 && this.fail("invalid index"), e = new hr.LookupVal(n.lineno, n.colno, e, t.children[0]); + else { + if (n.type !== Vt.TOKEN_OPERATOR || "." !== n.value) break; + this.nextToken(); + var r = this.nextToken(); + r.type !== Vt.TOKEN_SYMBOL && this.fail("expected name as lookup value, got " + r.value, r.lineno, r.colno), t = new hr.Literal(r.lineno, r.colno, r.value), e = new hr.LookupVal(n.lineno, n.colno, e, t) + } + n = this.peekToken() + } + return e + }, i.parseExpression = function() { + return this.parseInlineIf() + }, i.parseInlineIf = function() { + var e = this.parseOr(); + if (this.skipSymbol("if")) { + var t = this.parseOr(), + n = e; + (e = new hr.InlineIf(e.lineno, e.colno)).body = n, e.cond = t, this.skipSymbol("else") ? e.else_ = this.parseOr() : e.else_ = null + } + return e + }, i.parseOr = function() { + for (var e = this.parseAnd(); this.skipSymbol("or");) { + var t = this.parseAnd(); + e = new hr.Or(e.lineno, e.colno, e, t) + } + return e + }, i.parseAnd = function() { + for (var e = this.parseNot(); this.skipSymbol("and");) { + var t = this.parseNot(); + e = new hr.And(e.lineno, e.colno, e, t) + } + return e + }, i.parseNot = function() { + var e = this.peekToken(); + return this.skipSymbol("not") ? new hr.Not(e.lineno, e.colno, this.parseNot()) : this.parseIn() + }, i.parseIn = function() { + for (var e = this.parseIs();;) { + var t = this.nextToken(); + if (!t) break; + var n = t.type === Vt.TOKEN_SYMBOL && "not" === t.value; + if (n || this.pushToken(t), !this.skipSymbol("in")) { + n && this.pushToken(t); + break + } + var r = this.parseIs(); + e = new hr.In(e.lineno, e.colno, e, r), n && (e = new hr.Not(e.lineno, e.colno, e)) + } + return e + }, i.parseIs = function() { + var e = this.parseCompare(); + if (this.skipSymbol("is")) { + var t = this.skipSymbol("not"), + n = this.parseCompare(); + e = new hr.Is(e.lineno, e.colno, e, n), t && (e = new hr.Not(e.lineno, e.colno, e)) + } + return e + }, i.parseCompare = function() { + for (var e = ["==", "===", "!=", "!==", "<", ">", "<=", ">="], t = this.parseConcat(), n = [];;) { + var r = this.nextToken(); + if (!r) break; + if (-1 === e.indexOf(r.value)) { + this.pushToken(r); + break + } + n.push(new hr.CompareOperand(r.lineno, r.colno, this.parseConcat(), r.value)) + } + return n.length ? new hr.Compare(n[0].lineno, n[0].colno, t, n) : t + }, i.parseConcat = function() { + for (var e = this.parseAdd(); this.skipValue(Vt.TOKEN_TILDE, "~");) { + var t = this.parseAdd(); + e = new hr.Concat(e.lineno, e.colno, e, t) + } + return e + }, i.parseAdd = function() { + for (var e = this.parseSub(); this.skipValue(Vt.TOKEN_OPERATOR, "+");) { + var t = this.parseSub(); + e = new hr.Add(e.lineno, e.colno, e, t) + } + return e + }, i.parseSub = function() { + for (var e = this.parseMul(); this.skipValue(Vt.TOKEN_OPERATOR, "-");) { + var t = this.parseMul(); + e = new hr.Sub(e.lineno, e.colno, e, t) + } + return e + }, i.parseMul = function() { + for (var e = this.parseDiv(); this.skipValue(Vt.TOKEN_OPERATOR, "*");) { + var t = this.parseDiv(); + e = new hr.Mul(e.lineno, e.colno, e, t) + } + return e + }, i.parseDiv = function() { + for (var e = this.parseFloorDiv(); this.skipValue(Vt.TOKEN_OPERATOR, "/");) { + var t = this.parseFloorDiv(); + e = new hr.Div(e.lineno, e.colno, e, t) + } + return e + }, i.parseFloorDiv = function() { + for (var e = this.parseMod(); this.skipValue(Vt.TOKEN_OPERATOR, "//");) { + var t = this.parseMod(); + e = new hr.FloorDiv(e.lineno, e.colno, e, t) + } + return e + }, i.parseMod = function() { + for (var e = this.parsePow(); this.skipValue(Vt.TOKEN_OPERATOR, "%");) { + var t = this.parsePow(); + e = new hr.Mod(e.lineno, e.colno, e, t) + } + return e + }, i.parsePow = function() { + for (var e = this.parseUnary(); this.skipValue(Vt.TOKEN_OPERATOR, "**");) { + var t = this.parseUnary(); + e = new hr.Pow(e.lineno, e.colno, e, t) + } + return e + }, i.parseUnary = function(e) { + var t, n = this.peekToken(); + return t = this.skipValue(Vt.TOKEN_OPERATOR, "-") ? new hr.Neg(n.lineno, n.colno, this.parseUnary(!0)) : this.skipValue(Vt.TOKEN_OPERATOR, "+") ? new hr.Pos(n.lineno, n.colno, this.parseUnary(!0)) : this.parsePrimary(), e || (t = this.parseFilter(t)), t + }, i.parsePrimary = function(e) { + var t, n = this.nextToken(), + r = null; + if (n ? n.type === Vt.TOKEN_STRING ? t = n.value : n.type === Vt.TOKEN_INT ? t = parseInt(n.value, 10) : n.type === Vt.TOKEN_FLOAT ? t = parseFloat(n.value) : n.type === Vt.TOKEN_BOOLEAN ? "true" === n.value ? t = !0 : "false" === n.value ? t = !1 : this.fail("invalid boolean: " + n.value, n.lineno, n.colno) : n.type === Vt.TOKEN_NONE ? t = null : n.type === Vt.TOKEN_REGEX && (t = new RegExp(n.value.body, n.value.flags)) : this.fail("expected expression, got end of file"), void 0 !== t ? r = new hr.Literal(n.lineno, n.colno, t) : n.type === Vt.TOKEN_SYMBOL ? r = new hr.Symbol(n.lineno, n.colno, n.value) : (this.pushToken(n), r = this.parseAggregate()), e || (r = this.parsePostfix(r)), r) return r; + throw this.error("unexpected token: " + n.value, n.lineno, n.colno) + }, i.parseFilterName = function() { + for (var e = this.expect(Vt.TOKEN_SYMBOL), t = e.value; this.skipValue(Vt.TOKEN_OPERATOR, ".");) t += "." + this.expect(Vt.TOKEN_SYMBOL).value; + return new hr.Symbol(e.lineno, e.colno, t) + }, i.parseFilterArgs = function(e) { + return this.peekToken().type === Vt.TOKEN_LEFT_PAREN ? this.parsePostfix(e).args.children : [] + }, i.parseFilter = function(e) { + for (; this.skip(Vt.TOKEN_PIPE);) { + var t = this.parseFilterName(); + e = new hr.Filter(t.lineno, t.colno, t, new hr.NodeList(t.lineno, t.colno, [e].concat(this.parseFilterArgs(e)))) + } + return e + }, i.parseFilterStatement = function() { + var e = this.peekToken(); + this.skipSymbol("filter") || this.fail("parseFilterStatement: expected filter"); + var t = this.parseFilterName(), + n = this.parseFilterArgs(t); + this.advanceAfterBlockEnd(e.value); + var r = new hr.Capture(t.lineno, t.colno, this.parseUntilBlocks("endfilter")); + this.advanceAfterBlockEnd(); + var i = new hr.Filter(t.lineno, t.colno, t, new hr.NodeList(t.lineno, t.colno, [r].concat(n))); + return new hr.Output(t.lineno, t.colno, [i]) + }, i.parseAggregate = function() { + var e, t = this.nextToken(); + switch (t.type) { + case Vt.TOKEN_LEFT_PAREN: + e = new hr.Group(t.lineno, t.colno); + break; + case Vt.TOKEN_LEFT_BRACKET: + e = new hr.Array(t.lineno, t.colno); + break; + case Vt.TOKEN_LEFT_CURLY: + e = new hr.Dict(t.lineno, t.colno); + break; + default: + return null + } + for (;;) { + var n = this.peekToken().type; + if (n === Vt.TOKEN_RIGHT_PAREN || n === Vt.TOKEN_RIGHT_BRACKET || n === Vt.TOKEN_RIGHT_CURLY) { + this.nextToken(); + break + } + if (e.children.length > 0 && (this.skip(Vt.TOKEN_COMMA) || this.fail("parseAggregate: expected comma after expression", t.lineno, t.colno)), e instanceof hr.Dict) { + var r = this.parsePrimary(); + this.skip(Vt.TOKEN_COLON) || this.fail("parseAggregate: expected colon after dict key", t.lineno, t.colno); + var i = this.parseExpression(); + e.addChild(new hr.Pair(r.lineno, r.colno, r, i)) + } else { + var s = this.parseExpression(); + e.addChild(s) + } + } + return e + }, i.parseSignature = function(e, t) { + var n = this.peekToken(); + if (!t && n.type !== Vt.TOKEN_LEFT_PAREN) { + if (e) return null; + this.fail("expected arguments", n.lineno, n.colno) + } + n.type === Vt.TOKEN_LEFT_PAREN && (n = this.nextToken()); + for (var r = new hr.NodeList(n.lineno, n.colno), i = new hr.KeywordArgs(n.lineno, n.colno), s = !1;;) { + if (n = this.peekToken(), !t && n.type === Vt.TOKEN_RIGHT_PAREN) { + this.nextToken(); + break + } + if (t && n.type === Vt.TOKEN_BLOCK_END) break; + if (s && !this.skip(Vt.TOKEN_COMMA)) this.fail("parseSignature: expected comma after expression", n.lineno, n.colno); + else { + var a = this.parseExpression(); + this.skipValue(Vt.TOKEN_OPERATOR, "=") ? i.addChild(new hr.Pair(a.lineno, a.colno, a, this.parseExpression())) : r.addChild(a) + } + s = !0 + } + return i.children.length && r.addChild(i), r + }, i.parseUntilBlocks = function() { + for (var e = this.breakOnBlocks, t = arguments.length, n = new Array(t), r = 0; r < t; r++) n[r] = arguments[r]; + this.breakOnBlocks = n; + var i = this.parse(); + return this.breakOnBlocks = e, i + }, i.parseNodes = function() { + for (var e, t = []; e = this.nextToken();) + if (e.type === Vt.TOKEN_DATA) { + var n = e.value, + r = this.peekToken(), + i = r && r.value; + this.dropLeadingWhitespace && (n = n.replace(/^\s*/, ""), this.dropLeadingWhitespace = !1), r && (r.type === Vt.TOKEN_BLOCK_START && "-" === i.charAt(i.length - 1) || r.type === Vt.TOKEN_VARIABLE_START && "-" === i.charAt(this.tokens.tags.VARIABLE_START.length) || r.type === Vt.TOKEN_COMMENT && "-" === i.charAt(this.tokens.tags.COMMENT_START.length)) && (n = n.replace(/\s*$/, "")), t.push(new hr.Output(e.lineno, e.colno, [new hr.TemplateData(e.lineno, e.colno, n)])) + } else if (e.type === Vt.TOKEN_BLOCK_START) { + this.dropLeadingWhitespace = !1; + var s = this.parseStatement(); + if (!s) break; + t.push(s) + } else if (e.type === Vt.TOKEN_VARIABLE_START) { var a = this.parseExpression(); - this.skipValue(Vt.TOKEN_OPERATOR, "=") ? i.addChild(new hr.Pair(a.lineno, a.colno, a, this.parseExpression())) : r.addChild(a) - } - s = !0 - } - return i.children.length && r.addChild(i), r - }, i.parseUntilBlocks = function() { - for (var e = this.breakOnBlocks, t = arguments.length, n = new Array(t), r = 0; r < t; r++) n[r] = arguments[r]; - this.breakOnBlocks = n; - var i = this.parse(); - return this.breakOnBlocks = e, i - }, i.parseNodes = function() { - for (var e, t = []; e = this.nextToken();) if (e.type === Vt.TOKEN_DATA) { - var n = e.value, - r = this.peekToken(), - i = r && r.value; - this.dropLeadingWhitespace && (n = n.replace(/^\s*/, ""), this.dropLeadingWhitespace = !1), r && (r.type === Vt.TOKEN_BLOCK_START && "-" === i.charAt(i.length - 1) || r.type === Vt.TOKEN_VARIABLE_START && "-" === i.charAt(this.tokens.tags.VARIABLE_START.length) || r.type === Vt.TOKEN_COMMENT && "-" === i.charAt(this.tokens.tags.COMMENT_START.length)) && (n = n.replace(/\s*$/, "")), t.push(new hr.Output(e.lineno, e.colno, [new hr.TemplateData(e.lineno, e.colno, n)])) - } else if (e.type === Vt.TOKEN_BLOCK_START) { - this.dropLeadingWhitespace = !1; - var s = this.parseStatement(); - if (!s) break; - t.push(s) - } else if (e.type === Vt.TOKEN_VARIABLE_START) { - var a = this.parseExpression(); - this.dropLeadingWhitespace = !1, this.advanceAfterVariableEnd(), t.push(new hr.Output(e.lineno, e.colno, [a])) - } else e.type === Vt.TOKEN_COMMENT ? this.dropLeadingWhitespace = "-" === e.value.charAt(e.value.length - this.tokens.tags.COMMENT_END.length - 1) : this.fail("Unexpected token at top-level: " + e.type, e.lineno, e.colno); - return t - }, i.parse = function() { - return new hr.NodeList(0, 0, this.parseNodes()) - }, i.parseAsRoot = function() { - return new hr.Root(0, 0, this.parseNodes()) - }, r -}(en.Obj), + this.dropLeadingWhitespace = !1, this.advanceAfterVariableEnd(), t.push(new hr.Output(e.lineno, e.colno, [a])) + } else e.type === Vt.TOKEN_COMMENT ? this.dropLeadingWhitespace = "-" === e.value.charAt(e.value.length - this.tokens.tags.COMMENT_END.length - 1) : this.fail("Unexpected token at top-level: " + e.type, e.lineno, e.colno); + return t + }, i.parse = function() { + return new hr.NodeList(0, 0, this.parseNodes()) + }, i.parseAsRoot = function() { + return new hr.Root(0, 0, this.parseNodes()) + }, r + }(en.Obj), fr = { parse: function(e, t, n) { var r = new pr(Vt.lex(e, n)); return void 0 !== t && (r.extensions = t), r.parseAsRoot() }, Parser: pr - }, dr = 0; + }, + dr = 0; function Er() { return "hole_" + dr++ } + function mr(e, t) { for (var n = null, r = 0; r < e.length; r++) { var i = t(e[r]); @@ -2701,6 +2853,7 @@ function mr(e, t) { } return n || e } + function Tr(e, t, n) { if (!(e instanceof hr.Node)) return e; if (!n) { @@ -2720,8 +2873,8 @@ function Tr(e, t, n) { s === e.args && a === e.contentArgs || (e = new hr[e.typename](e.extName, e.prop, s, a)) } else { var o = e.fields.map((function(t) { - return e[t] - })), + return e[t] + })), c = mr(o, (function(e) { return Tr(e, t, n) })); @@ -2731,9 +2884,11 @@ function Tr(e, t, n) { } return n && t(e) || e } + function _r(e, t) { return Tr(e, t, !0) } + function Ar(e, t, n) { var r = [], i = _r(n ? e[n] : e, (function(e) { @@ -2742,14 +2897,15 @@ function Ar(e, t, n) { })); return n ? e[n] = i : e = i, r.length ? (r.push(e), new hr.NodeList(e.lineno, e.colno, r)) : e } + function gr(e, t) { return function(e) { return _r(e, (function(e) { if (e instanceof hr.If || e instanceof hr.For) { var t = !1; if (Tr(e, (function(e) { - if (e instanceof hr.FilterAsync || e instanceof hr.IfAsync || e instanceof hr.AsyncEach || e instanceof hr.AsyncAll || e instanceof hr.CallExtensionAsync) return t = !0, e - })), t) { + if (e instanceof hr.FilterAsync || e instanceof hr.IfAsync || e instanceof hr.AsyncEach || e instanceof hr.AsyncAll || e instanceof hr.CallExtensionAsync) return t = !0, e + })), t) { if (e instanceof hr.If) return new hr.IfAsync(e.lineno, e.colno, e.cond, e.body, e.else_); if (e instanceof hr.For && !(e instanceof hr.AsyncAll)) return new hr.AsyncEach(e.lineno, e.colno, e.arr, e.name, e.body, e.else_) } @@ -2772,10 +2928,11 @@ function gr(e, t) { }(e, t))) } var Nr = { - transform: function(e, t) { - return gr(e, t || []) - } -}, Cr = Array.from, + transform: function(e, t) { + return gr(e, t || []) + } + }, + Cr = Array.from, Ir = "function" == typeof Symbol && Symbol.iterator && "function" == typeof Cr, Sr = function() { function e(e, t) { @@ -2814,6 +2971,7 @@ var Nr = { function br(e) { return e && Object.prototype.hasOwnProperty.call(e, "__keywords") } + function Or(e) { var t = e.length; if (t) { @@ -2822,10 +2980,12 @@ function Or(e) { } return {} } + function yr(e) { var t = e.length; return 0 === t ? 0 : br(e[t - 1]) ? t - 1 : t } + function Lr(e) { if ("string" != typeof e) return e; this.val = e, Object.defineProperty(this, "length", { @@ -2936,30 +3096,33 @@ var kr = { function o(e, t) { a++, s[e] = t, a === i && r(null, s.join("")) } - if (je.isArray(e)) if (i = e.length, s = new Array(i), 0 === i) r(null, ""); - else for (var c = 0; c < e.length; c++) { - var l = e[c]; - switch (t) { - case 1: - n(l, c, i, o); - break; - case 2: - n(l[0], l[1], c, i, o); - break; - case 3: - n(l[0], l[1], l[2], c, i, o); - break; - default: - l.push(c, i, o), n.apply(this, l) - } - } else { - var h = je.keys(e || {}); - if (i = h.length, s = new Array(i), 0 === i) r(null, ""); - else for (var u = 0; u < h.length; u++) { - var p = h[u]; - n(p, e[p], u, i, o) - } - } + if (je.isArray(e)) + if (i = e.length, s = new Array(i), 0 === i) r(null, ""); + else + for (var c = 0; c < e.length; c++) { + var l = e[c]; + switch (t) { + case 1: + n(l, c, i, o); + break; + case 2: + n(l[0], l[1], c, i, o); + break; + case 3: + n(l[0], l[1], l[2], c, i, o); + break; + default: + l.push(c, i, o), n.apply(this, l) + } + } else { + var h = je.keys(e || {}); + if (i = h.length, s = new Array(i), 0 === i) r(null, ""); + else + for (var u = 0; u < h.length; u++) { + var p = h[u]; + n(p, e[p], u, i, o) + } + } }, inOperator: je.inOperator, fromIterator: function(e) { @@ -2984,7 +3147,8 @@ var Dr = je.TemplateError, ">": ">", "<=": "<=", ">=": ">=" - }, Pr = function(e) { + }, + Pr = function(e) { var t, n; function r() { @@ -3051,16 +3215,16 @@ var Dr = je.TemplateError, s = e.contentArgs, a = "boolean" != typeof e.autoescape || e.autoescape; if (n || this._emit(this.buffer + " += runtime.suppressValue("), this._emit('env.getExtension("' + e.extName + '")["' + e.prop + '"]('), this._emit("context"), (i || s) && this._emit(","), i && (i instanceof hr.NodeList || this.fail("compileCallExtension: arguments must be a NodeList, use `parser.parseSignature`"), i.children.forEach((function(e, n) { - r._compileExpression(e, t), (n !== i.children.length - 1 || s.length) && r._emit(",") - }))), s.length && s.forEach((function(e, n) { - if (n > 0 && r._emit(","), e) { - r._emitLine("function(cb) {"), r._emitLine("if(!cb) { cb = function(err) { if(err) { throw err; }}}"); - var i = r._pushBuffer(); - r._withScopedSyntax((function() { - r.compile(e, t), r._emitLine("cb(null, " + i + ");") - })), r._popBuffer(), r._emitLine("return " + i + ";"), r._emitLine("}") - } else r._emit("null") - })), n) { + r._compileExpression(e, t), (n !== i.children.length - 1 || s.length) && r._emit(",") + }))), s.length && s.forEach((function(e, n) { + if (n > 0 && r._emit(","), e) { + r._emitLine("function(cb) {"), r._emitLine("if(!cb) { cb = function(err) { if(err) { throw err; }}}"); + var i = r._pushBuffer(); + r._withScopedSyntax((function() { + r.compile(e, t), r._emitLine("cb(null, " + i + ");") + })), r._popBuffer(), r._emitLine("return " + i + ";"), r._emitLine("}") + } else r._emit("null") + })), n) { var o = this._tmpid(); this._emitLine(", " + this._makeCallback(o)), this._emitLine(this.buffer + " += runtime.suppressValue(" + o + ", " + a + " && env.opts.autoescape);"), this._addScopeLevel() } else this._emit(")"), this._emit(", " + a + " && env.opts.autoescape);\n") @@ -3169,9 +3333,7 @@ var Dr = je.TemplateError, var n = this; this._emit("switch ("), this.compile(e.expr, t), this._emit(") {"), e.cases.forEach((function(e, r) { n._emit("case "), n.compile(e.cond, t), n._emit(": "), n.compile(e.body, t), e.body.children.length && n._emitLine("break;") - })), e. - default && (this._emit("default:"), this.compile(e. - default, t)), this._emit("}") + })), e.default && (this._emit("default:"), this.compile(e.default, t)), this._emit("}") }, i.compileIf = function(e, t, n) { var r = this; this._emit("if("), this._compileExpression(e.cond, t), this._emitLine(") {"), this._withScopedSyntax((function() { @@ -3272,8 +3434,8 @@ var Dr = je.TemplateError, s === e.args.children.length - 1 && t instanceof hr.Dict ? i = t : (n.assertType(t, hr.Symbol), r.push(t)) })); var o, c = [].concat(r.map((function(e) { - return "l_" + e.value - })), ["kwargs"]), + return "l_" + e.value + })), ["kwargs"]), l = r.map((function(e) { return '"' + e.value + '"' })), @@ -3383,19 +3545,23 @@ var Dr = je.TemplateError, return s.compile(Nr.transform(fr.parse(a, n, i), t, r)), s.getCode() }, Compiler: Pr - }, wr = Ke((function(e) { + }, + wr = Ke((function(e) { var t = e.exports = {}; function n(e, t) { return null == e || !1 === e ? t : e } + function r(e) { return e != e } + function i(e) { var t = (e = n(e, "")).toLowerCase(); return kr.copySafeness(e, t.charAt(0).toUpperCase() + t.slice(1)) } + function s(e) { if (je.isString(e)) return e.split(""); if (je.isObject(e)) return je._entries(e || {}).map((function(e) { @@ -3407,6 +3573,7 @@ var Dr = je.TemplateError, if (je.isArray(e)) return e; throw new je.TemplateError("list filter: type not iterable") } + function a(e) { return function(t, n, r) { void 0 === n && (n = "truthy"); @@ -3417,6 +3584,7 @@ var Dr = je.TemplateError, })) } } + function o(e) { return kr.copySafeness(e, e.replace(/^\s*|\s*$/g, "")) } @@ -3425,7 +3593,8 @@ var Dr = je.TemplateError, s = []; for (r = 0; r < e.length; r++) r % t == 0 && s.length && (i.push(s), s = []), s.push(e[r]); if (s.length) { - if (n) for (r = s.length; r < t; r++) s.push(n); + if (n) + for (r = s.length; r < t; r++) s.push(n); i.push(s) } return i @@ -3435,8 +3604,7 @@ var Dr = je.TemplateError, i = je.repeat(" ", r / 2 - r % 2), s = je.repeat(" ", r / 2); return kr.copySafeness(e, i + e + s) - }, t. - default = function(e, t, n) { + }, t.default = function(e, t, n) { return n ? e || t : void 0 !== e ? e : t }, t.dictsort = function(e, t, n) { if (!je.isObject(e)) throw new je.TemplateError("dictsort filter: val must be an object"); @@ -3602,8 +3770,7 @@ var Dr = je.TemplateError, var i = parseInt(e, n); return r(i) ? t : i })); - t.int = f, t.d = t. - default, t.e = t.escape + t.int = f, t.d = t.default, t.e = t.escape })), Br = {}; @@ -3612,7 +3779,8 @@ function Fr(e, t) { var i = e[r]; "." === i ? e.splice(r, 1) : ".." === i ? (e.splice(r, 1), n++) : n && (e.splice(r, 1), n--) } - if (t) for (; n--; n) e.unshift(".."); + if (t) + for (; n--; n) e.unshift(".."); return e } var Ur = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/, @@ -3630,6 +3798,7 @@ function Gr() { return !!e })), !t).join("/")) || "." } + function Yr(e) { var t = qr(e), n = "/" === Vr(e, -1); @@ -3637,6 +3806,7 @@ function Yr(e) { return !!e })), !t).join("/")) || t || (e = "."), e && n && (e += "/"), (t ? "/" : "") + e } + function qr(e) { return "/" === e.charAt(0) } @@ -3663,11 +3833,11 @@ var Kr = { return t > n ? [] : e.slice(t, n - t + 1) } e = Gr(e).substr(1), t = Gr(t).substr(1); - for (var r = n(e.split("/")), i = n(t.split("/")), s = Math.min(r.length, i.length), a = s, o = 0; o < s; o++) if (r[o] !== i[o]) { - a = o; - break - } - var c = []; + for (var r = n(e.split("/")), i = n(t.split("/")), s = Math.min(r.length, i.length), a = s, o = 0; o < s; o++) + if (r[o] !== i[o]) { + a = o; + break + } var c = []; for (o = a; o < r.length; o++) c.push(".."); return (c = c.concat(i.slice(a))).join("/") }, @@ -3689,10 +3859,10 @@ function jr(e, t) { return n } var Vr = "b" === "ab".substr(-1) ? function(e, t, n) { - return e.substr(t, n) - } : function(e, t, n) { - return t < 0 && (t = e.length + t), e.substr(t, n) - }; + return e.substr(t, n) +} : function(e, t, n) { + return t < 0 && (t = e.length + t), e.substr(t, n) +}; function Wr(e, t) { return Wr = Object.setPrototypeOf || function(e, t) { @@ -3740,18 +3910,19 @@ var $r = function(e) { function zr(e, t) { e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Jr(e, t) } + function Jr(e, t) { return Jr = Object.setPrototypeOf || function(e, t) { return e.__proto__ = t, e }, Jr(e, t) } var Zr = { - PrecompiledLoader: $r -}.PrecompiledLoader, + PrecompiledLoader: $r + }.PrecompiledLoader, ei = function(e) { function t(t, n) { var r; - return n = n || {}, (r = e.call(this) || this).pathsToNames = {}, r.noCache = !! n.noCache, t ? (t = Array.isArray(t) ? t : [t], r.searchPaths = t.map(Kr.normalize)) : r.searchPaths = ["."], r + return n = n || {}, (r = e.call(this) || this).pathsToNames = {}, r.noCache = !!n.noCache, t ? (t = Array.isArray(t) ? t : [t], r.searchPaths = t.map(Kr.normalize)) : r.searchPaths = ["."], r } return zr(t, e), t.prototype.getSource = function(e) { for (var t = null, n = this.searchPaths, r = 0; r < n.length; r++) { @@ -3778,7 +3949,7 @@ var Zr = { NodeResolveLoader: function(e) { function t(t) { var n; - return t = t || {}, (n = e.call(this) || this).pathsToNames = {}, n.noCache = !! t.noCache, n + return t = t || {}, (n = e.call(this) || this).pathsToNames = {}, n.noCache = !!t.noCache, n } return zr(t, e), t.prototype.getSource = function(e) { if (/^\.?\.?(\/|\\)/.test(e)) return null; @@ -3798,7 +3969,8 @@ var Zr = { return this.emit("load", e, n), n }, t }(Qr) - }, ni = Ke((function(e, t) { + }, + ni = Ke((function(e, t) { var n = kr.SafeString; t.callable = function(e) { return "function" == typeof e @@ -3841,7 +4013,7 @@ var Zr = { }, t.upper = function(e) { return e.toUpperCase() === e }, t.iterable = function(e) { - return "undefined" != typeof Symbol ? !! e[Symbol.iterator] : Array.isArray(e) || "string" == typeof e + return "undefined" != typeof Symbol ? !!e[Symbol.iterator] : Array.isArray(e) || "string" == typeof e }, t.mapping = function(e) { var t = null != e && "object" == typeof e && !Array.isArray(e); return Set ? t && !(e instanceof Set) : t @@ -3866,8 +4038,10 @@ var ii = function() { range: function(e, t, n) { void 0 === t ? (t = e, e = 0, n = 1) : n || (n = 1); var r = []; - if (n > 0) for (var i = e; i < t; i += n) r.push(i); - else for (var s = e; s > t; s += n) r.push(s); + if (n > 0) + for (var i = e; i < t; i += n) r.push(i); + else + for (var s = e; s > t; s += n) r.push(s); return r }, cycler: function() { @@ -3889,6 +4063,7 @@ var ii = function() { function si(e, t) { e.prototype = Object.create(t.prototype), e.prototype.constructor = e, ai(e, t) } + function ai(e, t) { return ai = Object.setPrototypeOf || function(e, t) { return e.__proto__ = t, e @@ -3908,125 +4083,126 @@ function di(e, t, n) { })) } var Ei = { - type: "code", - obj: { - root: function(e, t, n, r, i) { - try { - i(null, "") - } catch (e) { - i(pi(e, null, null)) + type: "code", + obj: { + root: function(e, t, n, r, i) { + try { + i(null, "") + } catch (e) { + i(pi(e, null, null)) + } } } - } -}, mi = function(e) { - function t() { - return e.apply(this, arguments) || this - } - si(t, e); - var n = t.prototype; - return n.init = function(e, t) { - var n = this; - t = this.opts = t || {}, this.opts.dev = !! t.dev, this.opts.autoescape = null == t.autoescape || t.autoescape, this.opts.throwOnUndefined = !! t.throwOnUndefined, this.opts.trimBlocks = !! t.trimBlocks, this.opts.lstripBlocks = !! t.lstripBlocks, this.loaders = [], e ? this.loaders = je.isArray(e) ? e : [e] : oi ? this.loaders = [new oi("views")] : ci && (this.loaders = [new ci("/views")]), "undefined" != typeof window && window.jinja2Precompiled && this.loaders.unshift(new li(window.jinja2Precompiled)), this._initLoaders(), this.globals = ii(), this.filters = {}, this.tests = {}, this.asyncFilters = [], this.extensions = {}, this.extensionsList = [], je._entries(wr).forEach((function(e) { - var t = e[0], - r = e[1]; - return n.addFilter(t, r) - })), je._entries(ni).forEach((function(e) { - var t = e[0], - r = e[1]; - return n.addTest(t, r) - })) - }, n._initLoaders = function() { - var e = this; - this.loaders.forEach((function(t) { - t.cache = {}, "function" == typeof t.on && (t.on("update", (function(n, r) { - t.cache[n] = null, e.emit("update", n, r, t) - })), t.on("load", (function(n, r) { - e.emit("load", n, r, t) - }))) - })) - }, n.invalidateCache = function() { - this.loaders.forEach((function(e) { - e.cache = {} - })) - }, n.addExtension = function(e, t) { - return t.__name = e, this.extensions[e] = t, this.extensionsList.push(t), this - }, n.removeExtension = function(e) { - var t = this.getExtension(e); - t && (this.extensionsList = je.without(this.extensionsList, t), delete this.extensions[e]) - }, n.getExtension = function(e) { - return this.extensions[e] - }, n.hasExtension = function(e) { - return !!this.extensions[e] - }, n.addGlobal = function(e, t) { - return this.globals[e] = t, this - }, n.getGlobal = function(e) { - if (void 0 === this.globals[e]) throw new Error("global not found: " + e); - return this.globals[e] - }, n.addFilter = function(e, t, n) { - var r = t; - return n && this.asyncFilters.push(e), this.filters[e] = r, this - }, n.getFilter = function(e) { - if (!this.filters[e]) throw new Error("filter not found: " + e); - return this.filters[e] - }, n.addTest = function(e, t) { - return this.tests[e] = t, this - }, n.getTest = function(e) { - if (!this.tests[e]) throw new Error("test not found: " + e); - return this.tests[e] - }, n.resolveTemplate = function(e, t, n) { - return !(!e.isRelative || !t) && e.isRelative(n) && e.resolve ? e.resolve(t, n) : n - }, n.getTemplate = function(e, t, n, r, i) { - var s, a = this, - o = this, - c = null; - if (e && e.raw && (e = e.raw), je.isFunction(n) && (i = n, n = null, t = t || !1), je.isFunction(t) && (i = t, t = !1), e instanceof _i) c = e; - else { - if ("string" != typeof e) throw new Error("template names must be a string: " + e); - for (var l = 0; l < this.loaders.length; l++) { - var h = this.loaders[l]; - if (c = h.cache[this.resolveTemplate(h, n, e)]) break - } + }, + mi = function(e) { + function t() { + return e.apply(this, arguments) || this } - if (c) return t && c.compile(), i ? void i(null, c) : c; - return je.asyncIter(this.loaders, (function(t, r, i, s) { - function a(e, n) { - e ? s(e) : n ? (n.loader = t, s(null, n)) : i() - } - e = o.resolveTemplate(t, n, e), t.async ? t.getSource(e, a) : a(null, t.getSource(e)) - }), (function(n, o) { - if (o || n || r || (n = new Error("template not found: " + e)), n) { - if (i) return void i(n); - throw n - } - var c; - o ? (c = new _i(o.src, a, o.path, t), o.noCache || (o.loader.cache[e] = c)) : c = new _i(Ei, a, "", t), i ? i(null, c) : s = c - })), s - }, n.express = function(e) { - return function(e, t) { - function n(e, t) { - if (this.name = e, this.path = e, this.defaultEngine = t.defaultEngine, this.ext = Kr.extname(e), !this.ext && !this.defaultEngine) throw new Error("No default engine was specified and no extension was provided."); - this.ext || (this.name += this.ext = ("." !== this.defaultEngine[0] ? "." : "") + this.defaultEngine) - } - return n.prototype.render = function(t, n) { - e.render(this.name, t, n) - }, t.set("view", n), t.set("jinja2Env", e), e - }(this, e) - }, n.render = function(e, t, n) { - je.isFunction(t) && (n = t, t = null); - var r = null; - return this.getTemplate(e, (function(e, i) { - if (e && n) di(n, e); + si(t, e); + var n = t.prototype; + return n.init = function(e, t) { + var n = this; + t = this.opts = t || {}, this.opts.dev = !!t.dev, this.opts.autoescape = null == t.autoescape || t.autoescape, this.opts.throwOnUndefined = !!t.throwOnUndefined, this.opts.trimBlocks = !!t.trimBlocks, this.opts.lstripBlocks = !!t.lstripBlocks, this.loaders = [], e ? this.loaders = je.isArray(e) ? e : [e] : oi ? this.loaders = [new oi("views")] : ci && (this.loaders = [new ci("/views")]), "undefined" != typeof window && window.jinja2Precompiled && this.loaders.unshift(new li(window.jinja2Precompiled)), this._initLoaders(), this.globals = ii(), this.filters = {}, this.tests = {}, this.asyncFilters = [], this.extensions = {}, this.extensionsList = [], je._entries(wr).forEach((function(e) { + var t = e[0], + r = e[1]; + return n.addFilter(t, r) + })), je._entries(ni).forEach((function(e) { + var t = e[0], + r = e[1]; + return n.addTest(t, r) + })) + }, n._initLoaders = function() { + var e = this; + this.loaders.forEach((function(t) { + t.cache = {}, "function" == typeof t.on && (t.on("update", (function(n, r) { + t.cache[n] = null, e.emit("update", n, r, t) + })), t.on("load", (function(n, r) { + e.emit("load", n, r, t) + }))) + })) + }, n.invalidateCache = function() { + this.loaders.forEach((function(e) { + e.cache = {} + })) + }, n.addExtension = function(e, t) { + return t.__name = e, this.extensions[e] = t, this.extensionsList.push(t), this + }, n.removeExtension = function(e) { + var t = this.getExtension(e); + t && (this.extensionsList = je.without(this.extensionsList, t), delete this.extensions[e]) + }, n.getExtension = function(e) { + return this.extensions[e] + }, n.hasExtension = function(e) { + return !!this.extensions[e] + }, n.addGlobal = function(e, t) { + return this.globals[e] = t, this + }, n.getGlobal = function(e) { + if (void 0 === this.globals[e]) throw new Error("global not found: " + e); + return this.globals[e] + }, n.addFilter = function(e, t, n) { + var r = t; + return n && this.asyncFilters.push(e), this.filters[e] = r, this + }, n.getFilter = function(e) { + if (!this.filters[e]) throw new Error("filter not found: " + e); + return this.filters[e] + }, n.addTest = function(e, t) { + return this.tests[e] = t, this + }, n.getTest = function(e) { + if (!this.tests[e]) throw new Error("test not found: " + e); + return this.tests[e] + }, n.resolveTemplate = function(e, t, n) { + return !(!e.isRelative || !t) && e.isRelative(n) && e.resolve ? e.resolve(t, n) : n + }, n.getTemplate = function(e, t, n, r, i) { + var s, a = this, + o = this, + c = null; + if (e && e.raw && (e = e.raw), je.isFunction(n) && (i = n, n = null, t = t || !1), je.isFunction(t) && (i = t, t = !1), e instanceof _i) c = e; else { - if (e) throw e; - r = i.render(t, n) + if ("string" != typeof e) throw new Error("template names must be a string: " + e); + for (var l = 0; l < this.loaders.length; l++) { + var h = this.loaders[l]; + if (c = h.cache[this.resolveTemplate(h, n, e)]) break + } } - })), r - }, n.renderString = function(e, t, n, r) { - return je.isFunction(n) && (r = n, n = {}), new _i(e, this, (n = n || {}).path).render(t, r) - }, n.waterfall = function(e, t, n) { - return qt(e, t, n) - }, t -}(ui), + if (c) return t && c.compile(), i ? void i(null, c) : c; + return je.asyncIter(this.loaders, (function(t, r, i, s) { + function a(e, n) { + e ? s(e) : n ? (n.loader = t, s(null, n)) : i() + } + e = o.resolveTemplate(t, n, e), t.async ? t.getSource(e, a) : a(null, t.getSource(e)) + }), (function(n, o) { + if (o || n || r || (n = new Error("template not found: " + e)), n) { + if (i) return void i(n); + throw n + } + var c; + o ? (c = new _i(o.src, a, o.path, t), o.noCache || (o.loader.cache[e] = c)) : c = new _i(Ei, a, "", t), i ? i(null, c) : s = c + })), s + }, n.express = function(e) { + return function(e, t) { + function n(e, t) { + if (this.name = e, this.path = e, this.defaultEngine = t.defaultEngine, this.ext = Kr.extname(e), !this.ext && !this.defaultEngine) throw new Error("No default engine was specified and no extension was provided."); + this.ext || (this.name += this.ext = ("." !== this.defaultEngine[0] ? "." : "") + this.defaultEngine) + } + return n.prototype.render = function(t, n) { + e.render(this.name, t, n) + }, t.set("view", n), t.set("jinja2Env", e), e + }(this, e) + }, n.render = function(e, t, n) { + je.isFunction(t) && (n = t, t = null); + var r = null; + return this.getTemplate(e, (function(e, i) { + if (e && n) di(n, e); + else { + if (e) throw e; + r = i.render(t, n) + } + })), r + }, n.renderString = function(e, t, n, r) { + return je.isFunction(n) && (r = n, n = {}), new _i(e, this, (n = n || {}).path).render(t, r) + }, n.waterfall = function(e, t, n) { + return qt(e, t, n) + }, t + }(ui), Ti = function(e) { function t() { return e.apply(this, arguments) || this @@ -4106,11 +4282,12 @@ var Ei = { var c = null, l = !1; return this.rootRenderFunc(this.env, a, o, kr, (function(e, t) { - if (!l || !n || void 0 === t) if (e && (e = je._prettifyError(r.path, r.env.opts.dev, e), l = !0), n) i ? di(n, e, t) : n(e, t); - else { - if (e) throw e; - c = t - } + if (!l || !n || void 0 === t) + if (e && (e = je._prettifyError(r.path, r.env.opts.dev, e), l = !0), n) i ? di(n, e, t) : n(e, t); + else { + if (e) throw e; + c = t + } })), c }, n.getExported = function(e, t, n) { "function" == typeof e && (n = e, e = {}), "function" == typeof t && (n = t, t = null); @@ -4162,55 +4339,67 @@ function Ci(e, t) { } ti.FileSystemLoader, ti.NodeResolveLoader, ti.PrecompiledLoader, ti.WebLoader; var Ii = function(e, t, n) { - return gi || Ci(), gi.renderString(e, t, n) -}, Si = function() { - return Si = Object.assign || function(e) { - for (var t, n = 1, r = arguments.length; n < r; n++) for (var i in t = arguments[n]) Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]); - return e - }, Si.apply(this, arguments) -}; + return gi || Ci(), gi.renderString(e, t, n) + }, + Si = function() { + return Si = Object.assign || function(e) { + for (var t, n = 1, r = arguments.length; n < r; n++) + for (var i in t = arguments[n]) Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]); + return e + }, Si.apply(this, arguments) + }; function bi(e, t, n) { return e ? e(null != t ? t : e._root.children, null, void 0, n).toString() : "" } + function Oi(e, t) { return bi(this, function(e, t) { return !t && "object" == typeof e && null != e && !("length" in e) && !("type" in e) }(e) ? void(t = e) : e, Si(Si(Si({}, n), null == this ? void 0 : this._options), i(null != t ? t : {}))) } + function yi(e) { return bi(this, e, Si(Si({}, this._options), { xmlMode: !0 })) } + function Li(e) { for (var t = e || (this ? this.root() : []), n = "", r = 0; r < t.length; r++) n += z(t[r]); return n } + function ki(e, t, r) { if (void 0 === r && (r = "boolean" == typeof t && t), !e || "string" != typeof e) return null; "boolean" == typeof t && (r = t); var i = this.load(e, n, !1); return r || i("script").remove(), i.root()[0].children.slice() } + function vi() { return this(this._root) } + function Di(e, t) { if (t === e) return !1; - for (var n = t; n && n !== n.parent;) if ((n = n.parent) === e) return !0; + for (var n = t; n && n !== n.parent;) + if ((n = n.parent) === e) return !0; return !1 } + function Ri(e, t) { if (Mi(e) && Mi(t)) { for (var n = e.length, r = +t.length, i = 0; i < r; i++) e[n++] = t[i]; return e.length = n, e } } + function Mi(e) { if (Array.isArray(e)) return !0; if ("object" != typeof e || !Object.prototype.hasOwnProperty.call(e, "length") || "number" != typeof e.length || e.length < 0) return !1; - for (var t = 0; t < e.length; t++) if (!(t in e)) return !1; + for (var t = 0; t < e.length; t++) + if (!(t in e)) return !1; return !0 } var Pi, xi = Object.freeze({ @@ -4239,19 +4428,22 @@ var Pi, xi = Object.freeze({ function wi(e) { return null != e.cheerio } + function Bi(e, t) { for (var n = e.length, r = 0; r < n; r++) t(e[r], r); return e } + function Fi(e) { var t = "length" in e ? Array.prototype.map.call(e, (function(e) { - return v(e, !0) - })) : [v(e, !0)], + return v(e, !0) + })) : [v(e, !0)], n = new N(t); return t.forEach((function(e) { e.parent = n })), t } + function Ui(e) { var t = e.indexOf("<"); if (t < 0 || t > e.length - 3) return !1; @@ -4266,26 +4458,32 @@ var Hi = Object.prototype.hasOwnProperty, null: null, true: !0, false: !1 - }, qi = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i, + }, + qi = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i, Ki = /^{[^]*}$|^\[[^]*]$/; function ji(e, t, n) { var r; if (e && I(e)) return null !== (r = e.attribs) && void 0 !== r || (e.attribs = {}), t ? Hi.call(e.attribs, t) ? !n && qi.test(t) ? t : e.attribs[t] : "option" === e.name && "value" === t ? Li(e.children) : "input" !== e.name || "radio" !== e.attribs.type && "checkbox" !== e.attribs.type || "value" !== t ? void 0 : "on" : e.attribs } + function Vi(e, t, n) { null === n ? zi(e, t) : e.attribs[t] = "".concat(n) } + function Wi(e, t, n) { return t in e ? e[t] : !n && qi.test(t) ? void 0 !== ji(e, t, !1) : ji(e, t, n) } + function Qi(e, t, n, r) { t in e ? e[t] = n : Vi(e, t, !r && qi.test(t) ? n ? "" : null : "".concat(n)) } + function Xi(e, t, n) { var r, i = e; null !== (r = i.data) && void 0 !== r || (i.data = {}), "object" == typeof t ? Object.assign(i.data, t) : "string" == typeof t && void 0 !== n && (i.data[t] = n) } + function $i(e, t) { var n, r, i, s; null == t ? r = (n = Object.keys(e.attribs).filter((function(e) { @@ -4309,9 +4507,11 @@ function $i(e, t) { } return null == t ? e.data : i } + function zi(e, t) { e.attribs && Hi.call(e.attribs, t) && delete e.attribs[t] } + function Ji(e) { return e ? e.trim().split(Gi) : [] } @@ -4414,21 +4614,22 @@ var Zi, es, ts = Object.freeze({ }, removeAttr: function(e) { for (var t = Ji(e), n = function(e) { - Bi(r, (function(n) { - I(n) && zi(n, t[e]) - })) - }, r = this, i = 0; i < t.length; i++) n(i); + Bi(r, (function(n) { + I(n) && zi(n, t[e]) + })) + }, r = this, i = 0; i < t.length; i++) n(i); return this }, hasClass: function(e) { return this.toArray().some((function(t) { var n = I(t) && t.attribs.class, r = -1; - if (n && e.length) for (; - (r = n.indexOf(e, r + 1)) > -1;) { - var i = r + e.length; - if ((0 === r || Gi.test(n[r - 1])) && (i === n.length || Gi.test(n[i]))) return !0 - } + if (n && e.length) + for (; + (r = n.indexOf(e, r + 1)) > -1;) { + var i = r + e.length; + if ((0 === r || Gi.test(n[r - 1])) && (i === n.length || Gi.test(n[i]))) return !0 + } return !1 })) }, @@ -4463,14 +4664,15 @@ var Zi, es, ts = Object.freeze({ r = n.length, i = 0 === arguments.length; return Bi(this, (function(e) { - if (I(e)) if (i) e.attribs.class = ""; - else { - for (var t = Ji(e.attribs.class), s = !1, a = 0; a < r; a++) { - var o = t.indexOf(n[a]); - o >= 0 && (t.splice(o, 1), s = !0, a--) + if (I(e)) + if (i) e.attribs.class = ""; + else { + for (var t = Ji(e.attribs.class), s = !1, a = 0; a < r; a++) { + var o = t.indexOf(n[a]); + o >= 0 && (t.splice(o, 1), s = !0, a--) + } + s && (e.attribs.class = t.join(" ")) } - s && (e.attribs.class = t.join(" ")) - } })) }, toggleClass: function e(t, n) { @@ -4497,14 +4699,17 @@ var Zi, es, ts = Object.freeze({ function(e) { e.Any = "any", e.Element = "element", e.End = "end", e.Equals = "equals", e.Exists = "exists", e.Hyphen = "hyphen", e.Not = "not", e.Start = "start" }(es || (es = {})); -const ns = /^[^\\#]?(?:\\(?:[\da-f]{1,6}\s?|.)|[\w\-\u00b0-\uFFFF])+/, rs = /\\([\da-f]{1,6}\s?|(\s)|.)/gi, is = new Map([ - [126, es.Element], - [94, es.Start], - [36, es.End], - [42, es.Any], - [33, es.Not], - [124, es.Hyphen] -]), ss = new Set(["has", "not", "matches", "is", "where", "host", "host-context"]); +const ns = /^[^\\#]?(?:\\(?:[\da-f]{1,6}\s?|.)|[\w\-\u00b0-\uFFFF])+/, + rs = /\\([\da-f]{1,6}\s?|(\s)|.)/gi, + is = new Map([ + [126, es.Element], + [94, es.Start], + [36, es.End], + [42, es.Any], + [33, es.Not], + [124, es.Hyphen] + ]), + ss = new Set(["has", "not", "matches", "is", "where", "host", "host-context"]); function as(e) { switch (e.type) { @@ -4525,32 +4730,40 @@ function cs(e, t, n) { const r = parseInt(t, 16) - 65536; return r != r || n ? t : r < 0 ? String.fromCharCode(r + 65536) : String.fromCharCode(r >> 10 | 55296, 1023 & r | 56320) } + function ls(e) { return e.replace(rs, cs) } + function hs(e) { return 39 === e || 34 === e } + function us(e) { return 32 === e || 9 === e || 10 === e || 12 === e || 13 === e } + function ps(e) { - const t = [], n = fs(t, `${e}`, 0); + const t = [], + n = fs(t, `${e}`, 0); if (n < e.length) throw new Error(`Unmatched selector: ${e.slice(n)}`); return t } + function fs(e, t, n) { let r = []; function i(e) { const r = t.slice(n + e).match(ns); if (!r) throw new Error(`Expected name, found ${t.slice(n)}`); - const[i] = r; + const [i] = r; return n += e + i.length, ls(i) } + function s(e) { for (n += e; n < t.length && us(t.charCodeAt(n));) n++ } + function a() { const e = n += 1; let r = 1; @@ -4558,19 +4771,23 @@ function fs(e, t, n) { if (r) throw new Error("Parenthesis not matched"); return ls(t.slice(e, n - 1)) } + function o(e) { let n = 0; for (; 92 === t.charCodeAt(--e);) n++; return 1 == (1 & n) } + function c() { if (r.length > 0 && as(r[r.length - 1])) throw new Error("Did not expect successive traversals.") } + function l(e) { r.length > 0 && r[r.length - 1].type === Zi.Descendant ? r[r.length - 1].type = e : (c(), r.push({ type: e })) } + function h(e, t) { r.push({ type: Zi.Attribute, @@ -4581,6 +4798,7 @@ function fs(e, t, n) { ignoreCase: "quirks" }) } + function u() { if (r.length && r[r.length - 1].type === Zi.Descendant && r.pop(), 0 === r.length) throw new Error("Empty sub-selector"); e.push(r) @@ -4616,61 +4834,61 @@ function fs(e, t, n) { case 35: h("id", es.Equals); break; - case 91: - { - let e; - s(1); - let a = null; - 124 === t.charCodeAt(n) ? e = i(1) : t.startsWith("*|", n) ? (a = "*", e = i(2)) : (e = i(0), 124 === t.charCodeAt(n) && 61 !== t.charCodeAt(n + 1) && (a = e, e = i(1))), s(0); - let c = es.Exists; - const l = is.get(t.charCodeAt(n)); - if (l) { - if (c = l, 61 !== t.charCodeAt(n + 1)) throw new Error("Expected `=`"); - s(2) - } else 61 === t.charCodeAt(n) && (c = es.Equals, s(1)); - let h = "", u = null; - if ("exists" !== c) { - if (hs(t.charCodeAt(n))) { - const e = t.charCodeAt(n); - let r = n + 1; - for (; r < t.length && (t.charCodeAt(r) !== e || o(r));) r += 1; - if (t.charCodeAt(r) !== e) throw new Error("Attribute value didn't end"); - h = ls(t.slice(n + 1, r)), n = r + 1 - } else { - const e = n; - for (; n < t.length && (!us(t.charCodeAt(n)) && 93 !== t.charCodeAt(n) || o(n));) n += 1; - h = ls(t.slice(e, n)) - } - s(0); - const e = 32 | t.charCodeAt(n); - 115 === e ? (u = !1, s(1)) : 105 === e && (u = !0, s(1)) + case 91: { + let e; + s(1); + let a = null; + 124 === t.charCodeAt(n) ? e = i(1) : t.startsWith("*|", n) ? (a = "*", e = i(2)) : (e = i(0), 124 === t.charCodeAt(n) && 61 !== t.charCodeAt(n + 1) && (a = e, e = i(1))), s(0); + let c = es.Exists; + const l = is.get(t.charCodeAt(n)); + if (l) { + if (c = l, 61 !== t.charCodeAt(n + 1)) throw new Error("Expected `=`"); + s(2) + } else 61 === t.charCodeAt(n) && (c = es.Equals, s(1)); + let h = "", + u = null; + if ("exists" !== c) { + if (hs(t.charCodeAt(n))) { + const e = t.charCodeAt(n); + let r = n + 1; + for (; r < t.length && (t.charCodeAt(r) !== e || o(r));) r += 1; + if (t.charCodeAt(r) !== e) throw new Error("Attribute value didn't end"); + h = ls(t.slice(n + 1, r)), n = r + 1 + } else { + const e = n; + for (; n < t.length && (!us(t.charCodeAt(n)) && 93 !== t.charCodeAt(n) || o(n));) n += 1; + h = ls(t.slice(e, n)) } - if (93 !== t.charCodeAt(n)) throw new Error("Attribute selector didn't terminate"); - n += 1; - const p = { - type: Zi.Attribute, - name: e, - action: c, - value: h, - namespace: a, - ignoreCase: u - }; - r.push(p); - break + s(0); + const e = 32 | t.charCodeAt(n); + 115 === e ? (u = !1, s(1)) : 105 === e && (u = !0, s(1)) } - case 58: - { - if (58 === t.charCodeAt(n + 1)) { - r.push({ - type: Zi.PseudoElement, - name: i(2).toLowerCase(), - data: 40 === t.charCodeAt(n) ? a() : null - }); - continue - } - const e = i(1).toLowerCase(); - let s = null; - if (40 === t.charCodeAt(n)) if (ss.has(e)) { + if (93 !== t.charCodeAt(n)) throw new Error("Attribute selector didn't terminate"); + n += 1; + const p = { + type: Zi.Attribute, + name: e, + action: c, + value: h, + namespace: a, + ignoreCase: u + }; + r.push(p); + break + } + case 58: { + if (58 === t.charCodeAt(n + 1)) { + r.push({ + type: Zi.PseudoElement, + name: i(2).toLowerCase(), + data: 40 === t.charCodeAt(n) ? a() : null + }); + continue + } + const e = i(1).toLowerCase(); + let s = null; + if (40 === t.charCodeAt(n)) + if (ss.has(e)) { if (hs(t.charCodeAt(n + 1))) throw new Error(`Pseudo-selector ${e} cannot be quoted`); if (s = [], n = fs(s, t, n + 1), 41 !== t.charCodeAt(n)) throw new Error(`Missing closing parenthesis in :${e} (${t})`); n += 1 @@ -4680,58 +4898,56 @@ function fs(e, t, n) { e === s.charCodeAt(s.length - 1) && hs(e) && (s = s.slice(1, -1)) } s = ls(s) - } - r.push({ - type: Zi.Pseudo, - name: e, - data: s - }); - break - } + } r.push({ + type: Zi.Pseudo, + name: e, + data: s + }); + break + } case 44: u(), r = [], s(1); break; - default: - { - if (t.startsWith("/*", n)) { - const e = t.indexOf("*/", n + 2); - if (e < 0) throw new Error("Comment was not terminated"); - n = e + 2, 0 === r.length && s(0); + default: { + if (t.startsWith("/*", n)) { + const e = t.indexOf("*/", n + 2); + if (e < 0) throw new Error("Comment was not terminated"); + n = e + 2, 0 === r.length && s(0); + break + } + let a, o = null; + if (42 === e) n += 1, a = "*"; + else if (124 === e) { + if (a = "", 124 === t.charCodeAt(n + 1)) { + l(Zi.ColumnCombinator), s(2); break } - let a, o = null; - if (42 === e) n += 1, a = "*"; - else if (124 === e) { - if (a = "", 124 === t.charCodeAt(n + 1)) { - l(Zi.ColumnCombinator), s(2); - break - } - } else { - if (!ns.test(t.slice(n))) break e; - a = i(0) - } - 124 === t.charCodeAt(n) && 124 !== t.charCodeAt(n + 1) && (o = a, 42 === t.charCodeAt(n + 1) ? (a = "*", n += 2) : a = i(1)), r.push("*" === a ? { - type: Zi.Universal, - namespace: o - } : { - type: Zi.Tag, - name: a, - namespace: o - }) + } else { + if (!ns.test(t.slice(n))) break e; + a = i(0) } + 124 === t.charCodeAt(n) && 124 !== t.charCodeAt(n + 1) && (o = a, 42 === t.charCodeAt(n + 1) ? (a = "*", n += 2) : a = i(1)), r.push("*" === a ? { + type: Zi.Universal, + namespace: o + } : { + type: Zi.Tag, + name: a, + namespace: o + }) + } } } - return u(), - n + return u(), n } var ds = { - trueFunc: function() { - return !0 + trueFunc: function() { + return !0 + }, + falseFunc: function() { + return !1 + } }, - falseFunc: function() { - return !1 - } -}, Es = ds.trueFunc; + Es = ds.trueFunc; const ms = new Map([ [Zi.Universal, 50], [Zi.Tag, 30], @@ -4755,12 +4971,14 @@ function As(e) { const t = e.map(gs); for (let n = 1; n < e.length; n++) { const r = t[n]; - if (!(r < 0)) for (let i = n - 1; i >= 0 && r < t[i]; i--) { - const n = e[i + 1]; - e[i + 1] = e[i], e[i] = n, t[i + 1] = t[i], t[i] = r - } + if (!(r < 0)) + for (let i = n - 1; i >= 0 && r < t[i]; i--) { + const n = e[i + 1]; + e[i + 1] = e[i], e[i] = n, t[i + 1] = t[i], t[i] = r + } } } + function gs(e) { var t, n; let r = null !== (t = ms.get(e.type)) && void 0 !== t ? t : -1; @@ -4774,7 +4992,7 @@ function Cs(e) { const Is = new Set(["accept", "accept-charset", "align", "alink", "axis", "bgcolor", "charset", "checked", "clear", "codetype", "color", "compact", "declare", "defer", "dir", "direction", "disabled", "enctype", "face", "frame", "hreflang", "http-equiv", "lang", "language", "link", "media", "method", "multiple", "nohref", "noresize", "noshade", "nowrap", "readonly", "rel", "rev", "rules", "scope", "scrolling", "selected", "shape", "target", "text", "type", "valign", "valuetype", "vlink"]); function Ss(e, t) { - return "boolean" == typeof e.ignoreCase ? e.ignoreCase : "quirks" === e.ignoreCase ? !! t.quirksMode : !t.xmlMode && Is.has(e.name) + return "boolean" == typeof e.ignoreCase ? e.ignoreCase : "quirks" === e.ignoreCase ? !!t.quirksMode : !t.xmlMode && Is.has(e.name) } const bs = { equals(e, t, n) { @@ -4790,7 +5008,8 @@ const bs = { const n = r.getAttributeValue(t, i); return null != n && n.length === s.length && n.toLowerCase() === s && e(t) }) : t => r.getAttributeValue(t, i) === s && e(t) - }, hyphen(e, t, n) { + }, + hyphen(e, t, n) { const { adapter: r } = n, { @@ -4807,7 +5026,8 @@ const bs = { const n = r.getAttributeValue(t, i); return null != n && (n.length === a || "-" === n.charAt(a)) && n.substr(0, a) === s && e(t) } - }, element(e, t, n) { + }, + element(e, t, n) { const { adapter: r } = n, { @@ -4820,7 +5040,8 @@ const bs = { const n = r.getAttributeValue(t, i); return null != n && n.length >= s.length && a.test(n) && e(t) } - }, exists: (e, { + }, + exists: (e, { name: t }, { adapter: n @@ -4890,7 +5111,7 @@ const bs = { let { value: s } = t; - return "" === s ? t => !! r.getAttributeValue(t, i) && e(t) : Ss(t, n) ? (s = s.toLowerCase(), t => { + return "" === s ? t => !!r.getAttributeValue(t, i) && e(t) : Ss(t, n) ? (s = s.toLowerCase(), t => { const n = r.getAttributeValue(t, i); return (null == n || n.length !== s.length || n.toLowerCase() !== s) && e(t) }) : t => r.getAttributeValue(t, i) !== s && e(t) @@ -4916,10 +5137,12 @@ var Os = Ke((function(e, t) { function c() { return "-" === e.charAt(t) ? (t++, -1) : ("+" === e.charAt(t) && t++, 1) } + function l() { for (var n = t, s = 0; t < e.length && e.charCodeAt(t) >= r && e.charCodeAt(t) <= i;) s = 10 * s + (e.charCodeAt(t) - r), t++; return t === n ? null : s } + function h() { for (; t < e.length && n.has(e.charCodeAt(t));) t++ } @@ -4967,8 +5190,7 @@ var Ls = Os, get: function() { return ks.compile } - }), t. - default = function(e) { + }), t.default = function(e) { return (0, ks.compile)((0, Ls.parse)(e)) } })), @@ -4995,7 +5217,7 @@ const Ms = { return e(t) && n.getText(t).toLowerCase().includes(r) } }, - "nth-child" (e, t, { + "nth-child"(e, t, { adapter: n, equals: r }) { @@ -5007,7 +5229,7 @@ const Ms = { return i(a) && e(t) } }, - "nth-last-child" (e, t, { + "nth-last-child"(e, t, { adapter: n, equals: r }) { @@ -5019,7 +5241,7 @@ const Ms = { return i(a) && e(t) } }, - "nth-of-type" (e, t, { + "nth-of-type"(e, t, { adapter: n, equals: r }) { @@ -5035,7 +5257,7 @@ const Ms = { return i(a) && e(t) } }, - "nth-last-of-type" (e, t, { + "nth-last-of-type"(e, t, { adapter: n, equals: r }) { @@ -5082,7 +5304,7 @@ const xs = { empty: (e, { adapter: t }) => !t.getChildren(e).some((e => t.isTag(e) || "" !== t.getText(e))), - "first-child" (e, { + "first-child"(e, { adapter: t, equals: n }) { @@ -5090,7 +5312,7 @@ const xs = { const r = t.getSiblings(e).find((e => t.isTag(e))); return null != r && n(e, r) }, - "last-child" (e, { + "last-child"(e, { adapter: t, equals: n }) { @@ -5101,11 +5323,12 @@ const xs = { } return !1 }, - "first-of-type" (e, { + "first-of-type"(e, { adapter: t, equals: n }) { - const r = t.getSiblings(e), i = t.getName(e); + const r = t.getSiblings(e), + i = t.getName(e); for (let s = 0; s < r.length; s++) { const a = r[s]; if (n(e, a)) return !0; @@ -5113,11 +5336,12 @@ const xs = { } return !1 }, - "last-of-type" (e, { + "last-of-type"(e, { adapter: t, equals: n }) { - const r = t.getSiblings(e), i = t.getName(e); + const r = t.getSiblings(e), + i = t.getName(e); for (let s = r.length - 1; s >= 0; s--) { const a = r[s]; if (n(e, a)) return !0; @@ -5125,7 +5349,7 @@ const xs = { } return !1 }, - "only-of-type" (e, { + "only-of-type"(e, { adapter: t, equals: n }) { @@ -5144,27 +5368,28 @@ function ws(e, t, n, r) { } else if (e.length === r) throw new Error(`Pseudo-class :${t} doesn't have any arguments`) } const Bs = { - "any-link": ":is(a, area, link)[href]", - link: ":any-link:not(:visited)", - disabled: ":is(\n :is(button, input, select, textarea, optgroup, option)[disabled],\n optgroup[disabled] > option,\n fieldset[disabled]:not(fieldset[disabled] legend:first-of-type *)\n )", - enabled: ":not(:disabled)", - checked: ":is(:is(input[type=radio], input[type=checkbox])[checked], option:selected)", - required: ":is(input, select, textarea)[required]", - optional: ":is(input, select, textarea):not([required])", - selected: "option:is([selected], select:not([multiple]):not(:has(> option[selected])) > :first-of-type)", - checkbox: "[type=checkbox]", - file: "[type=file]", - password: "[type=password]", - radio: "[type=radio]", - reset: "[type=reset]", - image: "[type=image]", - submit: "[type=submit]", - parent: ":not(:empty)", - header: ":is(h1, h2, h3, h4, h5, h6)", - button: ":is(button, input[type=button])", - input: ":is(input, textarea, select, button)", - text: "input:is(:not([type!='']), [type=text])" -}, Fs = {}; + "any-link": ":is(a, area, link)[href]", + link: ":any-link:not(:visited)", + disabled: ":is(\n :is(button, input, select, textarea, optgroup, option)[disabled],\n optgroup[disabled] > option,\n fieldset[disabled]:not(fieldset[disabled] legend:first-of-type *)\n )", + enabled: ":not(:disabled)", + checked: ":is(:is(input[type=radio], input[type=checkbox])[checked], option:selected)", + required: ":is(input, select, textarea)[required]", + optional: ":is(input, select, textarea):not([required])", + selected: "option:is([selected], select:not([multiple]):not(:has(> option[selected])) > :first-of-type)", + checkbox: "[type=checkbox]", + file: "[type=file]", + password: "[type=password]", + radio: "[type=radio]", + reset: "[type=reset]", + image: "[type=image]", + submit: "[type=submit]", + parent: ":not(:empty)", + header: ":is(h1, h2, h3, h4, h5, h6)", + button: ":is(button, input[type=button])", + input: ":is(input, textarea, select, button)", + text: "input:is(:not([type!='']), [type=text])" + }, + Fs = {}; function Us(e, t) { const n = t.getSiblings(e); @@ -5172,58 +5397,63 @@ function Us(e, t) { const r = n.indexOf(e); return r < 0 || r === n.length - 1 ? [] : n.slice(r + 1).filter(t.isTag) } + function Hs(e) { return { - xmlMode: !! e.xmlMode, - lowerCaseAttributeNames: !! e.lowerCaseAttributeNames, - lowerCaseTags: !! e.lowerCaseTags, - quirksMode: !! e.quirksMode, - cacheResults: !! e.cacheResults, + xmlMode: !!e.xmlMode, + lowerCaseAttributeNames: !!e.lowerCaseAttributeNames, + lowerCaseTags: !!e.lowerCaseTags, + quirksMode: !!e.quirksMode, + cacheResults: !!e.cacheResults, pseudos: e.pseudos, adapter: e.adapter, equals: e.equals } } const Gs = (e, t, n, r, i) => { - const s = i(t, Hs(n), r); - return s === ds.trueFunc ? e : s === ds.falseFunc ? ds.falseFunc : t => s(t) && e(t) -}, Ys = { - is: Gs, - matches: Gs, - where: Gs, - not(e, t, n, r, i) { const s = i(t, Hs(n), r); - return s === ds.falseFunc ? e : s === ds.trueFunc ? ds.falseFunc : t => !s(t) && e(t) + return s === ds.trueFunc ? e : s === ds.falseFunc ? ds.falseFunc : t => s(t) && e(t) }, - has(e, t, n, r, i) { - const { - adapter: s - } = n, a = Hs(n); - a.relativeSelector = !0; - const o = t.some((e => e.some(Ts))) ? [Fs] : void 0, c = i(t, a, o); - if (c === ds.falseFunc) return ds.falseFunc; - const l = function(e, t) { - return e === ds.falseFunc ? ds.falseFunc : n => t.isTag(n) && e(n) - }(c, s); - if (o && c !== ds.trueFunc) { + Ys = { + is: Gs, + matches: Gs, + where: Gs, + not(e, t, n, r, i) { + const s = i(t, Hs(n), r); + return s === ds.falseFunc ? e : s === ds.trueFunc ? ds.falseFunc : t => !s(t) && e(t) + }, + has(e, t, n, r, i) { const { - shouldTestNextSiblings: t = !1 - } = c; - return n => { - if (!e(n)) return !1; - o[0] = n; - const r = s.getChildren(n), i = t ? [...r, ...Us(n, s)] : r; - return s.existsOne(l, i) + adapter: s + } = n, a = Hs(n); + a.relativeSelector = !0; + const o = t.some((e => e.some(Ts))) ? [Fs] : void 0, + c = i(t, a, o); + if (c === ds.falseFunc) return ds.falseFunc; + const l = function(e, t) { + return e === ds.falseFunc ? ds.falseFunc : n => t.isTag(n) && e(n) + }(c, s); + if (o && c !== ds.trueFunc) { + const { + shouldTestNextSiblings: t = !1 + } = c; + return n => { + if (!e(n)) return !1; + o[0] = n; + const r = s.getChildren(n), + i = t ? [...r, ...Us(n, s)] : r; + return s.existsOne(l, i) + } } + return t => e(t) && s.existsOne(l, s.getChildren(t)) } - return t => e(t) && s.existsOne(l, s.getChildren(t)) - } -}; + }; function qs(e, t) { const n = t.getParent(e); return n && t.isTag(n) ? n : null } + function Ks(e, t, n, r, i) { const { adapter: s, @@ -5248,7 +5478,8 @@ function Ks(e, t, n, r, i) { if (!(a in Ys)) throw new Error(`Unknown pseudo-class :${a}(${o})`); return Ys[a](e, o, n, r, i) } - const c = null === (s = n.pseudos) || void 0 === s ? void 0 : s[a], l = "string" == typeof c ? c : Bs[a]; + const c = null === (s = n.pseudos) || void 0 === s ? void 0 : s[a], + l = "string" == typeof c ? c : Bs[a]; if ("string" == typeof l) { if (null != o) throw new Error(`Pseudo ${a} doesn't have any arguments`); const t = ps(l); @@ -5262,34 +5493,33 @@ function Ks(e, t, n, r, i) { } throw new Error(`Unknown pseudo-class :${a}`) }(e, t, n, r, i); - case Zi.Tag: - { - if (null != t.namespace) throw new Error("Namespaced tag names are not yet supported by css-select"); - let { - name: r - } = t; - return n.xmlMode && !n.lowerCaseTags || (r = r.toLowerCase()), + case Zi.Tag: { + if (null != t.namespace) throw new Error("Namespaced tag names are not yet supported by css-select"); + let { + name: r + } = t; + return n.xmlMode && !n.lowerCaseTags || (r = r.toLowerCase()), function(t) { return s.getName(t) === r && e(t) } - } - case Zi.Descendant: - { - if (!1 === n.cacheResults || "undefined" == typeof WeakSet) return function(t) { - let n = t; - for (; n = qs(n, s);) if (e(n)) return !0; - return !1 - }; - const t = new WeakSet; - return function(n) { - let r = n; - for (; r = qs(r, s);) if (!t.has(r)) { + } + case Zi.Descendant: { + if (!1 === n.cacheResults || "undefined" == typeof WeakSet) return function(t) { + let n = t; + for (; n = qs(n, s);) + if (e(n)) return !0; + return !1 + }; + const t = new WeakSet; + return function(n) { + let r = n; + for (; r = qs(r, s);) + if (!t.has(r)) { if (s.isTag(r) && e(r)) return !0; t.add(r) - } - return !1 - } + } return !1 } + } case "_flexibleDescendant": return function(t) { let n = t; @@ -5336,27 +5566,31 @@ function Ks(e, t, n, r, i) { return e } } + function js(e) { return e.type === Zi.Pseudo && ("scope" === e.name || Array.isArray(e.data) && e.data.some((e => e.some(js)))) } const Vs = { - type: Zi.Descendant -}, Ws = { - type: "_flexibleDescendant" -}, Qs = { - type: Zi.Pseudo, - name: "scope", - data: null -}; + type: Zi.Descendant + }, + Ws = { + type: "_flexibleDescendant" + }, + Qs = { + type: Zi.Pseudo, + name: "scope", + data: null + }; function Xs(e, t, n) { var r; e.forEach(As), n = null !== (r = t.context) && void 0 !== r ? r : n; - const i = Array.isArray(n), s = n && (Array.isArray(n) ? n : [n]); - if (!1 !== t.relativeSelector)! function(e, { + const i = Array.isArray(n), + s = n && (Array.isArray(n) ? n : [n]); + if (!1 !== t.relativeSelector) ! function(e, { adapter: t }, n) { - const r = !! (null == n ? void 0 : n.every((e => { + const r = !!(null == n ? void 0 : n.every((e => { const n = t.isTag(e) && t.getParent(e); return e === Fs || n && t.isTag(n) }))); @@ -5373,7 +5607,7 @@ function Xs(e, t, n) { let a = !1; const o = e.map((e => { if (e.length >= 2) { - const[t, n] = e; + const [t, n] = e; t.type !== Zi.Pseudo || "scope" !== t.name || (i && n.type === Zi.Descendant ? e[1] = Ws : n.type !== Zi.Adjacent && n.type !== Zi.Sibling || (a = !0)) } return function(e, t, n) { @@ -5383,15 +5617,17 @@ function Xs(e, t, n) { })).reduce($s, ds.falseFunc); return o.shouldTestNextSiblings = a, o } + function $s(e, t) { return t === ds.falseFunc || e === ds.trueFunc ? e : e === ds.falseFunc || t === ds.trueFunc ? t : function(n) { return e(n) || t(n) } } -const zs = (e, t) => e === t, Js = { - adapter: Se, - equals: zs -}; +const zs = (e, t) => e === t, + Js = { + adapter: Se, + equals: zs + }; const Zs = (ea = Xs, function(e, t, n) { const r = function(e) { var t, n, r, i; @@ -5404,7 +5640,8 @@ var ea; function ta(e, t, n = !1) { return n && (e = function(e, t) { - const n = Array.isArray(e) ? e.slice(0) : [e], r = n.length; + const n = Array.isArray(e) ? e.slice(0) : [e], + r = n.length; for (let e = 0; e < r; e++) { const r = Us(n[e], t); n.push(...r) @@ -5415,36 +5652,42 @@ function ta(e, t, n = !1) { const na = new Set(["first", "last", "eq", "gt", "nth", "lt", "even", "odd"]); function ra(e) { - return "pseudo" === e.type && ( !! na.has(e.name) || !("not" !== e.name || !Array.isArray(e.data)) && e.data.some((e => e.some(ra)))) + return "pseudo" === e.type && (!!na.has(e.name) || !("not" !== e.name || !Array.isArray(e.data)) && e.data.some((e => e.some(ra)))) } + function ia(e) { - const t = [], n = []; + const t = [], + n = []; for (const r of e) r.some(ra) ? t.push(r) : n.push(r); return [n, t] } const sa = { - type: Zi.Universal, - namespace: null -}, aa = { - type: Zi.Pseudo, - name: "scope", - data: null -}; + type: Zi.Universal, + namespace: null + }, + aa = { + type: Zi.Pseudo, + name: "scope", + data: null + }; function oa(e, t, n = {}) { return ca([e], t, n) } + function ca(e, t, n = {}) { if ("function" == typeof t) return e.some(t); - const[r, i] = ia(ps(t)); + const [r, i] = ia(ps(t)); return r.length > 0 && e.some(Zs(r, n)) || i.some((t => ua(t, e, n).length > 0)) } + function la(e, t, n = {}) { return ha(ps(e), t, n) } + function ha(e, t, n) { if (0 === t.length) return []; - const[r, i] = ia(e); + const [r, i] = ia(e); let s; if (r.length) { const e = Ea(t, r, n); @@ -5452,52 +5695,63 @@ function ha(e, t, n) { e.length && (s = new Set(e)) } for (let e = 0; e < i.length && (null == s ? void 0 : s.size) !== t.length; e++) { - const r = i[e], a = s ? t.filter((e => I(e) && !s.has(e))) : t; + const r = i[e], + a = s ? t.filter((e => I(e) && !s.has(e))) : t; if (0 === a.length) break; const o = ua(r, t, n); - if (o.length) if (s) o.forEach((e => s.add(e))); - else { - if (e === i.length - 1) return o; - s = new Set(o) - } + if (o.length) + if (s) o.forEach((e => s.add(e))); + else { + if (e === i.length - 1) return o; + s = new Set(o) + } } return void 0 !== s ? s.size === t.length ? t : t.filter((e => s.has(e))) : [] } + function ua(e, t, n) { var r; if (e.some(as)) { const i = null !== (r = n.root) && void 0 !== r ? r : function(e) { - for (; e.parent;) e = e.parent; - return e - }(t[0]), s = {...n, context: t, - relativeSelector: !1 - }; + for (; e.parent;) e = e.parent; + return e + }(t[0]), + s = { + ...n, + context: t, + relativeSelector: !1 + }; return e.push(aa), pa(i, e, s, !0, t.length) } return pa(t, e, n, !1, t.length) } + function pa(e, t, n, r, i) { - const s = t.findIndex(ra), a = t.slice(0, s), o = t[s], c = t.length - 1 === s ? i : 1 / 0, l = function(e, t, n) { - const r = null != t ? parseInt(t, 10) : NaN; - switch (e) { - case "first": - return 1; - case "nth": - case "eq": - return isFinite(r) ? r >= 0 ? r + 1 : 1 / 0 : 0; - case "lt": - return isFinite(r) ? r >= 0 ? Math.min(r, n) : 1 / 0 : 0; - case "gt": - return isFinite(r) ? 1 / 0 : 0; - case "odd": - return 2 * n; - case "even": - return 2 * n - 1; - case "last": - case "not": - return 1 / 0 - } - }(o.name, o.data, c); + const s = t.findIndex(ra), + a = t.slice(0, s), + o = t[s], + c = t.length - 1 === s ? i : 1 / 0, + l = function(e, t, n) { + const r = null != t ? parseInt(t, 10) : NaN; + switch (e) { + case "first": + return 1; + case "nth": + case "eq": + return isFinite(r) ? r >= 0 ? r + 1 : 1 / 0 : 0; + case "lt": + return isFinite(r) ? r >= 0 ? Math.min(r, n) : 1 / 0 : 0; + case "gt": + return isFinite(r) ? 1 / 0 : 0; + case "odd": + return 2 * n; + case "even": + return 2 * n - 1; + case "last": + case "not": + return 1 / 0 + } + }(o.name, o.data, c); if (0 === l) return []; const h = (0 !== a.length || Array.isArray(e) ? 0 === a.length ? (Array.isArray(e) ? e : [e]).filter(I) : r || a.some(as) ? fa(e, [a], n, l) : Ea(e, [a], n) : Z(e).filter(I)).slice(0, l); let u = function(e, t, n, r) { @@ -5517,15 +5771,15 @@ function pa(e, t, n, r, i) { return t.filter(((e, t) => t % 2 == 0)); case "odd": return t.filter(((e, t) => t % 2 == 1)); - case "not": - { - const e = new Set(ha(n, t, r)); - return t.filter((t => !e.has(t))) - } + case "not": { + const e = new Set(ha(n, t, r)); + return t.filter((t => !e.has(t))) + } } }(o.name, h, o.data, n); if (0 === u.length || t.length === s + 1) return u; - const p = t.slice(s + 1), f = p.some(as); + const p = t.slice(s + 1), + f = p.some(as); if (f) { if (as(p[0])) { const { @@ -5533,19 +5787,26 @@ function pa(e, t, n, r, i) { } = p[0]; e !== Zi.Sibling && e !== Zi.Adjacent || (u = ta(u, Se, !0)), p.unshift(sa) } - n = {...n, relativeSelector: !1, + n = { + ...n, + relativeSelector: !1, rootFunc: e => u.includes(e) } - } else n.rootFunc && n.rootFunc !== Es && (n = {...n, rootFunc: Es + } else n.rootFunc && n.rootFunc !== Es && (n = { + ...n, + rootFunc: Es }); return p.some(ra) ? pa(u, p, n, !1, i) : f ? fa(u, [p], n, i) : Ea(u, [p], n) } + function fa(e, t, n, r) { return da(e, Zs(t, n, e), r) } + function da(e, t, n = 1 / 0) { return ae((e => I(e) && t(e)), ta(e, Se, t.shouldTestNextSiblings), !0, n) } + function Ea(e, t, n) { const r = (Array.isArray(e) ? e : [e]).filter(I); if (0 === r.length) return r; @@ -5553,9 +5814,11 @@ function Ea(e, t, n) { return i === Es ? r : r.filter(i) } var ma = function(e, t, n) { - if (n || 2 === arguments.length) for (var r, i = 0, s = t.length; i < s; i++)!r && i in t || (r || (r = Array.prototype.slice.call(t, 0, i)), r[i] = t[i]); - return e.concat(r || Array.prototype.slice.call(t)) -}, Ta = /^\s*[~+]/; + if (n || 2 === arguments.length) + for (var r, i = 0, s = t.length; i < s; i++) !r && i in t || (r || (r = Array.prototype.slice.call(t, 0, i)), r[i] = t[i]); + return e.concat(r || Array.prototype.slice.call(t)) + }, + Ta = /^\s*[~+]/; function _a(e) { return function(t) { @@ -5569,12 +5832,12 @@ function _a(e) { } } var Aa = _a((function(e, t) { - for (var n, r = [], i = 0; i < t.length; i++) { - var s = e(t[i]); - r.push(s) - } - return (n = new Array).concat.apply(n, r) -})), + for (var n, r = [], i = 0; i < t.length; i++) { + var s = e(t[i]); + r.push(s) + } + return (n = new Array).concat.apply(n, r) + })), ga = _a((function(e, t) { for (var n = [], r = 0; r < t.length; r++) { var i = e(t[r]); @@ -5590,7 +5853,7 @@ function Na(e) { var n = []; return Bi(t, (function(t) { for (var i; - (i = e(t)) && !(null == r ? void 0 : r(i, n.length)); t = i) n.push(i) + (i = e(t)) && !(null == r ? void 0 : r(i, n.length)); t = i) n.push(i) })), n })).apply(void 0, ma([e], t, !1)); return function(e, t) { @@ -5602,13 +5865,14 @@ function Na(e) { return r = null, s } } + function Ca(e) { return Array.from(new Set(e)) } var Ia = ga((function(e) { - var t = e.parent; - return t && !L(t) ? t : null -}), Ca), + var t = e.parent; + return t && !L(t) ? t : null + }), Ca), Sa = Aa((function(e) { for (var t = []; e.parent && !L(e.parent);) t.push(e.parent), e = e.parent; return t @@ -5622,8 +5886,8 @@ var Ia = ga((function(e) { return e.reverse() })); var Oa = ga((function(e) { - return ne(e) -})), + return ne(e) + })), ya = Aa((function(e) { for (var t = []; e.next;) I(e = e.next) && t.push(e); return t @@ -5659,6 +5923,7 @@ function Pa(e) { return e === t } } + function xa(e, t, n, r) { return "string" == typeof t ? la(t, e, { xmlMode: n, @@ -5691,7 +5956,7 @@ var wa = Object.freeze({ }; return this._make(function(e, t, n = {}, r = 1 / 0) { if ("function" == typeof e) return da(t, e); - const[i, s] = ia(ps(e)), a = s.map((e => pa(t, e, n, !0, r))); + const [i, s] = ia(ps(e)), a = s.map((e => pa(t, e, n, !0, r))); return i.length && a.push(fa(t, i, n, r)), 0 === a.length ? [] : 1 === a.length ? a[0] : Ee(a.reduce(((e, t) => [...e, ...t]))) }(e, i, s)) }, @@ -5702,9 +5967,10 @@ var wa = Object.freeze({ var t, n = []; if (!e) return this._make(n); var r = { - xmlMode: this.options.xmlMode, - root: null === (t = this._root) || void 0 === t ? void 0 : t[0] - }, i = "string" == typeof e ? function(t) { + xmlMode: this.options.xmlMode, + root: null === (t = this._root) || void 0 === t ? void 0 : t[0] + }, + i = "string" == typeof e ? function(t) { return oa(t, e, r) } : Pa(e); return Bi(this, (function(e) { @@ -5732,7 +5998,7 @@ var wa = Object.freeze({ return this._make(e) }, each: function(e) { - for (var t = 0, n = this.length; t < n && !1 !== e.call(this[t], t, this[t]);)++t; + for (var t = 0, n = this.length; t < n && !1 !== e.call(this[t], t, this[t]);) ++t; return this }, map: function(e) { @@ -5750,7 +6016,7 @@ var wa = Object.freeze({ filterArray: xa, is: function(e) { var t = this.toArray(); - return "string" == typeof e ? ca(t.filter(I), e, this.options) : !! e && t.some(Pa(e)) + return "string" == typeof e ? ca(t.filter(I), e, this.options) : !!e && t.some(Pa(e)) }, not: function(e) { var t = this.toArray(); @@ -5820,7 +6086,8 @@ function Ba(e, t) { return t } var Fa = function(e, t, n) { - if (n || 2 === arguments.length) for (var r, i = 0, s = t.length; i < s; i++)!r && i in t || (r || (r = Array.prototype.slice.call(t, 0, i)), r[i] = t[i]); + if (n || 2 === arguments.length) + for (var r, i = 0, s = t.length; i < s; i++) !r && i in t || (r || (r = Array.prototype.slice.call(t, 0, i)), r[i] = t[i]); return e.concat(r || Array.prototype.slice.call(t)) }; @@ -5837,6 +6104,7 @@ function Ua(e) { })) } } + function Ha(e, t, n, r, i) { for (var s, a, o = Fa([t, n], r, !0), c = 0 === t ? null : e[t - 1], l = t + n >= e.length ? null : e[t + n], h = 0; h < r.length; ++h) { var u = r[h], @@ -5850,8 +6118,8 @@ function Ha(e, t, n, r, i) { return c && (c.next = r[0]), l && (l.prev = r[r.length - 1]), e.splice.apply(e, o) } var Ga = Ua((function(e, t, n) { - Ha(t, t.length, 0, e, n) -})), + Ha(t, t.length, 0, e, n) + })), Ya = Ua((function(e, t, n) { Ha(t, 0, 0, e, n) })); @@ -5874,13 +6142,13 @@ function qa(e) { } } var Ka = qa((function(e, t, n) { - var r = e.parent; - if (r) { - var i = r.children, - s = i.indexOf(e); - Ba([e], t), Ha(i, s, 0, n, r) - } -})), + var r = e.parent; + if (r) { + var i = r.children, + s = i.indexOf(e); + Ba([e], t), Ha(i, s, 0, n, r) + } + })), ja = qa((function(e, t, n) { k(e) && (Ba(e.children, t), Ba(n, e)) })); @@ -6047,6 +6315,7 @@ function Wa(e, t, n, r) { })); var a } + function Qa(e, t) { if (e && I(e)) { var n = function(e) { @@ -6072,44 +6341,44 @@ function Qa(e, t) { } } var Xa = Object.freeze({ - __proto__: null, - css: function(e, t) { - return null != e && null != t || "object" == typeof e && !Array.isArray(e) ? Bi(this, (function(n, r) { - I(n) && Wa(n, e, t, r) - })) : 0 !== this.length ? Qa(this[0], e) : void 0 - } -}), + __proto__: null, + css: function(e, t) { + return null != e && null != t || "object" == typeof e && !Array.isArray(e) ? Bi(this, (function(n, r) { + I(n) && Wa(n, e, t, r) + })) : 0 !== this.length ? Qa(this[0], e) : void 0 + } + }), $a = /%20/g, za = /\r?\n/g; var Ja = Object.freeze({ - __proto__: null, - serialize: function() { - var e = this.serializeArray().map((function(e) { - return "".concat(encodeURIComponent(e.name), "=").concat(encodeURIComponent(e.value)) - })); - return e.join("&").replace($a, "+") - }, - serializeArray: function() { - var e = this; - return this.map((function(t, n) { - var r = e._make(n); - return I(n) && "form" === n.name ? r.find("input,select,textarea,keygen").toArray() : r.filter("input,select,textarea,keygen").toArray() - })).filter('[name!=""]:enabled:not(:submit, :button, :image, :reset, :file):matches([checked], :not(:checkbox, :radio))').map((function(t, n) { - var r, i = e._make(n), - s = i.attr("name"), - a = null !== (r = i.val()) && void 0 !== r ? r : ""; - return Array.isArray(a) ? a.map((function(e) { - return { + __proto__: null, + serialize: function() { + var e = this.serializeArray().map((function(e) { + return "".concat(encodeURIComponent(e.name), "=").concat(encodeURIComponent(e.value)) + })); + return e.join("&").replace($a, "+") + }, + serializeArray: function() { + var e = this; + return this.map((function(t, n) { + var r = e._make(n); + return I(n) && "form" === n.name ? r.find("input,select,textarea,keygen").toArray() : r.filter("input,select,textarea,keygen").toArray() + })).filter('[name!=""]:enabled:not(:submit, :button, :image, :reset, :file):matches([checked], :not(:checkbox, :radio))').map((function(t, n) { + var r, i = e._make(n), + s = i.attr("name"), + a = null !== (r = i.val()) && void 0 !== r ? r : ""; + return Array.isArray(a) ? a.map((function(e) { + return { + name: s, + value: e.replace(za, "\r\n") + } + })) : { name: s, - value: e.replace(za, "\r\n") + value: a.replace(za, "\r\n") } - })) : { - name: s, - value: a.replace(za, "\r\n") - } - })).toArray() - } -}), + })).toArray() + } + }), Za = function(e, t, n) { if (this.length = 0, this.options = n, this._root = t, e) { for (var r = 0; r < e.length; r++) this[r] = e[r]; @@ -6118,25 +6387,26 @@ var Ja = Object.freeze({ }; Za.prototype.cheerio = "[cheerio object]", Za.prototype.splice = Array.prototype.splice, Za.prototype[Symbol.iterator] = Array.prototype[Symbol.iterator], Object.assign(Za.prototype, ts, wa, Va, Xa, Ja); var eo, to = (eo = function(e, t) { - return eo = Object.setPrototypeOf || { - __proto__: [] - } - instanceof Array && function(e, t) { - e.__proto__ = t - } || function(e, t) { - for (var n in t) Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]) - }, eo(e, t) -}, function(e, t) { - if ("function" != typeof t && null !== t) throw new TypeError("Class extends value " + String(t) + " is not a constructor or null"); + return eo = Object.setPrototypeOf || { + __proto__: [] + } + instanceof Array && function(e, t) { + e.__proto__ = t + } || function(e, t) { + for (var n in t) Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]) + }, eo(e, t) + }, function(e, t) { + if ("function" != typeof t && null !== t) throw new TypeError("Class extends value " + String(t) + " is not a constructor or null"); - function n() { - this.constructor = e - } - eo(e, t), e.prototype = null === t ? Object.create(t) : (n.prototype = t.prototype, new n) -}), + function n() { + this.constructor = e + } + eo(e, t), e.prototype = null === t ? Object.create(t) : (n.prototype = t.prototype, new n) + }), no = function() { return no = Object.assign || function(e) { - for (var t, n = 1, r = arguments.length; n < r; n++) for (var i in t = arguments[n]) Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]); + for (var t, n = 1, r = arguments.length; n < r; n++) + for (var i in t = arguments[n]) Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]); return e }, no.apply(this, arguments) }; @@ -6145,14 +6415,21 @@ var io; ! function(e) { e[e.EOF = -1] = "EOF", e[e.NULL = 0] = "NULL", e[e.TABULATION = 9] = "TABULATION", e[e.CARRIAGE_RETURN = 13] = "CARRIAGE_RETURN", e[e.LINE_FEED = 10] = "LINE_FEED", e[e.FORM_FEED = 12] = "FORM_FEED", e[e.SPACE = 32] = "SPACE", e[e.EXCLAMATION_MARK = 33] = "EXCLAMATION_MARK", e[e.QUOTATION_MARK = 34] = "QUOTATION_MARK", e[e.NUMBER_SIGN = 35] = "NUMBER_SIGN", e[e.AMPERSAND = 38] = "AMPERSAND", e[e.APOSTROPHE = 39] = "APOSTROPHE", e[e.HYPHEN_MINUS = 45] = "HYPHEN_MINUS", e[e.SOLIDUS = 47] = "SOLIDUS", e[e.DIGIT_0 = 48] = "DIGIT_0", e[e.DIGIT_9 = 57] = "DIGIT_9", e[e.SEMICOLON = 59] = "SEMICOLON", e[e.LESS_THAN_SIGN = 60] = "LESS_THAN_SIGN", e[e.EQUALS_SIGN = 61] = "EQUALS_SIGN", e[e.GREATER_THAN_SIGN = 62] = "GREATER_THAN_SIGN", e[e.QUESTION_MARK = 63] = "QUESTION_MARK", e[e.LATIN_CAPITAL_A = 65] = "LATIN_CAPITAL_A", e[e.LATIN_CAPITAL_F = 70] = "LATIN_CAPITAL_F", e[e.LATIN_CAPITAL_X = 88] = "LATIN_CAPITAL_X", e[e.LATIN_CAPITAL_Z = 90] = "LATIN_CAPITAL_Z", e[e.RIGHT_SQUARE_BRACKET = 93] = "RIGHT_SQUARE_BRACKET", e[e.GRAVE_ACCENT = 96] = "GRAVE_ACCENT", e[e.LATIN_SMALL_A = 97] = "LATIN_SMALL_A", e[e.LATIN_SMALL_F = 102] = "LATIN_SMALL_F", e[e.LATIN_SMALL_X = 120] = "LATIN_SMALL_X", e[e.LATIN_SMALL_Z = 122] = "LATIN_SMALL_Z", e[e.REPLACEMENT_CHARACTER = 65533] = "REPLACEMENT_CHARACTER" }(io = io || (io = {})); -const so = "--", ao = "[CDATA[", oo = "doctype", co = "script", lo = "public", ho = "system"; +const so = "--", + ao = "[CDATA[", + oo = "doctype", + co = "script", + lo = "public", + ho = "system"; function uo(e) { return e >= 55296 && e <= 57343 } + function po(e) { return 32 !== e && 10 !== e && 13 !== e && 9 !== e && 12 !== e && e >= 1 && e <= 31 || e >= 127 && e <= 159 } + function fo(e) { return e >= 64976 && e <= 65007 || ro.has(e) } @@ -6196,8 +6473,8 @@ class mo { if (this.pos !== this.html.length - 1) { const t = this.html.charCodeAt(this.pos + 1); if (function(e) { - return e >= 56320 && e <= 57343 - }(t)) return this.pos++, this._addGap(), 1024 * (e - 55296) + 9216 + t + return e >= 56320 && e <= 57343 + }(t)) return this.pos++, this._addGap(), 1024 * (e - 55296) + 9216 + t } else if (!this.lastChunkWritten) return this.endOfChunkHit = !0, io.EOF; return this._err(Eo.surrogateInInputStream), e } @@ -6244,7 +6521,8 @@ class mo { var To; function _o(e, t) { - for (let n = e.attrs.length - 1; n >= 0; n--) if (e.attrs[n].name === t) return e.attrs[n].value; + for (let n = e.attrs.length - 1; n >= 0; n--) + if (e.attrs[n].name === t) return e.attrs[n].value; return null }! function(e) { e[e.CHARACTER = 0] = "CHARACTER", e[e.NULL_CHARACTER = 1] = "NULL_CHARACTER", e[e.WHITESPACE_CHARACTER = 2] = "WHITESPACE_CHARACTER", e[e.START_TAG = 3] = "START_TAG", e[e.END_TAG = 4] = "END_TAG", e[e.COMMENT = 5] = "COMMENT", e[e.DOCTYPE = 6] = "DOCTYPE", e[e.EOF = 7] = "EOF", e[e.HIBERNATION = 8] = "HIBERNATION" @@ -6252,8 +6530,7 @@ function _o(e, t) { var Ao = Ke((function(e, t) { Object.defineProperty(t, "__esModule", { value: !0 - }), t. - default = new Uint16Array('ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms„‹•˜¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegraìȹoɴ͹\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱cò׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘ë૙eryThiî૙tedĀGL૸ଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻Ó䃓Āiy෎ීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬื฼de耻Õ䃕es;樷ml耻Ö䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»࿝pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗Āeiቻ኉Dzኀ\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0᏿ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0጖y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtè૙a;䎖r;愨pf;愤cr;쀀𝒵௡ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;e዁ᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀𝔟g΀costuvwឍឝឳេ៕៛៞ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t»᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭍᭒\0᯽\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇᫔᫺\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ᫙\0\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁îᅠeĀmx᫱᫶ent»᫩eóɍǧ᫾\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍rò΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴoôᲉĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»Ṻƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙ῜ῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧‪‬\0‮耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0↎proø₞r;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼rò৆òΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonó྘quigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roø඄urĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨í஘istĀ;s஠டr;쀀𝔫ȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lanô௢ií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs఻⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lleì୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉uå൅;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭å೸åഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñ೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥ⵲ⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀𝔬ͯ⵹\0\0⵼\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨrò᪀Āir⶝ⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ⹞\0⹽\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ⹧⹲຅脀¶;l⹭⹮䂶leìЃɩ⹸\0\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴ï໻rel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei⿾々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ì࿲âヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowó࿪arpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓rò࿪aòՑ;怏oustĀ;a㈞㈟掱che»㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼਴t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì⹯耻­䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫ਩war;椪lig耻ß䃟௡㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rë๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproø዁im»ኬsðኞĀas㚺㚮ð዁rn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xô᝷headĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roð໻tré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜ៟tré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split("").map((function(e) { + }), t.default = new Uint16Array('ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms„‹•˜¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegraìȹoɴ͹\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱cò׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘ë૙eryThiî૙tedĀGL૸ଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻Ó䃓Āiy෎ීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬื฼de耻Õ䃕es;樷ml耻Ö䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»࿝pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗Āeiቻ኉Dzኀ\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0᏿ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0጖y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtè૙a;䎖r;愨pf;愤cr;쀀𝒵௡ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;e዁ᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀𝔟g΀costuvwឍឝឳេ៕៛៞ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t»᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭍᭒\0᯽\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇᫔᫺\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ᫙\0\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁îᅠeĀmx᫱᫶ent»᫩eóɍǧ᫾\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍rò΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴoôᲉĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»Ṻƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙ῜ῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧‪‬\0‮耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0↎proø₞r;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼rò৆òΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonó྘quigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roø඄urĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨í஘istĀ;s஠டr;쀀𝔫ȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lanô௢ií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs఻⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lleì୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉uå൅;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭å೸åഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñ೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥ⵲ⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀𝔬ͯ⵹\0\0⵼\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨrò᪀Āir⶝ⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ⹞\0⹽\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ⹧⹲຅脀¶;l⹭⹮䂶leìЃɩ⹸\0\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴ï໻rel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei⿾々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ì࿲âヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowó࿪arpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓rò࿪aòՑ;怏oustĀ;a㈞㈟掱che»㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼਴t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì⹯耻­䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫ਩war;椪lig耻ß䃟௡㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rë๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproø዁im»ኬsðኞĀas㚺㚮ð዁rn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xô᝷headĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roð໻tré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜ៟tré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split("").map((function(e) { return e.charCodeAt(0) }))) })); @@ -6261,8 +6538,7 @@ qe(Ao); var go = Ke((function(e, t) { Object.defineProperty(t, "__esModule", { value: !0 - }), t. - default = new Uint16Array("Ȁaglq\tɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map((function(e) { + }), t.default = new Uint16Array("Ȁaglq\tɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map((function(e) { return e.charCodeAt(0) }))) })); @@ -6310,8 +6586,7 @@ var No = Ke((function(e, t) { t.fromCodePoint = null !== (n = String.fromCodePoint) && void 0 !== n ? n : function(e) { var t = ""; return e > 65535 && (e -= 65536, t += String.fromCharCode(e >>> 10 & 1023 | 55296), e = 56320 | 1023 & e), t += String.fromCharCode(e) - }, t.replaceCodePoint = i, t. - default = function(e) { + }, t.replaceCodePoint = i, t.default = function(e) { return (0, t.fromCodePoint)(i(e)) } })); @@ -6321,57 +6596,54 @@ var Co = Ao, So = No, bo = Ke((function(e, t) { var n = Ge && Ge.__importDefault || function(e) { - return e && e.__esModule ? e : { - default: e - } - }; + return e && e.__esModule ? e : { + default: e + } + }; Object.defineProperty(t, "__esModule", { value: !0 }), t.decodeXML = t.decodeHTMLStrict = t.decodeHTML = t.determineBranch = t.BinTrieFlags = t.fromCodePoint = t.replaceCodePoint = t.decodeCodePoint = t.xmlDecodeTree = t.htmlDecodeTree = void 0; var r = n(Co); - t.htmlDecodeTree = r. - default; + t.htmlDecodeTree = r.default; var i = n(Io); - t.xmlDecodeTree = i. - default; + t.xmlDecodeTree = i.default; var s = n(So); - t.decodeCodePoint = s. - default; + t.decodeCodePoint = s.default; var a, o, c = So; function l(e) { return function(t, n) { for (var r = "", i = 0, c = 0; - (c = t.indexOf("&", c)) >= 0;) if (r += t.slice(i, c), i = c, c += 1, t.charCodeAt(c) !== a.NUM) { - for (var l = 0, u = 1, p = 0, f = e[p]; c < t.length && !((p = h(e, f, p + 1, t.charCodeAt(c))) < 0); c++, u++) { - var d = (f = e[p]) & o.VALUE_LENGTH; - if (d) { - var E; - if (n && t.charCodeAt(c) !== a.SEMI || (l = p, u = 0), 0 === (E = (d >> 14) - 1)) break; - p += E + (c = t.indexOf("&", c)) >= 0;) + if (r += t.slice(i, c), i = c, c += 1, t.charCodeAt(c) !== a.NUM) { + for (var l = 0, u = 1, p = 0, f = e[p]; c < t.length && !((p = h(e, f, p + 1, t.charCodeAt(c))) < 0); c++, u++) { + var d = (f = e[p]) & o.VALUE_LENGTH; + if (d) { + var E; + if (n && t.charCodeAt(c) !== a.SEMI || (l = p, u = 0), 0 === (E = (d >> 14) - 1)) break; + p += E + } } - } - if (0 !== l) r += 1 === (E = (e[l] & o.VALUE_LENGTH) >> 14) ? String.fromCharCode(e[l] & ~o.VALUE_LENGTH) : 2 === E ? String.fromCharCode(e[l + 1]) : String.fromCharCode(e[l + 1], e[l + 2]), i = c - u + 1 - } else { - var m = c + 1, - T = 10, - _ = t.charCodeAt(m); - (_ | a.To_LOWER_BIT) === a.LOWER_X && (T = 16, c += 1, m += 1); - do { - _ = t.charCodeAt(++c) - } while (_ >= a.ZERO && _ <= a.NINE || 16 === T && (_ | a.To_LOWER_BIT) >= a.LOWER_A && (_ | a.To_LOWER_BIT) <= a.LOWER_F); - if (m !== c) { - var A = t.substring(m, c), - g = parseInt(A, T); - if (t.charCodeAt(c) === a.SEMI) c += 1; - else if (n) continue; - r += (0, s. - default)(g), i = c - } - } - return r + t.slice(i) + if (0 !== l) r += 1 === (E = (e[l] & o.VALUE_LENGTH) >> 14) ? String.fromCharCode(e[l] & ~o.VALUE_LENGTH) : 2 === E ? String.fromCharCode(e[l + 1]) : String.fromCharCode(e[l + 1], e[l + 2]), i = c - u + 1 + } else { + var m = c + 1, + T = 10, + _ = t.charCodeAt(m); + (_ | a.To_LOWER_BIT) === a.LOWER_X && (T = 16, c += 1, m += 1); + do { + _ = t.charCodeAt(++c) + } while (_ >= a.ZERO && _ <= a.NINE || 16 === T && (_ | a.To_LOWER_BIT) >= a.LOWER_A && (_ | a.To_LOWER_BIT) <= a.LOWER_F); + if (m !== c) { + var A = t.substring(m, c), + g = parseInt(A, T); + if (t.charCodeAt(c) === a.SEMI) c += 1; + else if (n) continue; + r += (0, s.default)(g), i = c + } + } return r + t.slice(i) } } + function h(e, t, n, r) { var i = (t & o.BRANCH_LENGTH) >> 7, s = t & o.JUMP_TABLE; @@ -6392,26 +6664,24 @@ var Co = Ao, return -1 } Object.defineProperty(t, "replaceCodePoint", { - enumerable: !0, - get: function() { - return c.replaceCodePoint - } - }), Object.defineProperty(t, "fromCodePoint", { - enumerable: !0, - get: function() { - return c.fromCodePoint - } - }), - function(e) { - e[e.NUM = 35] = "NUM", e[e.SEMI = 59] = "SEMI", e[e.ZERO = 48] = "ZERO", e[e.NINE = 57] = "NINE", e[e.LOWER_A = 97] = "LOWER_A", e[e.LOWER_F = 102] = "LOWER_F", e[e.LOWER_X = 120] = "LOWER_X", e[e.To_LOWER_BIT = 32] = "To_LOWER_BIT" - }(a || (a = {})), - function(e) { - e[e.VALUE_LENGTH = 49152] = "VALUE_LENGTH", e[e.BRANCH_LENGTH = 16256] = "BRANCH_LENGTH", e[e.JUMP_TABLE = 127] = "JUMP_TABLE" - }(o = t.BinTrieFlags || (t.BinTrieFlags = {})), t.determineBranch = h; - var u = l(r. - default), - p = l(i. - default); + enumerable: !0, + get: function() { + return c.replaceCodePoint + } + }), Object.defineProperty(t, "fromCodePoint", { + enumerable: !0, + get: function() { + return c.fromCodePoint + } + }), + function(e) { + e[e.NUM = 35] = "NUM", e[e.SEMI = 59] = "SEMI", e[e.ZERO = 48] = "ZERO", e[e.NINE = 57] = "NINE", e[e.LOWER_A = 97] = "LOWER_A", e[e.LOWER_F = 102] = "LOWER_F", e[e.LOWER_X = 120] = "LOWER_X", e[e.To_LOWER_BIT = 32] = "To_LOWER_BIT" + }(a || (a = {})), + function(e) { + e[e.VALUE_LENGTH = 49152] = "VALUE_LENGTH", e[e.BRANCH_LENGTH = 16256] = "BRANCH_LENGTH", e[e.JUMP_TABLE = 127] = "JUMP_TABLE" + }(o = t.BinTrieFlags || (t.BinTrieFlags = {})), t.determineBranch = h; + var u = l(r.default), + p = l(i.default); t.decodeHTML = function(e) { return u(e, !1) }, t.decodeHTMLStrict = function(e) { @@ -6572,14 +6842,15 @@ function Fo(e) { var t; return null !== (t = Bo.get(e)) && void 0 !== t ? t : Po.UNKNOWN } -const Uo = Po, Ho = { - [vo.HTML]: new Set([Uo.ADDRESS, Uo.APPLET, Uo.AREA, Uo.ARTICLE, Uo.ASIDE, Uo.BASE, Uo.BASEFONT, Uo.BGSOUND, Uo.BLOCKQUOTE, Uo.BODY, Uo.BR, Uo.BUTTON, Uo.CAPTION, Uo.CENTER, Uo.COL, Uo.COLGROUP, Uo.DD, Uo.DETAILS, Uo.DIR, Uo.DIV, Uo.DL, Uo.DT, Uo.EMBED, Uo.FIELDSET, Uo.FIGCAPTION, Uo.FIGURE, Uo.FOOTER, Uo.FORM, Uo.FRAME, Uo.FRAMESET, Uo.H1, Uo.H2, Uo.H3, Uo.H4, Uo.H5, Uo.H6, Uo.HEAD, Uo.HEADER, Uo.HGROUP, Uo.HR, Uo.HTML, Uo.IFRAME, Uo.IMG, Uo.INPUT, Uo.LI, Uo.LINK, Uo.LISTING, Uo.MAIN, Uo.MARQUEE, Uo.MENU, Uo.META, Uo.NAV, Uo.NOEMBED, Uo.NOFRAMES, Uo.NOSCRIPT, Uo.OBJECT, Uo.OL, Uo.P, Uo.PARAM, Uo.PLAINTEXT, Uo.PRE, Uo.SCRIPT, Uo.SECTION, Uo.SELECT, Uo.SOURCE, Uo.STYLE, Uo.SUMMARY, Uo.TABLE, Uo.TBODY, Uo.TD, Uo.TEMPLATE, Uo.TEXTAREA, Uo.TFOOT, Uo.TH, Uo.THEAD, Uo.TITLE, Uo.TR, Uo.TRACK, Uo.UL, Uo.WBR, Uo.XMP]), - [vo.MATHML]: new Set([Uo.MI, Uo.MO, Uo.MN, Uo.MS, Uo.MTEXT, Uo.ANNOTATION_XML]), - [vo.SVG]: new Set([Uo.TITLE, Uo.FOREIGN_OBJECT, Uo.DESC]), - [vo.XLINK]: new Set, - [vo.XML]: new Set, - [vo.XMLNS]: new Set -}; +const Uo = Po, + Ho = { + [vo.HTML]: new Set([Uo.ADDRESS, Uo.APPLET, Uo.AREA, Uo.ARTICLE, Uo.ASIDE, Uo.BASE, Uo.BASEFONT, Uo.BGSOUND, Uo.BLOCKQUOTE, Uo.BODY, Uo.BR, Uo.BUTTON, Uo.CAPTION, Uo.CENTER, Uo.COL, Uo.COLGROUP, Uo.DD, Uo.DETAILS, Uo.DIR, Uo.DIV, Uo.DL, Uo.DT, Uo.EMBED, Uo.FIELDSET, Uo.FIGCAPTION, Uo.FIGURE, Uo.FOOTER, Uo.FORM, Uo.FRAME, Uo.FRAMESET, Uo.H1, Uo.H2, Uo.H3, Uo.H4, Uo.H5, Uo.H6, Uo.HEAD, Uo.HEADER, Uo.HGROUP, Uo.HR, Uo.HTML, Uo.IFRAME, Uo.IMG, Uo.INPUT, Uo.LI, Uo.LINK, Uo.LISTING, Uo.MAIN, Uo.MARQUEE, Uo.MENU, Uo.META, Uo.NAV, Uo.NOEMBED, Uo.NOFRAMES, Uo.NOSCRIPT, Uo.OBJECT, Uo.OL, Uo.P, Uo.PARAM, Uo.PLAINTEXT, Uo.PRE, Uo.SCRIPT, Uo.SECTION, Uo.SELECT, Uo.SOURCE, Uo.STYLE, Uo.SUMMARY, Uo.TABLE, Uo.TBODY, Uo.TD, Uo.TEMPLATE, Uo.TEXTAREA, Uo.TFOOT, Uo.TH, Uo.THEAD, Uo.TITLE, Uo.TR, Uo.TRACK, Uo.UL, Uo.WBR, Uo.XMP]), + [vo.MATHML]: new Set([Uo.MI, Uo.MO, Uo.MN, Uo.MS, Uo.MTEXT, Uo.ANNOTATION_XML]), + [vo.SVG]: new Set([Uo.TITLE, Uo.FOREIGN_OBJECT, Uo.DESC]), + [vo.XLINK]: new Set, + [vo.XML]: new Set, + [vo.XMLNS]: new Set + }; function Go(e) { return e === Uo.H1 || e === Uo.H2 || e === Uo.H3 || e === Uo.H4 || e === Uo.H5 || e === Uo.H6 @@ -6630,29 +6901,37 @@ const jo = { function Vo(e) { return e >= io.DIGIT_0 && e <= io.DIGIT_9 } + function Wo(e) { return e >= io.LATIN_CAPITAL_A && e <= io.LATIN_CAPITAL_Z } + function Qo(e) { return function(e) { return e >= io.LATIN_SMALL_A && e <= io.LATIN_SMALL_Z }(e) || Wo(e) } + function Xo(e) { return Qo(e) || Vo(e) } + function $o(e) { return e >= io.LATIN_CAPITAL_A && e <= io.LATIN_CAPITAL_F } + function zo(e) { return e >= io.LATIN_SMALL_A && e <= io.LATIN_SMALL_F } + function Jo(e) { return e + 32 } + function Zo(e) { return e === io.SPACE || e === io.LINE_FEED || e === io.TABULATION || e === io.FORM_FEED } + function ec(e) { return Zo(e) || e === io.SOLIDUS || e === io.GREATER_THAN_SIGN } @@ -6833,7 +7112,9 @@ class tc { this._appendCharToCurrentCharacterToken(To.CHARACTER, e) } _matchNamedCharacterReference(e) { - let t = null, n = 0, r = !1; + let t = null, + n = 0, + r = !1; for (let s = 0, a = wo[0]; s >= 0 && (s = Oo(wo, a, s + 1, e), !(s < 0)); e = this._consume()) { n += 1, a = wo[s]; const o = a & yo.VALUE_LENGTH; @@ -7644,13 +7925,12 @@ class tc { case io.HYPHEN_MINUS: this.state = Ko.COMMENT_START_DASH; break; - case io.GREATER_THAN_SIGN: - { - this._err(Eo.abruptClosingOfEmptyComment), this.state = Ko.DATA; - const e = this.currentToken; - this.emitCurrentComment(e); - break - } + case io.GREATER_THAN_SIGN: { + this._err(Eo.abruptClosingOfEmptyComment), this.state = Ko.DATA; + const e = this.currentToken; + this.emitCurrentComment(e); + break + } default: this.state = Ko.COMMENT, this._stateComment(e) } @@ -7771,13 +8051,12 @@ class tc { case io.GREATER_THAN_SIGN: this.state = Ko.BEFORE_DOCTYPE_NAME, this._stateBeforeDoctypeName(e); break; - case io.EOF: - { - this._err(Eo.eofInDoctype), this._createDoctypeToken(null); - const e = this.currentToken; - e.forceQuirks = !0, this.emitCurrentDoctype(e), this._emitEOFToken(); - break - } + case io.EOF: { + this._err(Eo.eofInDoctype), this._createDoctypeToken(null); + const e = this.currentToken; + e.forceQuirks = !0, this.emitCurrentDoctype(e), this._emitEOFToken(); + break + } default: this._err(Eo.missingWhitespaceBeforeDoctypeName), this.state = Ko.BEFORE_DOCTYPE_NAME, this._stateBeforeDoctypeName(e) } @@ -7793,20 +8072,18 @@ class tc { case io.NULL: this._err(Eo.unexpectedNullCharacter), this._createDoctypeToken("�"), this.state = Ko.DOCTYPE_NAME; break; - case io.GREATER_THAN_SIGN: - { - this._err(Eo.missingDoctypeName), this._createDoctypeToken(null); - const e = this.currentToken; - e.forceQuirks = !0, this.emitCurrentDoctype(e), this.state = Ko.DATA; - break - } - case io.EOF: - { - this._err(Eo.eofInDoctype), this._createDoctypeToken(null); - const e = this.currentToken; - e.forceQuirks = !0, this.emitCurrentDoctype(e), this._emitEOFToken(); - break - } + case io.GREATER_THAN_SIGN: { + this._err(Eo.missingDoctypeName), this._createDoctypeToken(null); + const e = this.currentToken; + e.forceQuirks = !0, this.emitCurrentDoctype(e), this.state = Ko.DATA; + break + } + case io.EOF: { + this._err(Eo.eofInDoctype), this._createDoctypeToken(null); + const e = this.currentToken; + e.forceQuirks = !0, this.emitCurrentDoctype(e), this._emitEOFToken(); + break + } default: this._createDoctypeToken(String.fromCodePoint(e)), this.state = Ko.DOCTYPE_NAME } @@ -8173,26 +8450,33 @@ class tc { this._flushCodePointConsumedAsCharacterReference(this.charRefCode), this._reconsumeInState(this.returnState, e) } } -const nc = new Set([Po.DD, Po.DT, Po.LI, Po.OPTGROUP, Po.OPTION, Po.P, Po.RB, Po.RP, Po.RT, Po.RTC]), rc = new Set([...nc, Po.CAPTION, Po.COLGROUP, Po.TBODY, Po.TD, Po.TFOOT, Po.TH, Po.THEAD, Po.TR]), ic = new Map([ - [Po.APPLET, vo.HTML], - [Po.CAPTION, vo.HTML], - [Po.HTML, vo.HTML], - [Po.MARQUEE, vo.HTML], - [Po.OBJECT, vo.HTML], - [Po.TABLE, vo.HTML], - [Po.TD, vo.HTML], - [Po.TEMPLATE, vo.HTML], - [Po.TH, vo.HTML], - [Po.ANNOTATION_XML, vo.MATHML], - [Po.MI, vo.MATHML], - [Po.MN, vo.MATHML], - [Po.MO, vo.MATHML], - [Po.MS, vo.MATHML], - [Po.MTEXT, vo.MATHML], - [Po.DESC, vo.SVG], - [Po.FOREIGN_OBJECT, vo.SVG], - [Po.TITLE, vo.SVG] -]), sc = [Po.H1, Po.H2, Po.H3, Po.H4, Po.H5, Po.H6], ac = [Po.TR, Po.TEMPLATE, Po.HTML], oc = [Po.TBODY, Po.TFOOT, Po.THEAD, Po.TEMPLATE, Po.HTML], cc = [Po.TABLE, Po.TEMPLATE, Po.HTML], lc = [Po.TD, Po.TH]; +const nc = new Set([Po.DD, Po.DT, Po.LI, Po.OPTGROUP, Po.OPTION, Po.P, Po.RB, Po.RP, Po.RT, Po.RTC]), + rc = new Set([...nc, Po.CAPTION, Po.COLGROUP, Po.TBODY, Po.TD, Po.TFOOT, Po.TH, Po.THEAD, Po.TR]), + ic = new Map([ + [Po.APPLET, vo.HTML], + [Po.CAPTION, vo.HTML], + [Po.HTML, vo.HTML], + [Po.MARQUEE, vo.HTML], + [Po.OBJECT, vo.HTML], + [Po.TABLE, vo.HTML], + [Po.TD, vo.HTML], + [Po.TEMPLATE, vo.HTML], + [Po.TH, vo.HTML], + [Po.ANNOTATION_XML, vo.MATHML], + [Po.MI, vo.MATHML], + [Po.MN, vo.MATHML], + [Po.MO, vo.MATHML], + [Po.MS, vo.MATHML], + [Po.MTEXT, vo.MATHML], + [Po.DESC, vo.SVG], + [Po.FOREIGN_OBJECT, vo.SVG], + [Po.TITLE, vo.SVG] + ]), + sc = [Po.H1, Po.H2, Po.H3, Po.H4, Po.H5, Po.H6], + ac = [Po.TR, Po.TEMPLATE, Po.HTML], + oc = [Po.TBODY, Po.TFOOT, Po.THEAD, Po.TEMPLATE, Po.HTML], + cc = [Po.TABLE, Po.TEMPLATE, Po.HTML], + lc = [Po.TD, Po.TH]; class hc { constructor(e, t, n) { this.treeAdapter = t, this.handler = n, this.items = [], this.tagIDs = [], this.stackTop = -1, this.tmplCount = 0, this.currentTagId = Po.UNKNOWN, this.current = e @@ -8255,7 +8539,8 @@ class hc { this.tmplCount = 0, this.shortenToLength(1) } _indexOfTagNames(e, t) { - for (let n = this.stackTop; n >= 0; n--) if (e.includes(this.tagIDs[n]) && this.treeAdapter.getNamespaceURI(this.items[n]) === t) return n; + for (let n = this.stackTop; n >= 0; n--) + if (e.includes(this.tagIDs[n]) && this.treeAdapter.getNamespaceURI(this.items[n]) === t) return n; return -1 } clearBackTo(e, t) { @@ -8290,7 +8575,8 @@ class hc { } hasInScope(e) { for (let t = this.stackTop; t >= 0; t--) { - const n = this.tagIDs[t], r = this.treeAdapter.getNamespaceURI(this.items[t]); + const n = this.tagIDs[t], + r = this.treeAdapter.getNamespaceURI(this.items[t]); if (n === e && r === vo.HTML) return !0; if (ic.get(n) === r) return !1 } @@ -8298,7 +8584,8 @@ class hc { } hasNumberedHeaderInScope() { for (let e = this.stackTop; e >= 0; e--) { - const t = this.tagIDs[e], n = this.treeAdapter.getNamespaceURI(this.items[e]); + const t = this.tagIDs[e], + n = this.treeAdapter.getNamespaceURI(this.items[e]); if (Go(t) && n === vo.HTML) return !0; if (ic.get(t) === n) return !1 } @@ -8306,7 +8593,8 @@ class hc { } hasInListItemScope(e) { for (let t = this.stackTop; t >= 0; t--) { - const n = this.tagIDs[t], r = this.treeAdapter.getNamespaceURI(this.items[t]); + const n = this.tagIDs[t], + r = this.treeAdapter.getNamespaceURI(this.items[t]); if (n === e && r === vo.HTML) return !0; if ((n === Po.UL || n === Po.OL) && r === vo.HTML || ic.get(n) === r) return !1 } @@ -8314,7 +8602,8 @@ class hc { } hasInButtonScope(e) { for (let t = this.stackTop; t >= 0; t--) { - const n = this.tagIDs[t], r = this.treeAdapter.getNamespaceURI(this.items[t]); + const n = this.tagIDs[t], + r = this.treeAdapter.getNamespaceURI(this.items[t]); if (n === e && r === vo.HTML) return !0; if (n === Po.BUTTON && r === vo.HTML || ic.get(n) === r) return !1 } @@ -8372,7 +8661,10 @@ class fc { this.treeAdapter = e, this.entries = [], this.bookmark = null } _getNoahArkConditionCandidates(e, t) { - const n = [], r = t.length, i = this.treeAdapter.getTagName(e), s = this.treeAdapter.getNamespaceURI(e); + const n = [], + r = t.length, + i = this.treeAdapter.getTagName(e), + s = this.treeAdapter.getNamespaceURI(e); for (let e = 0; e < this.entries.length; e++) { const t = this.entries[e]; if (t.type === uc.Marker) break; @@ -8391,7 +8683,8 @@ class fc { } _ensureNoahArkCondition(e) { if (this.entries.length < 3) return; - const t = this.treeAdapter.getAttrList(e), n = this._getNoahArkConditionCandidates(e, t); + const t = this.treeAdapter.getAttrList(e), + n = this._getNoahArkConditionCandidates(e, t); if (n.length < 3) return; const r = new Map(t.map((e => [e.name, e.value]))); let i = 0; @@ -8434,6 +8727,7 @@ class fc { return this.entries.find((t => t.type === uc.Element && t.element === e)) } } + function dc(e) { return { nodeName: "#text", @@ -8442,194 +8736,211 @@ function dc(e) { } } const Ec = { - createDocument: () => ({ - nodeName: "#document", - mode: Ro.NO_QUIRKS, - childNodes: [] - }), - createDocumentFragment: () => ({ - nodeName: "#document-fragment", - childNodes: [] - }), - createElement: (e, t, n) => ({ - nodeName: e, - tagName: e, - attrs: n, - namespaceURI: t, - childNodes: [], - parentNode: null - }), - createCommentNode: e => ({ - nodeName: "#comment", - data: e, - parentNode: null - }), - appendChild(e, t) { - e.childNodes.push(t), t.parentNode = e - }, - insertBefore(e, t, n) { - const r = e.childNodes.indexOf(n); - e.childNodes.splice(r, 0, t), t.parentNode = e - }, - setTemplateContent(e, t) { - e.content = t - }, - getTemplateContent: e => e.content, - setDocumentType(e, t, n, r) { - const i = e.childNodes.find((e => "#documentType" === e.nodeName)); - if (i) i.name = t, i.publicId = n, i.systemId = r; - else { - const i = { - nodeName: "#documentType", - name: t, - publicId: n, - systemId: r, - parentNode: null - }; - Ec.appendChild(e, i) + createDocument: () => ({ + nodeName: "#document", + mode: Ro.NO_QUIRKS, + childNodes: [] + }), + createDocumentFragment: () => ({ + nodeName: "#document-fragment", + childNodes: [] + }), + createElement: (e, t, n) => ({ + nodeName: e, + tagName: e, + attrs: n, + namespaceURI: t, + childNodes: [], + parentNode: null + }), + createCommentNode: e => ({ + nodeName: "#comment", + data: e, + parentNode: null + }), + appendChild(e, t) { + e.childNodes.push(t), t.parentNode = e + }, + insertBefore(e, t, n) { + const r = e.childNodes.indexOf(n); + e.childNodes.splice(r, 0, t), t.parentNode = e + }, + setTemplateContent(e, t) { + e.content = t + }, + getTemplateContent: e => e.content, + setDocumentType(e, t, n, r) { + const i = e.childNodes.find((e => "#documentType" === e.nodeName)); + if (i) i.name = t, i.publicId = n, i.systemId = r; + else { + const i = { + nodeName: "#documentType", + name: t, + publicId: n, + systemId: r, + parentNode: null + }; + Ec.appendChild(e, i) + } + }, + setDocumentMode(e, t) { + e.mode = t + }, + getDocumentMode: e => e.mode, + detachNode(e) { + if (e.parentNode) { + const t = e.parentNode.childNodes.indexOf(e); + e.parentNode.childNodes.splice(t, 1), e.parentNode = null + } + }, + insertText(e, t) { + if (e.childNodes.length > 0) { + const n = e.childNodes[e.childNodes.length - 1]; + if (Ec.isTextNode(n)) return void(n.value += t) + } + Ec.appendChild(e, dc(t)) + }, + insertTextBefore(e, t, n) { + const r = e.childNodes[e.childNodes.indexOf(n) - 1]; + r && Ec.isTextNode(r) ? r.value += t : Ec.insertBefore(e, dc(t), n) + }, + adoptAttributes(e, t) { + const n = new Set(e.attrs.map((e => e.name))); + for (let r = 0; r < t.length; r++) n.has(t[r].name) || e.attrs.push(t[r]) + }, + getFirstChild: e => e.childNodes[0], + getChildNodes: e => e.childNodes, + getParentNode: e => e.parentNode, + getAttrList: e => e.attrs, + getTagName: e => e.tagName, + getNamespaceURI: e => e.namespaceURI, + getTextNodeContent: e => e.value, + getCommentNodeContent: e => e.data, + getDocumentTypeNodeName: e => e.name, + getDocumentTypeNodePublicId: e => e.publicId, + getDocumentTypeNodeSystemId: e => e.systemId, + isTextNode: e => "#text" === e.nodeName, + isCommentNode: e => "#comment" === e.nodeName, + isDocumentTypeNode: e => "#documentType" === e.nodeName, + isElementNode: e => Object.prototype.hasOwnProperty.call(e, "tagName"), + setNodeSourceCodeLocation(e, t) { + e.sourceCodeLocation = t + }, + getNodeSourceCodeLocation: e => e.sourceCodeLocation, + updateNodeSourceCodeLocation(e, t) { + e.sourceCodeLocation = { + ...e.sourceCodeLocation, + ...t + } } }, - setDocumentMode(e, t) { - e.mode = t - }, - getDocumentMode: e => e.mode, - detachNode(e) { - if (e.parentNode) { - const t = e.parentNode.childNodes.indexOf(e); - e.parentNode.childNodes.splice(t, 1), e.parentNode = null - } - }, - insertText(e, t) { - if (e.childNodes.length > 0) { - const n = e.childNodes[e.childNodes.length - 1]; - if (Ec.isTextNode(n)) return void(n.value += t) - } - Ec.appendChild(e, dc(t)) - }, - insertTextBefore(e, t, n) { - const r = e.childNodes[e.childNodes.indexOf(n) - 1]; - r && Ec.isTextNode(r) ? r.value += t : Ec.insertBefore(e, dc(t), n) - }, - adoptAttributes(e, t) { - const n = new Set(e.attrs.map((e => e.name))); - for (let r = 0; r < t.length; r++) n.has(t[r].name) || e.attrs.push(t[r]) - }, - getFirstChild: e => e.childNodes[0], - getChildNodes: e => e.childNodes, - getParentNode: e => e.parentNode, - getAttrList: e => e.attrs, - getTagName: e => e.tagName, - getNamespaceURI: e => e.namespaceURI, - getTextNodeContent: e => e.value, - getCommentNodeContent: e => e.data, - getDocumentTypeNodeName: e => e.name, - getDocumentTypeNodePublicId: e => e.publicId, - getDocumentTypeNodeSystemId: e => e.systemId, - isTextNode: e => "#text" === e.nodeName, - isCommentNode: e => "#comment" === e.nodeName, - isDocumentTypeNode: e => "#documentType" === e.nodeName, - isElementNode: e => Object.prototype.hasOwnProperty.call(e, "tagName"), - setNodeSourceCodeLocation(e, t) { - e.sourceCodeLocation = t - }, - getNodeSourceCodeLocation: e => e.sourceCodeLocation, - updateNodeSourceCodeLocation(e, t) { - e.sourceCodeLocation = {...e.sourceCodeLocation, ...t - } - } -}, mc = ["+//silmaril//dtd html pro v0r11 19970101//", "-//as//dtd html 3.0 aswedit + extensions//", "-//advasoft ltd//dtd html 3.0 aswedit + extensions//", "-//ietf//dtd html 2.0 level 1//", "-//ietf//dtd html 2.0 level 2//", "-//ietf//dtd html 2.0 strict level 1//", "-//ietf//dtd html 2.0 strict level 2//", "-//ietf//dtd html 2.0 strict//", "-//ietf//dtd html 2.0//", "-//ietf//dtd html 2.1e//", "-//ietf//dtd html 3.0//", "-//ietf//dtd html 3.2 final//", "-//ietf//dtd html 3.2//", "-//ietf//dtd html 3//", "-//ietf//dtd html level 0//", "-//ietf//dtd html level 1//", "-//ietf//dtd html level 2//", "-//ietf//dtd html level 3//", "-//ietf//dtd html strict level 0//", "-//ietf//dtd html strict level 1//", "-//ietf//dtd html strict level 2//", "-//ietf//dtd html strict level 3//", "-//ietf//dtd html strict//", "-//ietf//dtd html//", "-//metrius//dtd metrius presentational//", "-//microsoft//dtd internet explorer 2.0 html strict//", "-//microsoft//dtd internet explorer 2.0 html//", "-//microsoft//dtd internet explorer 2.0 tables//", "-//microsoft//dtd internet explorer 3.0 html strict//", "-//microsoft//dtd internet explorer 3.0 html//", "-//microsoft//dtd internet explorer 3.0 tables//", "-//netscape comm. corp.//dtd html//", "-//netscape comm. corp.//dtd strict html//", "-//o'reilly and associates//dtd html 2.0//", "-//o'reilly and associates//dtd html extended 1.0//", "-//o'reilly and associates//dtd html extended relaxed 1.0//", "-//sq//dtd html 2.0 hotmetal + extensions//", "-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//", "-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//", "-//spyglass//dtd html 2.0 extended//", "-//sun microsystems corp.//dtd hotjava html//", "-//sun microsystems corp.//dtd hotjava strict html//", "-//w3c//dtd html 3 1995-03-24//", "-//w3c//dtd html 3.2 draft//", "-//w3c//dtd html 3.2 final//", "-//w3c//dtd html 3.2//", "-//w3c//dtd html 3.2s draft//", "-//w3c//dtd html 4.0 frameset//", "-//w3c//dtd html 4.0 transitional//", "-//w3c//dtd html experimental 19960712//", "-//w3c//dtd html experimental 970421//", "-//w3c//dtd w3 html//", "-//w3o//dtd w3 html 3.0//", "-//webtechs//dtd mozilla html 2.0//", "-//webtechs//dtd mozilla html//"], Tc = [...mc, "-//w3c//dtd html 4.01 frameset//", "-//w3c//dtd html 4.01 transitional//"], _c = new Set(["-//w3o//dtd w3 html strict 3.0//en//", "-/w3c/dtd html 4.0 transitional/en", "html"]), Ac = ["-//w3c//dtd xhtml 1.0 frameset//", "-//w3c//dtd xhtml 1.0 transitional//"], gc = [...Ac, "-//w3c//dtd html 4.01 frameset//", "-//w3c//dtd html 4.01 transitional//"]; + mc = ["+//silmaril//dtd html pro v0r11 19970101//", "-//as//dtd html 3.0 aswedit + extensions//", "-//advasoft ltd//dtd html 3.0 aswedit + extensions//", "-//ietf//dtd html 2.0 level 1//", "-//ietf//dtd html 2.0 level 2//", "-//ietf//dtd html 2.0 strict level 1//", "-//ietf//dtd html 2.0 strict level 2//", "-//ietf//dtd html 2.0 strict//", "-//ietf//dtd html 2.0//", "-//ietf//dtd html 2.1e//", "-//ietf//dtd html 3.0//", "-//ietf//dtd html 3.2 final//", "-//ietf//dtd html 3.2//", "-//ietf//dtd html 3//", "-//ietf//dtd html level 0//", "-//ietf//dtd html level 1//", "-//ietf//dtd html level 2//", "-//ietf//dtd html level 3//", "-//ietf//dtd html strict level 0//", "-//ietf//dtd html strict level 1//", "-//ietf//dtd html strict level 2//", "-//ietf//dtd html strict level 3//", "-//ietf//dtd html strict//", "-//ietf//dtd html//", "-//metrius//dtd metrius presentational//", "-//microsoft//dtd internet explorer 2.0 html strict//", "-//microsoft//dtd internet explorer 2.0 html//", "-//microsoft//dtd internet explorer 2.0 tables//", "-//microsoft//dtd internet explorer 3.0 html strict//", "-//microsoft//dtd internet explorer 3.0 html//", "-//microsoft//dtd internet explorer 3.0 tables//", "-//netscape comm. corp.//dtd html//", "-//netscape comm. corp.//dtd strict html//", "-//o'reilly and associates//dtd html 2.0//", "-//o'reilly and associates//dtd html extended 1.0//", "-//o'reilly and associates//dtd html extended relaxed 1.0//", "-//sq//dtd html 2.0 hotmetal + extensions//", "-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//", "-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//", "-//spyglass//dtd html 2.0 extended//", "-//sun microsystems corp.//dtd hotjava html//", "-//sun microsystems corp.//dtd hotjava strict html//", "-//w3c//dtd html 3 1995-03-24//", "-//w3c//dtd html 3.2 draft//", "-//w3c//dtd html 3.2 final//", "-//w3c//dtd html 3.2//", "-//w3c//dtd html 3.2s draft//", "-//w3c//dtd html 4.0 frameset//", "-//w3c//dtd html 4.0 transitional//", "-//w3c//dtd html experimental 19960712//", "-//w3c//dtd html experimental 970421//", "-//w3c//dtd w3 html//", "-//w3o//dtd w3 html 3.0//", "-//webtechs//dtd mozilla html 2.0//", "-//webtechs//dtd mozilla html//"], + Tc = [...mc, "-//w3c//dtd html 4.01 frameset//", "-//w3c//dtd html 4.01 transitional//"], + _c = new Set(["-//w3o//dtd w3 html strict 3.0//en//", "-/w3c/dtd html 4.0 transitional/en", "html"]), + Ac = ["-//w3c//dtd xhtml 1.0 frameset//", "-//w3c//dtd xhtml 1.0 transitional//"], + gc = [...Ac, "-//w3c//dtd html 4.01 frameset//", "-//w3c//dtd html 4.01 transitional//"]; function Nc(e, t) { return t.some((t => e.startsWith(t))) } -const Cc = "text/html", Ic = "application/xhtml+xml", Sc = new Map(["attributeName", "attributeType", "baseFrequency", "baseProfile", "calcMode", "clipPathUnits", "diffuseConstant", "edgeMode", "filterUnits", "glyphRef", "gradientTransform", "gradientUnits", "kernelMatrix", "kernelUnitLength", "keyPoints", "keySplines", "keyTimes", "lengthAdjust", "limitingConeAngle", "markerHeight", "markerUnits", "markerWidth", "maskContentUnits", "maskUnits", "numOctaves", "pathLength", "patternContentUnits", "patternTransform", "patternUnits", "pointsAtX", "pointsAtY", "pointsAtZ", "preserveAlpha", "preserveAspectRatio", "primitiveUnits", "refX", "refY", "repeatCount", "repeatDur", "requiredExtensions", "requiredFeatures", "specularConstant", "specularExponent", "spreadMethod", "startOffset", "stdDeviation", "stitchTiles", "surfaceScale", "systemLanguage", "tableValues", "targetX", "targetY", "textLength", "viewBox", "viewTarget", "xChannelSelector", "yChannelSelector", "zoomAndPan"].map((e => [e.toLowerCase(), e]))), bc = new Map([ - ["xlink:actuate", { - prefix: "xlink", - name: "actuate", - namespace: vo.XLINK - }], - ["xlink:arcrole", { - prefix: "xlink", - name: "arcrole", - namespace: vo.XLINK - }], - ["xlink:href", { - prefix: "xlink", - name: "href", - namespace: vo.XLINK - }], - ["xlink:role", { - prefix: "xlink", - name: "role", - namespace: vo.XLINK - }], - ["xlink:show", { - prefix: "xlink", - name: "show", - namespace: vo.XLINK - }], - ["xlink:title", { - prefix: "xlink", - name: "title", - namespace: vo.XLINK - }], - ["xlink:type", { - prefix: "xlink", - name: "type", - namespace: vo.XLINK - }], - ["xml:base", { - prefix: "xml", - name: "base", - namespace: vo.XML - }], - ["xml:lang", { - prefix: "xml", - name: "lang", - namespace: vo.XML - }], - ["xml:space", { - prefix: "xml", - name: "space", - namespace: vo.XML - }], - ["xmlns", { - prefix: "", - name: "xmlns", - namespace: vo.XMLNS - }], - ["xmlns:xlink", { - prefix: "xmlns", - name: "xlink", - namespace: vo.XMLNS - }] -]), Oc = new Map(["altGlyph", "altGlyphDef", "altGlyphItem", "animateColor", "animateMotion", "animateTransform", "clipPath", "feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence", "foreignObject", "glyphRef", "linearGradient", "radialGradient", "textPath"].map((e => [e.toLowerCase(), e]))), yc = new Set([Po.B, Po.BIG, Po.BLOCKQUOTE, Po.BODY, Po.BR, Po.CENTER, Po.CODE, Po.DD, Po.DIV, Po.DL, Po.DT, Po.EM, Po.EMBED, Po.H1, Po.H2, Po.H3, Po.H4, Po.H5, Po.H6, Po.HEAD, Po.HR, Po.I, Po.IMG, Po.LI, Po.LISTING, Po.MENU, Po.META, Po.NOBR, Po.OL, Po.P, Po.PRE, Po.RUBY, Po.S, Po.SMALL, Po.SPAN, Po.STRONG, Po.STRIKE, Po.SUB, Po.SUP, Po.TABLE, Po.TT, Po.U, Po.UL, Po.VAR]); +const Cc = "text/html", + Ic = "application/xhtml+xml", + Sc = new Map(["attributeName", "attributeType", "baseFrequency", "baseProfile", "calcMode", "clipPathUnits", "diffuseConstant", "edgeMode", "filterUnits", "glyphRef", "gradientTransform", "gradientUnits", "kernelMatrix", "kernelUnitLength", "keyPoints", "keySplines", "keyTimes", "lengthAdjust", "limitingConeAngle", "markerHeight", "markerUnits", "markerWidth", "maskContentUnits", "maskUnits", "numOctaves", "pathLength", "patternContentUnits", "patternTransform", "patternUnits", "pointsAtX", "pointsAtY", "pointsAtZ", "preserveAlpha", "preserveAspectRatio", "primitiveUnits", "refX", "refY", "repeatCount", "repeatDur", "requiredExtensions", "requiredFeatures", "specularConstant", "specularExponent", "spreadMethod", "startOffset", "stdDeviation", "stitchTiles", "surfaceScale", "systemLanguage", "tableValues", "targetX", "targetY", "textLength", "viewBox", "viewTarget", "xChannelSelector", "yChannelSelector", "zoomAndPan"].map((e => [e.toLowerCase(), e]))), + bc = new Map([ + ["xlink:actuate", { + prefix: "xlink", + name: "actuate", + namespace: vo.XLINK + }], + ["xlink:arcrole", { + prefix: "xlink", + name: "arcrole", + namespace: vo.XLINK + }], + ["xlink:href", { + prefix: "xlink", + name: "href", + namespace: vo.XLINK + }], + ["xlink:role", { + prefix: "xlink", + name: "role", + namespace: vo.XLINK + }], + ["xlink:show", { + prefix: "xlink", + name: "show", + namespace: vo.XLINK + }], + ["xlink:title", { + prefix: "xlink", + name: "title", + namespace: vo.XLINK + }], + ["xlink:type", { + prefix: "xlink", + name: "type", + namespace: vo.XLINK + }], + ["xml:base", { + prefix: "xml", + name: "base", + namespace: vo.XML + }], + ["xml:lang", { + prefix: "xml", + name: "lang", + namespace: vo.XML + }], + ["xml:space", { + prefix: "xml", + name: "space", + namespace: vo.XML + }], + ["xmlns", { + prefix: "", + name: "xmlns", + namespace: vo.XMLNS + }], + ["xmlns:xlink", { + prefix: "xmlns", + name: "xlink", + namespace: vo.XMLNS + }] + ]), + Oc = new Map(["altGlyph", "altGlyphDef", "altGlyphItem", "animateColor", "animateMotion", "animateTransform", "clipPath", "feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence", "foreignObject", "glyphRef", "linearGradient", "radialGradient", "textPath"].map((e => [e.toLowerCase(), e]))), + yc = new Set([Po.B, Po.BIG, Po.BLOCKQUOTE, Po.BODY, Po.BR, Po.CENTER, Po.CODE, Po.DD, Po.DIV, Po.DL, Po.DT, Po.EM, Po.EMBED, Po.H1, Po.H2, Po.H3, Po.H4, Po.H5, Po.H6, Po.HEAD, Po.HR, Po.I, Po.IMG, Po.LI, Po.LISTING, Po.MENU, Po.META, Po.NOBR, Po.OL, Po.P, Po.PRE, Po.RUBY, Po.S, Po.SMALL, Po.SPAN, Po.STRONG, Po.STRIKE, Po.SUB, Po.SUP, Po.TABLE, Po.TT, Po.U, Po.UL, Po.VAR]); function Lc(e) { - for (let t = 0; t < e.attrs.length; t++) if ("definitionurl" === e.attrs[t].name) { - e.attrs[t].name = "definitionURL"; - break - } + for (let t = 0; t < e.attrs.length; t++) + if ("definitionurl" === e.attrs[t].name) { + e.attrs[t].name = "definitionURL"; + break + } } + function kc(e) { for (let t = 0; t < e.attrs.length; t++) { const n = Sc.get(e.attrs[t].name); null != n && (e.attrs[t].name = n) } } + function vc(e) { for (let t = 0; t < e.attrs.length; t++) { const n = bc.get(e.attrs[t].name); n && (e.attrs[t].prefix = n.prefix, e.attrs[t].name = n.name, e.attrs[t].namespace = n.namespace) } } + function Dc(e, t, n, r) { return (!r || r === vo.HTML) && function(e, t, n) { - if (t === vo.MATHML && e === Po.ANNOTATION_XML) for (let e = 0; e < n.length; e++) if (n[e].name === Do.ENCODING) { - const t = n[e].value.toLowerCase(); - return t === Cc || t === Ic - } - return t === vo.SVG && (e === Po.FOREIGN_OBJECT || e === Po.DESC || e === Po.TITLE) + if (t === vo.MATHML && e === Po.ANNOTATION_XML) + for (let e = 0; e < n.length; e++) + if (n[e].name === Do.ENCODING) { + const t = n[e].value.toLowerCase(); + return t === Cc || t === Ic + } return t === vo.SVG && (e === Po.FOREIGN_OBJECT || e === Po.DESC || e === Po.TITLE) }(e, t, n) || (!r || r === vo.MATHML) && function(e, t) { return t === vo.MATHML && (e === Po.MI || e === Po.MO || e === Po.MN || e === Po.MS || e === Po.MTEXT) }(e, t) @@ -8639,21 +8950,25 @@ var Rc; e[e.INITIAL = 0] = "INITIAL", e[e.BEFORE_HTML = 1] = "BEFORE_HTML", e[e.BEFORE_HEAD = 2] = "BEFORE_HEAD", e[e.IN_HEAD = 3] = "IN_HEAD", e[e.IN_HEAD_NO_SCRIPT = 4] = "IN_HEAD_NO_SCRIPT", e[e.AFTER_HEAD = 5] = "AFTER_HEAD", e[e.IN_BODY = 6] = "IN_BODY", e[e.TEXT = 7] = "TEXT", e[e.IN_TABLE = 8] = "IN_TABLE", e[e.IN_TABLE_TEXT = 9] = "IN_TABLE_TEXT", e[e.IN_CAPTION = 10] = "IN_CAPTION", e[e.IN_COLUMN_GROUP = 11] = "IN_COLUMN_GROUP", e[e.IN_TABLE_BODY = 12] = "IN_TABLE_BODY", e[e.IN_ROW = 13] = "IN_ROW", e[e.IN_CELL = 14] = "IN_CELL", e[e.IN_SELECT = 15] = "IN_SELECT", e[e.IN_SELECT_IN_TABLE = 16] = "IN_SELECT_IN_TABLE", e[e.IN_TEMPLATE = 17] = "IN_TEMPLATE", e[e.AFTER_BODY = 18] = "AFTER_BODY", e[e.IN_FRAMESET = 19] = "IN_FRAMESET", e[e.AFTER_FRAMESET = 20] = "AFTER_FRAMESET", e[e.AFTER_AFTER_BODY = 21] = "AFTER_AFTER_BODY", e[e.AFTER_AFTER_FRAMESET = 22] = "AFTER_AFTER_FRAMESET" }(Rc || (Rc = {})); const Mc = { - startLine: -1, - startCol: -1, - startOffset: -1, - endLine: -1, - endCol: -1, - endOffset: -1 -}, Pc = new Set([Po.TABLE, Po.TBODY, Po.TFOOT, Po.THEAD, Po.TR]), xc = { - scriptingEnabled: !0, - sourceCodeLocationInfo: !1, - treeAdapter: Ec, - onParseError: null -}; + startLine: -1, + startCol: -1, + startOffset: -1, + endLine: -1, + endCol: -1, + endOffset: -1 + }, + Pc = new Set([Po.TABLE, Po.TBODY, Po.TFOOT, Po.THEAD, Po.TR]), + xc = { + scriptingEnabled: !0, + sourceCodeLocationInfo: !1, + treeAdapter: Ec, + onParseError: null + }; class wc { constructor(e, t, n = null, r = null) { - this.fragmentContext = n, this.scriptHandler = r, this.currentToken = null, this.stopped = !1, this.insertionMode = Rc.INITIAL, this.originalInsertionMode = Rc.INITIAL, this.headElement = null, this.formElement = null, this.currentNotInHTML = !1, this.tmplInsertionModeStack = [], this.pendingCharacterTokens = [], this.hasNonWhitespacePendingCharacterToken = !1, this.framesetOk = !0, this.skipNextNewLine = !1, this.fosterParentingEnabled = !1, this.options = {...xc, ...e + this.fragmentContext = n, this.scriptHandler = r, this.currentToken = null, this.stopped = !1, this.insertionMode = Rc.INITIAL, this.originalInsertionMode = Rc.INITIAL, this.headElement = null, this.formElement = null, this.currentNotInHTML = !1, this.tmplInsertionModeStack = [], this.pendingCharacterTokens = [], this.hasNonWhitespacePendingCharacterToken = !1, this.framesetOk = !0, this.skipNextNewLine = !1, this.fosterParentingEnabled = !1, this.options = { + ...xc, + ...e }, this.treeAdapter = this.options.treeAdapter, this.onParseError = this.options.onParseError, this.onParseError && (this.options.sourceCodeLocationInfo = !0), this.document = null != t ? t : this.treeAdapter.createDocument(), this.tokenizer = new tc(this.options, this), this.activeFormattingElements = new fc(this.treeAdapter), this.fragmentContextID = n ? Fo(this.treeAdapter.getTagName(n)) : Po.UNKNOWN, this._setContextModes(null != n ? n : this.document, this.fragmentContextID), this.openElements = new hc(this.document, this.treeAdapter, this) } static parse(e, t) { @@ -8661,28 +8976,33 @@ class wc { return n.tokenizer.write(e, !0), n.document } static getFragmentParser(e, t) { - const n = {...xc, ...t + const n = { + ...xc, + ...t }; null != e || (e = n.treeAdapter.createElement(Mo.TEMPLATE, vo.HTML, [])); - const r = n.treeAdapter.createElement("documentmock", vo.HTML, []), i = new this(n, r, e); + const r = n.treeAdapter.createElement("documentmock", vo.HTML, []), + i = new this(n, r, e); return i.fragmentContextID === Po.TEMPLATE && i.tmplInsertionModeStack.unshift(Rc.IN_TEMPLATE), i._initTokenizerForFragmentParsing(), i._insertFakeRootElement(), i._resetInsertionMode(), i._findFormInFragmentContext(), i } getFragment() { - const e = this.treeAdapter.getFirstChild(this.document), t = this.treeAdapter.createDocumentFragment(); + const e = this.treeAdapter.getFirstChild(this.document), + t = this.treeAdapter.createDocumentFragment(); return this._adoptNodes(e, t), t } _err(e, t, n) { var r; if (!this.onParseError) return; - const i = null !== (r = e.location) && void 0 !== r ? r : Mc, s = { - code: t, - startLine: i.startLine, - startCol: i.startCol, - startOffset: i.startOffset, - endLine: n ? i.startLine : i.endLine, - endCol: n ? i.startCol : i.endCol, - endOffset: n ? i.startOffset : i.endOffset - }; + const i = null !== (r = e.location) && void 0 !== r ? r : Mc, + s = { + code: t, + startLine: i.startLine, + startCol: i.startCol, + startOffset: i.startOffset, + endLine: n ? i.startLine : i.endLine, + endCol: n ? i.startCol : i.endCol, + endOffset: n ? i.startOffset : i.endOffset + }; this.onParseError(s) } onItemPush(e, t, n) { @@ -8744,7 +9064,9 @@ class wc { } } _setDocumentType(e) { - const t = e.name || "", n = e.publicId || "", r = e.systemId || ""; + const t = e.name || "", + n = e.publicId || "", + r = e.systemId || ""; if (this.treeAdapter.setDocumentType(this.document, t, n, r), e.location) { const t = this.treeAdapter.getChildNodes(this.document).find((e => this.treeAdapter.isDocumentTypeNode(e))); t && this.treeAdapter.setNodeSourceCodeLocation(t, e.location) @@ -8752,7 +9074,9 @@ class wc { } _attachElementToTree(e, t) { if (this.options.sourceCodeLocationInfo) { - const n = t && {...t, startTag: t + const n = t && { + ...t, + startTag: t }; this.treeAdapter.setNodeSourceCodeLocation(e, n) } @@ -8775,7 +9099,8 @@ class wc { this._attachElementToTree(n, null), this.openElements.push(n, t) } _insertTemplate(e) { - const t = this.treeAdapter.createElement(e.tagName, vo.HTML, e.attrs), n = this.treeAdapter.createDocumentFragment(); + const t = this.treeAdapter.createElement(e.tagName, vo.HTML, e.attrs), + n = this.treeAdapter.createDocumentFragment(); this.treeAdapter.setTemplateContent(t, n), this._attachElementToTree(t, e.location), this.openElements.push(t, e.tagID), this.options.sourceCodeLocationInfo && this.treeAdapter.setNodeSourceCodeLocation(n, null) } _insertFakeRootElement() { @@ -8789,10 +9114,12 @@ class wc { _insertCharacters(e) { let t, n; if (this._shouldFosterParentOnInsertion() ? (({ - parent: t, - beforeElement: n - } = this._findFosterParentingLocation()), n ? this.treeAdapter.insertTextBefore(t, e.chars, n) : this.treeAdapter.insertText(t, e.chars)) : (t = this.openElements.currentTmplContentOrNode, this.treeAdapter.insertText(t, e.chars)), !e.location) return; - const r = this.treeAdapter.getChildNodes(t), i = n ? r.lastIndexOf(n) : r.length, s = r[i - 1]; + parent: t, + beforeElement: n + } = this._findFosterParentingLocation()), n ? this.treeAdapter.insertTextBefore(t, e.chars, n) : this.treeAdapter.insertText(t, e.chars)) : (t = this.openElements.currentTmplContentOrNode, this.treeAdapter.insertText(t, e.chars)), !e.location) return; + const r = this.treeAdapter.getChildNodes(t), + i = n ? r.lastIndexOf(n) : r.length, + s = r[i - 1]; if (this.treeAdapter.getNodeSourceCodeLocation(s)) { const { endLine: t, @@ -8811,17 +9138,20 @@ class wc { } _setEndLocation(e, t) { if (this.treeAdapter.getNodeSourceCodeLocation(e) && t.location) { - const n = t.location, r = this.treeAdapter.getTagName(e), i = t.type === To.END_TAG && r === t.tagName ? { - endTag: {...n - }, - endLine: n.endLine, - endCol: n.endCol, - endOffset: n.endOffset - } : { - endLine: n.startLine, - endCol: n.startCol, - endOffset: n.startOffset - }; + const n = t.location, + r = this.treeAdapter.getTagName(e), + i = t.type === To.END_TAG && r === t.tagName ? { + endTag: { + ...n + }, + endLine: n.endLine, + endCol: n.endCol, + endOffset: n.endOffset + } : { + endLine: n.startLine, + endCol: n.startCol, + endOffset: n.startOffset + }; this.treeAdapter.updateNodeSourceCodeLocation(e, i) } } @@ -8913,11 +9243,12 @@ class wc { this.insertionMode = Rc.IN_BODY } _resetInsertionModeForSelect(e) { - if (e > 0) for (let t = e - 1; t > 0; t--) { - const e = this.openElements.tagIDs[t]; - if (e === Po.TEMPLATE) break; - if (e === Po.TABLE) return void(this.insertionMode = Rc.IN_SELECT_IN_TABLE) - } + if (e > 0) + for (let t = e - 1; t > 0; t--) { + const e = this.openElements.tagIDs[t]; + if (e === Po.TEMPLATE) break; + if (e === Po.TABLE) return void(this.insertionMode = Rc.IN_SELECT_IN_TABLE) + } this.insertionMode = Rc.IN_SELECT } _isElementCausesFosterParenting(e) { @@ -8936,17 +9267,16 @@ class wc { beforeElement: null }; break; - case Po.TABLE: - { - const n = this.treeAdapter.getParentNode(t); - return n ? { - parent: n, - beforeElement: t - } : { - parent: this.openElements.items[e - 1], - beforeElement: null - } + case Po.TABLE: { + const n = this.treeAdapter.getParentNode(t); + return n ? { + parent: n, + beforeElement: t + } : { + parent: this.openElements.items[e - 1], + beforeElement: null } + } } } return { @@ -8963,7 +9293,7 @@ class wc { return Ho[n].has(t) } onCharacter(e) { - if (this.skipNextNewLine = !1, this.tokenizer.inForeignNode)! function(e, t) { + if (this.skipNextNewLine = !1, this.tokenizer.inForeignNode) ! function(e, t) { e._insertCharacters(t), e.framesetOk = !1 }(this, e); else switch (this.insertionMode) { @@ -9015,7 +9345,7 @@ class wc { } } onNullCharacter(e) { - if (this.skipNextNewLine = !1, this.tokenizer.inForeignNode)! function(e, t) { + if (this.skipNextNewLine = !1, this.tokenizer.inForeignNode) ! function(e, t) { t.chars = "�", e._insertCharacters(t) }(this, e); else switch (this.insertionMode) { @@ -9137,13 +9467,14 @@ class wc { _processStartTag(e) { this.shouldProcessStartTagTokenInForeignContent(e) ? function(e, t) { if (function(e) { - const t = e.tagID; - return t === Po.FONT && e.attrs.some((({ - name: e - }) => e === Do.COLOR || e === Do.SIZE || e === Do.FACE)) || yc.has(t) - }(t)) Dl(e), e._startTagOutsideForeignContent(t); + const t = e.tagID; + return t === Po.FONT && e.attrs.some((({ + name: e + }) => e === Do.COLOR || e === Do.SIZE || e === Do.FACE)) || yc.has(t) + }(t)) Dl(e), e._startTagOutsideForeignContent(t); else { - const n = e._getAdjustedCurrentElement(), r = e.treeAdapter.getNamespaceURI(n); + const n = e._getAdjustedCurrentElement(), + r = e.treeAdapter.getNamespaceURI(n); r === vo.MATHML ? Lc(t) : r === vo.SVG && (! function(e) { const t = Oc.get(e.tagName); null != t && (e.tagName = t, e.tagID = Fo(e.tagName)) @@ -9648,12 +9979,15 @@ class wc { } } } + function Bc(e, t) { let n = e.activeFormattingElements.getElementEntryInScopeWithTagName(t.tagName); return n ? e.openElements.contains(n.element) ? e.openElements.hasInScope(t.tagID) || (n = null) : (e.activeFormattingElements.removeEntry(n), n = null) : cl(e, t), n } + function Fc(e, t) { - let n = null, r = e.openElements.stackTop; + let n = null, + r = e.openElements.stackTop; for (; r >= 0; r--) { const i = e.openElements.items[r]; if (i === t.element) break; @@ -9661,19 +9995,25 @@ function Fc(e, t) { } return n || (e.openElements.shortenToLength(r < 0 ? 0 : r), e.activeFormattingElements.removeEntry(t)), n } + function Uc(e, t, n) { - let r = t, i = e.openElements.getCommonAncestor(t); + let r = t, + i = e.openElements.getCommonAncestor(t); for (let s = 0, a = i; a !== n; s++, a = i) { i = e.openElements.getCommonAncestor(a); - const n = e.activeFormattingElements.getElementEntry(a), o = n && s >= 3; + const n = e.activeFormattingElements.getElementEntry(a), + o = n && s >= 3; !n || o ? (o && e.activeFormattingElements.removeEntry(n), e.openElements.remove(a)) : (a = Hc(e, n), r === t && (e.activeFormattingElements.bookmark = n), e.treeAdapter.detachNode(r), e.treeAdapter.appendChild(a, r), r = a) } return r } + function Hc(e, t) { - const n = e.treeAdapter.getNamespaceURI(t.element), r = e.treeAdapter.createElement(t.token.tagName, n, t.token.attrs); + const n = e.treeAdapter.getNamespaceURI(t.element), + r = e.treeAdapter.createElement(t.token.tagName, n, t.token.attrs); return e.openElements.replace(t.element, r), t.element = r, r } + function Gc(e, t, n) { const r = Fo(e.treeAdapter.getTagName(t)); if (e._isElementCausesFosterParenting(r)) e._fosterParentElement(n); @@ -9682,12 +10022,16 @@ function Gc(e, t, n) { r === Po.TEMPLATE && i === vo.HTML && (t = e.treeAdapter.getTemplateContent(t)), e.treeAdapter.appendChild(t, n) } } + function Yc(e, t, n) { - const r = e.treeAdapter.getNamespaceURI(n.element), { - token: i - } = n, s = e.treeAdapter.createElement(i.tagName, r, i.attrs); + const r = e.treeAdapter.getNamespaceURI(n.element), + { + token: i + } = n, + s = e.treeAdapter.createElement(i.tagName, r, i.attrs); e._adoptNodes(t, s), e.treeAdapter.appendChild(t, s), e.activeFormattingElements.insertElementAfterBookmark(s, i), e.activeFormattingElements.removeEntry(n), e.openElements.remove(n.element), e.openElements.insertAfter(t, s, i.tagID) } + function qc(e, t) { for (let n = 0; n < 8; n++) { const n = Bc(e, t); @@ -9695,35 +10039,44 @@ function qc(e, t) { const r = Fc(e, n); if (!r) break; e.activeFormattingElements.bookmark = n; - const i = Uc(e, r, n.element), s = e.openElements.getCommonAncestor(n.element); + const i = Uc(e, r, n.element), + s = e.openElements.getCommonAncestor(n.element); e.treeAdapter.detachNode(i), s && Gc(e, s, i), Yc(e, r, n) } } + function Kc(e, t) { e._appendCommentNode(t, e.openElements.currentTmplContentOrNode) } + function jc(e, t) { if (e.stopped = !0, t.location) { const n = e.fragmentContext ? 0 : 2; for (let r = e.openElements.stackTop; r >= n; r--) e._setEndLocation(e.openElements.items[r], t); if (!e.fragmentContext && e.openElements.stackTop >= 0) { - const n = e.openElements.items[0], r = e.treeAdapter.getNodeSourceCodeLocation(n); + const n = e.openElements.items[0], + r = e.treeAdapter.getNodeSourceCodeLocation(n); if (r && !r.endTag && (e._setEndLocation(n, t), e.openElements.stackTop >= 1)) { - const n = e.openElements.items[1], r = e.treeAdapter.getNodeSourceCodeLocation(n); + const n = e.openElements.items[1], + r = e.treeAdapter.getNodeSourceCodeLocation(n); r && !r.endTag && e._setEndLocation(n, t) } } } } + function Vc(e, t) { e._err(t, Eo.missingDoctype, !0), e.treeAdapter.setDocumentMode(e.document, Ro.QUIRKS), e.insertionMode = Rc.BEFORE_HTML, e._processToken(t) } + function Wc(e, t) { e._insertFakeRootElement(), e.insertionMode = Rc.BEFORE_HEAD, e._processToken(t) } + function Qc(e, t) { e._insertFakeElement(Mo.HEAD, Po.HEAD), e.headElement = e.openElements.current, e.insertionMode = Rc.IN_HEAD, e._processToken(t) } + function Xc(e, t) { switch (t.tagID) { case Po.HTML: @@ -9759,19 +10112,24 @@ function Xc(e, t) { zc(e, t) } } + function $c(e, t) { e.openElements.tmplCount > 0 ? (e.openElements.generateImpliedEndTagsThoroughly(), e.openElements.currentTagId !== Po.TEMPLATE && e._err(t, Eo.closingOfElementWithOpenChildElements), e.openElements.popUntilTagNamePopped(Po.TEMPLATE), e.activeFormattingElements.clearToLastMarker(), e.tmplInsertionModeStack.shift(), e._resetInsertionMode()) : e._err(t, Eo.endTagWithoutMatchingOpenElement) } + function zc(e, t) { e.openElements.pop(), e.insertionMode = Rc.AFTER_HEAD, e._processToken(t) } + function Jc(e, t) { const n = t.type === To.EOF ? Eo.openElementsLeftAfterEof : Eo.disallowedContentInNoscriptInHead; e._err(t, n), e.openElements.pop(), e.insertionMode = Rc.IN_HEAD, e._processToken(t) } + function Zc(e, t) { e._insertFakeElement(Mo.BODY, Po.BODY), e.insertionMode = Rc.IN_BODY, el(e, t) } + function el(e, t) { switch (t.type) { case To.CHARACTER: @@ -9793,25 +10151,32 @@ function el(e, t) { hl(e, t) } } + function tl(e, t) { e._reconstructActiveFormattingElements(), e._insertCharacters(t) } + function nl(e, t) { e._reconstructActiveFormattingElements(), e._insertCharacters(t), e.framesetOk = !1 } + function rl(e, t) { e._reconstructActiveFormattingElements(), e._appendElement(t, vo.HTML), e.framesetOk = !1, t.ackSelfClosing = !0 } + function il(e) { const t = _o(e, Do.TYPE); return null != t && "hidden" === t.toLowerCase() } + function sl(e, t) { e._switchToTextParsing(t, jo.RAWTEXT) } + function al(e, t) { e._reconstructActiveFormattingElements(), e._insertElement(t, vo.HTML) } + function ol(e, t) { switch (t.tagID) { case Po.I: @@ -10058,10 +10423,13 @@ function ol(e, t) { al(e, t) } } + function cl(e, t) { - const n = t.tagName, r = t.tagID; + const n = t.tagName, + r = t.tagID; for (let t = e.openElements.stackTop; t > 0; t--) { - const i = e.openElements.items[t], s = e.openElements.tagIDs[t]; + const i = e.openElements.items[t], + s = e.openElements.tagIDs[t]; if (r === s && (r !== Po.UNKNOWN || e.treeAdapter.getTagName(i) === n)) { e.openElements.generateImpliedEndTagsWithExclusion(r), e.openElements.stackTop >= t && e.openElements.shortenToLength(t); break @@ -10069,6 +10437,7 @@ function cl(e, t) { if (e._isSpecialElement(i, s)) break } } + function ll(e, t) { switch (t.tagID) { case Po.A: @@ -10165,9 +10534,10 @@ function ll(e, t) { break; case Po.FORM: ! function(e) { - const t = e.openElements.tmplCount > 0, { - formElement: n - } = e; + const t = e.openElements.tmplCount > 0, + { + formElement: n + } = e; t || (e.formElement = null), (n || t) && e.openElements.hasInScope(Po.FORM) && (e.openElements.generateImpliedEndTags(), t ? e.openElements.popUntilTagNamePopped(Po.FORM) : n && e.openElements.remove(n)) }(e); break; @@ -10186,9 +10556,11 @@ function ll(e, t) { cl(e, t) } } + function hl(e, t) { e.tmplInsertionModeStack.length > 0 ? yl(e, t) : jc(e, t) } + function ul(e, t) { if (Pc.has(e.openElements.currentTagId)) switch (e.pendingCharacterTokens.length = 0, e.hasNonWhitespacePendingCharacterToken = !1, e.originalInsertionMode = e.insertionMode, e.insertionMode = Rc.IN_TABLE_TEXT, t.type) { case To.CHARACTER: @@ -10198,6 +10570,7 @@ function ul(e, t) { El(e, t) } else dl(e, t) } + function pl(e, t) { switch (t.tagID) { case Po.TD: @@ -10253,6 +10626,7 @@ function pl(e, t) { dl(e, t) } } + function fl(e, t) { switch (t.tagID) { case Po.TABLE: @@ -10277,20 +10651,26 @@ function fl(e, t) { dl(e, t) } } + function dl(e, t) { const n = e.fosterParentingEnabled; e.fosterParentingEnabled = !0, el(e, t), e.fosterParentingEnabled = n } + function El(e, t) { e.pendingCharacterTokens.push(t) } + function ml(e, t) { e.pendingCharacterTokens.push(t), e.hasNonWhitespacePendingCharacterToken = !0 } + function Tl(e, t) { let n = 0; - if (e.hasNonWhitespacePendingCharacterToken) for (; n < e.pendingCharacterTokens.length; n++) dl(e, e.pendingCharacterTokens[n]); - else for (; n < e.pendingCharacterTokens.length; n++) e._insertCharacters(e.pendingCharacterTokens[n]); + if (e.hasNonWhitespacePendingCharacterToken) + for (; n < e.pendingCharacterTokens.length; n++) dl(e, e.pendingCharacterTokens[n]); + else + for (; n < e.pendingCharacterTokens.length; n++) e._insertCharacters(e.pendingCharacterTokens[n]); e.insertionMode = e.originalInsertionMode, e._processToken(t) } const _l = new Set([Po.CAPTION, Po.COL, Po.COLGROUP, Po.TBODY, Po.TD, Po.TFOOT, Po.TH, Po.THEAD, Po.TR]); @@ -10310,9 +10690,11 @@ function Al(e, t) { gl(e, t) } } + function gl(e, t) { e.openElements.currentTagId === Po.COLGROUP && (e.openElements.pop(), e.insertionMode = Rc.IN_TABLE, e._processToken(t)) } + function Nl(e, t) { switch (t.tagID) { case Po.TR: @@ -10334,6 +10716,7 @@ function Nl(e, t) { pl(e, t) } } + function Cl(e, t) { const n = t.tagID; switch (t.tagID) { @@ -10358,6 +10741,7 @@ function Cl(e, t) { fl(e, t) } } + function Il(e, t) { switch (t.tagID) { case Po.TH: @@ -10377,6 +10761,7 @@ function Il(e, t) { pl(e, t) } } + function Sl(e, t) { switch (t.tagID) { case Po.TR: @@ -10402,6 +10787,7 @@ function Sl(e, t) { fl(e, t) } } + function bl(e, t) { switch (t.tagID) { case Po.HTML: @@ -10424,6 +10810,7 @@ function bl(e, t) { Xc(e, t) } } + function Ol(e, t) { switch (t.tagID) { case Po.OPTGROUP: @@ -10439,9 +10826,11 @@ function Ol(e, t) { $c(e, t) } } + function yl(e, t) { e.openElements.tmplCount > 0 ? (e.openElements.popUntilTagNamePopped(Po.TEMPLATE), e.activeFormattingElements.clearToLastMarker(), e.tmplInsertionModeStack.shift(), e._resetInsertionMode(), e.onEof(t)) : jc(e, t) } + function Ll(e, t) { var n; if (t.tagID === Po.HTML) { @@ -10452,12 +10841,15 @@ function Ll(e, t) { } } else kl(e, t) } + function kl(e, t) { e.insertionMode = Rc.IN_BODY, el(e, t) } + function vl(e, t) { e.insertionMode = Rc.IN_BODY, el(e, t) } + function Dl(e) { for (; e.treeAdapter.getNamespaceURI(e.openElements.current) !== vo.HTML && !e._isIntegrationPoint(e.openElements.currentTagId, e.openElements.current);) e.openElements.pop() } @@ -10482,6 +10874,7 @@ var Rl = Ke((function(e, t) { } return i + e.substr(s) } + function i(e, t) { return function(n) { for (var r, i = 0, s = ""; r = e.exec(n);) i !== r.index && (s += n.substring(i, r.index)), s += t.get(r[0].charCodeAt(0)), i = r.index + 1; @@ -10514,33 +10907,39 @@ const wl = { }; function Bl(e, t) { - return Fl(e, {...wl, ...t + return Fl(e, { + ...wl, + ...t }) } + function Fl(e, t) { return t.treeAdapter.isElementNode(e) ? function(e, t) { - const n = t.treeAdapter.getTagName(e); - return `<${n}${function(e,{treeAdapter:t}){let n="";for(const r of t.getAttrList(e)){if(n+=" ",r.namespace)switch(r.namespace){case vo.XML:n+=` - xml: $ { - r.name - } - `;break;case vo.XMLNS:"xmlns"!==r.name&&(n+="xmlns:"),n+=r.name;break;case vo.XLINK:n+=` - xlink: $ { - r.name - } - `;break;default:n+=` - $ { - r.prefix - }: $ { - r.name - } - `}else n+=r.name;n+=` = "${Pl(r.value)}" - `}return n}(e,t)}>${function(e,t){return t.treeAdapter.isElementNode(e)&&t.treeAdapter.getNamespaceURI(e)===vo.HTML&&xl.has(t.treeAdapter.getTagName(e))}(e,t)?"":` - $ { - function(e, t) { - let n = ""; - const r = t.treeAdapter.isElementNode(e) && t.treeAdapter.getTagName(e) === Mo.TEMPLATE && t.treeAdapter.getNamespaceURI(e) === vo.HTML ? t.treeAdapter.getTemplateContent(e) : e, i = t.treeAdapter.getChildNodes(r); - if (i) for (const e of i) n += Fl(e, t); - return n - }(e, t) - } < /${n}>`}`}(e,t):t.treeAdapter.isTextNode(e)?function(e,t){const{treeAdapter:n}=t,r=n.getTextNodeContent(e),i=n.getParentNode(e),s=i&&n.isElementNode(i)&&n.getTagName(i);return s&&n.getNamespaceURI(i)===vo.HTML&&(a=s,o=t.scriptingEnabled,Yo.has(a)||o&&a===Mo.NOSCRIPT)?r:Ml(r);var a,o}(e,t):t.treeAdapter.isCommentNode(e)?function(e,{treeAdapter:t}){return`\x3c!--${t.getCommentNodeContent(e)}--\x3e`}(e,t):t.treeAdapter.isDocumentTypeNode(e)?function(e,{treeAdapter:t}){return``}(e,t):""}function Ul(e){return new m(e)}function Hl(e){const t=e.includes('"')?"'":'"';return t+e+t}const Gl={isCommentNode:O,isElementNode:I,isTextNode:b,createDocument(){const e=new N([]);return e["x-mode"]=Ro.NO_QUIRKS,e},createDocumentFragment:()=>new N([]),createElement(e,t,n){const r=Object.create(null),i=Object.create(null),s=Object.create(null);for(let e=0;enew T(e),appendChild(e,t){const n=e.children[e.children.length-1];n&&(n.next=t,t.prev=n),e.children.push(t),t.parent=e},insertBefore(e,t,n){const r=e.children.indexOf(n),{prev:i}=n;i&&(i.next=t,t.prev=i),n.prev=t,t.next=n,e.children.splice(r,0,t),t.parent=e},setTemplateContent(e,t){Gl.appendChild(e,t)},getTemplateContent:e=>e.children[0],setDocumentType(e,t,n,r){const i=function(e,t,n){let r="!DOCTYPE ";return e&&(r+=e),t?r+=` PUBLIC ${Hl(t)}`:n&&(r+=" SYSTEM"),n&&(r+=` ${Hl(n)}`),r}(t,n,r);let s=e.children.find((e=>y(e)&&"!doctype"===e.name));s?s.data=null!=i?i:null:(s=new _("!doctype",i),Gl.appendChild(e,s)),s["x-name"]=null!=t?t:void 0,s["x-publicId"]=null!=n?n:void 0,s["x-systemId"]=null!=r?r:void 0},setDocumentMode(e,t){e["x-mode"]=t},getDocumentMode:e=>e["x-mode"],detachNode(e){if(e.parent){const t=e.parent.children.indexOf(e),{prev:n,next:r}=e;e.prev=null,e.next=null,n&&(n.next=r),r&&(r.prev=n),e.parent.children.splice(t,1),e.parent=null}},insertText(e,t){const n=e.children[e.children.length-1];n&&b(n)?n.data+=t:Gl.appendChild(e,Ul(t))},insertTextBefore(e,t,n){const r=e.children[e.children.indexOf(n)-1];r&&b(r)?r.data+=t:Gl.insertBefore(e,Ul(t),n)},adoptAttributes(e,t){for(let n=0;ne.children[0],getChildNodes:e=>e.children,getParentNode:e=>e.parent,getAttrList:e=>e.attributes,getTagName:e=>e.name,getNamespaceURI:e=>e.namespace,getTextNodeContent:e=>e.data,getCommentNodeContent:e=>e.data,getDocumentTypeNodeName(e){var t;return null!==(t=e["x-name"])&&void 0!==t?t:""},getDocumentTypeNodePublicId(e){var t;return null!==(t=e["x-publicId"])&&void 0!==t?t:""},getDocumentTypeNodeSystemId(e){var t;return null!==(t=e["x-systemId"])&&void 0!==t?t:""},isDocumentTypeNode:e=>y(e)&&"!doctype"===e.name,setNodeSourceCodeLocation(e,t){t&&(e.startIndex=t.startOffset,e.endIndex=t.endOffset),e.sourceCodeLocation=t},getNodeSourceCodeLocation:e=>e.sourceCodeLocation,updateNodeSourceCodeLocation(e,t){null!=t.endOffset&&(e.endIndex=t.endOffset),e.sourceCodeLocation={...e.sourceCodeLocation,...t}}};var Yl=function(e,t,n){if(n||2===arguments.length)for(var r,i=0,s=t.length;i=Kl.Zero&&e<=Kl.Nine}!function(e){e[e.Tab=9]="Tab",e[e.NewLine=10]="NewLine",e[e.FormFeed=12]="FormFeed",e[e.CarriageReturn=13]="CarriageReturn",e[e.Space=32]="Space",e[e.ExclamationMark=33]="ExclamationMark",e[e.Num=35]="Num",e[e.Amp=38]="Amp",e[e.SingleQuote=39]="SingleQuote",e[e.DoubleQuote=34]="DoubleQuote",e[e.Dash=45]="Dash",e[e.Slash=47]="Slash",e[e.Zero=48]="Zero",e[e.Nine=57]="Nine",e[e.Semi=59]="Semi",e[e.Lt=60]="Lt",e[e.Eq=61]="Eq",e[e.Gt=62]="Gt",e[e.Questionmark=63]="Questionmark",e[e.UpperA=65]="UpperA",e[e.LowerA=97]="LowerA",e[e.UpperF=70]="UpperF",e[e.LowerF=102]="LowerF",e[e.UpperZ=90]="UpperZ",e[e.LowerZ=122]="LowerZ",e[e.LowerX=120]="LowerX",e[e.OpeningSquareBracket=91]="OpeningSquareBracket"}(Kl||(Kl={})),function(e){e[e.Text=1]="Text",e[e.BeforeTagName=2]="BeforeTagName",e[e.InTagName=3]="InTagName",e[e.InSelfClosingTag=4]="InSelfClosingTag",e[e.BeforeClosingTagName=5]="BeforeClosingTagName",e[e.InClosingTagName=6]="InClosingTagName",e[e.AfterClosingTagName=7]="AfterClosingTagName",e[e.BeforeAttributeName=8]="BeforeAttributeName",e[e.InAttributeName=9]="InAttributeName",e[e.AfterAttributeName=10]="AfterAttributeName",e[e.BeforeAttributeValue=11]="BeforeAttributeValue",e[e.InAttributeValueDq=12]="InAttributeValueDq",e[e.InAttributeValueSq=13]="InAttributeValueSq",e[e.InAttributeValueNq=14]="InAttributeValueNq",e[e.BeforeDeclaration=15]="BeforeDeclaration",e[e.InDeclaration=16]="InDeclaration",e[e.InProcessingInstruction=17]="InProcessingInstruction",e[e.BeforeComment=18]="BeforeComment",e[e.CDATASequence=19]="CDATASequence",e[e.InSpecialComment=20]="InSpecialComment",e[e.InCommentLike=21]="InCommentLike",e[e.BeforeSpecialS=22]="BeforeSpecialS",e[e.SpecialStartSequence=23]="SpecialStartSequence",e[e.InSpecialTag=24]="InSpecialTag",e[e.BeforeEntity=25]="BeforeEntity",e[e.BeforeNumericEntity=26]="BeforeNumericEntity",e[e.InNamedEntity=27]="InNamedEntity",e[e.InNumericEntity=28]="InNumericEntity",e[e.InHexEntity=29]="InHexEntity"}(jl||(jl={})),function(e){e[e.NoValue=0]="NoValue",e[e.Unquoted=1]="Unquoted",e[e.Single=2]="Single",e[e.Double=3]="Double"}(Vl||(Vl={}));const zl={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])};class Jl{constructor({xmlMode:e=!1,decodeEntities:t=!0},n){this.cbs=n,this.state=jl.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=jl.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.sequenceIndex=0,this.trieIndex=0,this.trieCurrent=0,this.entityResult=0,this.entityExcess=0,this.xmlMode=e,this.decodeEntities=t,this.entityTrie=e?xo:wo}reset(){this.state=jl.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=jl.Text,this.currentSequence=void 0,this.running=!0,this.offset=0}write(e){this.offset+=this.buffer.length,this.buffer=e,this.parse()}end(){this.running&&this.finish()}pause(){this.running=!1}resume(){this.running=!0,this.indexthis.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=jl.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===Kl.Amp&&(this.state=jl.BeforeEntity)}stateSpecialStartSequence(e){const t=this.sequenceIndex===this.currentSequence.length;if(t?Xl(e):(32|e)===this.currentSequence[this.sequenceIndex]){if(!t)return void this.sequenceIndex++}else this.isSpecial=!1;this.sequenceIndex=0,this.state=jl.InTagName,this.stateInTagName(e)}stateInSpecialTag(e){if(this.sequenceIndex===this.currentSequence.length){if(e===Kl.Gt||Ql(e)){const t=this.index-this.currentSequence.length;if(this.sectionStart=Kl.LowerA&&e<=Kl.LowerZ||e>=Kl.UpperA&&e<=Kl.UpperZ}(e)}startSpecial(e,t){this.isSpecial=!0,this.currentSequence=e,this.sequenceIndex=t,this.state=jl.SpecialStartSequence}stateBeforeTagName(e){if(e===Kl.ExclamationMark)this.state=jl.BeforeDeclaration,this.sectionStart=this.index+1;else if(e===Kl.Questionmark)this.state=jl.InProcessingInstruction,this.sectionStart=this.index+1;else if(this.isTagStartChar(e)){const t=32|e;this.sectionStart=this.index,this.xmlMode||t!==zl.TitleEnd[2]?this.state=this.xmlMode||t!==zl.ScriptEnd[2]?jl.InTagName:jl.BeforeSpecialS:this.startSpecial(zl.TitleEnd,3)}else e===Kl.Slash?this.state=jl.BeforeClosingTagName:(this.state=jl.Text,this.stateText(e))}stateInTagName(e){Xl(e)&&(this.cbs.onopentagname(this.sectionStart,this.index),this.sectionStart=-1,this.state=jl.BeforeAttributeName,this.stateBeforeAttributeName(e))}stateBeforeClosingTagName(e){Ql(e)||(e===Kl.Gt?this.state=jl.Text:(this.state=this.isTagStartChar(e)?jl.InClosingTagName:jl.InSpecialComment,this.sectionStart=this.index))}stateInClosingTagName(e){(e===Kl.Gt||Ql(e))&&(this.cbs.onclosetag(this.sectionStart,this.index),this.sectionStart=-1,this.state=jl.AfterClosingTagName,this.stateAfterClosingTagName(e))}stateAfterClosingTagName(e){(e===Kl.Gt||this.fastForwardTo(Kl.Gt))&&(this.state=jl.Text,this.sectionStart=this.index+1)}stateBeforeAttributeName(e){e===Kl.Gt?(this.cbs.onopentagend(this.index),this.isSpecial?(this.state=jl.InSpecialTag,this.sequenceIndex=0):this.state=jl.Text,this.baseState=this.state,this.sectionStart=this.index+1):e===Kl.Slash?this.state=jl.InSelfClosingTag:Ql(e)||(this.state=jl.InAttributeName,this.sectionStart=this.index)}stateInSelfClosingTag(e){e===Kl.Gt?(this.cbs.onselfclosingtag(this.index),this.state=jl.Text,this.baseState=jl.Text,this.sectionStart=this.index+1,this.isSpecial=!1):Ql(e)||(this.state=jl.BeforeAttributeName,this.stateBeforeAttributeName(e))}stateInAttributeName(e){(e===Kl.Eq||Xl(e))&&(this.cbs.onattribname(this.sectionStart,this.index),this.sectionStart=-1,this.state=jl.AfterAttributeName,this.stateAfterAttributeName(e))}stateAfterAttributeName(e){e===Kl.Eq?this.state=jl.BeforeAttributeValue:e===Kl.Slash||e===Kl.Gt?(this.cbs.onattribend(Vl.NoValue,this.index),this.state=jl.BeforeAttributeName,this.stateBeforeAttributeName(e)):Ql(e)||(this.cbs.onattribend(Vl.NoValue,this.index),this.state=jl.InAttributeName,this.sectionStart=this.index)}stateBeforeAttributeValue(e){e===Kl.DoubleQuote?(this.state=jl.InAttributeValueDq,this.sectionStart=this.index+1):e===Kl.SingleQuote?(this.state=jl.InAttributeValueSq,this.sectionStart=this.index+1):Ql(e)||(this.sectionStart=this.index,this.state=jl.InAttributeValueNq,this.stateInAttributeValueNoQuotes(e))}handleInAttributeValue(e,t){e===t||!this.decodeEntities&&this.fastForwardTo(t)?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(t===Kl.DoubleQuote?Vl.Double:Vl.Single,this.index),this.state=jl.BeforeAttributeName):this.decodeEntities&&e===Kl.Amp&&(this.baseState=this.state,this.state=jl.BeforeEntity)}stateInAttributeValueDoubleQuotes(e){this.handleInAttributeValue(e,Kl.DoubleQuote)}stateInAttributeValueSingleQuotes(e){this.handleInAttributeValue(e,Kl.SingleQuote)}stateInAttributeValueNoQuotes(e){Ql(e)||e===Kl.Gt?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(Vl.Unquoted,this.index),this.state=jl.BeforeAttributeName,this.stateBeforeAttributeName(e)):this.decodeEntities&&e===Kl.Amp&&(this.baseState=this.state,this.state=jl.BeforeEntity)}stateBeforeDeclaration(e){e===Kl.OpeningSquareBracket?(this.state=jl.CDATASequence,this.sequenceIndex=0):this.state=e===Kl.Dash?jl.BeforeComment:jl.InDeclaration}stateInDeclaration(e){(e===Kl.Gt||this.fastForwardTo(Kl.Gt))&&(this.cbs.ondeclaration(this.sectionStart,this.index),this.state=jl.Text,this.sectionStart=this.index+1)}stateInProcessingInstruction(e){(e===Kl.Gt||this.fastForwardTo(Kl.Gt))&&(this.cbs.onprocessinginstruction(this.sectionStart,this.index),this.state=jl.Text,this.sectionStart=this.index+1)}stateBeforeComment(e){e===Kl.Dash?(this.state=jl.InCommentLike,this.currentSequence=zl.CommentEnd,this.sequenceIndex=2,this.sectionStart=this.index+1):this.state=jl.InDeclaration}stateInSpecialComment(e){(e===Kl.Gt||this.fastForwardTo(Kl.Gt))&&(this.cbs.oncomment(this.sectionStart,this.index,0),this.state=jl.Text,this.sectionStart=this.index+1)}stateBeforeSpecialS(e){const t=32|e;t===zl.ScriptEnd[3]?this.startSpecial(zl.ScriptEnd,4):t===zl.StyleEnd[3]?this.startSpecial(zl.StyleEnd,4):(this.state=jl.InTagName,this.stateInTagName(e))}stateBeforeEntity(e){this.entityExcess=1,this.entityResult=0,e===Kl.Num?this.state=jl.BeforeNumericEntity:e===Kl.Amp||(this.trieIndex=0,this.trieCurrent=this.entityTrie[0],this.state=jl.InNamedEntity,this.stateInNamedEntity(e))}stateInNamedEntity(e){if(this.entityExcess+=1,this.trieIndex=Oo(this.entityTrie,this.trieCurrent,this.trieIndex+1,e),this.trieIndex<0)return this.emitNamedEntity(),void this.index--;this.trieCurrent=this.entityTrie[this.trieIndex];const t=this.trieCurrent&yo.VALUE_LENGTH;if(t){const n=(t>>14)-1;if(this.allowLegacyEntity()||e===Kl.Semi){const e=this.index-this.entityExcess+1;e>this.sectionStart&&this.emitPartial(this.sectionStart,e),this.entityResult=this.trieIndex,this.trieIndex+=n,this.entityExcess=0,this.sectionStart=this.index+1,0===n&&this.emitNamedEntity()}else this.trieIndex+=n}}emitNamedEntity(){if(this.state=this.baseState,0===this.entityResult)return;switch((this.entityTrie[this.entityResult]&yo.VALUE_LENGTH)>>14){case 1:this.emitCodePoint(this.entityTrie[this.entityResult]&~yo.VALUE_LENGTH);break;case 2:this.emitCodePoint(this.entityTrie[this.entityResult+1]);break;case 3:this.emitCodePoint(this.entityTrie[this.entityResult+1]),this.emitCodePoint(this.entityTrie[this.entityResult+2])}}stateBeforeNumericEntity(e){(32|e)===Kl.LowerX?(this.entityExcess++,this.state=jl.InHexEntity):(this.state=jl.InNumericEntity,this.stateInNumericEntity(e))}emitNumericEntity(e){const t=this.index-this.entityExcess-1;t+2+Number(this.state===jl.InHexEntity)!==this.index&&(t>this.sectionStart&&this.emitPartial(this.sectionStart,t),this.sectionStart=this.index+Number(e),this.emitCodePoint(ko(this.entityResult))),this.state=this.baseState}stateInNumericEntity(e){e===Kl.Semi?this.emitNumericEntity(!0):$l(e)?(this.entityResult=10*this.entityResult+(e-Kl.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}stateInHexEntity(e){e===Kl.Semi?this.emitNumericEntity(!0):$l(e)?(this.entityResult=16*this.entityResult+(e-Kl.Zero),this.entityExcess++):!function(e){return e>=Kl.UpperA&&e<=Kl.UpperF||e>=Kl.LowerA&&e<=Kl.LowerF}(e)?(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--):(this.entityResult=16*this.entityResult+((32|e)-Kl.LowerA+10),this.entityExcess++)}allowLegacyEntity(){return!this.xmlMode&&(this.baseState===jl.Text||this.baseState===jl.InSpecialTag)}cleanup(){this.running&&this.sectionStart!==this.index&&(this.state===jl.Text||this.state===jl.InSpecialTag&&0===this.sequenceIndex?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):this.state!==jl.InAttributeValueDq&&this.state!==jl.InAttributeValueSq&&this.state!==jl.InAttributeValueNq||(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))}shouldContinue(){return this.index0&&s.has(this.stack[this.stack.length-1]);){const e=this.stack.pop();null===(n=(t=this.cbs).onclosetag)||void 0===n||n.call(t,e,!0)}this.isVoidElement(e)||(this.stack.push(e),ah.has(e)?this.foreignContext.push(!0):oh.has(e)&&this.foreignContext.push(!1)),null===(i=(r=this.cbs).onopentagname)||void 0===i||i.call(r,e),this.cbs.onopentag&&(this.attribs={})}endOpenTag(e){var t,n;this.startIndex=this.openTagStart,this.attribs&&(null===(n=(t=this.cbs).onopentag)||void 0===n||n.call(t,this.tagname,this.attribs,e),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""}onopentagend(e){this.endIndex=e,this.endOpenTag(!1),this.startIndex=e+1}onclosetag(e,t){var n,r,i,s,a,o;this.endIndex=t;let c=this.getSlice(e,t);if(this.lowerCaseTagNames&&(c=c.toLowerCase()),(ah.has(c)||oh.has(c))&&this.foreignContext.pop(),this.isVoidElement(c))this.options.xmlMode||"br"!==c||(null===(r=(n=this.cbs).onopentagname)||void 0===r||r.call(n,"br"),null===(s=(i=this.cbs).onopentag)||void 0===s||s.call(i,"br",{},!0),null===(o=(a=this.cbs).onclosetag)||void 0===o||o.call(a,"br",!1));else{const e=this.stack.lastIndexOf(c);if(-1!==e)if(this.cbs.onclosetag){let t=this.stack.length-e;for(;t--;)this.cbs.onclosetag(this.stack.pop(),0!==t)}else this.stack.length=e;else this.options.xmlMode||"p"!==c||(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=t+1}onselfclosingtag(e){this.endIndex=e,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=e+1):this.onopentagend(e)}closeCurrentTag(e){var t,n;const r=this.tagname;this.endOpenTag(e),this.stack[this.stack.length-1]===r&&(null===(n=(t=this.cbs).onclosetag)||void 0===n||n.call(t,r,!e),this.stack.pop())}onattribname(e,t){this.startIndex=e;const n=this.getSlice(e,t);this.attribname=this.lowerCaseAttributeNames?n.toLowerCase():n}onattribdata(e,t){this.attribvalue+=this.getSlice(e,t)}onattribentity(e){this.attribvalue+=Lo(e)}onattribend(e,t){var n,r;this.endIndex=t,null===(r=(n=this.cbs).onattribute)||void 0===r||r.call(n,this.attribname,this.attribvalue,e===Vl.Double?'"':e===Vl.Single?"'":e===Vl.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""}getInstructionName(e){const t=e.search(ch);let n=t<0?e:e.substr(0,t);return this.lowerCaseTagNames&&(n=n.toLowerCase()),n}ondeclaration(e,t){this.endIndex=t;const n=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){const e=this.getInstructionName(n);this.cbs.onprocessinginstruction(`!${e}`,`!${n}`)}this.startIndex=t+1}onprocessinginstruction(e,t){this.endIndex=t;const n=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){const e=this.getInstructionName(n);this.cbs.onprocessinginstruction(`?${e}`,`?${n}`)}this.startIndex=t+1}oncomment(e,t,n){var r,i,s,a;this.endIndex=t,null===(i=(r=this.cbs).oncomment)||void 0===i||i.call(r,this.getSlice(e,t-n)),null===(a=(s=this.cbs).oncommentend)||void 0===a||a.call(s),this.startIndex=t+1}oncdata(e,t,n){var r,i,s,a,o,c,l,h,u,p;this.endIndex=t;const f=this.getSlice(e,t-n);this.options.xmlMode||this.options.recognizeCDATA?(null===(i=(r=this.cbs).oncdatastart)||void 0===i||i.call(r),null===(a=(s=this.cbs).ontext)||void 0===a||a.call(s,f),null===(c=(o=this.cbs).oncdataend)||void 0===c||c.call(o)):(null===(h=(l=this.cbs).oncomment)||void 0===h||h.call(l,`[CDATA[${f}]]`),null===(p=(u=this.cbs).oncommentend)||void 0===p||p.call(u)),this.startIndex=t+1}onend(){var e,t;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(let e=this.stack.length;e>0;this.cbs.onclosetag(this.stack[--e],!0));}null===(t=(e=this.cbs).onend)||void 0===t||t.call(e)}reset(){var e,t,n,r;null===(t=(e=this.cbs).onreset)||void 0===t||t.call(e),this.tokenizer.reset(),this.tagname="",this.attribname="",this.attribs=null,this.stack.length=0,this.startIndex=0,this.endIndex=0,null===(r=(n=this.cbs).onparserinit)||void 0===r||r.call(n,this),this.buffers.length=0,this.bufferOffset=0,this.writeIndex=0,this.ended=!1}parseComplete(e){this.reset(),this.end(e)}getSlice(e,t){for(;e-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();let n=this.buffers[0].slice(e-this.bufferOffset,t-this.bufferOffset);for(;t-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),n+=this.buffers[0].slice(0,t-this.bufferOffset);return n}shiftBuffer(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()}write(e){var t,n;this.ended?null===(n=(t=this.cbs).onerror)||void 0===n||n.call(t,new Error(".write() after done!")):(this.buffers.push(e),this.tokenizer.running&&(this.tokenizer.write(e),this.writeIndex++))}end(e){var t,n;this.ended?null===(n=(t=this.cbs).onerror)||void 0===n||n.call(t,Error(".end() after done!")):(e&&this.write(e),this.ended=!0,this.tokenizer.end())}pause(){this.tokenizer.pause()}resume(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndex${function(e,t){return t.treeAdapter.isElementNode(e)&&t.treeAdapter.getNamespaceURI(e)===vo.HTML&&xl.has(t.treeAdapter.getTagName(e))}(e,t)?"":` + $ { + function(e, t) { + let n = ""; + const r = t.treeAdapter.isElementNode(e) && t.treeAdapter.getTagName(e) === Mo.TEMPLATE && t.treeAdapter.getNamespaceURI(e) === vo.HTML ? t.treeAdapter.getTemplateContent(e) : e, + i = t.treeAdapter.getChildNodes(r); + if (i) + for (const e of i) n += Fl(e, t); + return n + }(e, t) + } < /${n}>`}`}(e,t):t.treeAdapter.isTextNode(e)?function(e,t){const{treeAdapter:n}=t,r=n.getTextNodeContent(e),i=n.getParentNode(e),s=i&&n.isElementNode(i)&&n.getTagName(i);return s&&n.getNamespaceURI(i)===vo.HTML&&(a=s,o=t.scriptingEnabled,Yo.has(a)||o&&a===Mo.NOSCRIPT)?r:Ml(r);var a,o}(e,t):t.treeAdapter.isCommentNode(e)?function(e,{treeAdapter:t}){return`\x3c!--${t.getCommentNodeContent(e)}--\x3e`}(e,t):t.treeAdapter.isDocumentTypeNode(e)?function(e,{treeAdapter:t}){return``}(e,t):""}function Ul(e){return new m(e)}function Hl(e){const t=e.includes('"')?"'":'"';return t+e+t}const Gl={isCommentNode:O,isElementNode:I,isTextNode:b,createDocument(){const e=new N([]);return e["x-mode"]=Ro.NO_QUIRKS,e},createDocumentFragment:()=>new N([]),createElement(e,t,n){const r=Object.create(null),i=Object.create(null),s=Object.create(null);for(let e=0;enew T(e),appendChild(e,t){const n=e.children[e.children.length-1];n&&(n.next=t,t.prev=n),e.children.push(t),t.parent=e},insertBefore(e,t,n){const r=e.children.indexOf(n),{prev:i}=n;i&&(i.next=t,t.prev=i),n.prev=t,t.next=n,e.children.splice(r,0,t),t.parent=e},setTemplateContent(e,t){Gl.appendChild(e,t)},getTemplateContent:e=>e.children[0],setDocumentType(e,t,n,r){const i=function(e,t,n){let r="!DOCTYPE ";return e&&(r+=e),t?r+=` PUBLIC ${Hl(t)}`:n&&(r+=" SYSTEM"),n&&(r+=` ${Hl(n)}`),r}(t,n,r);let s=e.children.find((e=>y(e)&&"!doctype"===e.name));s?s.data=null!=i?i:null:(s=new _("!doctype",i),Gl.appendChild(e,s)),s["x-name"]=null!=t?t:void 0,s["x-publicId"]=null!=n?n:void 0,s["x-systemId"]=null!=r?r:void 0},setDocumentMode(e,t){e["x-mode"]=t},getDocumentMode:e=>e["x-mode"],detachNode(e){if(e.parent){const t=e.parent.children.indexOf(e),{prev:n,next:r}=e;e.prev=null,e.next=null,n&&(n.next=r),r&&(r.prev=n),e.parent.children.splice(t,1),e.parent=null}},insertText(e,t){const n=e.children[e.children.length-1];n&&b(n)?n.data+=t:Gl.appendChild(e,Ul(t))},insertTextBefore(e,t,n){const r=e.children[e.children.indexOf(n)-1];r&&b(r)?r.data+=t:Gl.insertBefore(e,Ul(t),n)},adoptAttributes(e,t){for(let n=0;ne.children[0],getChildNodes:e=>e.children,getParentNode:e=>e.parent,getAttrList:e=>e.attributes,getTagName:e=>e.name,getNamespaceURI:e=>e.namespace,getTextNodeContent:e=>e.data,getCommentNodeContent:e=>e.data,getDocumentTypeNodeName(e){var t;return null!==(t=e["x-name"])&&void 0!==t?t:""},getDocumentTypeNodePublicId(e){var t;return null!==(t=e["x-publicId"])&&void 0!==t?t:""},getDocumentTypeNodeSystemId(e){var t;return null!==(t=e["x-systemId"])&&void 0!==t?t:""},isDocumentTypeNode:e=>y(e)&&"!doctype"===e.name,setNodeSourceCodeLocation(e,t){t&&(e.startIndex=t.startOffset,e.endIndex=t.endOffset),e.sourceCodeLocation=t},getNodeSourceCodeLocation:e=>e.sourceCodeLocation,updateNodeSourceCodeLocation(e,t){null!=t.endOffset&&(e.endIndex=t.endOffset),e.sourceCodeLocation={...e.sourceCodeLocation,...t}}};var Yl=function(e,t,n){if(n||2===arguments.length)for(var r,i=0,s=t.length;i=Kl.Zero&&e<=Kl.Nine}!function(e){e[e.Tab=9]="Tab",e[e.NewLine=10]="NewLine",e[e.FormFeed=12]="FormFeed",e[e.CarriageReturn=13]="CarriageReturn",e[e.Space=32]="Space",e[e.ExclamationMark=33]="ExclamationMark",e[e.Num=35]="Num",e[e.Amp=38]="Amp",e[e.SingleQuote=39]="SingleQuote",e[e.DoubleQuote=34]="DoubleQuote",e[e.Dash=45]="Dash",e[e.Slash=47]="Slash",e[e.Zero=48]="Zero",e[e.Nine=57]="Nine",e[e.Semi=59]="Semi",e[e.Lt=60]="Lt",e[e.Eq=61]="Eq",e[e.Gt=62]="Gt",e[e.Questionmark=63]="Questionmark",e[e.UpperA=65]="UpperA",e[e.LowerA=97]="LowerA",e[e.UpperF=70]="UpperF",e[e.LowerF=102]="LowerF",e[e.UpperZ=90]="UpperZ",e[e.LowerZ=122]="LowerZ",e[e.LowerX=120]="LowerX",e[e.OpeningSquareBracket=91]="OpeningSquareBracket"}(Kl||(Kl={})),function(e){e[e.Text=1]="Text",e[e.BeforeTagName=2]="BeforeTagName",e[e.InTagName=3]="InTagName",e[e.InSelfClosingTag=4]="InSelfClosingTag",e[e.BeforeClosingTagName=5]="BeforeClosingTagName",e[e.InClosingTagName=6]="InClosingTagName",e[e.AfterClosingTagName=7]="AfterClosingTagName",e[e.BeforeAttributeName=8]="BeforeAttributeName",e[e.InAttributeName=9]="InAttributeName",e[e.AfterAttributeName=10]="AfterAttributeName",e[e.BeforeAttributeValue=11]="BeforeAttributeValue",e[e.InAttributeValueDq=12]="InAttributeValueDq",e[e.InAttributeValueSq=13]="InAttributeValueSq",e[e.InAttributeValueNq=14]="InAttributeValueNq",e[e.BeforeDeclaration=15]="BeforeDeclaration",e[e.InDeclaration=16]="InDeclaration",e[e.InProcessingInstruction=17]="InProcessingInstruction",e[e.BeforeComment=18]="BeforeComment",e[e.CDATASequence=19]="CDATASequence",e[e.InSpecialComment=20]="InSpecialComment",e[e.InCommentLike=21]="InCommentLike",e[e.BeforeSpecialS=22]="BeforeSpecialS",e[e.SpecialStartSequence=23]="SpecialStartSequence",e[e.InSpecialTag=24]="InSpecialTag",e[e.BeforeEntity=25]="BeforeEntity",e[e.BeforeNumericEntity=26]="BeforeNumericEntity",e[e.InNamedEntity=27]="InNamedEntity",e[e.InNumericEntity=28]="InNumericEntity",e[e.InHexEntity=29]="InHexEntity"}(jl||(jl={})),function(e){e[e.NoValue=0]="NoValue",e[e.Unquoted=1]="Unquoted",e[e.Single=2]="Single",e[e.Double=3]="Double"}(Vl||(Vl={}));const zl={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])};class Jl{constructor({xmlMode:e=!1,decodeEntities:t=!0},n){this.cbs=n,this.state=jl.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=jl.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.sequenceIndex=0,this.trieIndex=0,this.trieCurrent=0,this.entityResult=0,this.entityExcess=0,this.xmlMode=e,this.decodeEntities=t,this.entityTrie=e?xo:wo}reset(){this.state=jl.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=jl.Text,this.currentSequence=void 0,this.running=!0,this.offset=0}write(e){this.offset+=this.buffer.length,this.buffer=e,this.parse()}end(){this.running&&this.finish()}pause(){this.running=!1}resume(){this.running=!0,this.indexthis.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=jl.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===Kl.Amp&&(this.state=jl.BeforeEntity)}stateSpecialStartSequence(e){const t=this.sequenceIndex===this.currentSequence.length;if(t?Xl(e):(32|e)===this.currentSequence[this.sequenceIndex]){if(!t)return void this.sequenceIndex++}else this.isSpecial=!1;this.sequenceIndex=0,this.state=jl.InTagName,this.stateInTagName(e)}stateInSpecialTag(e){if(this.sequenceIndex===this.currentSequence.length){if(e===Kl.Gt||Ql(e)){const t=this.index-this.currentSequence.length;if(this.sectionStart=Kl.LowerA&&e<=Kl.LowerZ||e>=Kl.UpperA&&e<=Kl.UpperZ}(e)}startSpecial(e,t){this.isSpecial=!0,this.currentSequence=e,this.sequenceIndex=t,this.state=jl.SpecialStartSequence}stateBeforeTagName(e){if(e===Kl.ExclamationMark)this.state=jl.BeforeDeclaration,this.sectionStart=this.index+1;else if(e===Kl.Questionmark)this.state=jl.InProcessingInstruction,this.sectionStart=this.index+1;else if(this.isTagStartChar(e)){const t=32|e;this.sectionStart=this.index,this.xmlMode||t!==zl.TitleEnd[2]?this.state=this.xmlMode||t!==zl.ScriptEnd[2]?jl.InTagName:jl.BeforeSpecialS:this.startSpecial(zl.TitleEnd,3)}else e===Kl.Slash?this.state=jl.BeforeClosingTagName:(this.state=jl.Text,this.stateText(e))}stateInTagName(e){Xl(e)&&(this.cbs.onopentagname(this.sectionStart,this.index),this.sectionStart=-1,this.state=jl.BeforeAttributeName,this.stateBeforeAttributeName(e))}stateBeforeClosingTagName(e){Ql(e)||(e===Kl.Gt?this.state=jl.Text:(this.state=this.isTagStartChar(e)?jl.InClosingTagName:jl.InSpecialComment,this.sectionStart=this.index))}stateInClosingTagName(e){(e===Kl.Gt||Ql(e))&&(this.cbs.onclosetag(this.sectionStart,this.index),this.sectionStart=-1,this.state=jl.AfterClosingTagName,this.stateAfterClosingTagName(e))}stateAfterClosingTagName(e){(e===Kl.Gt||this.fastForwardTo(Kl.Gt))&&(this.state=jl.Text,this.sectionStart=this.index+1)}stateBeforeAttributeName(e){e===Kl.Gt?(this.cbs.onopentagend(this.index),this.isSpecial?(this.state=jl.InSpecialTag,this.sequenceIndex=0):this.state=jl.Text,this.baseState=this.state,this.sectionStart=this.index+1):e===Kl.Slash?this.state=jl.InSelfClosingTag:Ql(e)||(this.state=jl.InAttributeName,this.sectionStart=this.index)}stateInSelfClosingTag(e){e===Kl.Gt?(this.cbs.onselfclosingtag(this.index),this.state=jl.Text,this.baseState=jl.Text,this.sectionStart=this.index+1,this.isSpecial=!1):Ql(e)||(this.state=jl.BeforeAttributeName,this.stateBeforeAttributeName(e))}stateInAttributeName(e){(e===Kl.Eq||Xl(e))&&(this.cbs.onattribname(this.sectionStart,this.index),this.sectionStart=-1,this.state=jl.AfterAttributeName,this.stateAfterAttributeName(e))}stateAfterAttributeName(e){e===Kl.Eq?this.state=jl.BeforeAttributeValue:e===Kl.Slash||e===Kl.Gt?(this.cbs.onattribend(Vl.NoValue,this.index),this.state=jl.BeforeAttributeName,this.stateBeforeAttributeName(e)):Ql(e)||(this.cbs.onattribend(Vl.NoValue,this.index),this.state=jl.InAttributeName,this.sectionStart=this.index)}stateBeforeAttributeValue(e){e===Kl.DoubleQuote?(this.state=jl.InAttributeValueDq,this.sectionStart=this.index+1):e===Kl.SingleQuote?(this.state=jl.InAttributeValueSq,this.sectionStart=this.index+1):Ql(e)||(this.sectionStart=this.index,this.state=jl.InAttributeValueNq,this.stateInAttributeValueNoQuotes(e))}handleInAttributeValue(e,t){e===t||!this.decodeEntities&&this.fastForwardTo(t)?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(t===Kl.DoubleQuote?Vl.Double:Vl.Single,this.index),this.state=jl.BeforeAttributeName):this.decodeEntities&&e===Kl.Amp&&(this.baseState=this.state,this.state=jl.BeforeEntity)}stateInAttributeValueDoubleQuotes(e){this.handleInAttributeValue(e,Kl.DoubleQuote)}stateInAttributeValueSingleQuotes(e){this.handleInAttributeValue(e,Kl.SingleQuote)}stateInAttributeValueNoQuotes(e){Ql(e)||e===Kl.Gt?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(Vl.Unquoted,this.index),this.state=jl.BeforeAttributeName,this.stateBeforeAttributeName(e)):this.decodeEntities&&e===Kl.Amp&&(this.baseState=this.state,this.state=jl.BeforeEntity)}stateBeforeDeclaration(e){e===Kl.OpeningSquareBracket?(this.state=jl.CDATASequence,this.sequenceIndex=0):this.state=e===Kl.Dash?jl.BeforeComment:jl.InDeclaration}stateInDeclaration(e){(e===Kl.Gt||this.fastForwardTo(Kl.Gt))&&(this.cbs.ondeclaration(this.sectionStart,this.index),this.state=jl.Text,this.sectionStart=this.index+1)}stateInProcessingInstruction(e){(e===Kl.Gt||this.fastForwardTo(Kl.Gt))&&(this.cbs.onprocessinginstruction(this.sectionStart,this.index),this.state=jl.Text,this.sectionStart=this.index+1)}stateBeforeComment(e){e===Kl.Dash?(this.state=jl.InCommentLike,this.currentSequence=zl.CommentEnd,this.sequenceIndex=2,this.sectionStart=this.index+1):this.state=jl.InDeclaration}stateInSpecialComment(e){(e===Kl.Gt||this.fastForwardTo(Kl.Gt))&&(this.cbs.oncomment(this.sectionStart,this.index,0),this.state=jl.Text,this.sectionStart=this.index+1)}stateBeforeSpecialS(e){const t=32|e;t===zl.ScriptEnd[3]?this.startSpecial(zl.ScriptEnd,4):t===zl.StyleEnd[3]?this.startSpecial(zl.StyleEnd,4):(this.state=jl.InTagName,this.stateInTagName(e))}stateBeforeEntity(e){this.entityExcess=1,this.entityResult=0,e===Kl.Num?this.state=jl.BeforeNumericEntity:e===Kl.Amp||(this.trieIndex=0,this.trieCurrent=this.entityTrie[0],this.state=jl.InNamedEntity,this.stateInNamedEntity(e))}stateInNamedEntity(e){if(this.entityExcess+=1,this.trieIndex=Oo(this.entityTrie,this.trieCurrent,this.trieIndex+1,e),this.trieIndex<0)return this.emitNamedEntity(),void this.index--;this.trieCurrent=this.entityTrie[this.trieIndex];const t=this.trieCurrent&yo.VALUE_LENGTH;if(t){const n=(t>>14)-1;if(this.allowLegacyEntity()||e===Kl.Semi){const e=this.index-this.entityExcess+1;e>this.sectionStart&&this.emitPartial(this.sectionStart,e),this.entityResult=this.trieIndex,this.trieIndex+=n,this.entityExcess=0,this.sectionStart=this.index+1,0===n&&this.emitNamedEntity()}else this.trieIndex+=n}}emitNamedEntity(){if(this.state=this.baseState,0===this.entityResult)return;switch((this.entityTrie[this.entityResult]&yo.VALUE_LENGTH)>>14){case 1:this.emitCodePoint(this.entityTrie[this.entityResult]&~yo.VALUE_LENGTH);break;case 2:this.emitCodePoint(this.entityTrie[this.entityResult+1]);break;case 3:this.emitCodePoint(this.entityTrie[this.entityResult+1]),this.emitCodePoint(this.entityTrie[this.entityResult+2])}}stateBeforeNumericEntity(e){(32|e)===Kl.LowerX?(this.entityExcess++,this.state=jl.InHexEntity):(this.state=jl.InNumericEntity,this.stateInNumericEntity(e))}emitNumericEntity(e){const t=this.index-this.entityExcess-1;t+2+Number(this.state===jl.InHexEntity)!==this.index&&(t>this.sectionStart&&this.emitPartial(this.sectionStart,t),this.sectionStart=this.index+Number(e),this.emitCodePoint(ko(this.entityResult))),this.state=this.baseState}stateInNumericEntity(e){e===Kl.Semi?this.emitNumericEntity(!0):$l(e)?(this.entityResult=10*this.entityResult+(e-Kl.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}stateInHexEntity(e){e===Kl.Semi?this.emitNumericEntity(!0):$l(e)?(this.entityResult=16*this.entityResult+(e-Kl.Zero),this.entityExcess++):!function(e){return e>=Kl.UpperA&&e<=Kl.UpperF||e>=Kl.LowerA&&e<=Kl.LowerF}(e)?(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--):(this.entityResult=16*this.entityResult+((32|e)-Kl.LowerA+10),this.entityExcess++)}allowLegacyEntity(){return!this.xmlMode&&(this.baseState===jl.Text||this.baseState===jl.InSpecialTag)}cleanup(){this.running&&this.sectionStart!==this.index&&(this.state===jl.Text||this.state===jl.InSpecialTag&&0===this.sequenceIndex?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):this.state!==jl.InAttributeValueDq&&this.state!==jl.InAttributeValueSq&&this.state!==jl.InAttributeValueNq||(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))}shouldContinue(){return this.index0&&s.has(this.stack[this.stack.length-1]);){const e=this.stack.pop();null===(n=(t=this.cbs).onclosetag)||void 0===n||n.call(t,e,!0)}this.isVoidElement(e)||(this.stack.push(e),ah.has(e)?this.foreignContext.push(!0):oh.has(e)&&this.foreignContext.push(!1)),null===(i=(r=this.cbs).onopentagname)||void 0===i||i.call(r,e),this.cbs.onopentag&&(this.attribs={})}endOpenTag(e){var t,n;this.startIndex=this.openTagStart,this.attribs&&(null===(n=(t=this.cbs).onopentag)||void 0===n||n.call(t,this.tagname,this.attribs,e),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""}onopentagend(e){this.endIndex=e,this.endOpenTag(!1),this.startIndex=e+1}onclosetag(e,t){var n,r,i,s,a,o;this.endIndex=t;let c=this.getSlice(e,t);if(this.lowerCaseTagNames&&(c=c.toLowerCase()),(ah.has(c)||oh.has(c))&&this.foreignContext.pop(),this.isVoidElement(c))this.options.xmlMode||"br"!==c||(null===(r=(n=this.cbs).onopentagname)||void 0===r||r.call(n,"br"),null===(s=(i=this.cbs).onopentag)||void 0===s||s.call(i,"br",{},!0),null===(o=(a=this.cbs).onclosetag)||void 0===o||o.call(a,"br",!1));else{const e=this.stack.lastIndexOf(c);if(-1!==e)if(this.cbs.onclosetag){let t=this.stack.length-e;for(;t--;)this.cbs.onclosetag(this.stack.pop(),0!==t)}else this.stack.length=e;else this.options.xmlMode||"p"!==c||(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=t+1}onselfclosingtag(e){this.endIndex=e,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=e+1):this.onopentagend(e)}closeCurrentTag(e){var t,n;const r=this.tagname;this.endOpenTag(e),this.stack[this.stack.length-1]===r&&(null===(n=(t=this.cbs).onclosetag)||void 0===n||n.call(t,r,!e),this.stack.pop())}onattribname(e,t){this.startIndex=e;const n=this.getSlice(e,t);this.attribname=this.lowerCaseAttributeNames?n.toLowerCase():n}onattribdata(e,t){this.attribvalue+=this.getSlice(e,t)}onattribentity(e){this.attribvalue+=Lo(e)}onattribend(e,t){var n,r;this.endIndex=t,null===(r=(n=this.cbs).onattribute)||void 0===r||r.call(n,this.attribname,this.attribvalue,e===Vl.Double?'"':e===Vl.Single?"'":e===Vl.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""}getInstructionName(e){const t=e.search(ch);let n=t<0?e:e.substr(0,t);return this.lowerCaseTagNames&&(n=n.toLowerCase()),n}ondeclaration(e,t){this.endIndex=t;const n=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){const e=this.getInstructionName(n);this.cbs.onprocessinginstruction(`!${e}`,`!${n}`)}this.startIndex=t+1}onprocessinginstruction(e,t){this.endIndex=t;const n=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){const e=this.getInstructionName(n);this.cbs.onprocessinginstruction(`?${e}`,`?${n}`)}this.startIndex=t+1}oncomment(e,t,n){var r,i,s,a;this.endIndex=t,null===(i=(r=this.cbs).oncomment)||void 0===i||i.call(r,this.getSlice(e,t-n)),null===(a=(s=this.cbs).oncommentend)||void 0===a||a.call(s),this.startIndex=t+1}oncdata(e,t,n){var r,i,s,a,o,c,l,h,u,p;this.endIndex=t;const f=this.getSlice(e,t-n);this.options.xmlMode||this.options.recognizeCDATA?(null===(i=(r=this.cbs).oncdatastart)||void 0===i||i.call(r),null===(a=(s=this.cbs).ontext)||void 0===a||a.call(s,f),null===(c=(o=this.cbs).oncdataend)||void 0===c||c.call(o)):(null===(h=(l=this.cbs).oncomment)||void 0===h||h.call(l,`[CDATA[${f}]]`),null===(p=(u=this.cbs).oncommentend)||void 0===p||p.call(u)),this.startIndex=t+1}onend(){var e,t;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(let e=this.stack.length;e>0;this.cbs.onclosetag(this.stack[--e],!0));}null===(t=(e=this.cbs).onend)||void 0===t||t.call(e)}reset(){var e,t,n,r;null===(t=(e=this.cbs).onreset)||void 0===t||t.call(e),this.tokenizer.reset(),this.tagname="",this.attribname="",this.attribs=null,this.stack.length=0,this.startIndex=0,this.endIndex=0,null===(r=(n=this.cbs).onparserinit)||void 0===r||r.call(n,this),this.buffers.length=0,this.bufferOffset=0,this.writeIndex=0,this.ended=!1}parseComplete(e){this.reset(),this.end(e)}getSlice(e,t){for(;e-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();let n=this.buffers[0].slice(e-this.bufferOffset,t-this.bufferOffset);for(;t-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),n+=this.buffers[0].slice(0,t-this.bufferOffset);return n}shiftBuffer(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()}write(e){var t,n;this.ended?null===(n=(t=this.cbs).onerror)||void 0===n||n.call(t,new Error(".write() after done!")):(this.buffers.push(e),this.tokenizer.running&&(this.tokenizer.write(e),this.writeIndex++))}end(e){var t,n;this.ended?null===(n=(t=this.cbs).onerror)||void 0===n||n.call(t,Error(".end() after done!")):(e&&this.write(e),this.ended=!0,this.tokenizer.end())}pause(){this.tokenizer.pause()}resume(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndex>> (6 * (3 - j))) & 0x3f)); } } @@ -1424,8 +1432,9 @@ var CryptoJS = CryptoJS || (function(Math, undefined) { var MD5 = C_algo.MD5 = Hasher.extend({ _doReset: function() { this._hash = new WordArray.init([ - 0x67452301, 0xefcdab89, - 0x98badcfe, 0x10325476]); + 0x67452301, 0xefcdab89, + 0x98badcfe, 0x10325476 + ]); }, _doProcessBlock: function(M, offset) { @@ -1436,7 +1445,9 @@ var CryptoJS = CryptoJS || (function(Math, undefined) { var M_offset_i = M[offset_i]; M[offset_i] = ( - (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) | (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00)); + (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) | + (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00) + ); } // Shortcuts @@ -1555,9 +1566,13 @@ var CryptoJS = CryptoJS || (function(Math, undefined) { var nBitsTotalH = Math.floor(nBitsTotal / 0x100000000); var nBitsTotalL = nBitsTotal; dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 15] = ( - (((nBitsTotalH << 8) | (nBitsTotalH >>> 24)) & 0x00ff00ff) | (((nBitsTotalH << 24) | (nBitsTotalH >>> 8)) & 0xff00ff00)); + (((nBitsTotalH << 8) | (nBitsTotalH >>> 24)) & 0x00ff00ff) | + (((nBitsTotalH << 24) | (nBitsTotalH >>> 8)) & 0xff00ff00) + ); dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = ( - (((nBitsTotalL << 8) | (nBitsTotalL >>> 24)) & 0x00ff00ff) | (((nBitsTotalL << 24) | (nBitsTotalL >>> 8)) & 0xff00ff00)); + (((nBitsTotalL << 8) | (nBitsTotalL >>> 24)) & 0x00ff00ff) | + (((nBitsTotalL << 24) | (nBitsTotalL >>> 8)) & 0xff00ff00) + ); data.sigBytes = (dataWords.length + 1) * 4; @@ -1573,7 +1588,8 @@ var CryptoJS = CryptoJS || (function(Math, undefined) { // Shortcut var H_i = H[i]; - H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) | (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00); + H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) | + (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00); } // Return final computed hash @@ -1672,9 +1688,10 @@ var CryptoJS = CryptoJS || (function(Math, undefined) { var SHA1 = C_algo.SHA1 = Hasher.extend({ _doReset: function() { this._hash = new WordArray.init([ - 0x67452301, 0xefcdab89, - 0x98badcfe, 0x10325476, - 0xc3d2e1f0]); + 0x67452301, 0xefcdab89, + 0x98badcfe, 0x10325476, + 0xc3d2e1f0 + ]); }, _doProcessBlock: function(M, offset) { @@ -1872,10 +1889,14 @@ var CryptoJS = CryptoJS || (function(Math, undefined) { W[i] = M[offset + i] | 0; } else { var gamma0x = W[i - 15]; - var gamma0 = ((gamma0x << 25) | (gamma0x >>> 7)) ^ ((gamma0x << 14) | (gamma0x >>> 18)) ^ (gamma0x >>> 3); + var gamma0 = ((gamma0x << 25) | (gamma0x >>> 7)) ^ + ((gamma0x << 14) | (gamma0x >>> 18)) ^ + (gamma0x >>> 3); var gamma1x = W[i - 2]; - var gamma1 = ((gamma1x << 15) | (gamma1x >>> 17)) ^ ((gamma1x << 13) | (gamma1x >>> 19)) ^ (gamma1x >>> 10); + var gamma1 = ((gamma1x << 15) | (gamma1x >>> 17)) ^ + ((gamma1x << 13) | (gamma1x >>> 19)) ^ + (gamma1x >>> 10); W[i] = gamma0 + W[i - 7] + gamma1 + W[i - 16]; } @@ -1998,8 +2019,9 @@ var CryptoJS = CryptoJS || (function(Math, undefined) { var SHA224 = C_algo.SHA224 = SHA256.extend({ _doReset: function() { this._hash = new WordArray.init([ - 0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939, - 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4]); + 0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939, + 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4 + ]); }, _doFinalize: function() { @@ -2068,46 +2090,47 @@ var CryptoJS = CryptoJS || (function(Math, undefined) { // Constants var K = [ - X64Word_create(0x428a2f98, 0xd728ae22), X64Word_create(0x71374491, 0x23ef65cd), - X64Word_create(0xb5c0fbcf, 0xec4d3b2f), X64Word_create(0xe9b5dba5, 0x8189dbbc), - X64Word_create(0x3956c25b, 0xf348b538), X64Word_create(0x59f111f1, 0xb605d019), - X64Word_create(0x923f82a4, 0xaf194f9b), X64Word_create(0xab1c5ed5, 0xda6d8118), - X64Word_create(0xd807aa98, 0xa3030242), X64Word_create(0x12835b01, 0x45706fbe), - X64Word_create(0x243185be, 0x4ee4b28c), X64Word_create(0x550c7dc3, 0xd5ffb4e2), - X64Word_create(0x72be5d74, 0xf27b896f), X64Word_create(0x80deb1fe, 0x3b1696b1), - X64Word_create(0x9bdc06a7, 0x25c71235), X64Word_create(0xc19bf174, 0xcf692694), - X64Word_create(0xe49b69c1, 0x9ef14ad2), X64Word_create(0xefbe4786, 0x384f25e3), - X64Word_create(0x0fc19dc6, 0x8b8cd5b5), X64Word_create(0x240ca1cc, 0x77ac9c65), - X64Word_create(0x2de92c6f, 0x592b0275), X64Word_create(0x4a7484aa, 0x6ea6e483), - X64Word_create(0x5cb0a9dc, 0xbd41fbd4), X64Word_create(0x76f988da, 0x831153b5), - X64Word_create(0x983e5152, 0xee66dfab), X64Word_create(0xa831c66d, 0x2db43210), - X64Word_create(0xb00327c8, 0x98fb213f), X64Word_create(0xbf597fc7, 0xbeef0ee4), - X64Word_create(0xc6e00bf3, 0x3da88fc2), X64Word_create(0xd5a79147, 0x930aa725), - X64Word_create(0x06ca6351, 0xe003826f), X64Word_create(0x14292967, 0x0a0e6e70), - X64Word_create(0x27b70a85, 0x46d22ffc), X64Word_create(0x2e1b2138, 0x5c26c926), - X64Word_create(0x4d2c6dfc, 0x5ac42aed), X64Word_create(0x53380d13, 0x9d95b3df), - X64Word_create(0x650a7354, 0x8baf63de), X64Word_create(0x766a0abb, 0x3c77b2a8), - X64Word_create(0x81c2c92e, 0x47edaee6), X64Word_create(0x92722c85, 0x1482353b), - X64Word_create(0xa2bfe8a1, 0x4cf10364), X64Word_create(0xa81a664b, 0xbc423001), - X64Word_create(0xc24b8b70, 0xd0f89791), X64Word_create(0xc76c51a3, 0x0654be30), - X64Word_create(0xd192e819, 0xd6ef5218), X64Word_create(0xd6990624, 0x5565a910), - X64Word_create(0xf40e3585, 0x5771202a), X64Word_create(0x106aa070, 0x32bbd1b8), - X64Word_create(0x19a4c116, 0xb8d2d0c8), X64Word_create(0x1e376c08, 0x5141ab53), - X64Word_create(0x2748774c, 0xdf8eeb99), X64Word_create(0x34b0bcb5, 0xe19b48a8), - X64Word_create(0x391c0cb3, 0xc5c95a63), X64Word_create(0x4ed8aa4a, 0xe3418acb), - X64Word_create(0x5b9cca4f, 0x7763e373), X64Word_create(0x682e6ff3, 0xd6b2b8a3), - X64Word_create(0x748f82ee, 0x5defb2fc), X64Word_create(0x78a5636f, 0x43172f60), - X64Word_create(0x84c87814, 0xa1f0ab72), X64Word_create(0x8cc70208, 0x1a6439ec), - X64Word_create(0x90befffa, 0x23631e28), X64Word_create(0xa4506ceb, 0xde82bde9), - X64Word_create(0xbef9a3f7, 0xb2c67915), X64Word_create(0xc67178f2, 0xe372532b), - X64Word_create(0xca273ece, 0xea26619c), X64Word_create(0xd186b8c7, 0x21c0c207), - X64Word_create(0xeada7dd6, 0xcde0eb1e), X64Word_create(0xf57d4f7f, 0xee6ed178), - X64Word_create(0x06f067aa, 0x72176fba), X64Word_create(0x0a637dc5, 0xa2c898a6), - X64Word_create(0x113f9804, 0xbef90dae), X64Word_create(0x1b710b35, 0x131c471b), - X64Word_create(0x28db77f5, 0x23047d84), X64Word_create(0x32caab7b, 0x40c72493), - X64Word_create(0x3c9ebe0a, 0x15c9bebc), X64Word_create(0x431d67c4, 0x9c100d4c), - X64Word_create(0x4cc5d4be, 0xcb3e42b6), X64Word_create(0x597f299c, 0xfc657e2a), - X64Word_create(0x5fcb6fab, 0x3ad6faec), X64Word_create(0x6c44198c, 0x4a475817)]; + X64Word_create(0x428a2f98, 0xd728ae22), X64Word_create(0x71374491, 0x23ef65cd), + X64Word_create(0xb5c0fbcf, 0xec4d3b2f), X64Word_create(0xe9b5dba5, 0x8189dbbc), + X64Word_create(0x3956c25b, 0xf348b538), X64Word_create(0x59f111f1, 0xb605d019), + X64Word_create(0x923f82a4, 0xaf194f9b), X64Word_create(0xab1c5ed5, 0xda6d8118), + X64Word_create(0xd807aa98, 0xa3030242), X64Word_create(0x12835b01, 0x45706fbe), + X64Word_create(0x243185be, 0x4ee4b28c), X64Word_create(0x550c7dc3, 0xd5ffb4e2), + X64Word_create(0x72be5d74, 0xf27b896f), X64Word_create(0x80deb1fe, 0x3b1696b1), + X64Word_create(0x9bdc06a7, 0x25c71235), X64Word_create(0xc19bf174, 0xcf692694), + X64Word_create(0xe49b69c1, 0x9ef14ad2), X64Word_create(0xefbe4786, 0x384f25e3), + X64Word_create(0x0fc19dc6, 0x8b8cd5b5), X64Word_create(0x240ca1cc, 0x77ac9c65), + X64Word_create(0x2de92c6f, 0x592b0275), X64Word_create(0x4a7484aa, 0x6ea6e483), + X64Word_create(0x5cb0a9dc, 0xbd41fbd4), X64Word_create(0x76f988da, 0x831153b5), + X64Word_create(0x983e5152, 0xee66dfab), X64Word_create(0xa831c66d, 0x2db43210), + X64Word_create(0xb00327c8, 0x98fb213f), X64Word_create(0xbf597fc7, 0xbeef0ee4), + X64Word_create(0xc6e00bf3, 0x3da88fc2), X64Word_create(0xd5a79147, 0x930aa725), + X64Word_create(0x06ca6351, 0xe003826f), X64Word_create(0x14292967, 0x0a0e6e70), + X64Word_create(0x27b70a85, 0x46d22ffc), X64Word_create(0x2e1b2138, 0x5c26c926), + X64Word_create(0x4d2c6dfc, 0x5ac42aed), X64Word_create(0x53380d13, 0x9d95b3df), + X64Word_create(0x650a7354, 0x8baf63de), X64Word_create(0x766a0abb, 0x3c77b2a8), + X64Word_create(0x81c2c92e, 0x47edaee6), X64Word_create(0x92722c85, 0x1482353b), + X64Word_create(0xa2bfe8a1, 0x4cf10364), X64Word_create(0xa81a664b, 0xbc423001), + X64Word_create(0xc24b8b70, 0xd0f89791), X64Word_create(0xc76c51a3, 0x0654be30), + X64Word_create(0xd192e819, 0xd6ef5218), X64Word_create(0xd6990624, 0x5565a910), + X64Word_create(0xf40e3585, 0x5771202a), X64Word_create(0x106aa070, 0x32bbd1b8), + X64Word_create(0x19a4c116, 0xb8d2d0c8), X64Word_create(0x1e376c08, 0x5141ab53), + X64Word_create(0x2748774c, 0xdf8eeb99), X64Word_create(0x34b0bcb5, 0xe19b48a8), + X64Word_create(0x391c0cb3, 0xc5c95a63), X64Word_create(0x4ed8aa4a, 0xe3418acb), + X64Word_create(0x5b9cca4f, 0x7763e373), X64Word_create(0x682e6ff3, 0xd6b2b8a3), + X64Word_create(0x748f82ee, 0x5defb2fc), X64Word_create(0x78a5636f, 0x43172f60), + X64Word_create(0x84c87814, 0xa1f0ab72), X64Word_create(0x8cc70208, 0x1a6439ec), + X64Word_create(0x90befffa, 0x23631e28), X64Word_create(0xa4506ceb, 0xde82bde9), + X64Word_create(0xbef9a3f7, 0xb2c67915), X64Word_create(0xc67178f2, 0xe372532b), + X64Word_create(0xca273ece, 0xea26619c), X64Word_create(0xd186b8c7, 0x21c0c207), + X64Word_create(0xeada7dd6, 0xcde0eb1e), X64Word_create(0xf57d4f7f, 0xee6ed178), + X64Word_create(0x06f067aa, 0x72176fba), X64Word_create(0x0a637dc5, 0xa2c898a6), + X64Word_create(0x113f9804, 0xbef90dae), X64Word_create(0x1b710b35, 0x131c471b), + X64Word_create(0x28db77f5, 0x23047d84), X64Word_create(0x32caab7b, 0x40c72493), + X64Word_create(0x3c9ebe0a, 0x15c9bebc), X64Word_create(0x431d67c4, 0x9c100d4c), + X64Word_create(0x4cc5d4be, 0xcb3e42b6), X64Word_create(0x597f299c, 0xfc657e2a), + X64Word_create(0x5fcb6fab, 0x3ad6faec), X64Word_create(0x6c44198c, 0x4a475817) + ]; // Reusable objects var W = []; @@ -2123,10 +2146,11 @@ var CryptoJS = CryptoJS || (function(Math, undefined) { var SHA512 = C_algo.SHA512 = Hasher.extend({ _doReset: function() { this._hash = new X64WordArray.init([ - new X64Word.init(0x6a09e667, 0xf3bcc908), new X64Word.init(0xbb67ae85, 0x84caa73b), - new X64Word.init(0x3c6ef372, 0xfe94f82b), new X64Word.init(0xa54ff53a, 0x5f1d36f1), - new X64Word.init(0x510e527f, 0xade682d1), new X64Word.init(0x9b05688c, 0x2b3e6c1f), - new X64Word.init(0x1f83d9ab, 0xfb41bd6b), new X64Word.init(0x5be0cd19, 0x137e2179)]); + new X64Word.init(0x6a09e667, 0xf3bcc908), new X64Word.init(0xbb67ae85, 0x84caa73b), + new X64Word.init(0x3c6ef372, 0xfe94f82b), new X64Word.init(0xa54ff53a, 0x5f1d36f1), + new X64Word.init(0x510e527f, 0xade682d1), new X64Word.init(0x9b05688c, 0x2b3e6c1f), + new X64Word.init(0x1f83d9ab, 0xfb41bd6b), new X64Word.init(0x5be0cd19, 0x137e2179) + ]); }, _doProcessBlock: function(M, offset) { @@ -2379,10 +2403,11 @@ var CryptoJS = CryptoJS || (function(Math, undefined) { var SHA384 = C_algo.SHA384 = SHA512.extend({ _doReset: function() { this._hash = new X64WordArray.init([ - new X64Word.init(0xcbbb9d5d, 0xc1059ed8), new X64Word.init(0x629a292a, 0x367cd507), - new X64Word.init(0x9159015a, 0x3070dd17), new X64Word.init(0x152fecd8, 0xf70e5939), - new X64Word.init(0x67332667, 0xffc00b31), new X64Word.init(0x8eb44a87, 0x68581511), - new X64Word.init(0xdb0c2e0d, 0x64f98fa7), new X64Word.init(0x47b5481d, 0xbefa4fa4)]); + new X64Word.init(0xcbbb9d5d, 0xc1059ed8), new X64Word.init(0x629a292a, 0x367cd507), + new X64Word.init(0x9159015a, 0x3070dd17), new X64Word.init(0x152fecd8, 0xf70e5939), + new X64Word.init(0x67332667, 0xffc00b31), new X64Word.init(0x8eb44a87, 0x68581511), + new X64Word.init(0xdb0c2e0d, 0x64f98fa7), new X64Word.init(0x47b5481d, 0xbefa4fa4) + ]); }, _doFinalize: function() { @@ -2547,9 +2572,13 @@ var CryptoJS = CryptoJS || (function(Math, undefined) { // Swap endian M2i = ( - (((M2i << 8) | (M2i >>> 24)) & 0x00ff00ff) | (((M2i << 24) | (M2i >>> 8)) & 0xff00ff00)); + (((M2i << 8) | (M2i >>> 24)) & 0x00ff00ff) | + (((M2i << 24) | (M2i >>> 8)) & 0xff00ff00) + ); M2i1 = ( - (((M2i1 << 8) | (M2i1 >>> 24)) & 0x00ff00ff) | (((M2i1 << 24) | (M2i1 >>> 8)) & 0xff00ff00)); + (((M2i1 << 8) | (M2i1 >>> 24)) & 0x00ff00ff) | + (((M2i1 << 24) | (M2i1 >>> 8)) & 0xff00ff00) + ); // Absorb message into state var lane = state[i]; @@ -2679,9 +2708,13 @@ var CryptoJS = CryptoJS || (function(Math, undefined) { // Swap endian laneMsw = ( - (((laneMsw << 8) | (laneMsw >>> 24)) & 0x00ff00ff) | (((laneMsw << 24) | (laneMsw >>> 8)) & 0xff00ff00)); + (((laneMsw << 8) | (laneMsw >>> 24)) & 0x00ff00ff) | + (((laneMsw << 24) | (laneMsw >>> 8)) & 0xff00ff00) + ); laneLsw = ( - (((laneLsw << 8) | (laneLsw >>> 24)) & 0x00ff00ff) | (((laneLsw << 24) | (laneLsw >>> 8)) & 0xff00ff00)); + (((laneLsw << 8) | (laneLsw >>> 24)) & 0x00ff00ff) | + (((laneLsw << 24) | (laneLsw >>> 8)) & 0xff00ff00) + ); // Squeeze state to retrieve hash hashWords.push(laneLsw); @@ -2764,29 +2797,33 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND // Constants table var _zl = WordArray.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]); + 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 + ]); var _zr = WordArray.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]); + 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 + ]); var _sl = WordArray.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]); + 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 + ]); var _sr = WordArray.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]); + 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 + ]); var _hl = WordArray.create([0x00000000, 0x5A827999, 0x6ED9EBA1, 0x8F1BBCDC, 0xA953FD4E]); var _hr = WordArray.create([0x50A28BE6, 0x5C4DD124, 0x6D703EF3, 0x7A6D76E9, 0x00000000]); @@ -2809,7 +2846,9 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND // Swap M[offset_i] = ( - (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) | (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00)); + (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) | + (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00) + ); } // Shortcut var H = this._hash.words; @@ -2894,7 +2933,9 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND // Add padding dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32); dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = ( - (((nBitsTotal << 8) | (nBitsTotal >>> 24)) & 0x00ff00ff) | (((nBitsTotal << 24) | (nBitsTotal >>> 8)) & 0xff00ff00)); + (((nBitsTotal << 8) | (nBitsTotal >>> 24)) & 0x00ff00ff) | + (((nBitsTotal << 24) | (nBitsTotal >>> 8)) & 0xff00ff00) + ); data.sigBytes = (dataWords.length + 1) * 4; // Hash final blocks @@ -2910,7 +2951,8 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND var H_i = H[i]; // Swap - H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) | (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00); + H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) | + (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00); } // Return final computed hash @@ -2936,15 +2978,15 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND } function f3(x, y, z) { - return (((x) | (~ (y))) ^ (z)); + return (((x) | (~(y))) ^ (z)); } function f4(x, y, z) { - return (((x) & (z)) | ((y) & (~ (z)))); + return (((x) & (z)) | ((y) & (~(z)))); } function f5(x, y, z) { - return ((x) ^ ((y) | (~ (z)))); + return ((x) ^ ((y) | (~(z)))); } @@ -3472,7 +3514,7 @@ CryptoJS.lib.Cipher || (function(undefined) { var StreamCipher = C_lib.StreamCipher = Cipher.extend({ _doFinalize: function() { // Process partial blocks - var finalProcessedBlocks = this._process( !! 'flush'); + var finalProcessedBlocks = this._process(!!'flush'); return finalProcessedBlocks; }, @@ -3753,10 +3795,10 @@ CryptoJS.lib.Cipher || (function(undefined) { padding.pad(this._data, this.blockSize); // Process final blocks - finalProcessedBlocks = this._process( !! 'flush'); + finalProcessedBlocks = this._process(!!'flush'); } else /* if (this._xformMode == this._DEC_XFORM_MODE) */ { // Process final blocks - finalProcessedBlocks = this._process( !! 'flush'); + finalProcessedBlocks = this._process(!!'flush'); // Unpad data padding.unpad(finalProcessedBlocks); @@ -4764,7 +4806,8 @@ CryptoJS.pad.NoPadding = { if (invKsRow < 4 || ksRow <= 4) { invKeySchedule[invKsRow] = t; } else { - invKeySchedule[invKsRow] = INV_SUB_MIX_0[SBOX[t >>> 24]] ^ INV_SUB_MIX_1[SBOX[(t >>> 16) & 0xff]] ^ INV_SUB_MIX_2[SBOX[(t >>> 8) & 0xff]] ^ INV_SUB_MIX_3[SBOX[t & 0xff]]; + invKeySchedule[invKsRow] = INV_SUB_MIX_0[SBOX[t >>> 24]] ^ INV_SUB_MIX_1[SBOX[(t >>> 16) & 0xff]] ^ + INV_SUB_MIX_2[SBOX[(t >>> 8) & 0xff]] ^ INV_SUB_MIX_3[SBOX[t & 0xff]]; } } }, @@ -4857,555 +4900,566 @@ CryptoJS.pad.NoPadding = { // Permuted Choice 1 constants var PC1 = [ - 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]; + 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 + ]; // Permuted Choice 2 constants var PC2 = [ - 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]; + 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 + ]; // Cumulative bit shift constants var BIT_SHIFTS = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28]; // SBOXes and round permutation constants var SBOX_P = [{ - 0x0: 0x808200, - 0x10000000: 0x8000, - 0x20000000: 0x808002, - 0x30000000: 0x2, - 0x40000000: 0x200, - 0x50000000: 0x808202, - 0x60000000: 0x800202, - 0x70000000: 0x800000, - 0x80000000: 0x202, - 0x90000000: 0x800200, - 0xa0000000: 0x8200, - 0xb0000000: 0x808000, - 0xc0000000: 0x8002, - 0xd0000000: 0x800002, - 0xe0000000: 0x0, - 0xf0000000: 0x8202, - 0x8000000: 0x0, - 0x18000000: 0x808202, - 0x28000000: 0x8202, - 0x38000000: 0x8000, - 0x48000000: 0x808200, - 0x58000000: 0x200, - 0x68000000: 0x808002, - 0x78000000: 0x2, - 0x88000000: 0x800200, - 0x98000000: 0x8200, - 0xa8000000: 0x808000, - 0xb8000000: 0x800202, - 0xc8000000: 0x800002, - 0xd8000000: 0x8002, - 0xe8000000: 0x202, - 0xf8000000: 0x800000, - 0x1: 0x8000, - 0x10000001: 0x2, - 0x20000001: 0x808200, - 0x30000001: 0x800000, - 0x40000001: 0x808002, - 0x50000001: 0x8200, - 0x60000001: 0x200, - 0x70000001: 0x800202, - 0x80000001: 0x808202, - 0x90000001: 0x808000, - 0xa0000001: 0x800002, - 0xb0000001: 0x8202, - 0xc0000001: 0x202, - 0xd0000001: 0x800200, - 0xe0000001: 0x8002, - 0xf0000001: 0x0, - 0x8000001: 0x808202, - 0x18000001: 0x808000, - 0x28000001: 0x800000, - 0x38000001: 0x200, - 0x48000001: 0x8000, - 0x58000001: 0x800002, - 0x68000001: 0x2, - 0x78000001: 0x8202, - 0x88000001: 0x8002, - 0x98000001: 0x800202, - 0xa8000001: 0x202, - 0xb8000001: 0x808200, - 0xc8000001: 0x800200, - 0xd8000001: 0x0, - 0xe8000001: 0x8200, - 0xf8000001: 0x808002 - }, { - 0x0: 0x40084010, - 0x1000000: 0x4000, - 0x2000000: 0x80000, - 0x3000000: 0x40080010, - 0x4000000: 0x40000010, - 0x5000000: 0x40084000, - 0x6000000: 0x40004000, - 0x7000000: 0x10, - 0x8000000: 0x84000, - 0x9000000: 0x40004010, - 0xa000000: 0x40000000, - 0xb000000: 0x84010, - 0xc000000: 0x80010, - 0xd000000: 0x0, - 0xe000000: 0x4010, - 0xf000000: 0x40080000, - 0x800000: 0x40004000, - 0x1800000: 0x84010, - 0x2800000: 0x10, - 0x3800000: 0x40004010, - 0x4800000: 0x40084010, - 0x5800000: 0x40000000, - 0x6800000: 0x80000, - 0x7800000: 0x40080010, - 0x8800000: 0x80010, - 0x9800000: 0x0, - 0xa800000: 0x4000, - 0xb800000: 0x40080000, - 0xc800000: 0x40000010, - 0xd800000: 0x84000, - 0xe800000: 0x40084000, - 0xf800000: 0x4010, - 0x10000000: 0x0, - 0x11000000: 0x40080010, - 0x12000000: 0x40004010, - 0x13000000: 0x40084000, - 0x14000000: 0x40080000, - 0x15000000: 0x10, - 0x16000000: 0x84010, - 0x17000000: 0x4000, - 0x18000000: 0x4010, - 0x19000000: 0x80000, - 0x1a000000: 0x80010, - 0x1b000000: 0x40000010, - 0x1c000000: 0x84000, - 0x1d000000: 0x40004000, - 0x1e000000: 0x40000000, - 0x1f000000: 0x40084010, - 0x10800000: 0x84010, - 0x11800000: 0x80000, - 0x12800000: 0x40080000, - 0x13800000: 0x4000, - 0x14800000: 0x40004000, - 0x15800000: 0x40084010, - 0x16800000: 0x10, - 0x17800000: 0x40000000, - 0x18800000: 0x40084000, - 0x19800000: 0x40000010, - 0x1a800000: 0x40004010, - 0x1b800000: 0x80010, - 0x1c800000: 0x0, - 0x1d800000: 0x4010, - 0x1e800000: 0x40080010, - 0x1f800000: 0x84000 - }, { - 0x0: 0x104, - 0x100000: 0x0, - 0x200000: 0x4000100, - 0x300000: 0x10104, - 0x400000: 0x10004, - 0x500000: 0x4000004, - 0x600000: 0x4010104, - 0x700000: 0x4010000, - 0x800000: 0x4000000, - 0x900000: 0x4010100, - 0xa00000: 0x10100, - 0xb00000: 0x4010004, - 0xc00000: 0x4000104, - 0xd00000: 0x10000, - 0xe00000: 0x4, - 0xf00000: 0x100, - 0x80000: 0x4010100, - 0x180000: 0x4010004, - 0x280000: 0x0, - 0x380000: 0x4000100, - 0x480000: 0x4000004, - 0x580000: 0x10000, - 0x680000: 0x10004, - 0x780000: 0x104, - 0x880000: 0x4, - 0x980000: 0x100, - 0xa80000: 0x4010000, - 0xb80000: 0x10104, - 0xc80000: 0x10100, - 0xd80000: 0x4000104, - 0xe80000: 0x4010104, - 0xf80000: 0x4000000, - 0x1000000: 0x4010100, - 0x1100000: 0x10004, - 0x1200000: 0x10000, - 0x1300000: 0x4000100, - 0x1400000: 0x100, - 0x1500000: 0x4010104, - 0x1600000: 0x4000004, - 0x1700000: 0x0, - 0x1800000: 0x4000104, - 0x1900000: 0x4000000, - 0x1a00000: 0x4, - 0x1b00000: 0x10100, - 0x1c00000: 0x4010000, - 0x1d00000: 0x104, - 0x1e00000: 0x10104, - 0x1f00000: 0x4010004, - 0x1080000: 0x4000000, - 0x1180000: 0x104, - 0x1280000: 0x4010100, - 0x1380000: 0x0, - 0x1480000: 0x10004, - 0x1580000: 0x4000100, - 0x1680000: 0x100, - 0x1780000: 0x4010004, - 0x1880000: 0x10000, - 0x1980000: 0x4010104, - 0x1a80000: 0x10104, - 0x1b80000: 0x4000004, - 0x1c80000: 0x4000104, - 0x1d80000: 0x4010000, - 0x1e80000: 0x4, - 0x1f80000: 0x10100 - }, { - 0x0: 0x80401000, - 0x10000: 0x80001040, - 0x20000: 0x401040, - 0x30000: 0x80400000, - 0x40000: 0x0, - 0x50000: 0x401000, - 0x60000: 0x80000040, - 0x70000: 0x400040, - 0x80000: 0x80000000, - 0x90000: 0x400000, - 0xa0000: 0x40, - 0xb0000: 0x80001000, - 0xc0000: 0x80400040, - 0xd0000: 0x1040, - 0xe0000: 0x1000, - 0xf0000: 0x80401040, - 0x8000: 0x80001040, - 0x18000: 0x40, - 0x28000: 0x80400040, - 0x38000: 0x80001000, - 0x48000: 0x401000, - 0x58000: 0x80401040, - 0x68000: 0x0, - 0x78000: 0x80400000, - 0x88000: 0x1000, - 0x98000: 0x80401000, - 0xa8000: 0x400000, - 0xb8000: 0x1040, - 0xc8000: 0x80000000, - 0xd8000: 0x400040, - 0xe8000: 0x401040, - 0xf8000: 0x80000040, - 0x100000: 0x400040, - 0x110000: 0x401000, - 0x120000: 0x80000040, - 0x130000: 0x0, - 0x140000: 0x1040, - 0x150000: 0x80400040, - 0x160000: 0x80401000, - 0x170000: 0x80001040, - 0x180000: 0x80401040, - 0x190000: 0x80000000, - 0x1a0000: 0x80400000, - 0x1b0000: 0x401040, - 0x1c0000: 0x80001000, - 0x1d0000: 0x400000, - 0x1e0000: 0x40, - 0x1f0000: 0x1000, - 0x108000: 0x80400000, - 0x118000: 0x80401040, - 0x128000: 0x0, - 0x138000: 0x401000, - 0x148000: 0x400040, - 0x158000: 0x80000000, - 0x168000: 0x80001040, - 0x178000: 0x40, - 0x188000: 0x80000040, - 0x198000: 0x1000, - 0x1a8000: 0x80001000, - 0x1b8000: 0x80400040, - 0x1c8000: 0x1040, - 0x1d8000: 0x80401000, - 0x1e8000: 0x400000, - 0x1f8000: 0x401040 - }, { - 0x0: 0x80, - 0x1000: 0x1040000, - 0x2000: 0x40000, - 0x3000: 0x20000000, - 0x4000: 0x20040080, - 0x5000: 0x1000080, - 0x6000: 0x21000080, - 0x7000: 0x40080, - 0x8000: 0x1000000, - 0x9000: 0x20040000, - 0xa000: 0x20000080, - 0xb000: 0x21040080, - 0xc000: 0x21040000, - 0xd000: 0x0, - 0xe000: 0x1040080, - 0xf000: 0x21000000, - 0x800: 0x1040080, - 0x1800: 0x21000080, - 0x2800: 0x80, - 0x3800: 0x1040000, - 0x4800: 0x40000, - 0x5800: 0x20040080, - 0x6800: 0x21040000, - 0x7800: 0x20000000, - 0x8800: 0x20040000, - 0x9800: 0x0, - 0xa800: 0x21040080, - 0xb800: 0x1000080, - 0xc800: 0x20000080, - 0xd800: 0x21000000, - 0xe800: 0x1000000, - 0xf800: 0x40080, - 0x10000: 0x40000, - 0x11000: 0x80, - 0x12000: 0x20000000, - 0x13000: 0x21000080, - 0x14000: 0x1000080, - 0x15000: 0x21040000, - 0x16000: 0x20040080, - 0x17000: 0x1000000, - 0x18000: 0x21040080, - 0x19000: 0x21000000, - 0x1a000: 0x1040000, - 0x1b000: 0x20040000, - 0x1c000: 0x40080, - 0x1d000: 0x20000080, - 0x1e000: 0x0, - 0x1f000: 0x1040080, - 0x10800: 0x21000080, - 0x11800: 0x1000000, - 0x12800: 0x1040000, - 0x13800: 0x20040080, - 0x14800: 0x20000000, - 0x15800: 0x1040080, - 0x16800: 0x80, - 0x17800: 0x21040000, - 0x18800: 0x40080, - 0x19800: 0x21040080, - 0x1a800: 0x0, - 0x1b800: 0x21000000, - 0x1c800: 0x1000080, - 0x1d800: 0x40000, - 0x1e800: 0x20040000, - 0x1f800: 0x20000080 - }, { - 0x0: 0x10000008, - 0x100: 0x2000, - 0x200: 0x10200000, - 0x300: 0x10202008, - 0x400: 0x10002000, - 0x500: 0x200000, - 0x600: 0x200008, - 0x700: 0x10000000, - 0x800: 0x0, - 0x900: 0x10002008, - 0xa00: 0x202000, - 0xb00: 0x8, - 0xc00: 0x10200008, - 0xd00: 0x202008, - 0xe00: 0x2008, - 0xf00: 0x10202000, - 0x80: 0x10200000, - 0x180: 0x10202008, - 0x280: 0x8, - 0x380: 0x200000, - 0x480: 0x202008, - 0x580: 0x10000008, - 0x680: 0x10002000, - 0x780: 0x2008, - 0x880: 0x200008, - 0x980: 0x2000, - 0xa80: 0x10002008, - 0xb80: 0x10200008, - 0xc80: 0x0, - 0xd80: 0x10202000, - 0xe80: 0x202000, - 0xf80: 0x10000000, - 0x1000: 0x10002000, - 0x1100: 0x10200008, - 0x1200: 0x10202008, - 0x1300: 0x2008, - 0x1400: 0x200000, - 0x1500: 0x10000000, - 0x1600: 0x10000008, - 0x1700: 0x202000, - 0x1800: 0x202008, - 0x1900: 0x0, - 0x1a00: 0x8, - 0x1b00: 0x10200000, - 0x1c00: 0x2000, - 0x1d00: 0x10002008, - 0x1e00: 0x10202000, - 0x1f00: 0x200008, - 0x1080: 0x8, - 0x1180: 0x202000, - 0x1280: 0x200000, - 0x1380: 0x10000008, - 0x1480: 0x10002000, - 0x1580: 0x2008, - 0x1680: 0x10202008, - 0x1780: 0x10200000, - 0x1880: 0x10202000, - 0x1980: 0x10200008, - 0x1a80: 0x2000, - 0x1b80: 0x202008, - 0x1c80: 0x200008, - 0x1d80: 0x0, - 0x1e80: 0x10000000, - 0x1f80: 0x10002008 - }, { - 0x0: 0x100000, - 0x10: 0x2000401, - 0x20: 0x400, - 0x30: 0x100401, - 0x40: 0x2100401, - 0x50: 0x0, - 0x60: 0x1, - 0x70: 0x2100001, - 0x80: 0x2000400, - 0x90: 0x100001, - 0xa0: 0x2000001, - 0xb0: 0x2100400, - 0xc0: 0x2100000, - 0xd0: 0x401, - 0xe0: 0x100400, - 0xf0: 0x2000000, - 0x8: 0x2100001, - 0x18: 0x0, - 0x28: 0x2000401, - 0x38: 0x2100400, - 0x48: 0x100000, - 0x58: 0x2000001, - 0x68: 0x2000000, - 0x78: 0x401, - 0x88: 0x100401, - 0x98: 0x2000400, - 0xa8: 0x2100000, - 0xb8: 0x100001, - 0xc8: 0x400, - 0xd8: 0x2100401, - 0xe8: 0x1, - 0xf8: 0x100400, - 0x100: 0x2000000, - 0x110: 0x100000, - 0x120: 0x2000401, - 0x130: 0x2100001, - 0x140: 0x100001, - 0x150: 0x2000400, - 0x160: 0x2100400, - 0x170: 0x100401, - 0x180: 0x401, - 0x190: 0x2100401, - 0x1a0: 0x100400, - 0x1b0: 0x1, - 0x1c0: 0x0, - 0x1d0: 0x2100000, - 0x1e0: 0x2000001, - 0x1f0: 0x400, - 0x108: 0x100400, - 0x118: 0x2000401, - 0x128: 0x2100001, - 0x138: 0x1, - 0x148: 0x2000000, - 0x158: 0x100000, - 0x168: 0x401, - 0x178: 0x2100400, - 0x188: 0x2000001, - 0x198: 0x2100000, - 0x1a8: 0x0, - 0x1b8: 0x2100401, - 0x1c8: 0x100401, - 0x1d8: 0x400, - 0x1e8: 0x2000400, - 0x1f8: 0x100001 - }, { - 0x0: 0x8000820, - 0x1: 0x20000, - 0x2: 0x8000000, - 0x3: 0x20, - 0x4: 0x20020, - 0x5: 0x8020820, - 0x6: 0x8020800, - 0x7: 0x800, - 0x8: 0x8020000, - 0x9: 0x8000800, - 0xa: 0x20800, - 0xb: 0x8020020, - 0xc: 0x820, - 0xd: 0x0, - 0xe: 0x8000020, - 0xf: 0x20820, - 0x80000000: 0x800, - 0x80000001: 0x8020820, - 0x80000002: 0x8000820, - 0x80000003: 0x8000000, - 0x80000004: 0x8020000, - 0x80000005: 0x20800, - 0x80000006: 0x20820, - 0x80000007: 0x20, - 0x80000008: 0x8000020, - 0x80000009: 0x820, - 0x8000000a: 0x20020, - 0x8000000b: 0x8020800, - 0x8000000c: 0x0, - 0x8000000d: 0x8020020, - 0x8000000e: 0x8000800, - 0x8000000f: 0x20000, - 0x10: 0x20820, - 0x11: 0x8020800, - 0x12: 0x20, - 0x13: 0x800, - 0x14: 0x8000800, - 0x15: 0x8000020, - 0x16: 0x8020020, - 0x17: 0x20000, - 0x18: 0x0, - 0x19: 0x20020, - 0x1a: 0x8020000, - 0x1b: 0x8000820, - 0x1c: 0x8020820, - 0x1d: 0x20800, - 0x1e: 0x820, - 0x1f: 0x8000000, - 0x80000010: 0x20000, - 0x80000011: 0x800, - 0x80000012: 0x8020020, - 0x80000013: 0x20820, - 0x80000014: 0x20, - 0x80000015: 0x8020000, - 0x80000016: 0x8000000, - 0x80000017: 0x8000820, - 0x80000018: 0x8020820, - 0x80000019: 0x8000020, - 0x8000001a: 0x8000800, - 0x8000001b: 0x0, - 0x8000001c: 0x20800, - 0x8000001d: 0x820, - 0x8000001e: 0x20020, - 0x8000001f: 0x8020800 - }]; + 0x0: 0x808200, + 0x10000000: 0x8000, + 0x20000000: 0x808002, + 0x30000000: 0x2, + 0x40000000: 0x200, + 0x50000000: 0x808202, + 0x60000000: 0x800202, + 0x70000000: 0x800000, + 0x80000000: 0x202, + 0x90000000: 0x800200, + 0xa0000000: 0x8200, + 0xb0000000: 0x808000, + 0xc0000000: 0x8002, + 0xd0000000: 0x800002, + 0xe0000000: 0x0, + 0xf0000000: 0x8202, + 0x8000000: 0x0, + 0x18000000: 0x808202, + 0x28000000: 0x8202, + 0x38000000: 0x8000, + 0x48000000: 0x808200, + 0x58000000: 0x200, + 0x68000000: 0x808002, + 0x78000000: 0x2, + 0x88000000: 0x800200, + 0x98000000: 0x8200, + 0xa8000000: 0x808000, + 0xb8000000: 0x800202, + 0xc8000000: 0x800002, + 0xd8000000: 0x8002, + 0xe8000000: 0x202, + 0xf8000000: 0x800000, + 0x1: 0x8000, + 0x10000001: 0x2, + 0x20000001: 0x808200, + 0x30000001: 0x800000, + 0x40000001: 0x808002, + 0x50000001: 0x8200, + 0x60000001: 0x200, + 0x70000001: 0x800202, + 0x80000001: 0x808202, + 0x90000001: 0x808000, + 0xa0000001: 0x800002, + 0xb0000001: 0x8202, + 0xc0000001: 0x202, + 0xd0000001: 0x800200, + 0xe0000001: 0x8002, + 0xf0000001: 0x0, + 0x8000001: 0x808202, + 0x18000001: 0x808000, + 0x28000001: 0x800000, + 0x38000001: 0x200, + 0x48000001: 0x8000, + 0x58000001: 0x800002, + 0x68000001: 0x2, + 0x78000001: 0x8202, + 0x88000001: 0x8002, + 0x98000001: 0x800202, + 0xa8000001: 0x202, + 0xb8000001: 0x808200, + 0xc8000001: 0x800200, + 0xd8000001: 0x0, + 0xe8000001: 0x8200, + 0xf8000001: 0x808002 + }, + { + 0x0: 0x40084010, + 0x1000000: 0x4000, + 0x2000000: 0x80000, + 0x3000000: 0x40080010, + 0x4000000: 0x40000010, + 0x5000000: 0x40084000, + 0x6000000: 0x40004000, + 0x7000000: 0x10, + 0x8000000: 0x84000, + 0x9000000: 0x40004010, + 0xa000000: 0x40000000, + 0xb000000: 0x84010, + 0xc000000: 0x80010, + 0xd000000: 0x0, + 0xe000000: 0x4010, + 0xf000000: 0x40080000, + 0x800000: 0x40004000, + 0x1800000: 0x84010, + 0x2800000: 0x10, + 0x3800000: 0x40004010, + 0x4800000: 0x40084010, + 0x5800000: 0x40000000, + 0x6800000: 0x80000, + 0x7800000: 0x40080010, + 0x8800000: 0x80010, + 0x9800000: 0x0, + 0xa800000: 0x4000, + 0xb800000: 0x40080000, + 0xc800000: 0x40000010, + 0xd800000: 0x84000, + 0xe800000: 0x40084000, + 0xf800000: 0x4010, + 0x10000000: 0x0, + 0x11000000: 0x40080010, + 0x12000000: 0x40004010, + 0x13000000: 0x40084000, + 0x14000000: 0x40080000, + 0x15000000: 0x10, + 0x16000000: 0x84010, + 0x17000000: 0x4000, + 0x18000000: 0x4010, + 0x19000000: 0x80000, + 0x1a000000: 0x80010, + 0x1b000000: 0x40000010, + 0x1c000000: 0x84000, + 0x1d000000: 0x40004000, + 0x1e000000: 0x40000000, + 0x1f000000: 0x40084010, + 0x10800000: 0x84010, + 0x11800000: 0x80000, + 0x12800000: 0x40080000, + 0x13800000: 0x4000, + 0x14800000: 0x40004000, + 0x15800000: 0x40084010, + 0x16800000: 0x10, + 0x17800000: 0x40000000, + 0x18800000: 0x40084000, + 0x19800000: 0x40000010, + 0x1a800000: 0x40004010, + 0x1b800000: 0x80010, + 0x1c800000: 0x0, + 0x1d800000: 0x4010, + 0x1e800000: 0x40080010, + 0x1f800000: 0x84000 + }, + { + 0x0: 0x104, + 0x100000: 0x0, + 0x200000: 0x4000100, + 0x300000: 0x10104, + 0x400000: 0x10004, + 0x500000: 0x4000004, + 0x600000: 0x4010104, + 0x700000: 0x4010000, + 0x800000: 0x4000000, + 0x900000: 0x4010100, + 0xa00000: 0x10100, + 0xb00000: 0x4010004, + 0xc00000: 0x4000104, + 0xd00000: 0x10000, + 0xe00000: 0x4, + 0xf00000: 0x100, + 0x80000: 0x4010100, + 0x180000: 0x4010004, + 0x280000: 0x0, + 0x380000: 0x4000100, + 0x480000: 0x4000004, + 0x580000: 0x10000, + 0x680000: 0x10004, + 0x780000: 0x104, + 0x880000: 0x4, + 0x980000: 0x100, + 0xa80000: 0x4010000, + 0xb80000: 0x10104, + 0xc80000: 0x10100, + 0xd80000: 0x4000104, + 0xe80000: 0x4010104, + 0xf80000: 0x4000000, + 0x1000000: 0x4010100, + 0x1100000: 0x10004, + 0x1200000: 0x10000, + 0x1300000: 0x4000100, + 0x1400000: 0x100, + 0x1500000: 0x4010104, + 0x1600000: 0x4000004, + 0x1700000: 0x0, + 0x1800000: 0x4000104, + 0x1900000: 0x4000000, + 0x1a00000: 0x4, + 0x1b00000: 0x10100, + 0x1c00000: 0x4010000, + 0x1d00000: 0x104, + 0x1e00000: 0x10104, + 0x1f00000: 0x4010004, + 0x1080000: 0x4000000, + 0x1180000: 0x104, + 0x1280000: 0x4010100, + 0x1380000: 0x0, + 0x1480000: 0x10004, + 0x1580000: 0x4000100, + 0x1680000: 0x100, + 0x1780000: 0x4010004, + 0x1880000: 0x10000, + 0x1980000: 0x4010104, + 0x1a80000: 0x10104, + 0x1b80000: 0x4000004, + 0x1c80000: 0x4000104, + 0x1d80000: 0x4010000, + 0x1e80000: 0x4, + 0x1f80000: 0x10100 + }, + { + 0x0: 0x80401000, + 0x10000: 0x80001040, + 0x20000: 0x401040, + 0x30000: 0x80400000, + 0x40000: 0x0, + 0x50000: 0x401000, + 0x60000: 0x80000040, + 0x70000: 0x400040, + 0x80000: 0x80000000, + 0x90000: 0x400000, + 0xa0000: 0x40, + 0xb0000: 0x80001000, + 0xc0000: 0x80400040, + 0xd0000: 0x1040, + 0xe0000: 0x1000, + 0xf0000: 0x80401040, + 0x8000: 0x80001040, + 0x18000: 0x40, + 0x28000: 0x80400040, + 0x38000: 0x80001000, + 0x48000: 0x401000, + 0x58000: 0x80401040, + 0x68000: 0x0, + 0x78000: 0x80400000, + 0x88000: 0x1000, + 0x98000: 0x80401000, + 0xa8000: 0x400000, + 0xb8000: 0x1040, + 0xc8000: 0x80000000, + 0xd8000: 0x400040, + 0xe8000: 0x401040, + 0xf8000: 0x80000040, + 0x100000: 0x400040, + 0x110000: 0x401000, + 0x120000: 0x80000040, + 0x130000: 0x0, + 0x140000: 0x1040, + 0x150000: 0x80400040, + 0x160000: 0x80401000, + 0x170000: 0x80001040, + 0x180000: 0x80401040, + 0x190000: 0x80000000, + 0x1a0000: 0x80400000, + 0x1b0000: 0x401040, + 0x1c0000: 0x80001000, + 0x1d0000: 0x400000, + 0x1e0000: 0x40, + 0x1f0000: 0x1000, + 0x108000: 0x80400000, + 0x118000: 0x80401040, + 0x128000: 0x0, + 0x138000: 0x401000, + 0x148000: 0x400040, + 0x158000: 0x80000000, + 0x168000: 0x80001040, + 0x178000: 0x40, + 0x188000: 0x80000040, + 0x198000: 0x1000, + 0x1a8000: 0x80001000, + 0x1b8000: 0x80400040, + 0x1c8000: 0x1040, + 0x1d8000: 0x80401000, + 0x1e8000: 0x400000, + 0x1f8000: 0x401040 + }, + { + 0x0: 0x80, + 0x1000: 0x1040000, + 0x2000: 0x40000, + 0x3000: 0x20000000, + 0x4000: 0x20040080, + 0x5000: 0x1000080, + 0x6000: 0x21000080, + 0x7000: 0x40080, + 0x8000: 0x1000000, + 0x9000: 0x20040000, + 0xa000: 0x20000080, + 0xb000: 0x21040080, + 0xc000: 0x21040000, + 0xd000: 0x0, + 0xe000: 0x1040080, + 0xf000: 0x21000000, + 0x800: 0x1040080, + 0x1800: 0x21000080, + 0x2800: 0x80, + 0x3800: 0x1040000, + 0x4800: 0x40000, + 0x5800: 0x20040080, + 0x6800: 0x21040000, + 0x7800: 0x20000000, + 0x8800: 0x20040000, + 0x9800: 0x0, + 0xa800: 0x21040080, + 0xb800: 0x1000080, + 0xc800: 0x20000080, + 0xd800: 0x21000000, + 0xe800: 0x1000000, + 0xf800: 0x40080, + 0x10000: 0x40000, + 0x11000: 0x80, + 0x12000: 0x20000000, + 0x13000: 0x21000080, + 0x14000: 0x1000080, + 0x15000: 0x21040000, + 0x16000: 0x20040080, + 0x17000: 0x1000000, + 0x18000: 0x21040080, + 0x19000: 0x21000000, + 0x1a000: 0x1040000, + 0x1b000: 0x20040000, + 0x1c000: 0x40080, + 0x1d000: 0x20000080, + 0x1e000: 0x0, + 0x1f000: 0x1040080, + 0x10800: 0x21000080, + 0x11800: 0x1000000, + 0x12800: 0x1040000, + 0x13800: 0x20040080, + 0x14800: 0x20000000, + 0x15800: 0x1040080, + 0x16800: 0x80, + 0x17800: 0x21040000, + 0x18800: 0x40080, + 0x19800: 0x21040080, + 0x1a800: 0x0, + 0x1b800: 0x21000000, + 0x1c800: 0x1000080, + 0x1d800: 0x40000, + 0x1e800: 0x20040000, + 0x1f800: 0x20000080 + }, + { + 0x0: 0x10000008, + 0x100: 0x2000, + 0x200: 0x10200000, + 0x300: 0x10202008, + 0x400: 0x10002000, + 0x500: 0x200000, + 0x600: 0x200008, + 0x700: 0x10000000, + 0x800: 0x0, + 0x900: 0x10002008, + 0xa00: 0x202000, + 0xb00: 0x8, + 0xc00: 0x10200008, + 0xd00: 0x202008, + 0xe00: 0x2008, + 0xf00: 0x10202000, + 0x80: 0x10200000, + 0x180: 0x10202008, + 0x280: 0x8, + 0x380: 0x200000, + 0x480: 0x202008, + 0x580: 0x10000008, + 0x680: 0x10002000, + 0x780: 0x2008, + 0x880: 0x200008, + 0x980: 0x2000, + 0xa80: 0x10002008, + 0xb80: 0x10200008, + 0xc80: 0x0, + 0xd80: 0x10202000, + 0xe80: 0x202000, + 0xf80: 0x10000000, + 0x1000: 0x10002000, + 0x1100: 0x10200008, + 0x1200: 0x10202008, + 0x1300: 0x2008, + 0x1400: 0x200000, + 0x1500: 0x10000000, + 0x1600: 0x10000008, + 0x1700: 0x202000, + 0x1800: 0x202008, + 0x1900: 0x0, + 0x1a00: 0x8, + 0x1b00: 0x10200000, + 0x1c00: 0x2000, + 0x1d00: 0x10002008, + 0x1e00: 0x10202000, + 0x1f00: 0x200008, + 0x1080: 0x8, + 0x1180: 0x202000, + 0x1280: 0x200000, + 0x1380: 0x10000008, + 0x1480: 0x10002000, + 0x1580: 0x2008, + 0x1680: 0x10202008, + 0x1780: 0x10200000, + 0x1880: 0x10202000, + 0x1980: 0x10200008, + 0x1a80: 0x2000, + 0x1b80: 0x202008, + 0x1c80: 0x200008, + 0x1d80: 0x0, + 0x1e80: 0x10000000, + 0x1f80: 0x10002008 + }, + { + 0x0: 0x100000, + 0x10: 0x2000401, + 0x20: 0x400, + 0x30: 0x100401, + 0x40: 0x2100401, + 0x50: 0x0, + 0x60: 0x1, + 0x70: 0x2100001, + 0x80: 0x2000400, + 0x90: 0x100001, + 0xa0: 0x2000001, + 0xb0: 0x2100400, + 0xc0: 0x2100000, + 0xd0: 0x401, + 0xe0: 0x100400, + 0xf0: 0x2000000, + 0x8: 0x2100001, + 0x18: 0x0, + 0x28: 0x2000401, + 0x38: 0x2100400, + 0x48: 0x100000, + 0x58: 0x2000001, + 0x68: 0x2000000, + 0x78: 0x401, + 0x88: 0x100401, + 0x98: 0x2000400, + 0xa8: 0x2100000, + 0xb8: 0x100001, + 0xc8: 0x400, + 0xd8: 0x2100401, + 0xe8: 0x1, + 0xf8: 0x100400, + 0x100: 0x2000000, + 0x110: 0x100000, + 0x120: 0x2000401, + 0x130: 0x2100001, + 0x140: 0x100001, + 0x150: 0x2000400, + 0x160: 0x2100400, + 0x170: 0x100401, + 0x180: 0x401, + 0x190: 0x2100401, + 0x1a0: 0x100400, + 0x1b0: 0x1, + 0x1c0: 0x0, + 0x1d0: 0x2100000, + 0x1e0: 0x2000001, + 0x1f0: 0x400, + 0x108: 0x100400, + 0x118: 0x2000401, + 0x128: 0x2100001, + 0x138: 0x1, + 0x148: 0x2000000, + 0x158: 0x100000, + 0x168: 0x401, + 0x178: 0x2100400, + 0x188: 0x2000001, + 0x198: 0x2100000, + 0x1a8: 0x0, + 0x1b8: 0x2100401, + 0x1c8: 0x100401, + 0x1d8: 0x400, + 0x1e8: 0x2000400, + 0x1f8: 0x100001 + }, + { + 0x0: 0x8000820, + 0x1: 0x20000, + 0x2: 0x8000000, + 0x3: 0x20, + 0x4: 0x20020, + 0x5: 0x8020820, + 0x6: 0x8020800, + 0x7: 0x800, + 0x8: 0x8020000, + 0x9: 0x8000800, + 0xa: 0x20800, + 0xb: 0x8020020, + 0xc: 0x820, + 0xd: 0x0, + 0xe: 0x8000020, + 0xf: 0x20820, + 0x80000000: 0x800, + 0x80000001: 0x8020820, + 0x80000002: 0x8000820, + 0x80000003: 0x8000000, + 0x80000004: 0x8020000, + 0x80000005: 0x20800, + 0x80000006: 0x20820, + 0x80000007: 0x20, + 0x80000008: 0x8000020, + 0x80000009: 0x820, + 0x8000000a: 0x20020, + 0x8000000b: 0x8020800, + 0x8000000c: 0x0, + 0x8000000d: 0x8020020, + 0x8000000e: 0x8000800, + 0x8000000f: 0x20000, + 0x10: 0x20820, + 0x11: 0x8020800, + 0x12: 0x20, + 0x13: 0x800, + 0x14: 0x8000800, + 0x15: 0x8000020, + 0x16: 0x8020020, + 0x17: 0x20000, + 0x18: 0x0, + 0x19: 0x20020, + 0x1a: 0x8020000, + 0x1b: 0x8000820, + 0x1c: 0x8020820, + 0x1d: 0x20800, + 0x1e: 0x820, + 0x1f: 0x8000000, + 0x80000010: 0x20000, + 0x80000011: 0x800, + 0x80000012: 0x8020020, + 0x80000013: 0x20820, + 0x80000014: 0x20, + 0x80000015: 0x8020000, + 0x80000016: 0x8000000, + 0x80000017: 0x8000820, + 0x80000018: 0x8020820, + 0x80000019: 0x8000020, + 0x8000001a: 0x8000800, + 0x8000001b: 0x0, + 0x8000001c: 0x20800, + 0x8000001d: 0x820, + 0x8000001e: 0x20020, + 0x8000001f: 0x8020800 + } + ]; // Masks that select the SBOX input var SBOX_MASK = [ - 0xf8000001, 0x1f800000, 0x01f80000, 0x001f8000, - 0x0001f800, 0x00001f80, 0x000001f8, 0x8000001f]; + 0xf8000001, 0x1f800000, 0x01f80000, 0x001f8000, + 0x0001f800, 0x00001f80, 0x000001f8, 0x8000001f + ]; /** * DES block cipher algorithm. @@ -5756,19 +5810,25 @@ CryptoJS.pad.NoPadding = { // Swap endian for (var i = 0; i < 4; i++) { - K[i] = (((K[i] << 8) | (K[i] >>> 24)) & 0x00ff00ff) | (((K[i] << 24) | (K[i] >>> 8)) & 0xff00ff00); + K[i] = (((K[i] << 8) | (K[i] >>> 24)) & 0x00ff00ff) | + (((K[i] << 24) | (K[i] >>> 8)) & 0xff00ff00); } // Generate initial state values var X = this._X = [ - K[0], (K[3] << 16) | (K[2] >>> 16), - K[1], (K[0] << 16) | (K[3] >>> 16), - K[2], (K[1] << 16) | (K[0] >>> 16), - K[3], (K[2] << 16) | (K[1] >>> 16)]; + K[0], (K[3] << 16) | (K[2] >>> 16), + K[1], (K[0] << 16) | (K[3] >>> 16), + K[2], (K[1] << 16) | (K[0] >>> 16), + K[3], (K[2] << 16) | (K[1] >>> 16) + ]; // Generate initial counter values var C = this._C = [ - (K[2] << 16) | (K[2] >>> 16), (K[0] & 0xffff0000) | (K[1] & 0x0000ffff), (K[3] << 16) | (K[3] >>> 16), (K[1] & 0xffff0000) | (K[2] & 0x0000ffff), (K[0] << 16) | (K[0] >>> 16), (K[2] & 0xffff0000) | (K[3] & 0x0000ffff), (K[1] << 16) | (K[1] >>> 16), (K[3] & 0xffff0000) | (K[0] & 0x0000ffff)]; + (K[2] << 16) | (K[2] >>> 16), (K[0] & 0xffff0000) | (K[1] & 0x0000ffff), + (K[3] << 16) | (K[3] >>> 16), (K[1] & 0xffff0000) | (K[2] & 0x0000ffff), + (K[0] << 16) | (K[0] >>> 16), (K[2] & 0xffff0000) | (K[3] & 0x0000ffff), + (K[1] << 16) | (K[1] >>> 16), (K[3] & 0xffff0000) | (K[0] & 0x0000ffff) + ]; // Carry bit this._b = 0; @@ -5828,7 +5888,8 @@ CryptoJS.pad.NoPadding = { for (var i = 0; i < 4; i++) { // Swap endian - S[i] = (((S[i] << 8) | (S[i] >>> 24)) & 0x00ff00ff) | (((S[i] << 24) | (S[i] >>> 8)) & 0xff00ff00); + S[i] = (((S[i] << 8) | (S[i] >>> 24)) & 0x00ff00ff) | + (((S[i] << 24) | (S[i] >>> 8)) & 0xff00ff00); // Encrypt M[offset + i] ^= S[i]; @@ -5935,14 +5996,19 @@ CryptoJS.pad.NoPadding = { // Generate initial state values var X = this._X = [ - K[0], (K[3] << 16) | (K[2] >>> 16), - K[1], (K[0] << 16) | (K[3] >>> 16), - K[2], (K[1] << 16) | (K[0] >>> 16), - K[3], (K[2] << 16) | (K[1] >>> 16)]; + K[0], (K[3] << 16) | (K[2] >>> 16), + K[1], (K[0] << 16) | (K[3] >>> 16), + K[2], (K[1] << 16) | (K[0] >>> 16), + K[3], (K[2] << 16) | (K[1] >>> 16) + ]; // Generate initial counter values var C = this._C = [ - (K[2] << 16) | (K[2] >>> 16), (K[0] & 0xffff0000) | (K[1] & 0x0000ffff), (K[3] << 16) | (K[3] >>> 16), (K[1] & 0xffff0000) | (K[2] & 0x0000ffff), (K[0] << 16) | (K[0] >>> 16), (K[2] & 0xffff0000) | (K[3] & 0x0000ffff), (K[1] << 16) | (K[1] >>> 16), (K[3] & 0xffff0000) | (K[0] & 0x0000ffff)]; + (K[2] << 16) | (K[2] >>> 16), (K[0] & 0xffff0000) | (K[1] & 0x0000ffff), + (K[3] << 16) | (K[3] >>> 16), (K[1] & 0xffff0000) | (K[2] & 0x0000ffff), + (K[0] << 16) | (K[0] >>> 16), (K[2] & 0xffff0000) | (K[3] & 0x0000ffff), + (K[1] << 16) | (K[1] >>> 16), (K[3] & 0xffff0000) | (K[0] & 0x0000ffff) + ]; // Carry bit this._b = 0; @@ -6002,7 +6068,8 @@ CryptoJS.pad.NoPadding = { for (var i = 0; i < 4; i++) { // Swap endian - S[i] = (((S[i] << 8) | (S[i] >>> 24)) & 0x00ff00ff) | (((S[i] << 24) | (S[i] >>> 8)) & 0xff00ff00); + S[i] = (((S[i] << 8) | (S[i] >>> 24)) & 0x00ff00ff) | + (((S[i] << 24) | (S[i] >>> 8)) & 0xff00ff00); // Encrypt M[offset + i] ^= S[i]; diff --git a/JS/crypto-js.js b/JS/crypto-js.js index 53a52f8..46313ca 100644 --- a/JS/crypto-js.js +++ b/JS/crypto-js.js @@ -80,6 +80,7 @@ /* * Local polyfill of Object.create + */ var create = Object.create || (function() { function F() {} @@ -1108,7 +1109,15 @@ // Convert other array views to uint8 if ( - typedArray instanceof Int8Array || (typeof Uint8ClampedArray !== "undefined" && typedArray instanceof Uint8ClampedArray) || typedArray instanceof Int16Array || typedArray instanceof Uint16Array || typedArray instanceof Int32Array || typedArray instanceof Uint32Array || typedArray instanceof Float32Array || typedArray instanceof Float64Array) { + typedArray instanceof Int8Array || + (typeof Uint8ClampedArray !== "undefined" && typedArray instanceof Uint8ClampedArray) || + typedArray instanceof Int16Array || + typedArray instanceof Uint16Array || + typedArray instanceof Int32Array || + typedArray instanceof Uint32Array || + typedArray instanceof Float32Array || + typedArray instanceof Float64Array + ) { typedArray = new Uint8Array(typedArray.buffer, typedArray.byteOffset, typedArray.byteLength); } @@ -1309,7 +1318,7 @@ var triplet = (byte1 << 16) | (byte2 << 8) | byte3; for (var j = 0; - (j < 4) && (i + j * 0.75 < sigBytes); j++) { + (j < 4) && (i + j * 0.75 < sigBytes); j++) { base64Chars.push(map.charAt((triplet >>> (6 * (3 - j))) & 0x3f)); } } @@ -1430,7 +1439,7 @@ var triplet = (byte1 << 16) | (byte2 << 8) | byte3; for (var j = 0; - (j < 4) && (i + j * 0.75 < sigBytes); j++) { + (j < 4) && (i + j * 0.75 < sigBytes); j++) { base64Chars.push(map.charAt((triplet >>> (6 * (3 - j))) & 0x3f)); } } @@ -1532,8 +1541,9 @@ var MD5 = C_algo.MD5 = Hasher.extend({ _doReset: function() { this._hash = new WordArray.init([ - 0x67452301, 0xefcdab89, - 0x98badcfe, 0x10325476]); + 0x67452301, 0xefcdab89, + 0x98badcfe, 0x10325476 + ]); }, _doProcessBlock: function(M, offset) { @@ -1544,7 +1554,9 @@ var M_offset_i = M[offset_i]; M[offset_i] = ( - (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) | (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00)); + (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) | + (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00) + ); } // Shortcuts @@ -1663,9 +1675,13 @@ var nBitsTotalH = Math.floor(nBitsTotal / 0x100000000); var nBitsTotalL = nBitsTotal; dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 15] = ( - (((nBitsTotalH << 8) | (nBitsTotalH >>> 24)) & 0x00ff00ff) | (((nBitsTotalH << 24) | (nBitsTotalH >>> 8)) & 0xff00ff00)); + (((nBitsTotalH << 8) | (nBitsTotalH >>> 24)) & 0x00ff00ff) | + (((nBitsTotalH << 24) | (nBitsTotalH >>> 8)) & 0xff00ff00) + ); dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = ( - (((nBitsTotalL << 8) | (nBitsTotalL >>> 24)) & 0x00ff00ff) | (((nBitsTotalL << 24) | (nBitsTotalL >>> 8)) & 0xff00ff00)); + (((nBitsTotalL << 8) | (nBitsTotalL >>> 24)) & 0x00ff00ff) | + (((nBitsTotalL << 24) | (nBitsTotalL >>> 8)) & 0xff00ff00) + ); data.sigBytes = (dataWords.length + 1) * 4; @@ -1681,7 +1697,8 @@ // Shortcut var H_i = H[i]; - H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) | (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00); + H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) | + (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00); } // Return final computed hash @@ -1767,9 +1784,10 @@ var SHA1 = C_algo.SHA1 = Hasher.extend({ _doReset: function() { this._hash = new WordArray.init([ - 0x67452301, 0xefcdab89, - 0x98badcfe, 0x10325476, - 0xc3d2e1f0]); + 0x67452301, 0xefcdab89, + 0x98badcfe, 0x10325476, + 0xc3d2e1f0 + ]); }, _doProcessBlock: function(M, offset) { @@ -1957,10 +1975,14 @@ W[i] = M[offset + i] | 0; } else { var gamma0x = W[i - 15]; - var gamma0 = ((gamma0x << 25) | (gamma0x >>> 7)) ^ ((gamma0x << 14) | (gamma0x >>> 18)) ^ (gamma0x >>> 3); + var gamma0 = ((gamma0x << 25) | (gamma0x >>> 7)) ^ + ((gamma0x << 14) | (gamma0x >>> 18)) ^ + (gamma0x >>> 3); var gamma1x = W[i - 2]; - var gamma1 = ((gamma1x << 15) | (gamma1x >>> 17)) ^ ((gamma1x << 13) | (gamma1x >>> 19)) ^ (gamma1x >>> 10); + var gamma1 = ((gamma1x << 15) | (gamma1x >>> 17)) ^ + ((gamma1x << 13) | (gamma1x >>> 19)) ^ + (gamma1x >>> 10); W[i] = gamma0 + W[i - 7] + gamma1 + W[i - 16]; } @@ -2072,8 +2094,9 @@ var SHA224 = C_algo.SHA224 = SHA256.extend({ _doReset: function() { this._hash = new WordArray.init([ - 0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939, - 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4]); + 0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939, + 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4 + ]); }, _doFinalize: function() { @@ -2135,46 +2158,47 @@ // Constants var K = [ - X64Word_create(0x428a2f98, 0xd728ae22), X64Word_create(0x71374491, 0x23ef65cd), - X64Word_create(0xb5c0fbcf, 0xec4d3b2f), X64Word_create(0xe9b5dba5, 0x8189dbbc), - X64Word_create(0x3956c25b, 0xf348b538), X64Word_create(0x59f111f1, 0xb605d019), - X64Word_create(0x923f82a4, 0xaf194f9b), X64Word_create(0xab1c5ed5, 0xda6d8118), - X64Word_create(0xd807aa98, 0xa3030242), X64Word_create(0x12835b01, 0x45706fbe), - X64Word_create(0x243185be, 0x4ee4b28c), X64Word_create(0x550c7dc3, 0xd5ffb4e2), - X64Word_create(0x72be5d74, 0xf27b896f), X64Word_create(0x80deb1fe, 0x3b1696b1), - X64Word_create(0x9bdc06a7, 0x25c71235), X64Word_create(0xc19bf174, 0xcf692694), - X64Word_create(0xe49b69c1, 0x9ef14ad2), X64Word_create(0xefbe4786, 0x384f25e3), - X64Word_create(0x0fc19dc6, 0x8b8cd5b5), X64Word_create(0x240ca1cc, 0x77ac9c65), - X64Word_create(0x2de92c6f, 0x592b0275), X64Word_create(0x4a7484aa, 0x6ea6e483), - X64Word_create(0x5cb0a9dc, 0xbd41fbd4), X64Word_create(0x76f988da, 0x831153b5), - X64Word_create(0x983e5152, 0xee66dfab), X64Word_create(0xa831c66d, 0x2db43210), - X64Word_create(0xb00327c8, 0x98fb213f), X64Word_create(0xbf597fc7, 0xbeef0ee4), - X64Word_create(0xc6e00bf3, 0x3da88fc2), X64Word_create(0xd5a79147, 0x930aa725), - X64Word_create(0x06ca6351, 0xe003826f), X64Word_create(0x14292967, 0x0a0e6e70), - X64Word_create(0x27b70a85, 0x46d22ffc), X64Word_create(0x2e1b2138, 0x5c26c926), - X64Word_create(0x4d2c6dfc, 0x5ac42aed), X64Word_create(0x53380d13, 0x9d95b3df), - X64Word_create(0x650a7354, 0x8baf63de), X64Word_create(0x766a0abb, 0x3c77b2a8), - X64Word_create(0x81c2c92e, 0x47edaee6), X64Word_create(0x92722c85, 0x1482353b), - X64Word_create(0xa2bfe8a1, 0x4cf10364), X64Word_create(0xa81a664b, 0xbc423001), - X64Word_create(0xc24b8b70, 0xd0f89791), X64Word_create(0xc76c51a3, 0x0654be30), - X64Word_create(0xd192e819, 0xd6ef5218), X64Word_create(0xd6990624, 0x5565a910), - X64Word_create(0xf40e3585, 0x5771202a), X64Word_create(0x106aa070, 0x32bbd1b8), - X64Word_create(0x19a4c116, 0xb8d2d0c8), X64Word_create(0x1e376c08, 0x5141ab53), - X64Word_create(0x2748774c, 0xdf8eeb99), X64Word_create(0x34b0bcb5, 0xe19b48a8), - X64Word_create(0x391c0cb3, 0xc5c95a63), X64Word_create(0x4ed8aa4a, 0xe3418acb), - X64Word_create(0x5b9cca4f, 0x7763e373), X64Word_create(0x682e6ff3, 0xd6b2b8a3), - X64Word_create(0x748f82ee, 0x5defb2fc), X64Word_create(0x78a5636f, 0x43172f60), - X64Word_create(0x84c87814, 0xa1f0ab72), X64Word_create(0x8cc70208, 0x1a6439ec), - X64Word_create(0x90befffa, 0x23631e28), X64Word_create(0xa4506ceb, 0xde82bde9), - X64Word_create(0xbef9a3f7, 0xb2c67915), X64Word_create(0xc67178f2, 0xe372532b), - X64Word_create(0xca273ece, 0xea26619c), X64Word_create(0xd186b8c7, 0x21c0c207), - X64Word_create(0xeada7dd6, 0xcde0eb1e), X64Word_create(0xf57d4f7f, 0xee6ed178), - X64Word_create(0x06f067aa, 0x72176fba), X64Word_create(0x0a637dc5, 0xa2c898a6), - X64Word_create(0x113f9804, 0xbef90dae), X64Word_create(0x1b710b35, 0x131c471b), - X64Word_create(0x28db77f5, 0x23047d84), X64Word_create(0x32caab7b, 0x40c72493), - X64Word_create(0x3c9ebe0a, 0x15c9bebc), X64Word_create(0x431d67c4, 0x9c100d4c), - X64Word_create(0x4cc5d4be, 0xcb3e42b6), X64Word_create(0x597f299c, 0xfc657e2a), - X64Word_create(0x5fcb6fab, 0x3ad6faec), X64Word_create(0x6c44198c, 0x4a475817)]; + X64Word_create(0x428a2f98, 0xd728ae22), X64Word_create(0x71374491, 0x23ef65cd), + X64Word_create(0xb5c0fbcf, 0xec4d3b2f), X64Word_create(0xe9b5dba5, 0x8189dbbc), + X64Word_create(0x3956c25b, 0xf348b538), X64Word_create(0x59f111f1, 0xb605d019), + X64Word_create(0x923f82a4, 0xaf194f9b), X64Word_create(0xab1c5ed5, 0xda6d8118), + X64Word_create(0xd807aa98, 0xa3030242), X64Word_create(0x12835b01, 0x45706fbe), + X64Word_create(0x243185be, 0x4ee4b28c), X64Word_create(0x550c7dc3, 0xd5ffb4e2), + X64Word_create(0x72be5d74, 0xf27b896f), X64Word_create(0x80deb1fe, 0x3b1696b1), + X64Word_create(0x9bdc06a7, 0x25c71235), X64Word_create(0xc19bf174, 0xcf692694), + X64Word_create(0xe49b69c1, 0x9ef14ad2), X64Word_create(0xefbe4786, 0x384f25e3), + X64Word_create(0x0fc19dc6, 0x8b8cd5b5), X64Word_create(0x240ca1cc, 0x77ac9c65), + X64Word_create(0x2de92c6f, 0x592b0275), X64Word_create(0x4a7484aa, 0x6ea6e483), + X64Word_create(0x5cb0a9dc, 0xbd41fbd4), X64Word_create(0x76f988da, 0x831153b5), + X64Word_create(0x983e5152, 0xee66dfab), X64Word_create(0xa831c66d, 0x2db43210), + X64Word_create(0xb00327c8, 0x98fb213f), X64Word_create(0xbf597fc7, 0xbeef0ee4), + X64Word_create(0xc6e00bf3, 0x3da88fc2), X64Word_create(0xd5a79147, 0x930aa725), + X64Word_create(0x06ca6351, 0xe003826f), X64Word_create(0x14292967, 0x0a0e6e70), + X64Word_create(0x27b70a85, 0x46d22ffc), X64Word_create(0x2e1b2138, 0x5c26c926), + X64Word_create(0x4d2c6dfc, 0x5ac42aed), X64Word_create(0x53380d13, 0x9d95b3df), + X64Word_create(0x650a7354, 0x8baf63de), X64Word_create(0x766a0abb, 0x3c77b2a8), + X64Word_create(0x81c2c92e, 0x47edaee6), X64Word_create(0x92722c85, 0x1482353b), + X64Word_create(0xa2bfe8a1, 0x4cf10364), X64Word_create(0xa81a664b, 0xbc423001), + X64Word_create(0xc24b8b70, 0xd0f89791), X64Word_create(0xc76c51a3, 0x0654be30), + X64Word_create(0xd192e819, 0xd6ef5218), X64Word_create(0xd6990624, 0x5565a910), + X64Word_create(0xf40e3585, 0x5771202a), X64Word_create(0x106aa070, 0x32bbd1b8), + X64Word_create(0x19a4c116, 0xb8d2d0c8), X64Word_create(0x1e376c08, 0x5141ab53), + X64Word_create(0x2748774c, 0xdf8eeb99), X64Word_create(0x34b0bcb5, 0xe19b48a8), + X64Word_create(0x391c0cb3, 0xc5c95a63), X64Word_create(0x4ed8aa4a, 0xe3418acb), + X64Word_create(0x5b9cca4f, 0x7763e373), X64Word_create(0x682e6ff3, 0xd6b2b8a3), + X64Word_create(0x748f82ee, 0x5defb2fc), X64Word_create(0x78a5636f, 0x43172f60), + X64Word_create(0x84c87814, 0xa1f0ab72), X64Word_create(0x8cc70208, 0x1a6439ec), + X64Word_create(0x90befffa, 0x23631e28), X64Word_create(0xa4506ceb, 0xde82bde9), + X64Word_create(0xbef9a3f7, 0xb2c67915), X64Word_create(0xc67178f2, 0xe372532b), + X64Word_create(0xca273ece, 0xea26619c), X64Word_create(0xd186b8c7, 0x21c0c207), + X64Word_create(0xeada7dd6, 0xcde0eb1e), X64Word_create(0xf57d4f7f, 0xee6ed178), + X64Word_create(0x06f067aa, 0x72176fba), X64Word_create(0x0a637dc5, 0xa2c898a6), + X64Word_create(0x113f9804, 0xbef90dae), X64Word_create(0x1b710b35, 0x131c471b), + X64Word_create(0x28db77f5, 0x23047d84), X64Word_create(0x32caab7b, 0x40c72493), + X64Word_create(0x3c9ebe0a, 0x15c9bebc), X64Word_create(0x431d67c4, 0x9c100d4c), + X64Word_create(0x4cc5d4be, 0xcb3e42b6), X64Word_create(0x597f299c, 0xfc657e2a), + X64Word_create(0x5fcb6fab, 0x3ad6faec), X64Word_create(0x6c44198c, 0x4a475817) + ]; // Reusable objects var W = []; @@ -2190,10 +2214,11 @@ var SHA512 = C_algo.SHA512 = Hasher.extend({ _doReset: function() { this._hash = new X64WordArray.init([ - new X64Word.init(0x6a09e667, 0xf3bcc908), new X64Word.init(0xbb67ae85, 0x84caa73b), - new X64Word.init(0x3c6ef372, 0xfe94f82b), new X64Word.init(0xa54ff53a, 0x5f1d36f1), - new X64Word.init(0x510e527f, 0xade682d1), new X64Word.init(0x9b05688c, 0x2b3e6c1f), - new X64Word.init(0x1f83d9ab, 0xfb41bd6b), new X64Word.init(0x5be0cd19, 0x137e2179)]); + new X64Word.init(0x6a09e667, 0xf3bcc908), new X64Word.init(0xbb67ae85, 0x84caa73b), + new X64Word.init(0x3c6ef372, 0xfe94f82b), new X64Word.init(0xa54ff53a, 0x5f1d36f1), + new X64Word.init(0x510e527f, 0xade682d1), new X64Word.init(0x9b05688c, 0x2b3e6c1f), + new X64Word.init(0x1f83d9ab, 0xfb41bd6b), new X64Word.init(0x5be0cd19, 0x137e2179) + ]); }, _doProcessBlock: function(M, offset) { @@ -2440,10 +2465,11 @@ var SHA384 = C_algo.SHA384 = SHA512.extend({ _doReset: function() { this._hash = new X64WordArray.init([ - new X64Word.init(0xcbbb9d5d, 0xc1059ed8), new X64Word.init(0x629a292a, 0x367cd507), - new X64Word.init(0x9159015a, 0x3070dd17), new X64Word.init(0x152fecd8, 0xf70e5939), - new X64Word.init(0x67332667, 0xffc00b31), new X64Word.init(0x8eb44a87, 0x68581511), - new X64Word.init(0xdb0c2e0d, 0x64f98fa7), new X64Word.init(0x47b5481d, 0xbefa4fa4)]); + new X64Word.init(0xcbbb9d5d, 0xc1059ed8), new X64Word.init(0x629a292a, 0x367cd507), + new X64Word.init(0x9159015a, 0x3070dd17), new X64Word.init(0x152fecd8, 0xf70e5939), + new X64Word.init(0x67332667, 0xffc00b31), new X64Word.init(0x8eb44a87, 0x68581511), + new X64Word.init(0xdb0c2e0d, 0x64f98fa7), new X64Word.init(0x47b5481d, 0xbefa4fa4) + ]); }, _doFinalize: function() { @@ -2600,9 +2626,13 @@ // Swap endian M2i = ( - (((M2i << 8) | (M2i >>> 24)) & 0x00ff00ff) | (((M2i << 24) | (M2i >>> 8)) & 0xff00ff00)); + (((M2i << 8) | (M2i >>> 24)) & 0x00ff00ff) | + (((M2i << 24) | (M2i >>> 8)) & 0xff00ff00) + ); M2i1 = ( - (((M2i1 << 8) | (M2i1 >>> 24)) & 0x00ff00ff) | (((M2i1 << 24) | (M2i1 >>> 8)) & 0xff00ff00)); + (((M2i1 << 8) | (M2i1 >>> 24)) & 0x00ff00ff) | + (((M2i1 << 24) | (M2i1 >>> 8)) & 0xff00ff00) + ); // Absorb message into state var lane = state[i]; @@ -2732,9 +2762,13 @@ // Swap endian laneMsw = ( - (((laneMsw << 8) | (laneMsw >>> 24)) & 0x00ff00ff) | (((laneMsw << 24) | (laneMsw >>> 8)) & 0xff00ff00)); + (((laneMsw << 8) | (laneMsw >>> 24)) & 0x00ff00ff) | + (((laneMsw << 24) | (laneMsw >>> 8)) & 0xff00ff00) + ); laneLsw = ( - (((laneLsw << 8) | (laneLsw >>> 24)) & 0x00ff00ff) | (((laneLsw << 24) | (laneLsw >>> 8)) & 0xff00ff00)); + (((laneLsw << 8) | (laneLsw >>> 24)) & 0x00ff00ff) | + (((laneLsw << 24) | (laneLsw >>> 8)) & 0xff00ff00) + ); // Squeeze state to retrieve hash hashWords.push(laneLsw); @@ -2792,15 +2826,15 @@ /** @preserve - (c) 2012 by Cédric Mesnil. All rights reserved. + (c) 2012 by Cédric Mesnil. All rights reserved. - Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ (function(Math) { // Shortcuts @@ -2812,29 +2846,33 @@ // Constants table var _zl = WordArray.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]); + 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 + ]); var _zr = WordArray.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]); + 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 + ]); var _sl = WordArray.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]); + 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 + ]); var _sr = WordArray.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]); + 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 + ]); var _hl = WordArray.create([0x00000000, 0x5A827999, 0x6ED9EBA1, 0x8F1BBCDC, 0xA953FD4E]); var _hr = WordArray.create([0x50A28BE6, 0x5C4DD124, 0x6D703EF3, 0x7A6D76E9, 0x00000000]); @@ -2857,7 +2895,9 @@ // Swap M[offset_i] = ( - (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) | (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00)); + (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) | + (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00) + ); } // Shortcut var H = this._hash.words; @@ -2942,7 +2982,9 @@ // Add padding dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32); dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = ( - (((nBitsTotal << 8) | (nBitsTotal >>> 24)) & 0x00ff00ff) | (((nBitsTotal << 24) | (nBitsTotal >>> 8)) & 0xff00ff00)); + (((nBitsTotal << 8) | (nBitsTotal >>> 24)) & 0x00ff00ff) | + (((nBitsTotal << 24) | (nBitsTotal >>> 8)) & 0xff00ff00) + ); data.sigBytes = (dataWords.length + 1) * 4; // Hash final blocks @@ -2958,7 +3000,8 @@ var H_i = H[i]; // Swap - H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) | (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00); + H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) | + (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00); } // Return final computed hash @@ -2984,15 +3027,15 @@ } function f3(x, y, z) { - return (((x) | (~ (y))) ^ (z)); + return (((x) | (~(y))) ^ (z)); } function f4(x, y, z) { - return (((x) & (z)) | ((y) & (~ (z)))); + return (((x) & (z)) | ((y) & (~(z)))); } function f5(x, y, z) { - return ((x) ^ ((y) | (~ (z)))); + return ((x) ^ ((y) | (~(z)))); } @@ -3609,7 +3652,7 @@ var StreamCipher = C_lib.StreamCipher = Cipher.extend({ _doFinalize: function() { // Process partial blocks - var finalProcessedBlocks = this._process( !! 'flush'); + var finalProcessedBlocks = this._process(!!'flush'); return finalProcessedBlocks; }, @@ -3890,10 +3933,10 @@ padding.pad(this._data, this.blockSize); // Process final blocks - finalProcessedBlocks = this._process( !! 'flush'); + finalProcessedBlocks = this._process(!!'flush'); } else /* if (this._xformMode == this._DEC_XFORM_MODE) */ { // Process final blocks - finalProcessedBlocks = this._process( !! 'flush'); + finalProcessedBlocks = this._process(!!'flush'); // Unpad data padding.unpad(finalProcessedBlocks); @@ -4837,7 +4880,8 @@ if (invKsRow < 4 || ksRow <= 4) { invKeySchedule[invKsRow] = t; } else { - invKeySchedule[invKsRow] = INV_SUB_MIX_0[SBOX[t >>> 24]] ^ INV_SUB_MIX_1[SBOX[(t >>> 16) & 0xff]] ^ INV_SUB_MIX_2[SBOX[(t >>> 8) & 0xff]] ^ INV_SUB_MIX_3[SBOX[t & 0xff]]; + invKeySchedule[invKsRow] = INV_SUB_MIX_0[SBOX[t >>> 24]] ^ INV_SUB_MIX_1[SBOX[(t >>> 16) & 0xff]] ^ + INV_SUB_MIX_2[SBOX[(t >>> 8) & 0xff]] ^ INV_SUB_MIX_3[SBOX[t & 0xff]]; } } }, @@ -4926,555 +4970,566 @@ // Permuted Choice 1 constants var PC1 = [ - 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]; + 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 + ]; // Permuted Choice 2 constants var PC2 = [ - 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]; + 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 + ]; // Cumulative bit shift constants var BIT_SHIFTS = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28]; // SBOXes and round permutation constants var SBOX_P = [{ - 0x0: 0x808200, - 0x10000000: 0x8000, - 0x20000000: 0x808002, - 0x30000000: 0x2, - 0x40000000: 0x200, - 0x50000000: 0x808202, - 0x60000000: 0x800202, - 0x70000000: 0x800000, - 0x80000000: 0x202, - 0x90000000: 0x800200, - 0xa0000000: 0x8200, - 0xb0000000: 0x808000, - 0xc0000000: 0x8002, - 0xd0000000: 0x800002, - 0xe0000000: 0x0, - 0xf0000000: 0x8202, - 0x8000000: 0x0, - 0x18000000: 0x808202, - 0x28000000: 0x8202, - 0x38000000: 0x8000, - 0x48000000: 0x808200, - 0x58000000: 0x200, - 0x68000000: 0x808002, - 0x78000000: 0x2, - 0x88000000: 0x800200, - 0x98000000: 0x8200, - 0xa8000000: 0x808000, - 0xb8000000: 0x800202, - 0xc8000000: 0x800002, - 0xd8000000: 0x8002, - 0xe8000000: 0x202, - 0xf8000000: 0x800000, - 0x1: 0x8000, - 0x10000001: 0x2, - 0x20000001: 0x808200, - 0x30000001: 0x800000, - 0x40000001: 0x808002, - 0x50000001: 0x8200, - 0x60000001: 0x200, - 0x70000001: 0x800202, - 0x80000001: 0x808202, - 0x90000001: 0x808000, - 0xa0000001: 0x800002, - 0xb0000001: 0x8202, - 0xc0000001: 0x202, - 0xd0000001: 0x800200, - 0xe0000001: 0x8002, - 0xf0000001: 0x0, - 0x8000001: 0x808202, - 0x18000001: 0x808000, - 0x28000001: 0x800000, - 0x38000001: 0x200, - 0x48000001: 0x8000, - 0x58000001: 0x800002, - 0x68000001: 0x2, - 0x78000001: 0x8202, - 0x88000001: 0x8002, - 0x98000001: 0x800202, - 0xa8000001: 0x202, - 0xb8000001: 0x808200, - 0xc8000001: 0x800200, - 0xd8000001: 0x0, - 0xe8000001: 0x8200, - 0xf8000001: 0x808002 - }, { - 0x0: 0x40084010, - 0x1000000: 0x4000, - 0x2000000: 0x80000, - 0x3000000: 0x40080010, - 0x4000000: 0x40000010, - 0x5000000: 0x40084000, - 0x6000000: 0x40004000, - 0x7000000: 0x10, - 0x8000000: 0x84000, - 0x9000000: 0x40004010, - 0xa000000: 0x40000000, - 0xb000000: 0x84010, - 0xc000000: 0x80010, - 0xd000000: 0x0, - 0xe000000: 0x4010, - 0xf000000: 0x40080000, - 0x800000: 0x40004000, - 0x1800000: 0x84010, - 0x2800000: 0x10, - 0x3800000: 0x40004010, - 0x4800000: 0x40084010, - 0x5800000: 0x40000000, - 0x6800000: 0x80000, - 0x7800000: 0x40080010, - 0x8800000: 0x80010, - 0x9800000: 0x0, - 0xa800000: 0x4000, - 0xb800000: 0x40080000, - 0xc800000: 0x40000010, - 0xd800000: 0x84000, - 0xe800000: 0x40084000, - 0xf800000: 0x4010, - 0x10000000: 0x0, - 0x11000000: 0x40080010, - 0x12000000: 0x40004010, - 0x13000000: 0x40084000, - 0x14000000: 0x40080000, - 0x15000000: 0x10, - 0x16000000: 0x84010, - 0x17000000: 0x4000, - 0x18000000: 0x4010, - 0x19000000: 0x80000, - 0x1a000000: 0x80010, - 0x1b000000: 0x40000010, - 0x1c000000: 0x84000, - 0x1d000000: 0x40004000, - 0x1e000000: 0x40000000, - 0x1f000000: 0x40084010, - 0x10800000: 0x84010, - 0x11800000: 0x80000, - 0x12800000: 0x40080000, - 0x13800000: 0x4000, - 0x14800000: 0x40004000, - 0x15800000: 0x40084010, - 0x16800000: 0x10, - 0x17800000: 0x40000000, - 0x18800000: 0x40084000, - 0x19800000: 0x40000010, - 0x1a800000: 0x40004010, - 0x1b800000: 0x80010, - 0x1c800000: 0x0, - 0x1d800000: 0x4010, - 0x1e800000: 0x40080010, - 0x1f800000: 0x84000 - }, { - 0x0: 0x104, - 0x100000: 0x0, - 0x200000: 0x4000100, - 0x300000: 0x10104, - 0x400000: 0x10004, - 0x500000: 0x4000004, - 0x600000: 0x4010104, - 0x700000: 0x4010000, - 0x800000: 0x4000000, - 0x900000: 0x4010100, - 0xa00000: 0x10100, - 0xb00000: 0x4010004, - 0xc00000: 0x4000104, - 0xd00000: 0x10000, - 0xe00000: 0x4, - 0xf00000: 0x100, - 0x80000: 0x4010100, - 0x180000: 0x4010004, - 0x280000: 0x0, - 0x380000: 0x4000100, - 0x480000: 0x4000004, - 0x580000: 0x10000, - 0x680000: 0x10004, - 0x780000: 0x104, - 0x880000: 0x4, - 0x980000: 0x100, - 0xa80000: 0x4010000, - 0xb80000: 0x10104, - 0xc80000: 0x10100, - 0xd80000: 0x4000104, - 0xe80000: 0x4010104, - 0xf80000: 0x4000000, - 0x1000000: 0x4010100, - 0x1100000: 0x10004, - 0x1200000: 0x10000, - 0x1300000: 0x4000100, - 0x1400000: 0x100, - 0x1500000: 0x4010104, - 0x1600000: 0x4000004, - 0x1700000: 0x0, - 0x1800000: 0x4000104, - 0x1900000: 0x4000000, - 0x1a00000: 0x4, - 0x1b00000: 0x10100, - 0x1c00000: 0x4010000, - 0x1d00000: 0x104, - 0x1e00000: 0x10104, - 0x1f00000: 0x4010004, - 0x1080000: 0x4000000, - 0x1180000: 0x104, - 0x1280000: 0x4010100, - 0x1380000: 0x0, - 0x1480000: 0x10004, - 0x1580000: 0x4000100, - 0x1680000: 0x100, - 0x1780000: 0x4010004, - 0x1880000: 0x10000, - 0x1980000: 0x4010104, - 0x1a80000: 0x10104, - 0x1b80000: 0x4000004, - 0x1c80000: 0x4000104, - 0x1d80000: 0x4010000, - 0x1e80000: 0x4, - 0x1f80000: 0x10100 - }, { - 0x0: 0x80401000, - 0x10000: 0x80001040, - 0x20000: 0x401040, - 0x30000: 0x80400000, - 0x40000: 0x0, - 0x50000: 0x401000, - 0x60000: 0x80000040, - 0x70000: 0x400040, - 0x80000: 0x80000000, - 0x90000: 0x400000, - 0xa0000: 0x40, - 0xb0000: 0x80001000, - 0xc0000: 0x80400040, - 0xd0000: 0x1040, - 0xe0000: 0x1000, - 0xf0000: 0x80401040, - 0x8000: 0x80001040, - 0x18000: 0x40, - 0x28000: 0x80400040, - 0x38000: 0x80001000, - 0x48000: 0x401000, - 0x58000: 0x80401040, - 0x68000: 0x0, - 0x78000: 0x80400000, - 0x88000: 0x1000, - 0x98000: 0x80401000, - 0xa8000: 0x400000, - 0xb8000: 0x1040, - 0xc8000: 0x80000000, - 0xd8000: 0x400040, - 0xe8000: 0x401040, - 0xf8000: 0x80000040, - 0x100000: 0x400040, - 0x110000: 0x401000, - 0x120000: 0x80000040, - 0x130000: 0x0, - 0x140000: 0x1040, - 0x150000: 0x80400040, - 0x160000: 0x80401000, - 0x170000: 0x80001040, - 0x180000: 0x80401040, - 0x190000: 0x80000000, - 0x1a0000: 0x80400000, - 0x1b0000: 0x401040, - 0x1c0000: 0x80001000, - 0x1d0000: 0x400000, - 0x1e0000: 0x40, - 0x1f0000: 0x1000, - 0x108000: 0x80400000, - 0x118000: 0x80401040, - 0x128000: 0x0, - 0x138000: 0x401000, - 0x148000: 0x400040, - 0x158000: 0x80000000, - 0x168000: 0x80001040, - 0x178000: 0x40, - 0x188000: 0x80000040, - 0x198000: 0x1000, - 0x1a8000: 0x80001000, - 0x1b8000: 0x80400040, - 0x1c8000: 0x1040, - 0x1d8000: 0x80401000, - 0x1e8000: 0x400000, - 0x1f8000: 0x401040 - }, { - 0x0: 0x80, - 0x1000: 0x1040000, - 0x2000: 0x40000, - 0x3000: 0x20000000, - 0x4000: 0x20040080, - 0x5000: 0x1000080, - 0x6000: 0x21000080, - 0x7000: 0x40080, - 0x8000: 0x1000000, - 0x9000: 0x20040000, - 0xa000: 0x20000080, - 0xb000: 0x21040080, - 0xc000: 0x21040000, - 0xd000: 0x0, - 0xe000: 0x1040080, - 0xf000: 0x21000000, - 0x800: 0x1040080, - 0x1800: 0x21000080, - 0x2800: 0x80, - 0x3800: 0x1040000, - 0x4800: 0x40000, - 0x5800: 0x20040080, - 0x6800: 0x21040000, - 0x7800: 0x20000000, - 0x8800: 0x20040000, - 0x9800: 0x0, - 0xa800: 0x21040080, - 0xb800: 0x1000080, - 0xc800: 0x20000080, - 0xd800: 0x21000000, - 0xe800: 0x1000000, - 0xf800: 0x40080, - 0x10000: 0x40000, - 0x11000: 0x80, - 0x12000: 0x20000000, - 0x13000: 0x21000080, - 0x14000: 0x1000080, - 0x15000: 0x21040000, - 0x16000: 0x20040080, - 0x17000: 0x1000000, - 0x18000: 0x21040080, - 0x19000: 0x21000000, - 0x1a000: 0x1040000, - 0x1b000: 0x20040000, - 0x1c000: 0x40080, - 0x1d000: 0x20000080, - 0x1e000: 0x0, - 0x1f000: 0x1040080, - 0x10800: 0x21000080, - 0x11800: 0x1000000, - 0x12800: 0x1040000, - 0x13800: 0x20040080, - 0x14800: 0x20000000, - 0x15800: 0x1040080, - 0x16800: 0x80, - 0x17800: 0x21040000, - 0x18800: 0x40080, - 0x19800: 0x21040080, - 0x1a800: 0x0, - 0x1b800: 0x21000000, - 0x1c800: 0x1000080, - 0x1d800: 0x40000, - 0x1e800: 0x20040000, - 0x1f800: 0x20000080 - }, { - 0x0: 0x10000008, - 0x100: 0x2000, - 0x200: 0x10200000, - 0x300: 0x10202008, - 0x400: 0x10002000, - 0x500: 0x200000, - 0x600: 0x200008, - 0x700: 0x10000000, - 0x800: 0x0, - 0x900: 0x10002008, - 0xa00: 0x202000, - 0xb00: 0x8, - 0xc00: 0x10200008, - 0xd00: 0x202008, - 0xe00: 0x2008, - 0xf00: 0x10202000, - 0x80: 0x10200000, - 0x180: 0x10202008, - 0x280: 0x8, - 0x380: 0x200000, - 0x480: 0x202008, - 0x580: 0x10000008, - 0x680: 0x10002000, - 0x780: 0x2008, - 0x880: 0x200008, - 0x980: 0x2000, - 0xa80: 0x10002008, - 0xb80: 0x10200008, - 0xc80: 0x0, - 0xd80: 0x10202000, - 0xe80: 0x202000, - 0xf80: 0x10000000, - 0x1000: 0x10002000, - 0x1100: 0x10200008, - 0x1200: 0x10202008, - 0x1300: 0x2008, - 0x1400: 0x200000, - 0x1500: 0x10000000, - 0x1600: 0x10000008, - 0x1700: 0x202000, - 0x1800: 0x202008, - 0x1900: 0x0, - 0x1a00: 0x8, - 0x1b00: 0x10200000, - 0x1c00: 0x2000, - 0x1d00: 0x10002008, - 0x1e00: 0x10202000, - 0x1f00: 0x200008, - 0x1080: 0x8, - 0x1180: 0x202000, - 0x1280: 0x200000, - 0x1380: 0x10000008, - 0x1480: 0x10002000, - 0x1580: 0x2008, - 0x1680: 0x10202008, - 0x1780: 0x10200000, - 0x1880: 0x10202000, - 0x1980: 0x10200008, - 0x1a80: 0x2000, - 0x1b80: 0x202008, - 0x1c80: 0x200008, - 0x1d80: 0x0, - 0x1e80: 0x10000000, - 0x1f80: 0x10002008 - }, { - 0x0: 0x100000, - 0x10: 0x2000401, - 0x20: 0x400, - 0x30: 0x100401, - 0x40: 0x2100401, - 0x50: 0x0, - 0x60: 0x1, - 0x70: 0x2100001, - 0x80: 0x2000400, - 0x90: 0x100001, - 0xa0: 0x2000001, - 0xb0: 0x2100400, - 0xc0: 0x2100000, - 0xd0: 0x401, - 0xe0: 0x100400, - 0xf0: 0x2000000, - 0x8: 0x2100001, - 0x18: 0x0, - 0x28: 0x2000401, - 0x38: 0x2100400, - 0x48: 0x100000, - 0x58: 0x2000001, - 0x68: 0x2000000, - 0x78: 0x401, - 0x88: 0x100401, - 0x98: 0x2000400, - 0xa8: 0x2100000, - 0xb8: 0x100001, - 0xc8: 0x400, - 0xd8: 0x2100401, - 0xe8: 0x1, - 0xf8: 0x100400, - 0x100: 0x2000000, - 0x110: 0x100000, - 0x120: 0x2000401, - 0x130: 0x2100001, - 0x140: 0x100001, - 0x150: 0x2000400, - 0x160: 0x2100400, - 0x170: 0x100401, - 0x180: 0x401, - 0x190: 0x2100401, - 0x1a0: 0x100400, - 0x1b0: 0x1, - 0x1c0: 0x0, - 0x1d0: 0x2100000, - 0x1e0: 0x2000001, - 0x1f0: 0x400, - 0x108: 0x100400, - 0x118: 0x2000401, - 0x128: 0x2100001, - 0x138: 0x1, - 0x148: 0x2000000, - 0x158: 0x100000, - 0x168: 0x401, - 0x178: 0x2100400, - 0x188: 0x2000001, - 0x198: 0x2100000, - 0x1a8: 0x0, - 0x1b8: 0x2100401, - 0x1c8: 0x100401, - 0x1d8: 0x400, - 0x1e8: 0x2000400, - 0x1f8: 0x100001 - }, { - 0x0: 0x8000820, - 0x1: 0x20000, - 0x2: 0x8000000, - 0x3: 0x20, - 0x4: 0x20020, - 0x5: 0x8020820, - 0x6: 0x8020800, - 0x7: 0x800, - 0x8: 0x8020000, - 0x9: 0x8000800, - 0xa: 0x20800, - 0xb: 0x8020020, - 0xc: 0x820, - 0xd: 0x0, - 0xe: 0x8000020, - 0xf: 0x20820, - 0x80000000: 0x800, - 0x80000001: 0x8020820, - 0x80000002: 0x8000820, - 0x80000003: 0x8000000, - 0x80000004: 0x8020000, - 0x80000005: 0x20800, - 0x80000006: 0x20820, - 0x80000007: 0x20, - 0x80000008: 0x8000020, - 0x80000009: 0x820, - 0x8000000a: 0x20020, - 0x8000000b: 0x8020800, - 0x8000000c: 0x0, - 0x8000000d: 0x8020020, - 0x8000000e: 0x8000800, - 0x8000000f: 0x20000, - 0x10: 0x20820, - 0x11: 0x8020800, - 0x12: 0x20, - 0x13: 0x800, - 0x14: 0x8000800, - 0x15: 0x8000020, - 0x16: 0x8020020, - 0x17: 0x20000, - 0x18: 0x0, - 0x19: 0x20020, - 0x1a: 0x8020000, - 0x1b: 0x8000820, - 0x1c: 0x8020820, - 0x1d: 0x20800, - 0x1e: 0x820, - 0x1f: 0x8000000, - 0x80000010: 0x20000, - 0x80000011: 0x800, - 0x80000012: 0x8020020, - 0x80000013: 0x20820, - 0x80000014: 0x20, - 0x80000015: 0x8020000, - 0x80000016: 0x8000000, - 0x80000017: 0x8000820, - 0x80000018: 0x8020820, - 0x80000019: 0x8000020, - 0x8000001a: 0x8000800, - 0x8000001b: 0x0, - 0x8000001c: 0x20800, - 0x8000001d: 0x820, - 0x8000001e: 0x20020, - 0x8000001f: 0x8020800 - }]; + 0x0: 0x808200, + 0x10000000: 0x8000, + 0x20000000: 0x808002, + 0x30000000: 0x2, + 0x40000000: 0x200, + 0x50000000: 0x808202, + 0x60000000: 0x800202, + 0x70000000: 0x800000, + 0x80000000: 0x202, + 0x90000000: 0x800200, + 0xa0000000: 0x8200, + 0xb0000000: 0x808000, + 0xc0000000: 0x8002, + 0xd0000000: 0x800002, + 0xe0000000: 0x0, + 0xf0000000: 0x8202, + 0x8000000: 0x0, + 0x18000000: 0x808202, + 0x28000000: 0x8202, + 0x38000000: 0x8000, + 0x48000000: 0x808200, + 0x58000000: 0x200, + 0x68000000: 0x808002, + 0x78000000: 0x2, + 0x88000000: 0x800200, + 0x98000000: 0x8200, + 0xa8000000: 0x808000, + 0xb8000000: 0x800202, + 0xc8000000: 0x800002, + 0xd8000000: 0x8002, + 0xe8000000: 0x202, + 0xf8000000: 0x800000, + 0x1: 0x8000, + 0x10000001: 0x2, + 0x20000001: 0x808200, + 0x30000001: 0x800000, + 0x40000001: 0x808002, + 0x50000001: 0x8200, + 0x60000001: 0x200, + 0x70000001: 0x800202, + 0x80000001: 0x808202, + 0x90000001: 0x808000, + 0xa0000001: 0x800002, + 0xb0000001: 0x8202, + 0xc0000001: 0x202, + 0xd0000001: 0x800200, + 0xe0000001: 0x8002, + 0xf0000001: 0x0, + 0x8000001: 0x808202, + 0x18000001: 0x808000, + 0x28000001: 0x800000, + 0x38000001: 0x200, + 0x48000001: 0x8000, + 0x58000001: 0x800002, + 0x68000001: 0x2, + 0x78000001: 0x8202, + 0x88000001: 0x8002, + 0x98000001: 0x800202, + 0xa8000001: 0x202, + 0xb8000001: 0x808200, + 0xc8000001: 0x800200, + 0xd8000001: 0x0, + 0xe8000001: 0x8200, + 0xf8000001: 0x808002 + }, + { + 0x0: 0x40084010, + 0x1000000: 0x4000, + 0x2000000: 0x80000, + 0x3000000: 0x40080010, + 0x4000000: 0x40000010, + 0x5000000: 0x40084000, + 0x6000000: 0x40004000, + 0x7000000: 0x10, + 0x8000000: 0x84000, + 0x9000000: 0x40004010, + 0xa000000: 0x40000000, + 0xb000000: 0x84010, + 0xc000000: 0x80010, + 0xd000000: 0x0, + 0xe000000: 0x4010, + 0xf000000: 0x40080000, + 0x800000: 0x40004000, + 0x1800000: 0x84010, + 0x2800000: 0x10, + 0x3800000: 0x40004010, + 0x4800000: 0x40084010, + 0x5800000: 0x40000000, + 0x6800000: 0x80000, + 0x7800000: 0x40080010, + 0x8800000: 0x80010, + 0x9800000: 0x0, + 0xa800000: 0x4000, + 0xb800000: 0x40080000, + 0xc800000: 0x40000010, + 0xd800000: 0x84000, + 0xe800000: 0x40084000, + 0xf800000: 0x4010, + 0x10000000: 0x0, + 0x11000000: 0x40080010, + 0x12000000: 0x40004010, + 0x13000000: 0x40084000, + 0x14000000: 0x40080000, + 0x15000000: 0x10, + 0x16000000: 0x84010, + 0x17000000: 0x4000, + 0x18000000: 0x4010, + 0x19000000: 0x80000, + 0x1a000000: 0x80010, + 0x1b000000: 0x40000010, + 0x1c000000: 0x84000, + 0x1d000000: 0x40004000, + 0x1e000000: 0x40000000, + 0x1f000000: 0x40084010, + 0x10800000: 0x84010, + 0x11800000: 0x80000, + 0x12800000: 0x40080000, + 0x13800000: 0x4000, + 0x14800000: 0x40004000, + 0x15800000: 0x40084010, + 0x16800000: 0x10, + 0x17800000: 0x40000000, + 0x18800000: 0x40084000, + 0x19800000: 0x40000010, + 0x1a800000: 0x40004010, + 0x1b800000: 0x80010, + 0x1c800000: 0x0, + 0x1d800000: 0x4010, + 0x1e800000: 0x40080010, + 0x1f800000: 0x84000 + }, + { + 0x0: 0x104, + 0x100000: 0x0, + 0x200000: 0x4000100, + 0x300000: 0x10104, + 0x400000: 0x10004, + 0x500000: 0x4000004, + 0x600000: 0x4010104, + 0x700000: 0x4010000, + 0x800000: 0x4000000, + 0x900000: 0x4010100, + 0xa00000: 0x10100, + 0xb00000: 0x4010004, + 0xc00000: 0x4000104, + 0xd00000: 0x10000, + 0xe00000: 0x4, + 0xf00000: 0x100, + 0x80000: 0x4010100, + 0x180000: 0x4010004, + 0x280000: 0x0, + 0x380000: 0x4000100, + 0x480000: 0x4000004, + 0x580000: 0x10000, + 0x680000: 0x10004, + 0x780000: 0x104, + 0x880000: 0x4, + 0x980000: 0x100, + 0xa80000: 0x4010000, + 0xb80000: 0x10104, + 0xc80000: 0x10100, + 0xd80000: 0x4000104, + 0xe80000: 0x4010104, + 0xf80000: 0x4000000, + 0x1000000: 0x4010100, + 0x1100000: 0x10004, + 0x1200000: 0x10000, + 0x1300000: 0x4000100, + 0x1400000: 0x100, + 0x1500000: 0x4010104, + 0x1600000: 0x4000004, + 0x1700000: 0x0, + 0x1800000: 0x4000104, + 0x1900000: 0x4000000, + 0x1a00000: 0x4, + 0x1b00000: 0x10100, + 0x1c00000: 0x4010000, + 0x1d00000: 0x104, + 0x1e00000: 0x10104, + 0x1f00000: 0x4010004, + 0x1080000: 0x4000000, + 0x1180000: 0x104, + 0x1280000: 0x4010100, + 0x1380000: 0x0, + 0x1480000: 0x10004, + 0x1580000: 0x4000100, + 0x1680000: 0x100, + 0x1780000: 0x4010004, + 0x1880000: 0x10000, + 0x1980000: 0x4010104, + 0x1a80000: 0x10104, + 0x1b80000: 0x4000004, + 0x1c80000: 0x4000104, + 0x1d80000: 0x4010000, + 0x1e80000: 0x4, + 0x1f80000: 0x10100 + }, + { + 0x0: 0x80401000, + 0x10000: 0x80001040, + 0x20000: 0x401040, + 0x30000: 0x80400000, + 0x40000: 0x0, + 0x50000: 0x401000, + 0x60000: 0x80000040, + 0x70000: 0x400040, + 0x80000: 0x80000000, + 0x90000: 0x400000, + 0xa0000: 0x40, + 0xb0000: 0x80001000, + 0xc0000: 0x80400040, + 0xd0000: 0x1040, + 0xe0000: 0x1000, + 0xf0000: 0x80401040, + 0x8000: 0x80001040, + 0x18000: 0x40, + 0x28000: 0x80400040, + 0x38000: 0x80001000, + 0x48000: 0x401000, + 0x58000: 0x80401040, + 0x68000: 0x0, + 0x78000: 0x80400000, + 0x88000: 0x1000, + 0x98000: 0x80401000, + 0xa8000: 0x400000, + 0xb8000: 0x1040, + 0xc8000: 0x80000000, + 0xd8000: 0x400040, + 0xe8000: 0x401040, + 0xf8000: 0x80000040, + 0x100000: 0x400040, + 0x110000: 0x401000, + 0x120000: 0x80000040, + 0x130000: 0x0, + 0x140000: 0x1040, + 0x150000: 0x80400040, + 0x160000: 0x80401000, + 0x170000: 0x80001040, + 0x180000: 0x80401040, + 0x190000: 0x80000000, + 0x1a0000: 0x80400000, + 0x1b0000: 0x401040, + 0x1c0000: 0x80001000, + 0x1d0000: 0x400000, + 0x1e0000: 0x40, + 0x1f0000: 0x1000, + 0x108000: 0x80400000, + 0x118000: 0x80401040, + 0x128000: 0x0, + 0x138000: 0x401000, + 0x148000: 0x400040, + 0x158000: 0x80000000, + 0x168000: 0x80001040, + 0x178000: 0x40, + 0x188000: 0x80000040, + 0x198000: 0x1000, + 0x1a8000: 0x80001000, + 0x1b8000: 0x80400040, + 0x1c8000: 0x1040, + 0x1d8000: 0x80401000, + 0x1e8000: 0x400000, + 0x1f8000: 0x401040 + }, + { + 0x0: 0x80, + 0x1000: 0x1040000, + 0x2000: 0x40000, + 0x3000: 0x20000000, + 0x4000: 0x20040080, + 0x5000: 0x1000080, + 0x6000: 0x21000080, + 0x7000: 0x40080, + 0x8000: 0x1000000, + 0x9000: 0x20040000, + 0xa000: 0x20000080, + 0xb000: 0x21040080, + 0xc000: 0x21040000, + 0xd000: 0x0, + 0xe000: 0x1040080, + 0xf000: 0x21000000, + 0x800: 0x1040080, + 0x1800: 0x21000080, + 0x2800: 0x80, + 0x3800: 0x1040000, + 0x4800: 0x40000, + 0x5800: 0x20040080, + 0x6800: 0x21040000, + 0x7800: 0x20000000, + 0x8800: 0x20040000, + 0x9800: 0x0, + 0xa800: 0x21040080, + 0xb800: 0x1000080, + 0xc800: 0x20000080, + 0xd800: 0x21000000, + 0xe800: 0x1000000, + 0xf800: 0x40080, + 0x10000: 0x40000, + 0x11000: 0x80, + 0x12000: 0x20000000, + 0x13000: 0x21000080, + 0x14000: 0x1000080, + 0x15000: 0x21040000, + 0x16000: 0x20040080, + 0x17000: 0x1000000, + 0x18000: 0x21040080, + 0x19000: 0x21000000, + 0x1a000: 0x1040000, + 0x1b000: 0x20040000, + 0x1c000: 0x40080, + 0x1d000: 0x20000080, + 0x1e000: 0x0, + 0x1f000: 0x1040080, + 0x10800: 0x21000080, + 0x11800: 0x1000000, + 0x12800: 0x1040000, + 0x13800: 0x20040080, + 0x14800: 0x20000000, + 0x15800: 0x1040080, + 0x16800: 0x80, + 0x17800: 0x21040000, + 0x18800: 0x40080, + 0x19800: 0x21040080, + 0x1a800: 0x0, + 0x1b800: 0x21000000, + 0x1c800: 0x1000080, + 0x1d800: 0x40000, + 0x1e800: 0x20040000, + 0x1f800: 0x20000080 + }, + { + 0x0: 0x10000008, + 0x100: 0x2000, + 0x200: 0x10200000, + 0x300: 0x10202008, + 0x400: 0x10002000, + 0x500: 0x200000, + 0x600: 0x200008, + 0x700: 0x10000000, + 0x800: 0x0, + 0x900: 0x10002008, + 0xa00: 0x202000, + 0xb00: 0x8, + 0xc00: 0x10200008, + 0xd00: 0x202008, + 0xe00: 0x2008, + 0xf00: 0x10202000, + 0x80: 0x10200000, + 0x180: 0x10202008, + 0x280: 0x8, + 0x380: 0x200000, + 0x480: 0x202008, + 0x580: 0x10000008, + 0x680: 0x10002000, + 0x780: 0x2008, + 0x880: 0x200008, + 0x980: 0x2000, + 0xa80: 0x10002008, + 0xb80: 0x10200008, + 0xc80: 0x0, + 0xd80: 0x10202000, + 0xe80: 0x202000, + 0xf80: 0x10000000, + 0x1000: 0x10002000, + 0x1100: 0x10200008, + 0x1200: 0x10202008, + 0x1300: 0x2008, + 0x1400: 0x200000, + 0x1500: 0x10000000, + 0x1600: 0x10000008, + 0x1700: 0x202000, + 0x1800: 0x202008, + 0x1900: 0x0, + 0x1a00: 0x8, + 0x1b00: 0x10200000, + 0x1c00: 0x2000, + 0x1d00: 0x10002008, + 0x1e00: 0x10202000, + 0x1f00: 0x200008, + 0x1080: 0x8, + 0x1180: 0x202000, + 0x1280: 0x200000, + 0x1380: 0x10000008, + 0x1480: 0x10002000, + 0x1580: 0x2008, + 0x1680: 0x10202008, + 0x1780: 0x10200000, + 0x1880: 0x10202000, + 0x1980: 0x10200008, + 0x1a80: 0x2000, + 0x1b80: 0x202008, + 0x1c80: 0x200008, + 0x1d80: 0x0, + 0x1e80: 0x10000000, + 0x1f80: 0x10002008 + }, + { + 0x0: 0x100000, + 0x10: 0x2000401, + 0x20: 0x400, + 0x30: 0x100401, + 0x40: 0x2100401, + 0x50: 0x0, + 0x60: 0x1, + 0x70: 0x2100001, + 0x80: 0x2000400, + 0x90: 0x100001, + 0xa0: 0x2000001, + 0xb0: 0x2100400, + 0xc0: 0x2100000, + 0xd0: 0x401, + 0xe0: 0x100400, + 0xf0: 0x2000000, + 0x8: 0x2100001, + 0x18: 0x0, + 0x28: 0x2000401, + 0x38: 0x2100400, + 0x48: 0x100000, + 0x58: 0x2000001, + 0x68: 0x2000000, + 0x78: 0x401, + 0x88: 0x100401, + 0x98: 0x2000400, + 0xa8: 0x2100000, + 0xb8: 0x100001, + 0xc8: 0x400, + 0xd8: 0x2100401, + 0xe8: 0x1, + 0xf8: 0x100400, + 0x100: 0x2000000, + 0x110: 0x100000, + 0x120: 0x2000401, + 0x130: 0x2100001, + 0x140: 0x100001, + 0x150: 0x2000400, + 0x160: 0x2100400, + 0x170: 0x100401, + 0x180: 0x401, + 0x190: 0x2100401, + 0x1a0: 0x100400, + 0x1b0: 0x1, + 0x1c0: 0x0, + 0x1d0: 0x2100000, + 0x1e0: 0x2000001, + 0x1f0: 0x400, + 0x108: 0x100400, + 0x118: 0x2000401, + 0x128: 0x2100001, + 0x138: 0x1, + 0x148: 0x2000000, + 0x158: 0x100000, + 0x168: 0x401, + 0x178: 0x2100400, + 0x188: 0x2000001, + 0x198: 0x2100000, + 0x1a8: 0x0, + 0x1b8: 0x2100401, + 0x1c8: 0x100401, + 0x1d8: 0x400, + 0x1e8: 0x2000400, + 0x1f8: 0x100001 + }, + { + 0x0: 0x8000820, + 0x1: 0x20000, + 0x2: 0x8000000, + 0x3: 0x20, + 0x4: 0x20020, + 0x5: 0x8020820, + 0x6: 0x8020800, + 0x7: 0x800, + 0x8: 0x8020000, + 0x9: 0x8000800, + 0xa: 0x20800, + 0xb: 0x8020020, + 0xc: 0x820, + 0xd: 0x0, + 0xe: 0x8000020, + 0xf: 0x20820, + 0x80000000: 0x800, + 0x80000001: 0x8020820, + 0x80000002: 0x8000820, + 0x80000003: 0x8000000, + 0x80000004: 0x8020000, + 0x80000005: 0x20800, + 0x80000006: 0x20820, + 0x80000007: 0x20, + 0x80000008: 0x8000020, + 0x80000009: 0x820, + 0x8000000a: 0x20020, + 0x8000000b: 0x8020800, + 0x8000000c: 0x0, + 0x8000000d: 0x8020020, + 0x8000000e: 0x8000800, + 0x8000000f: 0x20000, + 0x10: 0x20820, + 0x11: 0x8020800, + 0x12: 0x20, + 0x13: 0x800, + 0x14: 0x8000800, + 0x15: 0x8000020, + 0x16: 0x8020020, + 0x17: 0x20000, + 0x18: 0x0, + 0x19: 0x20020, + 0x1a: 0x8020000, + 0x1b: 0x8000820, + 0x1c: 0x8020820, + 0x1d: 0x20800, + 0x1e: 0x820, + 0x1f: 0x8000000, + 0x80000010: 0x20000, + 0x80000011: 0x800, + 0x80000012: 0x8020020, + 0x80000013: 0x20820, + 0x80000014: 0x20, + 0x80000015: 0x8020000, + 0x80000016: 0x8000000, + 0x80000017: 0x8000820, + 0x80000018: 0x8020820, + 0x80000019: 0x8000020, + 0x8000001a: 0x8000800, + 0x8000001b: 0x0, + 0x8000001c: 0x20800, + 0x8000001d: 0x820, + 0x8000001e: 0x20020, + 0x8000001f: 0x8020800 + } + ]; // Masks that select the SBOX input var SBOX_MASK = [ - 0xf8000001, 0x1f800000, 0x01f80000, 0x001f8000, - 0x0001f800, 0x00001f80, 0x000001f8, 0x8000001f]; + 0xf8000001, 0x1f800000, 0x01f80000, 0x001f8000, + 0x0001f800, 0x00001f80, 0x000001f8, 0x8000001f + ]; /** * DES block cipher algorithm. @@ -5809,19 +5864,25 @@ // Swap endian for (var i = 0; i < 4; i++) { - K[i] = (((K[i] << 8) | (K[i] >>> 24)) & 0x00ff00ff) | (((K[i] << 24) | (K[i] >>> 8)) & 0xff00ff00); + K[i] = (((K[i] << 8) | (K[i] >>> 24)) & 0x00ff00ff) | + (((K[i] << 24) | (K[i] >>> 8)) & 0xff00ff00); } // Generate initial state values var X = this._X = [ - K[0], (K[3] << 16) | (K[2] >>> 16), - K[1], (K[0] << 16) | (K[3] >>> 16), - K[2], (K[1] << 16) | (K[0] >>> 16), - K[3], (K[2] << 16) | (K[1] >>> 16)]; + K[0], (K[3] << 16) | (K[2] >>> 16), + K[1], (K[0] << 16) | (K[3] >>> 16), + K[2], (K[1] << 16) | (K[0] >>> 16), + K[3], (K[2] << 16) | (K[1] >>> 16) + ]; // Generate initial counter values var C = this._C = [ - (K[2] << 16) | (K[2] >>> 16), (K[0] & 0xffff0000) | (K[1] & 0x0000ffff), (K[3] << 16) | (K[3] >>> 16), (K[1] & 0xffff0000) | (K[2] & 0x0000ffff), (K[0] << 16) | (K[0] >>> 16), (K[2] & 0xffff0000) | (K[3] & 0x0000ffff), (K[1] << 16) | (K[1] >>> 16), (K[3] & 0xffff0000) | (K[0] & 0x0000ffff)]; + (K[2] << 16) | (K[2] >>> 16), (K[0] & 0xffff0000) | (K[1] & 0x0000ffff), + (K[3] << 16) | (K[3] >>> 16), (K[1] & 0xffff0000) | (K[2] & 0x0000ffff), + (K[0] << 16) | (K[0] >>> 16), (K[2] & 0xffff0000) | (K[3] & 0x0000ffff), + (K[1] << 16) | (K[1] >>> 16), (K[3] & 0xffff0000) | (K[0] & 0x0000ffff) + ]; // Carry bit this._b = 0; @@ -5881,7 +5942,8 @@ for (var i = 0; i < 4; i++) { // Swap endian - S[i] = (((S[i] << 8) | (S[i] >>> 24)) & 0x00ff00ff) | (((S[i] << 24) | (S[i] >>> 8)) & 0xff00ff00); + S[i] = (((S[i] << 8) | (S[i] >>> 24)) & 0x00ff00ff) | + (((S[i] << 24) | (S[i] >>> 8)) & 0xff00ff00); // Encrypt M[offset + i] ^= S[i]; @@ -5980,14 +6042,19 @@ // Generate initial state values var X = this._X = [ - K[0], (K[3] << 16) | (K[2] >>> 16), - K[1], (K[0] << 16) | (K[3] >>> 16), - K[2], (K[1] << 16) | (K[0] >>> 16), - K[3], (K[2] << 16) | (K[1] >>> 16)]; + K[0], (K[3] << 16) | (K[2] >>> 16), + K[1], (K[0] << 16) | (K[3] >>> 16), + K[2], (K[1] << 16) | (K[0] >>> 16), + K[3], (K[2] << 16) | (K[1] >>> 16) + ]; // Generate initial counter values var C = this._C = [ - (K[2] << 16) | (K[2] >>> 16), (K[0] & 0xffff0000) | (K[1] & 0x0000ffff), (K[3] << 16) | (K[3] >>> 16), (K[1] & 0xffff0000) | (K[2] & 0x0000ffff), (K[0] << 16) | (K[0] >>> 16), (K[2] & 0xffff0000) | (K[3] & 0x0000ffff), (K[1] << 16) | (K[1] >>> 16), (K[3] & 0xffff0000) | (K[0] & 0x0000ffff)]; + (K[2] << 16) | (K[2] >>> 16), (K[0] & 0xffff0000) | (K[1] & 0x0000ffff), + (K[3] << 16) | (K[3] >>> 16), (K[1] & 0xffff0000) | (K[2] & 0x0000ffff), + (K[0] << 16) | (K[0] >>> 16), (K[2] & 0xffff0000) | (K[3] & 0x0000ffff), + (K[1] << 16) | (K[1] >>> 16), (K[3] & 0xffff0000) | (K[0] & 0x0000ffff) + ]; // Carry bit this._b = 0; @@ -6047,7 +6114,8 @@ for (var i = 0; i < 4; i++) { // Swap endian - S[i] = (((S[i] << 8) | (S[i] >>> 24)) & 0x00ff00ff) | (((S[i] << 24) | (S[i] >>> 8)) & 0xff00ff00); + S[i] = (((S[i] << 8) | (S[i] >>> 24)) & 0x00ff00ff) | + (((S[i] << 24) | (S[i] >>> 8)) & 0xff00ff00); // Encrypt M[offset + i] ^= S[i]; diff --git a/JS/drpy2.js b/JS/drpy2.js index 9750d8f..5be0e9c 100644 --- a/JS/drpy2.js +++ b/JS/drpy2.js @@ -5,7 +5,9 @@ import './node-rsa.js'; import './pako.min.js'; // import JSEncrypt from './jsencrypt.js'; // 会导致壳子崩溃的 import 模板 from './模板.js' -import { gbkTool } from './gbk.js' +import { + gbkTool +} from './gbk.js' import './json5.js' // 下面是尝试对jinja2库进行更换 import './jinja.js' @@ -450,7 +452,8 @@ function window_b64() { */ if (typeof atob !== 'function' || typeof btoa !== 'function') { var { - atob, btoa + atob, + btoa } = window_b64(); } @@ -829,7 +832,8 @@ function Utf8ArrayToStr(array) { char2 = array[i++]; char3 = array[i++]; out += String.fromCharCode( - ((c & 0x0f) << 12) | ((char2 & 0x3f) << 6) | ((char3 & 0x3f) << 0)); + ((c & 0x0f) << 12) | ((char2 & 0x3f) << 6) | ((char3 & 0x3f) << 0) + ); break; } } @@ -3103,36 +3107,39 @@ function getOriginalJs(js_code) { } let decode_funcs = [ - (text) => { - try { - return ungzip(text) - } catch (e) { - logger('非gzip加密'); - return '' - } - }, (text) => { - try { - return base64Decode(text) - } catch (e) { - logger('非b64加密'); - return '' - } - }, (text) => { - try { - return aes_decrypt(text) - } catch (e) { - logger('非aes加密'); - return '' - } - }, (text) => { - try { - return RSA.decode(text, rsa_private_key, null) - } catch (e) { - logger('非rsa加密'); - return '' - } - }, - // (text)=>{try {return NODERSA.decryptRSAWithPrivateKey(text, RSA.getPrivateKey(rsa_private_key).replace(/RSA /g,''), {options: {environment: "browser", encryptionScheme: 'pkcs1',b:'1024'}});} catch (e) {log(e.message);return ''}}, + (text) => { + try { + return ungzip(text) + } catch (e) { + logger('非gzip加密'); + return '' + } + }, + (text) => { + try { + return base64Decode(text) + } catch (e) { + logger('非b64加密'); + return '' + } + }, + (text) => { + try { + return aes_decrypt(text) + } catch (e) { + logger('非aes加密'); + return '' + } + }, + (text) => { + try { + return RSA.decode(text, rsa_private_key, null) + } catch (e) { + logger('非rsa加密'); + return '' + } + }, + // (text)=>{try {return NODERSA.decryptRSAWithPrivateKey(text, RSA.getPrivateKey(rsa_private_key).replace(/RSA /g,''), {options: {environment: "browser", encryptionScheme: 'pkcs1',b:'1024'}});} catch (e) {log(e.message);return ''}}, ] let func_index = 0 while (!current_match.test(decode_content)) { @@ -3313,7 +3320,7 @@ function init(ext) { rule.sniffer = false; } rule.sniffer = rule.hasOwnProperty('sniffer') ? rule.sniffer : ''; - rule.sniffer = !! (rule.sniffer && rule.sniffer !== '0' && rule.sniffer !== 'false'); + rule.sniffer = !!(rule.sniffer && rule.sniffer !== '0' && rule.sniffer !== 'false'); rule.isVideo = rule.hasOwnProperty('isVideo') ? rule.isVideo : ''; if (rule.sniffer && !rule.isVideo) { // 默认辅助嗅探自动增强嗅探规则 diff --git a/JS/drpy2.min.js b/JS/drpy2.min.js index 36a497e..130d2a8 100644 --- a/JS/drpy2.min.js +++ b/JS/drpy2.min.js @@ -4,7 +4,9 @@ import "./jsencrypt.js"; import "./node-rsa.js"; import "./pako.min.js"; import 模板 from "./模板.js"; -import { gbkTool } from "./gbk.js"; +import { + gbkTool +} from "./gbk.js"; import "./json5.js"; import "./jinja.js"; const _jinja2 = cheerio.jinja2; @@ -25,12 +27,14 @@ function init_test() { console.log(JSON.stringify(rule)); console.log("init_test_end") } + function ocr_demo_test() { let img_base64 = `iVBORw0KGgoAAAANSUhEUgAAAIAAAAAoBAMAAADEX+97AAAAG1BMVEXz+/4thQTa7N6QwIFFkyNeokKozqDB3b93sWHFR+MEAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABN0lEQVRIie2TQU+DQBCFt9vScvQpxR4xrcSjJCZ67JDGXsX+AdR4B3vpsSYm/m2HXaRLmuySepR3Gdidb/btDAjRq5dT96eCMlfBuzi1QLZUoZy2yz5sOvI+9iomaPEZ6nWnEtxqIyiM1RcAy44GNDhBXUjot/VVNweV1ah68FqWRyjKIOqAcyYF6rGcmpYnHzGt3fycNoMw0d3/THFu7hFSJ/8OXO6iTM8/KSg09obAzIHLO250LgQ0txOZSfgrV4Exdw98uGycJ0ErAeExZGhOmFHV9zHO6qVSj0MpLq7xZON56o++MjlsEgfVhbQWWME+xQX7J4V6zfi9A1Ly9rP1BvEXp+BbVJ/M77n+wfOIDVp51pZ4iBxvmj9AGrtvry6emwfKnVkW+ZRKd5ZNMvob36vXP9YPDmQki8QiCFAAAAAASUVORK5CYII=`; OcrApi.api = OCR_API; let code = OcrApi.classification(img_base64); log("测试验证码图片的ocr识别结果为:" + code) } + function rsa_demo_test() { let t1 = (new Date).getTime(); let pkcs1_public = ` @@ -184,6 +188,7 @@ m7mp8il0kaftHdSxTbspG3tZ2fjIiFIZkLEOmRpd7ogWumgOajzUdA== let t2 = (new Date).getTime(); console.log("rsa_demo_test 测试耗时:" + (t2 - t1) + "毫秒") } + function pre() { if (typeof rule.预处理 === "string" && rule.预处理 && rule.预处理.trim()) { let code = rule.预处理.trim(); @@ -272,6 +277,7 @@ function window_b64() { } return out } + function atob(str) { var c1, c2, c3, c4; var i, len, out; @@ -312,7 +318,8 @@ function window_b64() { } if (typeof atob !== "function" || typeof btoa !== "function") { var { - atob, btoa + atob, + btoa } = window_b64() } if (typeof Object.assign !== "function") { @@ -463,6 +470,7 @@ function 是否正版(vipUrl) { let flag = new RegExp("qq.com|iqiyi.com|youku.com|mgtv.com|bilibili.com|sohu.com|ixigua.com|pptv.com|miguvideo.com|le.com|1905.com|fun.tv"); return flag.test(vipUrl) } + function urlDeal(vipUrl) { if (!vipUrl) { return "" @@ -475,6 +483,7 @@ function urlDeal(vipUrl) { } return vipUrl } + function setResult(d) { if (!Array.isArray(d)) { return [] @@ -511,16 +520,19 @@ function setResult(d) { }); return VODS } + function setResult2(res) { VODS = res.list || []; return VODS } + function setHomeResult(res) { if (!res || typeof res !== "object") { return [] } return setResult(res.list) } + function rc(js) { if (js === "maomi_aes.js") { var a = CryptoJS.enc.Utf8.parse("625222f9149e961d"); @@ -546,6 +558,7 @@ function rc(js) { } return {} } + function maoss(jxurl, ref, key) { fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); eval(getCryptoJS()); @@ -588,10 +601,12 @@ function maoss(jxurl, ref, key) { return "" } } + function urlencode(str) { str = (str + "").toString(); return encodeURIComponent(str).replace(/!/g, "%21").replace(/'/g, "%27").replace(/\(/g, "%28").replace(/\)/g, "%29").replace(/\*/g, "%2A").replace(/%20/g, "+") } + function encodeUrl(str) { if (typeof encodeURI == "function") { return encodeURI(str) @@ -600,19 +615,24 @@ function encodeUrl(str) { return encodeURIComponent(str).replace(/%2F/g, "/").replace(/%3F/g, "?").replace(/%3A/g, ":").replace(/%40/g, "@").replace(/%3D/g, "=").replace(/%3A/g, ":").replace(/%2C/g, ",").replace(/%2B/g, "+").replace(/%24/g, "$") } } + function base64Encode(text) { return CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(text)) } + function base64Decode(text) { return CryptoJS.enc.Utf8.stringify(CryptoJS.enc.Base64.parse(text)) } + function md5(text) { return CryptoJS.MD5(text).toString() } + function uint8ArrayToBase64(uint8Array) { let binaryString = String.fromCharCode.apply(null, Array.from(uint8Array)); return btoa(binaryString) } + function Utf8ArrayToStr(array) { var out, i, len, c; var char2, char3; @@ -646,10 +666,12 @@ function Utf8ArrayToStr(array) { } return out } + function gzip(str) { let arr = pako.gzip(str, {}); return uint8ArrayToBase64(arr) } + function ungzip(b64Data) { let strData = atob(b64Data); const charData = strData.split("").map(function(x) { @@ -659,6 +681,7 @@ function ungzip(b64Data) { const data = pako.inflate(binData); return Utf8ArrayToStr(data) } + function encodeStr(input, encoding) { encoding = encoding || "gbk"; if (encoding.startsWith("gb")) { @@ -667,6 +690,7 @@ function encodeStr(input, encoding) { } return input } + function decodeStr(input, encoding) { encoding = encoding || "gbk"; if (encoding.startsWith("gb")) { @@ -675,6 +699,7 @@ function decodeStr(input, encoding) { } return input } + function getCryptoJS() { return 'console.log("CryptoJS已装载");' } @@ -735,6 +760,7 @@ function getProxyUrl() { return "http://127.0.0.1:9978/proxy?do=js" } } + function fixAdM3u8(m3u8_text, m3u8_url, ad_remove) { if (!m3u8_text && !m3u8_url || !m3u8_text && m3u8_url && !m3u8_url.startsWith("http")) { return "" @@ -789,6 +815,7 @@ function fixAdM3u8(m3u8_text, m3u8_url, ad_remove) { m3u8_text = [m3u8_start, new_m3u8_body, m3u8_end].join("\n").trim(); return m3u8_text } + function fixAdM3u8Ai(m3u8_url, headers) { let ts = (new Date).getTime(); let option = headers ? { @@ -805,6 +832,7 @@ function fixAdM3u8Ai(m3u8_url, headers) { } return i } + function reverseString(str) { return str.split("").reverse().join("") } @@ -883,6 +911,7 @@ function fixAdM3u8Ai(m3u8_url, headers) { log("处理耗时:" + ((new Date).getTime() - ts).toString()); return m3u8 } + function forceOrder(lists, key, option) { let start = Math.floor(lists.length / 2); let end = Math.min(lists.length - 1, start + 1); @@ -938,6 +967,7 @@ function getQuery(url) { return {} } } + function urljoin(fromPath, nowPath) { fromPath = fromPath || ""; nowPath = nowPath || ""; @@ -969,6 +999,7 @@ function pdfh2(html, parse) { } return result } + function pdfa2(html, parse) { let html2 = html; try { @@ -980,6 +1011,7 @@ function pdfa2(html, parse) { } return defaultParser.pdfa(html2, parse) } + function pd2(html, parse, uri) { let ret = pdfh2(html, parse); if (typeof uri === "undefined" || !uri) { @@ -1028,7 +1060,8 @@ const parseTags = { } } return "" - }, pdfa(html, parse) { + }, + pdfa(html, parse) { if (!parse || !parse.trim()) { return "" } @@ -1044,7 +1077,8 @@ const parseTags = { return ret[0] || [] } return ret || [] - }, pd(html, parse) { + }, + pd(html, parse) { let ret = parseTags.json.pdfh(html, parse); if (ret) { return urljoin(MY_URL, ret) @@ -1060,7 +1094,8 @@ const parseTags = { parse = parse.trim(); let result = defaultParser.pdfh(html, parse); return result - }, pdfa(html, parse) { + }, + pdfa(html, parse) { if (!html || !parse || !parse.trim()) { return [] } @@ -1068,7 +1103,8 @@ const parseTags = { let result = defaultParser.pdfa(html, parse); print(`pdfa解析${parse}=>${result.length}`); return result - }, pd(html, parse, base_url) { + }, + pd(html, parse, base_url) { if (!html || !parse || !parse.trim()) { return "" } @@ -1103,6 +1139,7 @@ function readFile(filePath) { console.log(text); return text } + function dealJson(html) { try { html = html.trim(); @@ -1191,16 +1228,20 @@ function verifyCode(url) { } return cookie } + function setItem(k, v) { local.set(RKEY, k, v); console.log(`规则${RKEY}设置${k} => ${v}`) } + function getItem(k, v) { return local.get(RKEY, k) || v } + function clearItem(k) { local.delete(RKEY, k) } + function getHome(url) { if (!url) { return "" @@ -1212,6 +1253,7 @@ function getHome(url) { } catch (e) {} return url } + function buildUrl(url, obj) { obj = obj || {}; if (url.indexOf("?") < 0) { @@ -1229,9 +1271,11 @@ function buildUrl(url, obj) { url += prs; return url } + function $require(url) { eval(request(url)) } + function keysToLowerCase(obj) { return Object.keys(obj).reduce((result, key) => { const newKey = key.toLowerCase(); @@ -1239,6 +1283,7 @@ function keysToLowerCase(obj) { return result }, {}) } + function request(url, obj, ocr_flag) { ocr_flag = ocr_flag || false; if (typeof obj === "undefined" || !obj || obj === {}) { @@ -1310,11 +1355,13 @@ function request(url, obj, ocr_flag) { return html } } + function post(url, obj) { obj = obj || {}; obj.method = "POST"; return request(url, obj) } + function reqCookie(url, obj, all_cookie) { obj = obj || {}; obj.withHeaders = true; @@ -1363,11 +1410,13 @@ function checkHtml(html, url, obj) { } return html } + function getCode(url, obj) { let html = request(url, obj); html = checkHtml(html, url, obj); return html } + function getHtml(url) { let obj = {}; if (rule.headers) { @@ -1394,6 +1443,7 @@ function getHtml(url) { let html = getCode(url, obj); return html } + function homeParse(homeObj) { fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); let classes = []; @@ -1488,6 +1538,7 @@ function homeParse(homeObj) { console.log(JSON.stringify(resp)); return JSON.stringify(resp) } + function getPP(p, pn, pp, ppn) { try { let ps = p[pn] === "*" && pp.length > ppn ? pp[ppn] : p[pn]; @@ -1496,6 +1547,7 @@ function getPP(p, pn, pp, ppn) { return "" } } + function homeVodParse(homeVodObj) { fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); let d = []; @@ -1674,6 +1726,7 @@ function homeVodParse(homeVodObj) { list: d }) } + function categoryParse(cateObj) { fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); let p = cateObj.一级; @@ -1838,6 +1891,7 @@ function categoryParse(cateObj) { }); return vod } + function searchParse(searchObj) { fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); let d = []; @@ -2013,6 +2067,7 @@ function searchParse(searchObj) { list: d }) } + function detailParse(detailObj) { let t1 = (new Date).getTime(); fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); @@ -2248,6 +2303,7 @@ function detailParse(detailObj) { list: [vod] }) } + function get_tab_index(vod) { let obj = {}; vod.vod_play_from.split("$$$").forEach((it, index) => { @@ -2255,6 +2311,7 @@ function get_tab_index(vod) { }); return obj } + function vodDeal(vod) { let vod_play_from = vod.vod_play_from.split("$$$"); let vod_play_url = vod.vod_play_url.split("$$$"); @@ -2286,6 +2343,7 @@ function vodDeal(vod) { vod.vod_play_url = play_ordered_list.join("$$$"); return vod } + function tellIsJx(url) { try { let is_vip = !/\.(m3u8|mp4|m4a)$/.test(url.split("?")[0]) && 是否正版(url); @@ -2294,6 +2352,7 @@ function tellIsJx(url) { return 1 } } + function playParse(playObj) { fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); MY_URL = playObj.url; @@ -2362,6 +2421,7 @@ function playParse(playObj) { console.log(JSON.stringify(lazy_play)); return JSON.stringify(lazy_play) } + function proxyParse(proxyObj) { var input = proxyObj.params; if (proxyObj.proxy_rule) { @@ -2380,6 +2440,7 @@ function proxyParse(proxyObj) { return [404, "text/plain", "Not Found"] } } + function isVideoParse(isVideoObj) { var input = isVideoObj.url; if (!isVideoObj.t) { @@ -2399,6 +2460,7 @@ function isVideoParse(isVideoObj) { } } } + function getOriginalJs(js_code) { let current_match = /var rule|[\u4E00-\u9FA5]+|function|let |var |const |\(|\)|"|'/; if (current_match.test(js_code)) { @@ -2433,24 +2495,21 @@ function getOriginalJs(js_code) { logger("非gzip加密"); return "" } - }, - text => { + }, text => { try { return base64Decode(text) } catch (e) { logger("非b64加密"); return "" } - }, - text => { + }, text => { try { return aes_decrypt(text) } catch (e) { logger("非aes加密"); return "" } - }, - text => { + }, text => { try { return RSA.decode(text, rsa_private_key, null) } catch (e) { @@ -2468,6 +2527,7 @@ function getOriginalJs(js_code) { } return decode_content } + function runMain(main_func_code, arg) { let mainFunc = function() { return "" @@ -2480,6 +2540,7 @@ function runMain(main_func_code, arg) { return "" } } + function init(ext) { console.log("init"); rule = {}; @@ -2603,7 +2664,7 @@ function init(ext) { rule.sniffer = false } rule.sniffer = rule.hasOwnProperty("sniffer") ? rule.sniffer : ""; - rule.sniffer = !! (rule.sniffer && rule.sniffer !== "0" && rule.sniffer !== "false"); + rule.sniffer = !!(rule.sniffer && rule.sniffer !== "0" && rule.sniffer !== "false"); rule.isVideo = rule.hasOwnProperty("isVideo") ? rule.isVideo : ""; if (rule.sniffer && !rule.isVideo) { rule.isVideo = "http((?!http).){12,}?\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg|m4a|mp3)\\?.*|http((?!http).){12,}\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg|m4a|mp3)|http((?!http).)*?video/tos*|http((?!http).)*?obj/tos*" @@ -2677,6 +2738,7 @@ function home(filter, home_html, class_parse) { }; return homeParse(homeObj) } + function homeVod(params) { console.log("homeVod"); let homeVodObj = { @@ -2687,6 +2749,7 @@ function homeVod(params) { }; return homeVodParse(homeVodObj) } + function category(tid, pg, filter, extend) { let cateObj = { url: rule.url, @@ -2698,6 +2761,7 @@ function category(tid, pg, filter, extend) { }; return categoryParse(cateObj) } + function detail(vod_url) { let orId = vod_url; let fyclass = ""; @@ -2727,6 +2791,7 @@ function detail(vod_url) { }; return detailParse(detailObj) } + function play(flag, id, flags) { let playObj = { url: id, @@ -2735,6 +2800,7 @@ function play(flag, id, flags) { }; return playParse(playObj) } + function search(wd, quick, pg) { if (rule.search_encoding) { if (rule.search_encoding.toLowerCase() !== "utf-8") { @@ -2752,6 +2818,7 @@ function search(wd, quick, pg) { }; return searchParse(searchObj) } + function proxy(params) { if (rule.proxy_rule && rule.proxy_rule.trim()) { rule.proxy_rule = rule.proxy_rule.trim() @@ -2765,6 +2832,7 @@ function proxy(params) { }; return proxyParse(proxyObj) } + function sniffer() { let enable_sniffer = rule.sniffer || false; if (enable_sniffer) { @@ -2772,6 +2840,7 @@ function sniffer() { } return enable_sniffer } + function isVideo(url) { let t = 0; let is_video; @@ -2793,9 +2862,11 @@ function isVideo(url) { } return result } + function getRule(key) { return key ? rule[key] || "" : rule } + function DRPY() { return { runMain: runMain, diff --git a/JS/gbk.js b/JS/gbk.js index 44edfc9..c49b20f 100644 --- a/JS/gbk.js +++ b/JS/gbk.js @@ -3,24 +3,24 @@ * strTool = gbkTool() strTool.encode(key) * @returns {{encode: (function(*): *), decode: (function(*): *)}} */ -export -function gbkTool() { +export function gbkTool() { var data = function(zipData) { - var re = zipData.replace(/#(\d+)\$/g, function(a, b) { - return Array(+b + 3).join('#'); - }) - .replace(/#/g, '####') - .replace(/(\w\w):([\w#]+)(?:,|$)/g, function(a, hd, dt) { - return dt.replace(/../g, function(a) { - if (a != '##') { - return hd + a; - } else { - return a; - } - }); - }); - return re; - }('4e:020405060f12171f20212326292e2f313335373c40414244464a5155575a5b6263646567686a6b6c6d6e6f727475767778797a7b7c7d7f808182838485878a#909697999c9d9ea3aaafb0b1b4b6b7b8b9bcbdbec8cccfd0d2dadbdce0e2e6e7e9edeeeff1f4f8f9fafcfe,4f:00020304050607080b0c12131415161c1d212328292c2d2e31333537393b3e3f40414244454748494a4b4c525456616266686a6b6d6e7172757778797a7d8081828586878a8c8e909293959698999a9c9e9fa1a2a4abadb0b1b2b3b4b6b7b8b9babbbcbdbec0c1c2c6c7c8c9cbcccdd2d3d4d5d6d9dbe0e2e4e5e7ebecf0f2f4f5f6f7f9fbfcfdff,50:000102030405060708090a#0b0e1011131516171b1d1e20222324272b2f303132333435363738393b3d3f404142444546494a4b4d5051525354565758595b5d5e5f6061626364666768696a6b6d6e6f70717273747578797a7c7d818283848687898a8b8c8e8f909192939495969798999a9b9c9d9e9fa0a1a2a4a6aaabadaeafb0b1b3b4b5b6b7b8b9bcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdced0d1d2d3d4d5d7d8d9dbdcdddedfe0e1e2e3e4e5e8e9eaebeff0f1f2f4f6f7f8f9fafcfdfeff,51:00010203040508#090a0c0d0e0f1011131415161718191a1b1c1d1e1f2022232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e42474a4c4e4f5052535758595b5d5e5f606163646667696a6f727a7e7f838486878a8b8e8f90919394989a9d9e9fa1a3a6a7a8a9aaadaeb4b8b9babebfc1c2c3c5c8cacdced0d2d3d4d5d6d7d8d9dadcdedfe2e3e5e6e7e8e9eaeceef1f2f4f7fe,52:0405090b0c0f101314151c1e1f2122232526272a2c2f313234353c3e4445464748494b4e4f5253555758#595a5b5d5f6062636466686b6c6d6e7071737475767778797a7b7c7e808384858687898a8b8c8d8e8f91929495969798999a9ca4a5a6a7aeafb0b4b5b6b7b8b9babbbcbdc0c1c2c4c5c6c8cacccdcecfd1d3d4d5d7d9dadbdcdddee0e1e2e3e5e6e7e8e9eaebecedeeeff1f2f3f4f5f6f7f8fbfcfd,53:0102030407090a0b0c0e11121314181b1c1e1f2224252728292b2c2d2f3031323334353637383c3d404244464b4c4d505458595b5d65686a6c6d7276797b7c7d7e80818387888a8e8f#90919293949697999b9c9ea0a1a4a7aaabacadafb0b1b2b3b4b5b7b8b9babcbdbec0c3c4c5c6c7cecfd0d2d3d5dadcdddee1e2e7f4fafeff,54:000205070b1418191a1c2224252a303336373a3d3f4142444547494c4d4e4f515a5d5e5f6061636567696a6b6c6d6e6f7074797a7e7f8183858788898a8d919397989c9e9fa0a1a2a5aeb0b2b5b6b7b9babcbec3c5cacbd6d8dbe0e1e2e3e4ebeceff0f1f4f5f6f7f8f9fbfe,55:0002030405080a0b0c0d0e121315161718191a1c1d1e1f212526#28292b2d3234353638393a3b3d40424547484b4c4d4e4f515253545758595a5b5d5e5f60626368696b6f7071727374797a7d7f85868c8d8e9092939596979a9b9ea0a1a2a3a4a5a6a8a9aaabacadaeafb0b2b4b6b8babcbfc0c1c2c3c6c7c8cacbcecfd0d5d7d8d9dadbdee0e2e7e9edeef0f1f4f6f8f9fafbfcff,56:0203040506070a0b0d1011121314151617191a1c1d202122252628292a2b2e2f30333537383a3c3d3e404142434445464748494a4b4f5051525355565a5b5d5e5f6061#636566676d6e6f70727374757778797a7d7e7f80818283848788898a8b8c8d9091929495969798999a9b9c9d9e9fa0a1a2a4a5a6a7a8a9aaabacadaeb0b1b2b3b4b5b6b8b9babbbdbebfc0c1c2c3c4c5c6c7c8c9cbcccdcecfd0d1d2d3d5d6d8d9dce3e5e6e7e8e9eaeceeeff2f3f6f7f8fbfc,57:00010205070b0c0d0e0f101112131415161718191a1b1d1e202122242526272b313234353637383c3d3f414344454648494b52535455565859626365676c6e707172747578797a7d7e7f80#818788898a8d8e8f90919495969798999a9c9d9e9fa5a8aaacafb0b1b3b5b6b7b9babbbcbdbebfc0c1c4c5c6c7c8c9cacccdd0d1d3d6d7dbdcdee1e2e3e5e6e7e8e9eaebeceef0f1f2f3f5f6f7fbfcfeff,58:0103040508090a0c0e0f101213141617181a1b1c1d1f222325262728292b2c2d2e2f31323334363738393a3b3c3d3e3f4041424345464748494a4b4e4f505253555657595a5b5c5d5f6061626364666768696a6d6e6f707172737475767778797a7b7c7d7f82848687888a8b8c#8d8e8f909194959697989b9c9da0a1a2a3a4a5a6a7aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbdbebfc0c2c3c4c6c7c8c9cacbcccdcecfd0d2d3d4d6d7d8d9dadbdcdddedfe0e1e2e3e5e6e7e8e9eaedeff1f2f4f5f7f8fafbfcfdfeff,59:000103050608090a0b0c0e1011121317181b1d1e2021222326282c30323335363b3d3e3f404345464a4c4d505253595b5c5d5e5f616364666768696a6b6c6d6e6f70717275777a7b7c7e7f8085898b8c8e8f90919495989a9b9c9d9fa0a1a2a6#a7acadb0b1b3b4b5b6b7b8babcbdbfc0c1c2c3c4c5c7c8c9cccdcecfd5d6d9dbdedfe0e1e2e4e6e7e9eaebedeeeff0f1f2f3f4f5f6f7f8fafcfdfe,5a:00020a0b0d0e0f101214151617191a1b1d1e2122242627282a2b2c2d2e2f3033353738393a3b3d3e3f414243444547484b4c4d4e4f5051525354565758595b5c5d5e5f60616364656668696b6c6d6e6f7071727378797b7c7d7e808182838485868788898a8b8c8d8e8f9091939495969798999c9d9e9fa0a1a2a3a4a5a6a7a8a9abac#adaeafb0b1b4b6b7b9babbbcbdbfc0c3c4c5c6c7c8cacbcdcecfd0d1d3d5d7d9dadbdddedfe2e4e5e7e8eaecedeeeff0f2f3f4f5f6f7f8f9fafbfcfdfeff,5b:0001020304050607080a0b0c0d0e0f10111213141518191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303133353638393a3b3c3d3e3f4142434445464748494a4b4c4d4e4f52565e606167686b6d6e6f7274767778797b7c7e7f82868a8d8e90919294969fa7a8a9acadaeafb1b2b7babbbcc0c1c3c8c9cacbcdcecf#d1d4d5d6d7d8d9dadbdce0e2e3e6e7e9eaebecedeff1f2f3f4f5f6f7fdfe,5c:0002030507080b0c0d0e10121317191b1e1f2021232628292a2b2d2e2f303233353637434446474c4d5253545657585a5b5c5d5f62646768696a6b6c6d70727374757677787b7c7d7e808384858687898a8b8e8f9293959d9e9fa0a1a4a5a6a7a8aaaeafb0b2b4b6b9babbbcbec0c2c3c5c6c7c8c9cacccdcecfd0d1d3d4d5d6d7d8dadbdcdddedfe0e2e3e7e9ebeceeeff1f2f3f4f5f6f7f8f9fafcfdfeff,5d:00#01040508090a0b0c0d0f10111213151718191a1c1d1f2021222325282a2b2c2f3031323335363738393a3b3c3f4041424344454648494d4e4f5051525354555657595a5c5e5f6061626364656667686a6d6e7071727375767778797a7b7c7d7e7f8081838485868788898a8b8c8d8e8f9091929394959697989a9b9c9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b8b9babbbcbdbebfc0c1c2c3c4c6c7c8c9cacbcccecfd0d1d2d3d4d5d6d7d8d9dadcdfe0e3e4eaeced#f0f5f6f8f9fafbfcff,5e:000407090a0b0d0e1213171e1f20212223242528292a2b2c2f303233343536393a3e3f404143464748494a4b4d4e4f50515253565758595a5c5d5f60636465666768696a6b6c6d6e6f70717577797e8182838588898c8d8e92989b9da1a2a3a4a8a9aaabacaeafb0b1b2b4babbbcbdbfc0c1c2c3c4c5c6c7c8cbcccdcecfd0d4d5d7d8d9dadcdddedfe0e1e2e3e4e5e6e7e9ebecedeeeff0f1f2f3f5f8f9fbfcfd,5f:050607090c0d0e10121416191a1c1d1e21222324#282b2c2e30323334353637383b3d3e3f4142434445464748494a4b4c4d4e4f5154595a5b5c5e5f60636567686b6e6f72747576787a7d7e7f83868d8e8f919394969a9b9d9e9fa0a2a3a4a5a6a7a9abacafb0b1b2b3b4b6b8b9babbbebfc0c1c2c7c8cacbced3d4d5dadbdcdedfe2e3e5e6e8e9eceff0f2f3f4f6f7f9fafc,60:0708090b0c10111317181a1e1f2223242c2d2e3031323334363738393a3d3e404445464748494a4c4e4f5153545657585b5c5e5f606165666e71727475777e80#8182858687888a8b8e8f909193959798999c9ea1a2a4a5a7a9aaaeb0b3b5b6b7b9babdbebfc0c1c2c3c4c7c8c9cccdcecfd0d2d3d4d6d7d9dbdee1e2e3e4e5eaf1f2f5f7f8fbfcfdfeff,61:02030405070a0b0c1011121314161718191b1c1d1e21222528292a2c2d2e2f303132333435363738393a3b3c3d3e4041424344454647494b4d4f50525354565758595a5b5c5e5f606163646566696a6b6c6d6e6f717273747678797a7b7c7d7e7f808182838485868788898a8c8d8f9091929395#969798999a9b9c9e9fa0a1a2a3a4a5a6aaabadaeafb0b1b2b3b4b5b6b8b9babbbcbdbfc0c1c3c4c5c6c7c9cccdcecfd0d3d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e7e8e9eaebecedeeeff0f1f2f3f4f6f7f8f9fafbfcfdfe,62:00010203040507091314191c1d1e2023262728292b2d2f303132353638393a3b3c424445464a4f50555657595a5c5d5e5f6061626465687172747577787a7b7d818283858687888b8c8d8e8f9094999c9d9ea3a6a7a9aaadaeafb0b2b3b4b6b7b8babec0c1#c3cbcfd1d5dddee0e1e4eaebf0f2f5f8f9fafb,63:00030405060a0b0c0d0f10121314151718191c2627292c2d2e30313334353637383b3c3e3f40414447484a51525354565758595a5b5c5d60646566686a6b6c6f707273747578797c7d7e7f81838485868b8d9193949597999a9b9c9d9e9fa1a4a6abafb1b2b5b6b9bbbdbfc0c1c2c3c5c7c8cacbccd1d3d4d5d7d8d9dadbdcdddfe2e4e5e6e7e8ebeceeeff0f1f3f5f7f9fafbfcfe,64:0304060708090a0d0e111215161718191a1d1f222324#252728292b2e2f3031323335363738393b3c3e404243494b4c4d4e4f505153555657595a5b5c5d5f60616263646566686a6b6c6e6f70717273747576777b7c7d7e7f8081838688898a8b8c8d8e8f90939497989a9b9c9d9fa0a1a2a3a5a6a7a8aaabafb1b2b3b4b6b9bbbdbebfc1c3c4c6c7c8c9cacbcccfd1d3d4d5d6d9dadbdcdddfe0e1e3e5e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,65:01020304050607080a0b0c0d0e0f10111314151617191a1b1c1d1e1f2021#222324262728292a2c2d30313233373a3c3d404142434446474a4b4d4e5052535457585a5c5f606164656768696a6d6e6f7173757678797a7b7c7d7e7f8081828384858688898a8d8e8f92949596989a9d9ea0a2a3a6a8aaacaeb1b2b3b4b5b6b7b8babbbebfc0c2c7c8c9cacdd0d1d3d4d5d8d9dadbdcdddedfe1e3e4eaebf2f3f4f5f8f9fbfcfdfeff,66:0104050708090b0d1011121617181a1b1c1e2122232426292a2b2c2e3032333738393a3b3d3f40424445464748494a4d4e505158#595b5c5d5e6062636567696a6b6c6d7172737578797b7c7d7f808183858688898a8b8d8e8f909293949598999a9b9c9e9fa0a1a2a3a4a5a6a9aaabacadafb0b1b2b3b5b6b7b8babbbcbdbfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8dadedfe0e1e2e3e4e5e7e8eaebecedeeeff1f5f6f8fafbfd,67:010203040506070c0e0f1112131618191a1c1e20212223242527292e303233363738393b3c3e3f414445474a4b4d5254555758595a5b5d62636466676b6c6e717476#78797a7b7d8082838586888a8c8d8e8f9192939496999b9fa0a1a4a6a9acaeb1b2b4b9babbbcbdbebfc0c2c5c6c7c8c9cacbcccdced5d6d7dbdfe1e3e4e6e7e8eaebedeef2f5f6f7f8f9fafbfcfe,68:01020304060d1012141518191a1b1c1e1f20222324252627282b2c2d2e2f30313435363a3b3f474b4d4f52565758595a5b5c5d5e5f6a6c6d6e6f707172737578797a7b7c7d7e7f8082848788898a8b8c8d8e90919294959698999a9b9c9d9e9fa0a1a3a4a5a9aaabacaeb1b2b4b6b7b8#b9babbbcbdbebfc1c3c4c5c6c7c8cacccecfd0d1d3d4d6d7d9dbdcdddedfe1e2e4e5e6e7e8e9eaebecedeff2f3f4f6f7f8fbfdfeff,69:00020304060708090a0c0f11131415161718191a1b1c1d1e21222325262728292a2b2c2e2f313233353637383a3b3c3e4041434445464748494a4b4c4d4e4f50515253555658595b5c5f616264656768696a6c6d6f7072737475767a7b7d7e7f8183858a8b8c8e8f909192939697999a9d9e9fa0a1a2a3a4a5a6a9aaacaeafb0b2b3b5b6b8b9babcbd#bebfc0c2c3c4c5c6c7c8c9cbcdcfd1d2d3d5d6d7d8d9dadcdddee1e2e3e4e5e6e7e8e9eaebeceeeff0f1f3f4f5f6f7f8f9fafbfcfe,6a:000102030405060708090b0c0d0e0f10111213141516191a1b1c1d1e20222324252627292b2c2d2e30323334363738393a3b3c3f40414243454648494a4b4c4d4e4f515253545556575a5c5d5e5f60626364666768696a6b6c6d6e6f70727374757677787a7b7d7e7f81828385868788898a8b8c8d8f929394959698999a9b9c9d9e9fa1a2a3a4a5a6#a7a8aaadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,6b:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f252628292a2b2c2d2e2f303133343536383b3c3d3f4041424445484a4b4d4e4f5051525354555657585a5b5c5d5e5f606168696b6c6d6e6f7071727374757677787a7d7e7f808588#8c8e8f909194959798999c9d9e9fa0a2a3a4a5a6a7a8a9abacadaeafb0b1b2b6b8b9babbbcbdbec0c3c4c6c7c8c9caccced0d1d8dadcdddedfe0e2e3e4e5e6e7e8e9ecedeef0f1f2f4f6f7f8fafbfcfeff,6c:000102030408090a0b0c0e12171c1d1e2023252b2c2d31333637393a3b3c3e3f434445484b4c4d4e4f5152535658595a62636566676b6c6d6e6f71737577787a7b7c7f8084878a8b8d8e9192959697989a9c9d9ea0a2a8acafb0b4b5b6b7bac0c1c2c3c6c7c8cbcdcecfd1d2d8#d9dadcdddfe4e6e7e9ecedf2f4f9ff,6d:000203050608090a0d0f101113141516181c1d1f20212223242628292c2d2f30343637383a3f404244494c50555657585b5d5f6162646567686b6c6d707172737576797a7b7d7e7f8081838486878a8b8d8f9092969798999a9ca2a5acadb0b1b3b4b6b7b9babbbcbdbec1c2c3c8c9cacdcecfd0d2d3d4d5d7dadbdcdfe2e3e5e7e8e9eaedeff0f2f4f5f6f8fafdfeff,6e:0001020304060708090b0f12131518191b1c1e1f222627282a2c2e30313335#3637393b3c3d3e3f40414245464748494a4b4c4f5051525557595a5c5d5e606162636465666768696a6c6d6f707172737475767778797a7b7c7d8081828487888a8b8c8d8e91929394959697999a9b9d9ea0a1a3a4a6a8a9abacadaeb0b3b5b8b9bcbebfc0c3c4c5c6c8c9cacccdced0d2d6d8d9dbdcdde3e7eaebecedeeeff0f1f2f3f5f6f7f8fafbfcfdfeff,6f:000103040507080a0b0c0d0e101112161718191a1b1c1d1e1f212223252627282c2e303234353738393a3b3c3d3f404142#43444548494a4c4e4f5051525354555657595a5b5d5f60616364656768696a6b6c6f707173757677797b7d7e7f808182838586878a8b8f909192939495969798999a9b9d9e9fa0a2a3a4a5a6a8a9aaabacadaeafb0b1b2b4b5b7b8babbbcbdbebfc1c3c4c5c6c7c8cacbcccdcecfd0d3d4d5d6d7d8d9dadbdcdddfe2e3e4e5e6e7e8e9eaebecedf0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,70:000102030405060708090a0b0c0d0e0f1012131415161718191c1d1e1f2021222425262728292a#2b2c2d2e2f30313233343637383a3b3c3d3e3f404142434445464748494a4b4d4e505152535455565758595a5b5c5d5f606162636465666768696a6e7172737477797a7b7d818283848687888b8c8d8f90919397989a9b9e9fa0a1a2a3a4a5a6a7a8a9aab0b2b4b5b6babebfc4c5c6c7c9cbcccdcecfd0d1d2d3d4d5d6d7dadcdddee0e1e2e3e5eaeef0f1f2f3f4f5f6f8fafbfcfeff,71:0001020304050607080b0c0d0e0f111214171b1c1d1e1f2021222324252728292a2b2c2d2e323334#353738393a3b3c3d3e3f4041424344464748494b4d4f505152535455565758595a5b5d5f6061626365696a6b6c6d6f707174757677797b7c7e7f8081828385868788898b8c8d8e909192939596979a9b9c9d9ea1a2a3a4a5a6a7a9aaabadaeafb0b1b2b4b6b7b8babbbcbdbebfc0c1c2c4c5c6c7c8c9cacbcccdcfd0d1d2d3d6d7d8d9dadbdcdddedfe1e2e3e4e6e8e9eaebecedeff0f1f2f3f4f5f6f7f8fafbfcfdfeff,72:0001020304050708090a0b0c0d0e0f101112131415161718191a#1b1c1e1f2021222324252627292b2d2e2f3233343a3c3e40414243444546494a4b4e4f505153545557585a5c5e60636465686a6b6c6d707173747677787b7c7d828385868788898c8e9091939495969798999a9b9c9d9ea0a1a2a3a4a5a6a7a8a9aaabaeb1b2b3b5babbbcbdbebfc0c5c6c7c9cacbcccfd1d3d4d5d6d8dadb#95$,30:000102,00b702:c9c7,00a830:0305,2014ff5e20:162618191c1d,30:141508090a0b0c0d0e0f16171011,00:b1d7f7,22:362728110f2a2908371aa52520,231222:992b2e614c483d1d606e6f64651e3534,26:4240,00b020:3233,2103ff0400a4ff:e0e1,203000a7211626:0605,25:cbcfcec7c6a1a0b3b2,203b21:92909193,30:13#95$,21:70717273747576777879#4$,24:88898a8b8c8d8e8f909192939495969798999a9b7475767778797a7b7c7d7e7f808182838485868760616263646566676869##,32:20212223242526272829##,21:606162636465666768696a6b#97$,ff:010203e505060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5de3#95$,30:4142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f90919293#106$a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6#103$,03:9192939495969798999a9b9c9d9e9fa0a1a3a4a5a6a7a8a9#6$b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c3c4c5c6c7c8c9#5$,fe:3536393a3f403d3e41424344##3b3c373831#3334#104$,04:10111213141501161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f#13$30313233343551363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f#11$,02:cacbd9,20:13152535,21:050996979899,22:151f23526667bf,25:505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f7071727381828384858687#88898a8b8c8d8e8f939495bcbde2e3e4e5,2609229530:121d1e#9$,010100e101ce00e0011300e9011b00e8012b00ed01d000ec014d00f301d200f2016b00fa01d400f901:d6d8dadc,00:fcea,0251e7c701:4448,e7c802:61#2$,31:05060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223242526272829#19$,30:212223242526272829,32a333:8e8f9c9d9ea1c4ced1d2d5,fe30ff:e2e4#,212132:31#,20:10#1$,30:fc9b9cfdfe069d9e,fe:494a4b4c4d4e4f50515254555657595a5b5c5d5e5f6061#626364656668696a6b,e7:e7e8e9eaebecedeeeff0f1f2f3,30:07#11$,25:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b#13$,72:dcdddfe2e3e4e5e6e7eaebf5f6f9fdfeff,73:00020405060708090b0c0d0f1011121418191a1f2023242627282d2f30323335363a3b3c3d404142434445464748#494a4b4c4e4f515354555658595a5b5c5d5e5f6162636465666768696a6b6e7071#92$72737475767778797a7b7c7d7f808182838586888a8c8d8f90929394959798999a9c9d9ea0a1a3a4a5a6a7a8aaacadb1b4b5b6b8b9bcbdbebfc1c3c4c5c6c7#cbccced2d3d4d5d6d7d8dadbdcdddfe1e2e3e4e6e8eaebeceeeff0f1f3f4f5f6f7#92$f8f9fafbfcfdfeff,74:0001020407080b0c0d0e1112131415161718191c1d1e1f2021232427292b2d2f31323738393a3b3d3e3f4042434445464748494a4b4c4d#4e4f505152535456585d606162636465666768696a6b6c6e6f717273747578797a#92$7b7c7d7f8284858688898a8c8d8f9192939495969798999a9b9d9fa0a1a2a3a4a5a6aaabacadaeafb0b1b2b3b4b5b6b7b8b9bbbcbdbebfc0c1c2c3c4c5c6c7#c8c9cacbcccdcecfd0d1d3d4d5d6d7d8d9dadbdddfe1e5e7e8e9eaebecedf0f1f2#92$f3f5f8f9fafbfcfdfe,75:0001020305060708090a0b0c0e1012141516171b1d1e202122232426272a2e3436393c3d3f414243444647494a4d5051525355565758#5d5e5f60616263646768696b6c6d6e6f7071737576777a7b7c7d7e808182848587#92$88898a8c8d8e909395989b9c9ea2a6a7a8a9aaadb6b7babbbfc0c1c6cbcccecfd0d1d3d7d9dadcdddfe0e1e5e9ecedeeeff2f3f5f6f7f8fafbfdfe,76:02040607#08090b0d0e0f11121314161a1c1d1e212327282c2e2f31323637393a3b3d414244#92$45464748494a4b4e4f50515253555758595a5b5d5f6061626465666768696a6c6d6e7071727374757677797a7c7f80818385898a8c8d8f9092949597989a9b#9c9d9e9fa0a1a2a3a5a6a7a8a9aaabacadafb0b3b5b6b7b8b9babbbcbdbec0c1c3,554a963f57c3632854ce550954c076:914c,853c77ee827e788d72319698978d6c285b894ffa630966975cb880fa684880ae660276ce51f9655671ac7ff1888450b2596561ca6fb382ad634c625253ed54277b06516b75a45df462d48dcb9776628a8019575d97387f627238767d67cf767e64464f708d2562dc7a17659173ed642c6273822c9881677f724862:6ecc,4f3474e3534a529e7eca90a65e2e6886699c81807ed168d278c5868c9551508d8c2482de80de53058912526576:c4c7c9cbccd3d5d9dadcdddee0e1e2e3e4e6e7e8e9eaebecedf0f3f5f6f7fafbfdff,77:00020305060a0c0e0f1011121314151617181b1c1d1e21232425272a2b#2c2e3031323334393b3d3e3f4244454648494a4b4c4d4e4f52535455565758595c,858496f94fdd582199715b9d62:b1a5,66b48c799c8d7206676f789160b253:5117,8f8880cc8d1d94a1500d72c8590760eb711988ab595482ef672c7b285d297ef7752d6cf58e668ff8903c9f3b6bd491197b145f7c78a784d6853d6b:d5d9d6,5e:0187,75f995ed655d5f:0ac5,8f9f58c181c2907f965b97ad8fb97f168d2c62414fbf53:d85e,8f:a8a9ab,904d68075f6a819888689cd6618b522b762a5f6c658c6fd26ee85bbe644851:75b0,67c44e1979c9997c70b377:5d5e5f606467696a6d6e6f7071727374757677787a7b7c818283868788898a8b8f90939495969798999a9b9c9d9ea1a3a4a6a8abadaeafb1b2b4b6b7b8b9ba#bcbec0c1c2c3c4c5c6c7c8c9cacbcccecfd0d1d2d3d4d5d6d8d9dadddedfe0e1e4,75c55e7673bb83e064ad62e894b56ce2535a52c3640f94c27b944f2f5e1b823681:168a,6e246cca9a736355535c54fa886557e04e0d5e036b657c3f90e8601664e6731c88c16750624d8d22776c8e2991c75f6983dc8521991053c286956b8b60:ede8,707f82:cd31,4ed36ca785cf64cd7cd969fd66f9834953957b564fa7518c6d4b5c428e6d63d253c983:2c36,67e578b4643d5bdf5c945dee8be762c667f48c7a640063ba8749998b8c177f2094f24ea7961098a4660c731677:e6e8eaeff0f1f2f4f5f7f9fafbfc,78:0304050607080a0b0e0f101315191b1e20212224282a2b2e2f31323335363d3f414243444648494a4b4d4f51535458595a#5b5c5e5f606162636465666768696f7071727374757678797a7b7d7e7f80818283,573a5c1d5e38957f507f80a05382655e7545553150218d856284949e671d56326f6e5de2543570928f66626f64a463a35f7b6f8890f481e38fb05c1866685ff16c8996488d81886c649179f057ce6a59621054484e587a0b60e96f848bda627f901e9a8b79e4540375f4630153196c608fdf5f1b9a70803b9f7f4f885c3a8d647fc565a570bd51:45b2,866b5d075ba062bd916c75748e0c7a2061017b794ec77ef877854e1181ed521d51fa6a7153a88e87950496cf6ec19664695a78:848586888a8b8f9092949596999d9ea0a2a4a6a8a9aaabacadaeafb5b6b7b8babbbcbdbfc0c2c3c4c6c7c8cccdcecfd1d2d3d6d7d8dadbdcdddedfe0e1e2e3#e4e5e6e7e9eaebedeeeff0f1f3f5f6f8f9fbfcfdfeff,79:00020304060708090a0b0c,784050a877d7641089e6590463e35ddd7a7f693d4f20823955984e3275ae7a975e:628a,95ef521b5439708a6376952457826625693f918755076df37eaf882262337ef075b5832878c196cc8f9e614874f78bcd6b64523a8d506b21806a847156f153064e:ce1b,51d17c97918b7c074fc38e7f7be17a9c64675d1450ac810676017cb96dec7fe067515b:58f8,78cb64:ae13,63:aa2b,9519642d8fbe7b5476296253592754466b7950a362345e266b864ee38d37888b5f85902e79:0d0e0f1011121415161718191a1b1c1d1f2021222325262728292a2b2c2d2e2f3031323335363738393d3f42434445474a4b4c4d4e4f505152545558596163#6466696a6b6c6e70717273747576797b7c7d7e7f8283868788898b8c8d8e909192,6020803d62c54e39535590f863b880c665e66c2e4f4660ee6de18bde5f3986cb5f536321515a83616863520063638e4850125c9b79775bfc52307a3b60bc905376d75f:b797,76848e6c706f767b7b4977aa51f3909358244f4e6ef48fea654c7b1b72c46da47fdf5ae162b55e95573084827b2c5e1d5f1f90127f1498a063826ec7789870b95178975b57ab75354f4375385e9760e659606dc06bbf788953fc96d551cb52016389540a94938c038dcc7239789f87768fed8c0d53e079:939495969798999b9c9d9e9fa0a1a2a3a4a5a6a8a9aaabacadaeafb0b1b2b4b5b6b7b8bcbfc2c4c5c7c8cacccecfd0d3d4d6d7d9dadbdcdddee0e1e2e5e8ea#eceef1f2f3f4f5f6f7f9fafcfeff,7a:0104050708090a0c0f10111213151618191b1c,4e0176ef53ee948998769f0e952d5b9a8ba24e:221c,51ac846361c252a8680b4f97606b51bb6d1e515c6296659796618c46901775d890fd77636bd272:8aec,8bfb583577798d4c675c9540809a5ea66e2159927aef77ed953b6bb565ad7f0e58065151961f5bf958a954288e726566987f56e4949d76fe9041638754c659:1a3a,579b8eb267358dfa8235524160f0581586fe5ce89e454fc4989d8bb95a2560765384627c904f9102997f6069800c513f80335c1499756d314e8c7a:1d1f21222425262728292a2b2c2d2e2f303132343536383a3e4041424344454748494a4b4c4d4e4f50525354555658595a5b5c5d5e5f606162636465666768#696a6b6c6d6e6f717273757b7c7d7e828587898a8b8c8e8f909394999a9b9ea1a2,8d3053d17f5a7b4f4f104e4f96006cd573d085e95e06756a7ffb6a0a77fe94927e4151e170e653cd8fd483038d2972af996d6cdb574a82b365b980aa623f963259a84eff8bbf7eba653e83f2975e556198de80a5532a8bfd542080ba5e9f6cb88d3982ac915a54296c1b52067eb7575f711a6c7e7c89594b4efd5fff61247caa4e305c0167ab87025cf0950b98ce75af70fd902251af7f1d8bbd594951e44f5b5426592b657780a45b7562:76c2,8f905e456c1f7b264f:0fd8,670d7a:a3a4a7a9aaabaeafb0b1b2b4b5b6b7b8b9babbbcbdbec0c1c2c3c4c5c6c7c8c9cacccdcecfd0d1d2d3d4d5d7d8dadbdcdde1e2e4e7e8e9eaebeceef0f1f2f3#f4f5f6f7f8fbfcfe,7b:0001020507090c0d0e1012131617181a1c1d1f21222327292d,6d:6eaa,798f88b15f17752b629a8f854fef91dc65a781:2f51,5e9c81508d74526f89868d4b590d50854ed8961c723681798d1f5bcc8ba3964459877f1a549056:760e,8be565396982949976d66e895e72751867:46d1,7aff809d8d76611f79c665628d635188521a94a27f38809b7eb25c976e2f67607bd9768b9ad8818f7f947cd5641e95507a3f54:4ae5,6b4c640162089e3d80f3759952729769845b683c86e496:0194,94ec4e2a54047ed968398ddf801566f45e9a7fb97b:2f303234353637393b3d3f404142434446484a4d4e535557595c5e5f61636465666768696a6b6c6d6f70737476787a7c7d7f81828384868788898a8b8c8e8f#9192939698999a9b9e9fa0a3a4a5aeafb0b2b3b5b6b7b9babbbcbdbebfc0c2c3c4,57c2803f68975de5653b529f606d9f9a4f9b8eac516c5bab5f135de96c5e62f18d21517194a952fe6c9f82df72d757a267848d2d591f8f9c83c754957b8d4f306cbd5b6459d19f1353e486ca9aa88c3780a16545987e56fa96c7522e74dc52505be1630289024e5662d0602a68fa51735b9851a089c27ba199867f5060ef704c8d2f51495e7f901b747089c4572d78455f529f9f95fa8f689b3c8be17678684267dc8d:ea35,523d8f8a6eda68cd950590ed56fd679c88f98fc754c87b:c5c8c9cacbcdcecfd0d2d4d5d6d7d8dbdcdedfe0e2e3e4e7e8e9ebecedeff0f2f3f4f5f6f8f9fafbfdff,7c:0001020304050608090a0d0e101112131415171819#1a1b1c1d1e20212223242528292b2c2d2e2f3031323334353637393a3b3c3d3e42,9ab85b696d776c264ea55bb39a87916361a890af97e9542b6db55bd251fd558a7f:55f0,64bc634d65f161be608d710a6c:5749,592f676d822a58d5568e8c6a6beb90dd597d801753f76d695475559d83:77cf,683879be548c4f55540876d28c8996026cb36db88d6b89109e648d3a563f9ed175d55f8872e0606854fc4ea86a2a886160528f7054c470d886799e3f6d2a5b8f5f187ea255894faf7334543c539a501954:0e7c,4e4e5ffd745a58f6846b80e1877472d07cca6e567c:434445464748494a4b4c4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f70717275767778797a7e7f8081828384858687#888a8b8c8d8e8f90939496999a9ba0a1a3a6a7a8a9abacadafb0b4b5b6b7b8babb,5f27864e552c62a44e926caa623782b154d7534e733e6ed1753b521253168bdd69d05f8a60006dee574f6b2273af68538fd87f13636260a3552475ea8c6271156da35ba65e7b8352614c9ec478fa87577c27768751f060f6714c66435e4c604d8c0e707063258f895fbd606286d456de6bc160946167534960e066668d3f79fd4f1a70e96c478b:b3f2,7ed88364660f5a5a9b426d:51f7,8c416d3b4f19706b83b7621660d1970d8d27797851fb57:3efa,673a75787a3d79ef7b957c:bfc0c2c3c4c6c9cbcecfd0d1d2d3d4d8dadbdddee1e2e3e4e5e6e7e9eaebecedeef0f1f2f3f4f5f6f7f9fafcfdfeff,7d:000102030405060708090b0c0d0e0f10#1112131415161718191a1b1c1d1e1f212324252628292a2c2d2e30313233343536,808c99658ff96fc08ba59e2159ec7ee97f095409678168d88f917c4d96c653ca602575be6c7253735ac97ea7632451e0810a5df184df628051805b634f0e796d524260b86d4e5b:c4c2,8b:a1b0,65e25fcc964559937e:e7aa,560967b759394f735bb652a0835a988a8d3e753294be50477a3c4ef767b69a7e5ac16b7c76d1575a5c167b3a95f4714e517c80a9827059787f04832768c067ec78:b177,62e363617b804fed526a51cf835069db92748d:f531,89c1952e7bad4ef67d:3738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6f70717273747576#78797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798,506582305251996f6e:1085,6da75efa50f559dc5c066d466c5f7586848b686859568bb253209171964d854969127901712680f64ea490ca6d479a845a0756bc640594f077eb4fa5811a72e189d2997a7f347ede527f655991758f:7f83,53eb7a9663:eda5,768679f888579636622a52ab8282685467706377776b7aed6d017ed389e359d0621285c982a5754c501f4ecb75a58beb5c4a5dfe7b4b65a491d14eca6d25895f7d2795264ec58c288fdb9773664b79818fd170ec6d787d:999a9b9c9d9e9fa0a1a2a3a4a5a7a8a9aaabacadafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9#dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fa,5c3d52b283465162830e775b66769cb84eac60ca7c:beb3,7ecf4e958b66666f988897595883656c955c5f8475c997567a:dfde,51c070af7a9863ea7a767ea0739697ed4e4570784e5d915253a965:51e7,81fc8205548e5c31759a97a062d872d975bd5c459a7983ca5c40548077e94e3e6cae805a62d2636e5de851778ddd8e1e952f4ff153e560e770ac526763509e435a1f5026773753777ee26485652b628963985014723589c951b38bc07edd574783cc94a7519b541b5cfb7d:fbfcfdfeff,7e:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f30313233343536373839#3a3c3d3e3f40424344454648494a4b4c4d4e4f505152535455565758595a5b5c5d,4fca7ae36d5a90e19a8f55805496536154af5f0063e9697751ef6168520a582a52d8574e780d770b5eb761777ce062:5b97,4ea27095800362f770e49760577782db67ef68f578d5989779d158f354b353ef6e34514b523b5ba28bfe80af554357a660735751542d7a7a60505b5463a762a053e362635bc767af54ed7a9f82e691775e9388e4593857ae630e8de880ef57577b774fa95feb5bbd6b3e53217b5072c2684677:ff36,65f751b54e8f76d45cbf7aa58475594e9b4150807e:5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f8081838485868788898a8b8c8d8e8f909192939495969798999a9c9d9e#aeb4bbbcd6e4ecf9,7f:0a101e37393b3c3d3e3f404143464748494a4b4c4d4e4f5253,998861276e8357646606634656f062:ec69,5ed39614578362c955878721814a8fa3556683b167658d5684dd5a6a680f62e67bee961151706f9c8c3063fd89c861d27f0670c26ee57405699472fc5eca90ce67176d6a635e52b3726280014f6c59e5916a70d96d9d52d24e5096f7956d857e78ca7d2f5121579264c2808b7c7b6cea68f1695e51b7539868a872819ece7bf172f879bb6f137406674e91cc9ca4793c83:8954,540f68174e3d538952b1783e5386522950884f:8bd0,7f:56595b5c5d5e6063646566676b6c6d6f7073757677787a7b7c7d7f8082838485868788898b8d8f9091929395969798999b9ca0a2a3a5a6a8a9aaabacadaeb1#b3b4b5b6b7babbbec0c2c3c4c6c7c8c9cbcdcfd0d1d2d3d6d7d9dadbdcdddee2e3,75e27acb7c926ca596b6529b748354e94fe9805483b28fde95705ec9601c6d9f5e18655b813894fe604b70bc7ec37cae51c968817cb1826f4e248f8691cf667e4eae8c0564a9804a50da759771ce5be58fbd6f664e86648295635ed66599521788c270c852a3730e7433679778f797164e3490bb9cde6dcb51db8d41541d62ce73b283f196f69f8494c34f367f9a51cc707596755cad988653e64ee46e9c740969b4786b998f7559521876246d4167f3516d9f99804b54997b3c7abf7f:e4e7e8eaebecedeff2f4f5f6f7f8f9fafdfeff,80:020708090a0e0f11131a1b1d1e1f2123242b2c2d2e2f303234393a3c3e404144454748494e4f505153555657#595b5c5d5e5f6061626364656667686b6c6d6e6f7072737475767778797a7b7c7d,9686578462e29647697c5a0464027bd36f0f964b82a6536298855e90708963b35364864f9c819e93788c97328d:ef42,9e7f6f5e79845f559646622e9a74541594dd4fa365c55c:6561,7f1586516c2f5f8b73876ee47eff5ce6631b5b6a6ee653754e7163a0756562a18f6e4f264ed16ca67eb68bba841d87ba7f57903b95237ba99aa188f8843d6d1b9a867edc59889ebb739b780186829a:6c82,561b541757cb4e709ea653568fc881097792999286ee6ee1851366fc61626f2b80:7e818285888a8d8e8f909192949597999ea3a6a7a8acb0b3b5b6b8b9bbc5c7c8c9cacbcfd0d1d2d3d4d5d8dfe0e2e3e6eef5f7f9fbfeff,81:000103040507080b#0c1517191b1c1d1f202122232425262728292a2b2d2e3033343537393a3b3c3d3f,8c298292832b76f26c135fd983bd732b8305951a6bdb77db94c6536f830251925e3d8c8c8d384e4873ab679a68859176970971646ca177095a9295416bcf7f8e66275bd059b95a9a95:e8f7,4eec84:0c99,6aac76df9530731b68a65b5f772f919a97617cdc8ff78c1c5f257c7379d889c56ccc871c5bc65e4268c977207ef551:954d,52c95a297f05976282d763cf778485d079d26e3a5e9959998511706d6c1162bf76bf654f60af95fd660e879f9e2394ed54:0d7d,8c2c647881:40414243444547494d4e4f525657585b5c5d5e5f6162636466686a6b6c6f727375767778818384858687898b8c8d8e90929394959697999a9e9fa0a1a2a4a5#a7a9abacadaeafb0b1b2b4b5b6b7b8b9bcbdbebfc4c5c7c8c9cbcdcecfd0d1d2d3,647986116a21819c78e864699b5462b9672b83ab58a89ed86cab6f205bde964c8c0b725f67d062c772614ea959c66bcd589366ae5e5552df6155672876ee776672677a4662ff54:ea50,94a090a35a1c7eb36c164e435976801059485357753796be56ca63208111607c95f96dd65462998151855ae980fd59ae9713502a6ce55c3c62df4f60533f817b90066eba852b62c85e7478be64b5637b5ff55a18917f9e1f5c3f634f80425b7d556e95:4a4d,6d8560a867e072de51dd5b8181:d4d5d6d7d8d9dadbdcdddedfe0e1e2e4e5e6e8e9ebeeeff0f1f2f5f6f7f8f9fafdff,82:030708090a0b0e0f111315161718191a1d2024252627292e323a3c3d3f#404142434546484a4c4d4e5051525354555657595b5c5d5e606162636465666769,62e76cde725b626d94ae7ebd81136d53519c5f04597452aa6012597366968650759f632a61e67cef8bfa54e66b279e256bb485d5545550766ca4556a8db4722c5e156015743662cd6392724c5f986e436d3e65006f5876d878d076fc7554522453db4e535e9e65c180:2ad6,629b5486522870ae888d8dd16ce1547880da57f988f48d54966a914d4f696c9b55b776c6783062a870f96f8e5f6d84ec68da787c7bf781a8670b9e4f636778b0576f7812973962:79ab,528874356bd782:6a6b6c6d71757677787b7c808183858687898c90939495969a9b9ea0a2a3a7b2b5b6babbbcbfc0c2c3c5c6c9d0d6d9dadde2e7e8e9eaecedeef0f2f3f5f6f8#fafcfdfeff,83:000a0b0d1012131618191d1e1f20212223242526292a2e3032373b3d,5564813e75b276ae533975de50fb5c418b6c7bc7504f72479a9798d86f0274e27968648777a562fc98918d2b54c180584e52576a82f9840d5e7351ed74f68bc45c4f57616cfc98875a4678349b448feb7c955256625194fa4ec68386846183e984b257d467345703666e6d668c3166dd7011671f6b3a6816621a59bb4e0351c46f0667d26c8f517668cb59476b6775665d0e81109f5065d779:4841,9a918d775c824e5e4f01542f5951780c56686c148fc45f036c:7de3,8bab639083:3e3f41424445484a4b4c4d4e5355565758595d6270717273747576797a7e7f808182838487888a8b8c8d8f909194959697999a9d9fa1a2a3a4a5a6a7acadae#afb5bbbebfc2c3c4c6c8c9cbcdced0d1d2d3d5d7d9dadbdee2e3e4e6e7e8ebeced,60706d3d7275626694:8ec5,53438fc17b7e4edf8c264e7e9ed494:b1b3,524d6f5c90636d458c3458115d4c6b:2049,67aa545b81547f8c589985375f3a62a26a47953965726084686577a74e544fa85de7979864ac7fd85ced4fcf7a8d520783044e14602f7a8394a64fb54eb279e6743452e482b964d279bd5bdd6c8197528f7b6c22503e537f6e0564ce66746c3060c598778bf75e86743c7a7779cb4e1890b174036c4256da914b6cc58d8b533a86c666f28eaf5c489a716e2083:eeeff3f4f5f6f7fafbfcfeff,84:0002050708090a10121314151617191a1b1e1f20212223292a2b2c2d2e2f30323334353637393a3b3e3f404142434445474849#4a4b4c4d4e4f505253545556585d5e5f606264656667686a6e6f70727477797b7c,53d65a369f8b8da353bb570898a76743919b6cc9516875ca62f372ac52:389d,7f3a7094763853749e4a69b7786e96c088d97fa471:36c3,518967d374e458e4651856b78ba9997662707ed560f970ed58ec4e:c1ba,5fcd97e74efb8ba45203598a7eab62544ecd65e5620e833884c98363878d71946eb65bb97ed2519763c967d480898339881551125b7a59828fb14e736c5d516589258f6f962e854a745e95:10f0,6da682e55f3164926d128428816e9cc3585e8d5b4e0953c184:7d7e7f8081838485868a8d8f90919293949596989a9b9d9e9fa0a2a3a4a5a6a7a8a9aaabacadaeb0b1b3b5b6b7bbbcbec0c2c3c5c6c7c8cbcccecfd2d4d5d7#d8d9dadbdcdee1e2e4e7e8e9eaebedeeeff1f2f3f4f5f6f7f8f9fafbfdfe,85:000102,4f1e6563685155d34e2764149a9a626b5ac2745f82726da968ee50e7838e7802674052396c997eb150bb5565715e7b5b665273ca82eb67495c715220717d886b95ea965564c58d6181b355846c5562477f2e58924f2455468d4f664c4e0a5c1a88f368a2634e7a0d70e7828d52fa97f65c1154e890b57ecd59628d4a86c782:0c0d,8d6664445c0461516d89793e8bbe78377533547b4f388eab6df15a207ec5795e6c885ba15a76751a80be614e6e1758f075:1f25,727253477ef385:030405060708090a0b0d0e0f101214151618191b1c1d1e2022232425262728292a2d2e2f303132333435363e3f404142444546474b4c4d4e4f505152535455#57585a5b5c5d5f60616263656667696a6b6c6d6e6f707173757677787c7d7f8081,770176db526980dc57235e08593172ee65bd6e7f8bd75c388671534177f362fe65f64ec098df86805b9e8bc653f277e24f7f5c4e9a7659cb5f0f793a58eb4e1667ff4e8b62ed8a93901d52bf662f55dc566c90024ed54f8d91ca99706c0f5e0260435ba489c68bd56536624b99965b:88ff,6388552e53d77626517d852c67a268b36b8a62928f9353d482126dd1758f4e668d4e5b70719f85af66:91d9,7f7287009ecd9f205c5e672f8ff06811675f620d7ad658855eb665706f3185:82838688898a8b8c8d8e909192939495969798999a9d9e9fa0a1a2a3a5a6a7a9abacadb1b2b3b4b5b6b8babbbcbdbebfc0c2c3c4c5c6c7c8cacbcccdced1d2#d4d6d7d8d9dadbdddedfe0e1e2e3e5e6e7e8eaebecedeeeff0f1f2f3f4f5f6f7f8,60555237800d6454887075295e05681362f4971c53cc723d8c016c3477617a0e542e77ac987a821c8bf47855671470c165af64955636601d79c153f84e1d6b7b80865bfa55e356db4f:3a3c,99725df3677e80386002988290015b8b8b:bcf5,641c825864de55fd82cf91654fd77d20901f7c9f50f358516eaf5bbf8bc980839178849c7b97867d96:8b8f,7ee59ad3788e5c817a57904296a7795f5b59635f7b0b84d168ad55067f2974107d2295016240584c4ed65b835979585485:f9fafcfdfe,86:0001020304060708090a0b0c0d0e0f10121314151718191a1b1c1d1e1f20212223242526282a2b2c2d2e2f3031323334353637393a3b3d3e3f40#4142434445464748494a4b4c525355565758595b5c5d5f6061636465666768696a,736d631e8e:4b0f,80ce82d462ac53f06cf0915e592a60016c70574d644a8d2a762b6ee9575b6a8075f06f6d8c:2d08,57666bef889278b363a253f970ad6c645858642a580268e0819b55107cd650188eba6dcc8d9f70eb638f6d9b6ed47ee68404684390036dd896768ba85957727985e4817e75bc8a8a68af52548e22951163d098988e44557c4f5366ff568f60d56d9552435c4959296dfb586b75:301c,606c82148146631167618fe2773a8d:f334,94c15e165385542c70c386:6d6f7072737475767778838485868788898e8f90919294969798999a9b9e9fa0a1a2a5a6abadaeb2b3b7b8b9bbbcbdbebfc1c2c3c5c8cccdd2d3d5d6d7dadc#dde0e1e2e3e5e6e7e8eaebeceff5f6f7fafbfcfdff,87:010405060b0c0e0f10111416,6c405ef7505c4ead5ead633a8247901a6850916e77b3540c94dc5f647ae5687663457b527edf75db507762955934900f51f879c37a8156fe5f9290146d825c60571f541051546e4d56e263a89893817f8715892a9000541e5c6f81c062:d658,81319e3596409a:6e7c,692d59a562d3553e631654c786d96d3c5a0374e6889c6b6a59168c4c5f2f6e7e73a9987d4e3870f75b8c7897633d665a769660cb5b9b5a494e0781556c6a738b4ea167897f515f8065fa671b5fd859845a0187:191b1d1f20242627282a2b2c2d2f303233353638393a3c3d404142434445464a4b4d4f505152545556585a5b5c5d5e5f6162666768696a6b6c6d6f71727375#7778797a7f8081848687898a8c8e8f90919294959698999a9b9c9d9ea0a1a2a3a4,5dcd5fae537197e68fdd684556f4552f60df4e3a6f4d7ef482c7840e59d44f:1f2a,5c3e7eac672a851a5473754f80c355829b4f4f4d6e2d8c135c096170536b761f6e29868a658795fb7eb9543b7a337d0a95ee55e17fc174ee631d87176da17a9d621165a1536763e16c835deb545c94a84e4c6c618bec5c4b65e0829c68a754:3e34,6b:cb66,4e9463425348821e4f:0dae,575e620a96fe6664726952:ffa1,609f8bef661471996790897f785277fd6670563b54389521727a87:a5a6a7a9aaaeb0b1b2b4b6b7b8b9bbbcbebfc1c2c3c4c5c7c8c9cccdcecfd0d4d5d6d7d8d9dadcdddedfe1e2e3e4e6e7e8e9ebecedeff0f1f2f3f4f5f6f7f8#fafbfcfdff,88:0001020405060708090b0c0d0e0f101112141718191a1c1d1e1f2023,7a00606f5e0c6089819d591560dc718470ef6eaa6c5072806a8488ad5e2d4e605ab3559c94e36d177cfb9699620f7ec6778e867e5323971e8f9666875ce14fa072ed4e0b53a6590f54136380952851484ed99c9c7ea454b88d248854823795f26d8e5f265acc663e966973:b02e,53bf817a99857fa15baa96:7750,7ebf76f853a2957699997bb189446e584e617fd479658be660f354cd4eab98795df76a6150cf54118c618427785d9704524a54ee56a395006d885bb56dc6665388:2425262728292a2b2c2d2e2f30313334353637383a3b3d3e3f414243464748494a4b4e4f505152535556585a5b5c5d5e5f6066676a6d6f717374757678797a#7b7c80838687898a8c8e8f90919394959798999a9b9d9e9fa0a1a3a5a6a7a8a9aa,5c0f5b5d6821809655787b11654869544e9b6b47874e978b534f631f643a90aa659c80c18c10519968b0537887f961c86c:c4fb,8c225c5185aa82af950c6b238f9b65b05f:fbc3,4fe18845661f8165732960fa51745211578b5f6290a2884c91925e78674f602759d351:44f6,80f853086c7996c4718a4f:11ee,7f9e673d55c5950879c088967ee3589f620c9700865a5618987b5f908bb884c4915753d965ed5e8f755c60647d6e5a7f7e:eaed,8f6955a75ba360ac65cb738488:acaeafb0b2b3b4b5b6b8b9babbbdbebfc0c3c4c7c8cacbcccdcfd0d1d3d6d7dadbdcdddee0e1e6e7e9eaebecedeeeff2f5f6f7fafbfdff,89:0001030405060708#090b0c0d0e0f1114151617181c1d1e1f20222324262728292c2d2e2f3132333537,9009766377297eda9774859b5b667a7496ea884052cb718f5faa65ec8be25bfb9a6f5de16b896c5b8b:adaf,900a8fc5538b62bc9e:262d,54404e2b82bd7259869c5d1688596daf96c554d14e9a8bb6710954bd960970df6df976d04e25781487125ca95ef68a00989c960e708e6cbf594463a9773c884d6f148273583071d5538c781a96c155015f6671305bb48c1a9a8c6b83592e9e2f79e76768626c4f6f75a17f8a6d0b96336c274ef075d2517b68376f3e908081705996747689:38393a3b3c3d3e3f40424345464748494a4b4c4d4e4f505152535455565758595a5b5c5d6061626364656768696a6b6c6d6e6f707172737475767778797a7c#7d7e808284858788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1,64475c2790657a918c2359da54ac8200836f898180006930564e8036723791ce51b64e5f987563964e1a53f666f3814b591c6db24e0058f9533b63d694f14f:9d0a,886398905937905779fb4eea80f075916c825b9c59e85f5d69058681501a5df24e5977e34ee5827a6291661390915c794ebf5f7981c69038808475ab4ea688d4610f6bc55fc64e4976ca6ea28b:e3ae,8c0a8bd15f027f:fccc,7ece83:356b,56e06bb797f3963459fb541f94f66deb5bc5996e5c395f15969089:a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c3cdd3d4d5d7d8d9dbdddfe0e1e2e4e7e8e9eaecedeef0f1f2f4f5f6f7f8f9fa#fbfcfdfeff,8a:01020304050608090a0b0c0d0e0f101112131415161718191a1b1c1d,537082f16a315a749e705e947f2883b984:2425,836787478fce8d6276c85f719896786c662054df62e54f6381c375c85eb896cd8e0a86f9548f6cf36d8c6c38607f52c775285e7d4f1860a05fe75c24753190ae94c072b96cb96e389149670953:cbf3,4f5191c98bf153c85e7c8fc26de44e8e76c26986865e611a82064f:59de,903e9c7c61096e:1d14,96854e885a3196e84e0e5c7f79b95b878bed7fbd738957df828b90c15401904755bb5cea5fa161086b3272f180b28a:891e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3f4041424344454647494a4b4c4d4e4f505152535455565758595a5b5c5d5e#5f606162636465666768696a6b6c6d6e6f7071727374757677787a7b7c7d7e7f80,6d745bd388d598848c6b9a6d9e336e0a51:a443,57a38881539f63f48f9556ed54585706733f6e907f188fdc82d1613f6028966266f07ea68d:8ac3,94a55cb37ca4670860a6960580184e9190e75300966851418fd08574915d665597f55b55531d78386742683d54c9707e5bb08f7d518d572854b1651266828d:5e43,810f846c906d7cdf51ff85fb67a365e96fa186a48e81566a90207682707671e58d2362e952196cfd8d3c600e589e618e66fe8d60624e55b36e23672d8f678a:81828384858687888b8c8d8e8f9091929495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2#c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3,94e195f87728680569a8548b4e4d70b88bc86458658b5b857a84503a5be877bb6be18a797c986cbe76cf65a98f975d2d5c5586386808536062187ad96e5b7efd6a1f7ae05f706f335f20638c6da867564e085e108d264ed780c07634969c62db662d627e6cbc8d7571677f695146808753ec906e629854f286f08f998005951785178fd96d5973cd659f771f7504782781fb8d1e94884fa6679575b98bca9707632f9547963584b8632377415f8172f04e896014657462ef6b63653f8a:e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,8b:0001020304050608090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223#24252728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445,5e2775c790d18bc1829d679d652f5431871877e580a281026c414e4b7ec7804c76f4690d6b966267503c4f84574063076b628dbe53ea65e87eb85fd763:1ab7,81:f3f4,7f6e5e1c5cd95236667a79e97a1a8d28709975d46ede6cbb7a924e2d76c55fe0949f88777ec879cd80bf91cd4ef24f17821f54685dde6d328bcc7ca58f7480985e1a549276b15b99663c9aa473e0682a86db6731732a8b:f8db,90107af970db716e62c477a956314e3b845767f152a986c08d2e94f87b518b:464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364656768696a6b6d6e6f707172737475767778797a7b7c7d7e7f80818283848586#8788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9facb1bbc7d0ea,8c:091e,4f4f6ce8795d9a7b6293722a62fd4e1378168f6c64b08d5a7bc668695e8488c55986649e58ee72b6690e95258ffd8d5857607f008c0651c6634962d95353684c74228301914c55447740707c6d4a517954a88d4459ff6ecb6dc45b5c7d2b4ed47c7d6ed35b5081ea6e0d5b579b0368d58e2a5b977efc603b7eb590b98d70594f63cd79df8db3535265cf79568bc5963b7ec494bb7e825634918967007f6a5c0a907566285de64f5067de505a4f5c57505e:a7#3$,8c:38393a3b3c3d3e3f4042434445484a4b4d4e4f5051525354565758595b5c5d5e5f60636465666768696c6d6e6f707172747576777b7c7d7e7f808183848687#888b8d8e8f90919293959697999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacad,4e:8d0c,51404e105eff53454e:15981e,9b325b6c56694e2879ba4e3f53154e47592d723b536e6c1056df80e499976bd3777e9f174e:369f,9f104e:5c6993,82885b5b556c560f4ec453:8d9da3a5ae,97658d5d53:1af5262e3e,8d5c53:6663,52:02080e2d333f404c5e615c,84af52:7d82819093,51827f544e:bbc3c9c2e8e1ebde,4f1b4ef34f:2264,4ef54f:2527092b5e67,65384f:5a5d,8c:aeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebec#edeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,8d:000102030405060708090a0b0c0d,4f:5f57323d76749189838f7e7baa7cac94e6e8eac5dae3dcd1dff8,50:294c,4ff350:2c0f2e2d,4ffe50:1c0c25287e4355484e6c7ba5a7a9bad6,510650:edece6ee,51:070b,4edd6c3d4f:5865ce,9fa06c467c74516e5dfd9ec999985181591452f9530d8a07531051eb591951554ea051564eb388:6ea4,4eb5811488d279805b3488037fb851:abb1bdbc,8d:0e0f101112131415161718191a1b1c205152575f6568696a6c6e6f717278797a7b7c7d7e7f808283868788898c8d8e8f90929395969798999a9b9c9d9ea0a1#a2a4a5a6a7a8a9aaabacadaeafb0b2b6b7b9bbbdc0c1c2c5c7c8c9cacdd0d2d3d4,51:c796a2a5,8b:a0a6a7aab4b5b7c2c3cbcfced2d3d4d6d8d9dcdfe0e4e8e9eef0f3f6f9fcff,8c:000204070c0f1112141516191b181d1f202125272a2b2e2f32333536,53:697a,96:1d2221312a3d3c4249545f676c7274888d97b0,90:979b9d99aca1b4b3b6ba,8d:d5d8d9dce0e1e2e5e6e7e9edeef0f1f2f4f6fcfeff,8e:00010203040607080b0d0e1011121315161718191a1b1c202124252627282b2d303233343637383b3c3e#3f4345464c4d4e4f505354555657585a5b5c5d5e5f60616263646567686a6b6e71,90:b8b0cfc5bed0c4c7d3e6e2dcd7dbebeffe,91:04221e23312f394346,520d594252:a2acadbe,54ff52:d0d6f0,53df71ee77cd5ef451:f5fc,9b2f53b65f01755a5def57:4ca9a1,58:7ebcc5d1,57:292c2a33392e2f5c3b4269856b867c7b686d7673ada48cb2cfa7b493a0d5d8dad9d2b8f4eff8e4dd,8e:73757778797a7b7d7e808283848688898a8b8c8d8e91929395969798999a9b9d9fa0a1a2a3a4a5a6a7a8a9aaadaeb0b1b3b4b5b6b7b8b9bbbcbdbebfc0c1c2#c3c4c5c6c7c8c9cacbcccdcfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4,58:0b0d,57:fded,58:001e194420656c81899a80,99a89f1961ff82:797d7f8f8aa8848e919799abb8beb0c8cae398b7aecbccc1a9b4a1aa9fc4cea4e1,830982:f7e4,83:0f07,82:dcf4d2d8,830c82:fbd3,83:111a061415,82:e0d5,83:1c515b5c08923c34319b5e2f4f47435f4017602d3a336665,8e:e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,8f:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223#2425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f4041424344,83:681b696c6a6d6eb078b3b4a0aa939c857cb6a97db87b989ea8babcc1,840183:e5d8,580784:180b,83:ddfdd6,84:1c381106,83:d4df,84:0f03,83:f8f9eac5c0,842683:f0e1,84:5c515a597387887a89783c4669768c8e316dc1cdd0e6bdd3cabfbae0a1b9b497e5e3,850c750d853884f085:391f3a,8f:45464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364656a808c929da0a1a2a4a5a6a7aaacadaeafb2b3b4b5b7b8babbbcbfc0c3c6#c9cacbcccdcfd2d6d7dae0e1e3e7eceff1f2f4f5f6fafbfcfeff,90:07080c0e131518,85:563b,84:fffc,85:594868645e7a,77a285:43727ba4a8878f79ae9c85b9b7b0d3c1dcff,86:270529163c,5efe5f0859:3c41,803759:555a58,530f5c:22252c34,62:4c6a9fbbcadad7ee,632262f663:394b43adf6717a8eb46dac8a69aebcf2f8e0ffc4dece,645263:c6be,64:45410b1b200c26215e846d96,90:191c2324252728292a2b2c303132333437393a3d3f4043454648494a4b4c4e545556595a5c5d5e5f6061646667696a6b6c6f70717273767778797a7b7c7e81#84858687898a8c8d8e8f90929496989a9c9e9fa0a4a5a7a8a9abadb2b7bcbdbfc0,64:7ab7b899bac0d0d7e4e2,65:09252e,5f:0bd2,75195f1153:5ff1fde9e8fb,54:1216064b5253545643215759233282947771649a9b8476669dd0adc2b4d2a7a6d3d472a3d5bbbfccd9dadca9aaa4ddcfde,551b54e7552054fd551454f355:22230f11272a678fb5496d41553f503c,90:c2c3c6c8c9cbcccdd2d4d5d6d8d9dadedfe0e3e4e5e9eaeceef0f1f2f3f5f6f7f9fafbfcff,91:00010305060708090a0b0c0d0e0f1011121314151617181a1b1c#1d1f20212425262728292a2b2c2d2e30323334353637383a3b3c3d3e3f40414244,55:375675767733305c8bd283b1b988819f7ed6917bdfbdbe9499eaf7c9,561f55:d1ebecd4e6ddc4efe5f2f3cccde8f5e4,8f9456:1e080c012423,55fe56:00272d5839572c4d62595c4c548664716b7b7c8593afd4d7dde1f5ebf9ff,57:040a091c,5e:0f191411313b3c,91:454748515354555658595b5c5f606667686b6d737a7b7c808182838486888a8e8f939495969798999c9d9e9fa0a1a4a5a6a7a8a9abacb0b1b2b3b6b7b8b9bb#bcbdbebfc0c1c2c3c4c5c6c8cbd0d2d3d4d5d6d7d8d9dadbdddedfe0e1e2e3e4e5,5e:3744545b5e61,5c:8c7a8d9096889899919a9cb5a2bdacabb1a3c1b7c4d2e4cbe5,5d:020327262e241e061b583e343d6c5b6f5d6b4b4a697482999d,8c735d:b7c5,5f:73778287898c95999ca8adb5bc,88625f6172:adb0b4b7b8c3c1cecdd2e8efe9f2f4f7,730172f3730372fa91:e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,92:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021222324#25262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445,72fb73:1713210a1e1d152239252c3831504d57606c6f7e,821b592598e759:2402,99:636768696a6b6c74777d8084878a8d9091939495,5e:80918b96a5a0b9b5beb3,8d535e:d2d1dbe8ea,81ba5f:c4c9d6cf,60035fee60045f:e1e4fe,60:0506,5f:eaedf8,60:1935261b0f0d292b0a3f2178797b7a42,92:464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f7071727375767778797a7b7c7d7e7f808182838485#868788898a8b8c8d8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7,60:6a7d969aad9d83928c9becbbb1ddd8c6dab4,61:20261523,60f461:000e2b4a75ac94a7b7d4f5,5fdd96b395:e9ebf1f3f5f6fcfe,96:030406080a0b0c0d0f12151617191a,4e2c723f62156c:35545c4aa38590948c6869747686a9d0d4adf7f8f1d7b2e0d6faebeeb1d3effe,92:a8a9aaabacadafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8#e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,93:00010203040506070809,6d:39270c43480704190e2b4d2e351a4f525433916f9ea05e93945c607c63,6e1a6d:c7c5de,6e0e6d:bfe0,6e116d:e6ddd9,6e166dab6e0c6dae6e:2b6e4e6bb25f865354322544dfb198e0,6f2d6e:e2a5a7bdbbb7d7b4cf8fc29f,6f:6246472415,6ef96f:2f364b742a0929898d8c78727c7ad1,93:0a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3f40414243444546474849#4a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696b,6f:c9a7b9b6c2e1eedee0ef,70:1a231b39354f5e,5b:80849593a5b8,752f9a9e64345b:e4ee,89305bf08e478b078f:b6d3d5e5eee4e9e6f3e8,90:05040b26110d162135362d2f445152506858625b,66b990:747d8288838b,5f:50575658,5c3b54ab5c:5059,5b715c:6366,7fbc5f:2a292d,82745f3c9b3b5c6e59:81838da9aaa3,93:6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaab#acadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cbcccd,59:97caab9ea4d2b2afd7be,5a:0506,59dd5a0859:e3d8f9,5a:0c09323411231340674a553c6275,80ec5a:aa9b777abeebb2d2d4b8e0e3f1d6e6d8dc,5b:091716323740,5c:151c,5b:5a6573515362,9a:7577787a7f7d808185888a90929396989b9c9d9fa0a2a3a5a7,7e:9fa1a3a5a8a9,93:cecfd0d1d2d3d4d5d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,94:000102030405060708090a0b0c0d#0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e,7e:adb0bec0c1c2c9cbccd0d4d7dbe0e1e8ebeeeff1f2,7f0d7e:f6fafbfe,7f:01020307080b0c0f111217191c1b1f212223242526272a2b2c2d2f3031323335,5e7a757f5ddb753e909573:8e91aea29fcfc2d1b7b3c0c9c8e5d9,987c740a73:e9e7debaf2,74:0f2a5b262528302e2c,94:2f303132333435363738393a3b3c3d3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6c6d6e6f#707172737475767778797a7b7c7d7e7f8081828384919698c7cfd3d4dae6fb,95:1c20,74:1b1a415c575559776d7e9c8e8081878b9ea8a990a7d2ba,97:eaebec,67:4c535e4869a5876a7398a775a89ead8b777cf0,680967d8680a67:e9b0,680c67:d9b5dab3dd,680067:c3b8e2,680e67:c1fd,68:323360614e624464831d55664167403e4a4929b58f7477936bc2,696e68fc69:1f20,68f995:27333d43484b555a606e74757778797a7b7c7d7e808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aa#abacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacb,692468f069:0b0157,68e369:10713960425d846b80987834cc8788ce896663799ba7bbabadd4b1c1cadf95e08dff,6a2f69ed6a:171865,69f26a:443ea0505b358e793d28587c9190a997ab,73:3752,6b:8182878492938d9a9ba1aa,8f:6b6d71727375767877797a7c7e818284878b,95:cccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7ecff,96:0713181b1e20232425262728292b2c2d2f303738393a3e41434a4e4f5152535657#58595a5c5d5e606365666b6d6e6f70717378797a7b7c7d7e7f808182838487898a,8f:8d8e8f989a,8ece62:0b171b1f222125242c,81e774:eff4ff,75:0f1113,65:34eeeff0,66:0a19,677266:031500,708566:f71d34313635,800666:5f54414f56615777848ca79dbedbdce6e9,8d:3233363b3d4045464849474d5559,89:c7cacbcccecfd0d1,72:6e9f5d666f7e7f848b8d8f92,63:0832b0,96:8c8e91929395969a9b9d9e9fa0a1a2a3a4a5a6a8a9aaabacadaeafb1b2b4b5b7b8babbbfc2c3c8cacbd0d1d3d4d6d7d8d9dadbdcdddedfe1e2e3e4e5e6e7eb#ecedeef0f1f2f4f5f8fafbfcfdff,97:0203050a0b0c10111214151718191a1b1d1f20,64:3fd8,80046b:eaf3fdf5f9,6c:0507060d1518191a2129242a32,65:35556b,72:4d525630,8662521680:9f9c93bc,670a80:bdb1abadb4b7e7e8e9eadbc2c4d9cdd7,671080:ddebf1f4ed,81:0d0e,80:f2fc,671581128c5a81:361e2c1832484c5374595a7160697c7d6d67,584d5ab581:888291,6ed581:a3aacc,672681:cabb,97:2122232425262728292b2c2e2f3133343536373a3b3c3d3f404142434445464748494a4b4c4d4e4f5051545557585a5c5d5f63646667686a6b6c6d6e6f7071#72757778797a7b7d7e7f8081828384868788898a8c8e8f9093959697999a9b9c9d,81:c1a6,6b:243739434659,98:d1d2d3d5d9da,6bb35f406bc289f365909f5165:93bcc6c4c3ccced2d6,70:809c969dbbc0b7abb1e8ca,71:1013162f31735c6845724a787a98b3b5a8a0e0d4e7f9,72:1d28,706c71:1866b9,62:3e3d434849,79:3b4046495b5c535a6257606f677a858a9aa7b3,5f:d1d0,97:9e9fa1a2a4a5a6a7a8a9aaacaeb0b1b3b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3#e4e5e8eeeff0f1f2f4f7f8f9fafbfcfdfeff,98:000102030405060708090a0b0c0d0e,60:3c5d5a67415963ab,61:060d5da99dcbd1,620680:807f,6c:93f6,6dfc77:f6f8,78:0009171811,65ab78:2d1c1d393a3b1f3c252c23294e6d56572650474c6a9b939a879ca1a3b2b9a5d4d9c9ecf2,790578f479:13241e34,9f9b9e:f9fbfc,76f177:040d,76f977:07081a22192d263538505147435a68,98:0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d#4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e,77:62657f8d7d808c919fa0b0b5bd,75:3a404e4b485b727983,7f:58615f,8a487f:68747179817e,76:cde5,883294:8586878b8a8c8d8f909497959a9b9ca3a4abaaadacafb0b2b4b6b7b8b9babcbdbfc4c8c9cacbcccdced0d1d2d5d6d7d9d8dbdedfe0e2e4e5e7e8ea,98:6f70717273748b8e929599a3a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcfd0d4d6d7dbdcdde0e1e2e3e4#e5e6e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,99:0001020304050607,94:e9ebeeeff3f4f5f7f9fcfdff,95:03020607090a0d0e0f1213141516181b1d1e1f222a2b292c3132343637383c3e3f4235444546494c4e4f525354565758595b5e5f5d61626465666768696a6b6c6f7172733a,77:e7ec,96c979:d5ede3eb,7a065d477a:03021e14,99:08090a0b0c0e0f1112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2f303132333435363738393a3b3c3d3e3f40414243444546474849#4a4b4c4d4e4f50515253565758595a5b5c5d5e5f60616264667378797b7e828389,7a:393751,9ecf99a57a7076:888e9399a4,74:dee0,752c9e:202228292a2b2c3231363837393a3e414244464748494b4c4e5155575a5b5c5e63666768696a6b6c716d73,75:929496a09daca3b3b4b8c4b1b0c3c2d6cde3e8e6e4ebe7,760375:f1fcff,76:1000050c170a25181519,99:8c8e9a9b9c9d9e9fa0a1a2a3a4a6a7a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8#d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9,76:1b3c2220402d303f35433e334d5e545c566b6f,7fca7a:e6787980868895a6a0aca8adb3,88:6469727d7f82a2c6b7bcc9e2cee3e5f1,891a88:fce8fef0,89:2119131b0a342b3641667b,758b80e576:b2b4,77dc80:1214161c20222526272928310b3543464d526971,898398:788083,99:fafbfcfdfeff,9a:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738#393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f50515253545556575859,98:898c8d8f949a9b9e9fa1a2a5a6,86:4d546c6e7f7a7c7ba88d8bac9da7a3aa93a9b6c4b5ceb0bab1afc9cfb4e9f1f2edf3d0,871386:def4dfd8d1,87:0307,86f887:080a0d09233b1e252e1a3e48343129373f82227d7e7b60704c6e8b53637c64596593afa8d2,9a:5a5b5c5d5e5f606162636465666768696a6b7283898d8e949599a6a9aaabacadaeafb2b3b4b5b9bbbdbebfc3c4c6c7c8c9cacdcecfd0d2d4d5d6d7d9dadbdc#dddee0e2e3e4e5e7e8e9eaeceef0f1f2f3f4f5f6f7f8fafcfdfeff,9b:000102040506,87:c68885ad9783abe5acb5b3cbd3bdd1c0cadbeae0ee,88:1613,87fe88:0a1b21393c,7f:36424445,82107a:fafd,7b:080304150a2b0f47382a192e31202524333e1e585a45754c5d606e7b62727190a6a7b8ac9da885aa9ca2abb4d1c1ccdddae5e6ea,7c0c7b:fefc,7c:0f160b,9b:07090a0b0c0d0e1011121415161718191a1b1c1d1e2021222425262728292a2b2c2d2e3031333435363738393a3d3e3f40464a4b4c4e50525355565758595a#5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b,7c:1f2a26384140,81fe82:010204,81ec884482:2122232d2f282b383b33343e44494b4f5a5f68,88:7e8588d8df,895e7f:9d9fa7afb0b2,7c7c65497c:919d9c9ea2b2bcbdc1c7cccdc8c5d7e8,826e66a87f:bfced5e5e1e6e9eef3,7cf87d:77a6ae,7e:479b,9e:b8b4,8d:73849491b1676d,8c:4749,91:4a504e4f64,9b:7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9ba#bbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadb,91:626170696f7d7e7274798c85908d91a2a3aaadaeafb5b4ba,8c559e7e8d:b8eb,8e:055969,8d:b5bfbcbac4d6d7dadececfdbc6ecf7f8e3f9fbe4,8e098dfd8e:141d1f2c2e232f3a4039353d3149414251524a70767c6f74858f94909c9e,8c:78828a859894,659b89:d6dedadc,9b:dcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,9c:000102030405060708090a0b0c0d0e0f101112131415161718191a#1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b,89:e5ebef,8a3e8b26975396:e9f3ef,97:0601080f0e2a2d303e,9f:808385868788898a8c,9efe9f:0b0d,96:b9bcbdced2,77bf96e092:8eaec8,93:3e6aca8f,94:3e6b,9c:7f8285868788,7a239c:8b8e90919294959a9b9e9fa0a1a2a3a5a6a7a8a9abadaeb0b1b2b3b4b5b6b7babbbcbdc4c5c6c7cacb3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a#7b7d7e808384898a8c8f93969798999daaacafb9bebfc0c1c2c8c9d1d2dadbe0e1cccdcecfd0d3d4d5d7d8d9dcdddfe2,97:7c85919294afaba3b2b4,9a:b1b0b7,9e589a:b6babcc1c0c5c2cbccd1,9b:45434749484d51,98e899:0d2e5554,9a:dfe1e6efebfbedf9,9b:080f131f23,9e:bdbe,7e3b9e:8287888b92,93d69e:9d9fdbdcdde0dfe2e9e7e5eaef,9f:222c2f39373d3e44,9c:e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,9d:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021#22232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142#92$434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f8081#82838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2#92$a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1#e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,9e:000102#92$030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e24272e30343b3c404d5052535456595d5f606162656e6f727475767778797a7b7c7d80#8183848586898a8c8d8e8f90919495969798999a9b9c9ea0a1a2a3a4a5a7a8a9aa#92$abacadaeafb0b1b2b3b5b6b7b9babcbfc0c1c2c3c5c6c7c8cacbccd0d2d3d5d6d7d9dadee1e3e4e6e8ebecedeef0f1f2f3f4f5f6f7f8fafdff,9f:000102030405#060708090a0c0f1112141516181a1b1c1d1e1f21232425262728292a2b2d2e3031#92$3233343536383a3c3f4041424345464748494a4b4c4d4e4f52535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778#797a7b7c7d7e81828d8e8f9091929394959697989c9d9ea1a2a3a4a5,f9:2c7995e7f1#92$,fa:0c0d0e0f111314181f20212324272829,e8:15161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f40414243#4445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364'), + var re = zipData + .replace(/#(\d+)\$/g, function(a, b) { + return Array(+b + 3).join('#'); + }) + .replace(/#/g, '####') + .replace(/(\w\w):([\w#]+)(?:,|$)/g, function(a, hd, dt) { + return dt.replace(/../g, function(a) { + if (a != '##') { + return hd + a; + } else { + return a; + } + }); + }); + return re; + }('4e:020405060f12171f20212326292e2f313335373c40414244464a5155575a5b6263646567686a6b6c6d6e6f727475767778797a7b7c7d7f808182838485878a#909697999c9d9ea3aaafb0b1b4b6b7b8b9bcbdbec8cccfd0d2dadbdce0e2e6e7e9edeeeff1f4f8f9fafcfe,4f:00020304050607080b0c12131415161c1d212328292c2d2e31333537393b3e3f40414244454748494a4b4c525456616266686a6b6d6e7172757778797a7d8081828586878a8c8e909293959698999a9c9e9fa1a2a4abadb0b1b2b3b4b6b7b8b9babbbcbdbec0c1c2c6c7c8c9cbcccdd2d3d4d5d6d9dbe0e2e4e5e7ebecf0f2f4f5f6f7f9fbfcfdff,50:000102030405060708090a#0b0e1011131516171b1d1e20222324272b2f303132333435363738393b3d3f404142444546494a4b4d5051525354565758595b5d5e5f6061626364666768696a6b6d6e6f70717273747578797a7c7d818283848687898a8b8c8e8f909192939495969798999a9b9c9d9e9fa0a1a2a4a6aaabadaeafb0b1b3b4b5b6b7b8b9bcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdced0d1d2d3d4d5d7d8d9dbdcdddedfe0e1e2e3e4e5e8e9eaebeff0f1f2f4f6f7f8f9fafcfdfeff,51:00010203040508#090a0c0d0e0f1011131415161718191a1b1c1d1e1f2022232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e42474a4c4e4f5052535758595b5d5e5f606163646667696a6f727a7e7f838486878a8b8e8f90919394989a9d9e9fa1a3a6a7a8a9aaadaeb4b8b9babebfc1c2c3c5c8cacdced0d2d3d4d5d6d7d8d9dadcdedfe2e3e5e6e7e8e9eaeceef1f2f4f7fe,52:0405090b0c0f101314151c1e1f2122232526272a2c2f313234353c3e4445464748494b4e4f5253555758#595a5b5d5f6062636466686b6c6d6e7071737475767778797a7b7c7e808384858687898a8b8c8d8e8f91929495969798999a9ca4a5a6a7aeafb0b4b5b6b7b8b9babbbcbdc0c1c2c4c5c6c8cacccdcecfd1d3d4d5d7d9dadbdcdddee0e1e2e3e5e6e7e8e9eaebecedeeeff1f2f3f4f5f6f7f8fbfcfd,53:0102030407090a0b0c0e11121314181b1c1e1f2224252728292b2c2d2f3031323334353637383c3d404244464b4c4d505458595b5d65686a6c6d7276797b7c7d7e80818387888a8e8f#90919293949697999b9c9ea0a1a4a7aaabacadafb0b1b2b3b4b5b7b8b9babcbdbec0c3c4c5c6c7cecfd0d2d3d5dadcdddee1e2e7f4fafeff,54:000205070b1418191a1c2224252a303336373a3d3f4142444547494c4d4e4f515a5d5e5f6061636567696a6b6c6d6e6f7074797a7e7f8183858788898a8d919397989c9e9fa0a1a2a5aeb0b2b5b6b7b9babcbec3c5cacbd6d8dbe0e1e2e3e4ebeceff0f1f4f5f6f7f8f9fbfe,55:0002030405080a0b0c0d0e121315161718191a1c1d1e1f212526#28292b2d3234353638393a3b3d40424547484b4c4d4e4f515253545758595a5b5d5e5f60626368696b6f7071727374797a7d7f85868c8d8e9092939596979a9b9ea0a1a2a3a4a5a6a8a9aaabacadaeafb0b2b4b6b8babcbfc0c1c2c3c6c7c8cacbcecfd0d5d7d8d9dadbdee0e2e7e9edeef0f1f4f6f8f9fafbfcff,56:0203040506070a0b0d1011121314151617191a1c1d202122252628292a2b2e2f30333537383a3c3d3e404142434445464748494a4b4f5051525355565a5b5d5e5f6061#636566676d6e6f70727374757778797a7d7e7f80818283848788898a8b8c8d9091929495969798999a9b9c9d9e9fa0a1a2a4a5a6a7a8a9aaabacadaeb0b1b2b3b4b5b6b8b9babbbdbebfc0c1c2c3c4c5c6c7c8c9cbcccdcecfd0d1d2d3d5d6d8d9dce3e5e6e7e8e9eaeceeeff2f3f6f7f8fbfc,57:00010205070b0c0d0e0f101112131415161718191a1b1d1e202122242526272b313234353637383c3d3f414344454648494b52535455565859626365676c6e707172747578797a7d7e7f80#818788898a8d8e8f90919495969798999a9c9d9e9fa5a8aaacafb0b1b3b5b6b7b9babbbcbdbebfc0c1c4c5c6c7c8c9cacccdd0d1d3d6d7dbdcdee1e2e3e5e6e7e8e9eaebeceef0f1f2f3f5f6f7fbfcfeff,58:0103040508090a0c0e0f101213141617181a1b1c1d1f222325262728292b2c2d2e2f31323334363738393a3b3c3d3e3f4041424345464748494a4b4e4f505253555657595a5b5c5d5f6061626364666768696a6d6e6f707172737475767778797a7b7c7d7f82848687888a8b8c#8d8e8f909194959697989b9c9da0a1a2a3a4a5a6a7aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbdbebfc0c2c3c4c6c7c8c9cacbcccdcecfd0d2d3d4d6d7d8d9dadbdcdddedfe0e1e2e3e5e6e7e8e9eaedeff1f2f4f5f7f8fafbfcfdfeff,59:000103050608090a0b0c0e1011121317181b1d1e2021222326282c30323335363b3d3e3f404345464a4c4d505253595b5c5d5e5f616364666768696a6b6c6d6e6f70717275777a7b7c7e7f8085898b8c8e8f90919495989a9b9c9d9fa0a1a2a6#a7acadb0b1b3b4b5b6b7b8babcbdbfc0c1c2c3c4c5c7c8c9cccdcecfd5d6d9dbdedfe0e1e2e4e6e7e9eaebedeeeff0f1f2f3f4f5f6f7f8fafcfdfe,5a:00020a0b0d0e0f101214151617191a1b1d1e2122242627282a2b2c2d2e2f3033353738393a3b3d3e3f414243444547484b4c4d4e4f5051525354565758595b5c5d5e5f60616364656668696b6c6d6e6f7071727378797b7c7d7e808182838485868788898a8b8c8d8e8f9091939495969798999c9d9e9fa0a1a2a3a4a5a6a7a8a9abac#adaeafb0b1b4b6b7b9babbbcbdbfc0c3c4c5c6c7c8cacbcdcecfd0d1d3d5d7d9dadbdddedfe2e4e5e7e8eaecedeeeff0f2f3f4f5f6f7f8f9fafbfcfdfeff,5b:0001020304050607080a0b0c0d0e0f10111213141518191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303133353638393a3b3c3d3e3f4142434445464748494a4b4c4d4e4f52565e606167686b6d6e6f7274767778797b7c7e7f82868a8d8e90919294969fa7a8a9acadaeafb1b2b7babbbcc0c1c3c8c9cacbcdcecf#d1d4d5d6d7d8d9dadbdce0e2e3e6e7e9eaebecedeff1f2f3f4f5f6f7fdfe,5c:0002030507080b0c0d0e10121317191b1e1f2021232628292a2b2d2e2f303233353637434446474c4d5253545657585a5b5c5d5f62646768696a6b6c6d70727374757677787b7c7d7e808384858687898a8b8e8f9293959d9e9fa0a1a4a5a6a7a8aaaeafb0b2b4b6b9babbbcbec0c2c3c5c6c7c8c9cacccdcecfd0d1d3d4d5d6d7d8dadbdcdddedfe0e2e3e7e9ebeceeeff1f2f3f4f5f6f7f8f9fafcfdfeff,5d:00#01040508090a0b0c0d0f10111213151718191a1c1d1f2021222325282a2b2c2f3031323335363738393a3b3c3f4041424344454648494d4e4f5051525354555657595a5c5e5f6061626364656667686a6d6e7071727375767778797a7b7c7d7e7f8081838485868788898a8b8c8d8e8f9091929394959697989a9b9c9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b8b9babbbcbdbebfc0c1c2c3c4c6c7c8c9cacbcccecfd0d1d2d3d4d5d6d7d8d9dadcdfe0e3e4eaeced#f0f5f6f8f9fafbfcff,5e:000407090a0b0d0e1213171e1f20212223242528292a2b2c2f303233343536393a3e3f404143464748494a4b4d4e4f50515253565758595a5c5d5f60636465666768696a6b6c6d6e6f70717577797e8182838588898c8d8e92989b9da1a2a3a4a8a9aaabacaeafb0b1b2b4babbbcbdbfc0c1c2c3c4c5c6c7c8cbcccdcecfd0d4d5d7d8d9dadcdddedfe0e1e2e3e4e5e6e7e9ebecedeeeff0f1f2f3f5f8f9fbfcfd,5f:050607090c0d0e10121416191a1c1d1e21222324#282b2c2e30323334353637383b3d3e3f4142434445464748494a4b4c4d4e4f5154595a5b5c5e5f60636567686b6e6f72747576787a7d7e7f83868d8e8f919394969a9b9d9e9fa0a2a3a4a5a6a7a9abacafb0b1b2b3b4b6b8b9babbbebfc0c1c2c7c8cacbced3d4d5dadbdcdedfe2e3e5e6e8e9eceff0f2f3f4f6f7f9fafc,60:0708090b0c10111317181a1e1f2223242c2d2e3031323334363738393a3d3e404445464748494a4c4e4f5153545657585b5c5e5f606165666e71727475777e80#8182858687888a8b8e8f909193959798999c9ea1a2a4a5a7a9aaaeb0b3b5b6b7b9babdbebfc0c1c2c3c4c7c8c9cccdcecfd0d2d3d4d6d7d9dbdee1e2e3e4e5eaf1f2f5f7f8fbfcfdfeff,61:02030405070a0b0c1011121314161718191b1c1d1e21222528292a2c2d2e2f303132333435363738393a3b3c3d3e4041424344454647494b4d4f50525354565758595a5b5c5e5f606163646566696a6b6c6d6e6f717273747678797a7b7c7d7e7f808182838485868788898a8c8d8f9091929395#969798999a9b9c9e9fa0a1a2a3a4a5a6aaabadaeafb0b1b2b3b4b5b6b8b9babbbcbdbfc0c1c3c4c5c6c7c9cccdcecfd0d3d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e7e8e9eaebecedeeeff0f1f2f3f4f6f7f8f9fafbfcfdfe,62:00010203040507091314191c1d1e2023262728292b2d2f303132353638393a3b3c424445464a4f50555657595a5c5d5e5f6061626465687172747577787a7b7d818283858687888b8c8d8e8f9094999c9d9ea3a6a7a9aaadaeafb0b2b3b4b6b7b8babec0c1#c3cbcfd1d5dddee0e1e4eaebf0f2f5f8f9fafb,63:00030405060a0b0c0d0f10121314151718191c2627292c2d2e30313334353637383b3c3e3f40414447484a51525354565758595a5b5c5d60646566686a6b6c6f707273747578797c7d7e7f81838485868b8d9193949597999a9b9c9d9e9fa1a4a6abafb1b2b5b6b9bbbdbfc0c1c2c3c5c7c8cacbccd1d3d4d5d7d8d9dadbdcdddfe2e4e5e6e7e8ebeceeeff0f1f3f5f7f9fafbfcfe,64:0304060708090a0d0e111215161718191a1d1f222324#252728292b2e2f3031323335363738393b3c3e404243494b4c4d4e4f505153555657595a5b5c5d5f60616263646566686a6b6c6e6f70717273747576777b7c7d7e7f8081838688898a8b8c8d8e8f90939497989a9b9c9d9fa0a1a2a3a5a6a7a8aaabafb1b2b3b4b6b9bbbdbebfc1c3c4c6c7c8c9cacbcccfd1d3d4d5d6d9dadbdcdddfe0e1e3e5e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,65:01020304050607080a0b0c0d0e0f10111314151617191a1b1c1d1e1f2021#222324262728292a2c2d30313233373a3c3d404142434446474a4b4d4e5052535457585a5c5f606164656768696a6d6e6f7173757678797a7b7c7d7e7f8081828384858688898a8d8e8f92949596989a9d9ea0a2a3a6a8aaacaeb1b2b3b4b5b6b7b8babbbebfc0c2c7c8c9cacdd0d1d3d4d5d8d9dadbdcdddedfe1e3e4eaebf2f3f4f5f8f9fbfcfdfeff,66:0104050708090b0d1011121617181a1b1c1e2122232426292a2b2c2e3032333738393a3b3d3f40424445464748494a4d4e505158#595b5c5d5e6062636567696a6b6c6d7172737578797b7c7d7f808183858688898a8b8d8e8f909293949598999a9b9c9e9fa0a1a2a3a4a5a6a9aaabacadafb0b1b2b3b5b6b7b8babbbcbdbfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8dadedfe0e1e2e3e4e5e7e8eaebecedeeeff1f5f6f8fafbfd,67:010203040506070c0e0f1112131618191a1c1e20212223242527292e303233363738393b3c3e3f414445474a4b4d5254555758595a5b5d62636466676b6c6e717476#78797a7b7d8082838586888a8c8d8e8f9192939496999b9fa0a1a4a6a9acaeb1b2b4b9babbbcbdbebfc0c2c5c6c7c8c9cacbcccdced5d6d7dbdfe1e3e4e6e7e8eaebedeef2f5f6f7f8f9fafbfcfe,68:01020304060d1012141518191a1b1c1e1f20222324252627282b2c2d2e2f30313435363a3b3f474b4d4f52565758595a5b5c5d5e5f6a6c6d6e6f707172737578797a7b7c7d7e7f8082848788898a8b8c8d8e90919294959698999a9b9c9d9e9fa0a1a3a4a5a9aaabacaeb1b2b4b6b7b8#b9babbbcbdbebfc1c3c4c5c6c7c8cacccecfd0d1d3d4d6d7d9dbdcdddedfe1e2e4e5e6e7e8e9eaebecedeff2f3f4f6f7f8fbfdfeff,69:00020304060708090a0c0f11131415161718191a1b1c1d1e21222325262728292a2b2c2e2f313233353637383a3b3c3e4041434445464748494a4b4c4d4e4f50515253555658595b5c5f616264656768696a6c6d6f7072737475767a7b7d7e7f8183858a8b8c8e8f909192939697999a9d9e9fa0a1a2a3a4a5a6a9aaacaeafb0b2b3b5b6b8b9babcbd#bebfc0c2c3c4c5c6c7c8c9cbcdcfd1d2d3d5d6d7d8d9dadcdddee1e2e3e4e5e6e7e8e9eaebeceeeff0f1f3f4f5f6f7f8f9fafbfcfe,6a:000102030405060708090b0c0d0e0f10111213141516191a1b1c1d1e20222324252627292b2c2d2e30323334363738393a3b3c3f40414243454648494a4b4c4d4e4f515253545556575a5c5d5e5f60626364666768696a6b6c6d6e6f70727374757677787a7b7d7e7f81828385868788898a8b8c8d8f929394959698999a9b9c9d9e9fa1a2a3a4a5a6#a7a8aaadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,6b:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f252628292a2b2c2d2e2f303133343536383b3c3d3f4041424445484a4b4d4e4f5051525354555657585a5b5c5d5e5f606168696b6c6d6e6f7071727374757677787a7d7e7f808588#8c8e8f909194959798999c9d9e9fa0a2a3a4a5a6a7a8a9abacadaeafb0b1b2b6b8b9babbbcbdbec0c3c4c6c7c8c9caccced0d1d8dadcdddedfe0e2e3e4e5e6e7e8e9ecedeef0f1f2f4f6f7f8fafbfcfeff,6c:000102030408090a0b0c0e12171c1d1e2023252b2c2d31333637393a3b3c3e3f434445484b4c4d4e4f5152535658595a62636566676b6c6d6e6f71737577787a7b7c7f8084878a8b8d8e9192959697989a9c9d9ea0a2a8acafb0b4b5b6b7bac0c1c2c3c6c7c8cbcdcecfd1d2d8#d9dadcdddfe4e6e7e9ecedf2f4f9ff,6d:000203050608090a0d0f101113141516181c1d1f20212223242628292c2d2f30343637383a3f404244494c50555657585b5d5f6162646567686b6c6d707172737576797a7b7d7e7f8081838486878a8b8d8f9092969798999a9ca2a5acadb0b1b3b4b6b7b9babbbcbdbec1c2c3c8c9cacdcecfd0d2d3d4d5d7dadbdcdfe2e3e5e7e8e9eaedeff0f2f4f5f6f8fafdfeff,6e:0001020304060708090b0f12131518191b1c1e1f222627282a2c2e30313335#3637393b3c3d3e3f40414245464748494a4b4c4f5051525557595a5c5d5e606162636465666768696a6c6d6f707172737475767778797a7b7c7d8081828487888a8b8c8d8e91929394959697999a9b9d9ea0a1a3a4a6a8a9abacadaeb0b3b5b8b9bcbebfc0c3c4c5c6c8c9cacccdced0d2d6d8d9dbdcdde3e7eaebecedeeeff0f1f2f3f5f6f7f8fafbfcfdfeff,6f:000103040507080a0b0c0d0e101112161718191a1b1c1d1e1f212223252627282c2e303234353738393a3b3c3d3f404142#43444548494a4c4e4f5051525354555657595a5b5d5f60616364656768696a6b6c6f707173757677797b7d7e7f808182838586878a8b8f909192939495969798999a9b9d9e9fa0a2a3a4a5a6a8a9aaabacadaeafb0b1b2b4b5b7b8babbbcbdbebfc1c3c4c5c6c7c8cacbcccdcecfd0d3d4d5d6d7d8d9dadbdcdddfe2e3e4e5e6e7e8e9eaebecedf0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,70:000102030405060708090a0b0c0d0e0f1012131415161718191c1d1e1f2021222425262728292a#2b2c2d2e2f30313233343637383a3b3c3d3e3f404142434445464748494a4b4d4e505152535455565758595a5b5c5d5f606162636465666768696a6e7172737477797a7b7d818283848687888b8c8d8f90919397989a9b9e9fa0a1a2a3a4a5a6a7a8a9aab0b2b4b5b6babebfc4c5c6c7c9cbcccdcecfd0d1d2d3d4d5d6d7dadcdddee0e1e2e3e5eaeef0f1f2f3f4f5f6f8fafbfcfeff,71:0001020304050607080b0c0d0e0f111214171b1c1d1e1f2021222324252728292a2b2c2d2e323334#353738393a3b3c3d3e3f4041424344464748494b4d4f505152535455565758595a5b5d5f6061626365696a6b6c6d6f707174757677797b7c7e7f8081828385868788898b8c8d8e909192939596979a9b9c9d9ea1a2a3a4a5a6a7a9aaabadaeafb0b1b2b4b6b7b8babbbcbdbebfc0c1c2c4c5c6c7c8c9cacbcccdcfd0d1d2d3d6d7d8d9dadbdcdddedfe1e2e3e4e6e8e9eaebecedeff0f1f2f3f4f5f6f7f8fafbfcfdfeff,72:0001020304050708090a0b0c0d0e0f101112131415161718191a#1b1c1e1f2021222324252627292b2d2e2f3233343a3c3e40414243444546494a4b4e4f505153545557585a5c5e60636465686a6b6c6d707173747677787b7c7d828385868788898c8e9091939495969798999a9b9c9d9ea0a1a2a3a4a5a6a7a8a9aaabaeb1b2b3b5babbbcbdbebfc0c5c6c7c9cacbcccfd1d3d4d5d6d8dadb#95$,30:000102,00b702:c9c7,00a830:0305,2014ff5e20:162618191c1d,30:141508090a0b0c0d0e0f16171011,00:b1d7f7,22:362728110f2a2908371aa52520,231222:992b2e614c483d1d606e6f64651e3534,26:4240,00b020:3233,2103ff0400a4ff:e0e1,203000a7211626:0605,25:cbcfcec7c6a1a0b3b2,203b21:92909193,30:13#95$,21:70717273747576777879#4$,24:88898a8b8c8d8e8f909192939495969798999a9b7475767778797a7b7c7d7e7f808182838485868760616263646566676869##,32:20212223242526272829##,21:606162636465666768696a6b#97$,ff:010203e505060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5de3#95$,30:4142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f90919293#106$a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6#103$,03:9192939495969798999a9b9c9d9e9fa0a1a3a4a5a6a7a8a9#6$b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c3c4c5c6c7c8c9#5$,fe:3536393a3f403d3e41424344##3b3c373831#3334#104$,04:10111213141501161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f#13$30313233343551363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f#11$,02:cacbd9,20:13152535,21:050996979899,22:151f23526667bf,25:505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f7071727381828384858687#88898a8b8c8d8e8f939495bcbde2e3e4e5,2609229530:121d1e#9$,010100e101ce00e0011300e9011b00e8012b00ed01d000ec014d00f301d200f2016b00fa01d400f901:d6d8dadc,00:fcea,0251e7c701:4448,e7c802:61#2$,31:05060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223242526272829#19$,30:212223242526272829,32a333:8e8f9c9d9ea1c4ced1d2d5,fe30ff:e2e4#,212132:31#,20:10#1$,30:fc9b9cfdfe069d9e,fe:494a4b4c4d4e4f50515254555657595a5b5c5d5e5f6061#626364656668696a6b,e7:e7e8e9eaebecedeeeff0f1f2f3,30:07#11$,25:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b#13$,72:dcdddfe2e3e4e5e6e7eaebf5f6f9fdfeff,73:00020405060708090b0c0d0f1011121418191a1f2023242627282d2f30323335363a3b3c3d404142434445464748#494a4b4c4e4f515354555658595a5b5c5d5e5f6162636465666768696a6b6e7071#92$72737475767778797a7b7c7d7f808182838586888a8c8d8f90929394959798999a9c9d9ea0a1a3a4a5a6a7a8aaacadb1b4b5b6b8b9bcbdbebfc1c3c4c5c6c7#cbccced2d3d4d5d6d7d8dadbdcdddfe1e2e3e4e6e8eaebeceeeff0f1f3f4f5f6f7#92$f8f9fafbfcfdfeff,74:0001020407080b0c0d0e1112131415161718191c1d1e1f2021232427292b2d2f31323738393a3b3d3e3f4042434445464748494a4b4c4d#4e4f505152535456585d606162636465666768696a6b6c6e6f717273747578797a#92$7b7c7d7f8284858688898a8c8d8f9192939495969798999a9b9d9fa0a1a2a3a4a5a6aaabacadaeafb0b1b2b3b4b5b6b7b8b9bbbcbdbebfc0c1c2c3c4c5c6c7#c8c9cacbcccdcecfd0d1d3d4d5d6d7d8d9dadbdddfe1e5e7e8e9eaebecedf0f1f2#92$f3f5f8f9fafbfcfdfe,75:0001020305060708090a0b0c0e1012141516171b1d1e202122232426272a2e3436393c3d3f414243444647494a4d5051525355565758#5d5e5f60616263646768696b6c6d6e6f7071737576777a7b7c7d7e808182848587#92$88898a8c8d8e909395989b9c9ea2a6a7a8a9aaadb6b7babbbfc0c1c6cbcccecfd0d1d3d7d9dadcdddfe0e1e5e9ecedeeeff2f3f5f6f7f8fafbfdfe,76:02040607#08090b0d0e0f11121314161a1c1d1e212327282c2e2f31323637393a3b3d414244#92$45464748494a4b4e4f50515253555758595a5b5d5f6061626465666768696a6c6d6e7071727374757677797a7c7f80818385898a8c8d8f9092949597989a9b#9c9d9e9fa0a1a2a3a5a6a7a8a9aaabacadafb0b3b5b6b7b8b9babbbcbdbec0c1c3,554a963f57c3632854ce550954c076:914c,853c77ee827e788d72319698978d6c285b894ffa630966975cb880fa684880ae660276ce51f9655671ac7ff1888450b2596561ca6fb382ad634c625253ed54277b06516b75a45df462d48dcb9776628a8019575d97387f627238767d67cf767e64464f708d2562dc7a17659173ed642c6273822c9881677f724862:6ecc,4f3474e3534a529e7eca90a65e2e6886699c81807ed168d278c5868c9551508d8c2482de80de53058912526576:c4c7c9cbccd3d5d9dadcdddee0e1e2e3e4e6e7e8e9eaebecedf0f3f5f6f7fafbfdff,77:00020305060a0c0e0f1011121314151617181b1c1d1e21232425272a2b#2c2e3031323334393b3d3e3f4244454648494a4b4c4d4e4f52535455565758595c,858496f94fdd582199715b9d62:b1a5,66b48c799c8d7206676f789160b253:5117,8f8880cc8d1d94a1500d72c8590760eb711988ab595482ef672c7b285d297ef7752d6cf58e668ff8903c9f3b6bd491197b145f7c78a784d6853d6b:d5d9d6,5e:0187,75f995ed655d5f:0ac5,8f9f58c181c2907f965b97ad8fb97f168d2c62414fbf53:d85e,8f:a8a9ab,904d68075f6a819888689cd6618b522b762a5f6c658c6fd26ee85bbe644851:75b0,67c44e1979c9997c70b377:5d5e5f606467696a6d6e6f7071727374757677787a7b7c818283868788898a8b8f90939495969798999a9b9c9d9ea1a3a4a6a8abadaeafb1b2b4b6b7b8b9ba#bcbec0c1c2c3c4c5c6c7c8c9cacbcccecfd0d1d2d3d4d5d6d8d9dadddedfe0e1e4,75c55e7673bb83e064ad62e894b56ce2535a52c3640f94c27b944f2f5e1b823681:168a,6e246cca9a736355535c54fa886557e04e0d5e036b657c3f90e8601664e6731c88c16750624d8d22776c8e2991c75f6983dc8521991053c286956b8b60:ede8,707f82:cd31,4ed36ca785cf64cd7cd969fd66f9834953957b564fa7518c6d4b5c428e6d63d253c983:2c36,67e578b4643d5bdf5c945dee8be762c667f48c7a640063ba8749998b8c177f2094f24ea7961098a4660c731677:e6e8eaeff0f1f2f4f5f7f9fafbfc,78:0304050607080a0b0e0f101315191b1e20212224282a2b2e2f31323335363d3f414243444648494a4b4d4f51535458595a#5b5c5e5f606162636465666768696f7071727374757678797a7b7d7e7f80818283,573a5c1d5e38957f507f80a05382655e7545553150218d856284949e671d56326f6e5de2543570928f66626f64a463a35f7b6f8890f481e38fb05c1866685ff16c8996488d81886c649179f057ce6a59621054484e587a0b60e96f848bda627f901e9a8b79e4540375f4630153196c608fdf5f1b9a70803b9f7f4f885c3a8d647fc565a570bd51:45b2,866b5d075ba062bd916c75748e0c7a2061017b794ec77ef877854e1181ed521d51fa6a7153a88e87950496cf6ec19664695a78:848586888a8b8f9092949596999d9ea0a2a4a6a8a9aaabacadaeafb5b6b7b8babbbcbdbfc0c2c3c4c6c7c8cccdcecfd1d2d3d6d7d8dadbdcdddedfe0e1e2e3#e4e5e6e7e9eaebedeeeff0f1f3f5f6f8f9fbfcfdfeff,79:00020304060708090a0b0c,784050a877d7641089e6590463e35ddd7a7f693d4f20823955984e3275ae7a975e:628a,95ef521b5439708a6376952457826625693f918755076df37eaf882262337ef075b5832878c196cc8f9e614874f78bcd6b64523a8d506b21806a847156f153064e:ce1b,51d17c97918b7c074fc38e7f7be17a9c64675d1450ac810676017cb96dec7fe067515b:58f8,78cb64:ae13,63:aa2b,9519642d8fbe7b5476296253592754466b7950a362345e266b864ee38d37888b5f85902e79:0d0e0f1011121415161718191a1b1c1d1f2021222325262728292a2b2c2d2e2f3031323335363738393d3f42434445474a4b4c4d4e4f505152545558596163#6466696a6b6c6e70717273747576797b7c7d7e7f8283868788898b8c8d8e909192,6020803d62c54e39535590f863b880c665e66c2e4f4660ee6de18bde5f3986cb5f536321515a83616863520063638e4850125c9b79775bfc52307a3b60bc905376d75f:b797,76848e6c706f767b7b4977aa51f3909358244f4e6ef48fea654c7b1b72c46da47fdf5ae162b55e95573084827b2c5e1d5f1f90127f1498a063826ec7789870b95178975b57ab75354f4375385e9760e659606dc06bbf788953fc96d551cb52016389540a94938c038dcc7239789f87768fed8c0d53e079:939495969798999b9c9d9e9fa0a1a2a3a4a5a6a8a9aaabacadaeafb0b1b2b4b5b6b7b8bcbfc2c4c5c7c8cacccecfd0d3d4d6d7d9dadbdcdddee0e1e2e5e8ea#eceef1f2f3f4f5f6f7f9fafcfeff,7a:0104050708090a0c0f10111213151618191b1c,4e0176ef53ee948998769f0e952d5b9a8ba24e:221c,51ac846361c252a8680b4f97606b51bb6d1e515c6296659796618c46901775d890fd77636bd272:8aec,8bfb583577798d4c675c9540809a5ea66e2159927aef77ed953b6bb565ad7f0e58065151961f5bf958a954288e726566987f56e4949d76fe9041638754c659:1a3a,579b8eb267358dfa8235524160f0581586fe5ce89e454fc4989d8bb95a2560765384627c904f9102997f6069800c513f80335c1499756d314e8c7a:1d1f21222425262728292a2b2c2d2e2f303132343536383a3e4041424344454748494a4b4c4d4e4f50525354555658595a5b5c5d5e5f606162636465666768#696a6b6c6d6e6f717273757b7c7d7e828587898a8b8c8e8f909394999a9b9ea1a2,8d3053d17f5a7b4f4f104e4f96006cd573d085e95e06756a7ffb6a0a77fe94927e4151e170e653cd8fd483038d2972af996d6cdb574a82b365b980aa623f963259a84eff8bbf7eba653e83f2975e556198de80a5532a8bfd542080ba5e9f6cb88d3982ac915a54296c1b52067eb7575f711a6c7e7c89594b4efd5fff61247caa4e305c0167ab87025cf0950b98ce75af70fd902251af7f1d8bbd594951e44f5b5426592b657780a45b7562:76c2,8f905e456c1f7b264f:0fd8,670d7a:a3a4a7a9aaabaeafb0b1b2b4b5b6b7b8b9babbbcbdbec0c1c2c3c4c5c6c7c8c9cacccdcecfd0d1d2d3d4d5d7d8dadbdcdde1e2e4e7e8e9eaebeceef0f1f2f3#f4f5f6f7f8fbfcfe,7b:0001020507090c0d0e1012131617181a1c1d1f21222327292d,6d:6eaa,798f88b15f17752b629a8f854fef91dc65a781:2f51,5e9c81508d74526f89868d4b590d50854ed8961c723681798d1f5bcc8ba3964459877f1a549056:760e,8be565396982949976d66e895e72751867:46d1,7aff809d8d76611f79c665628d635188521a94a27f38809b7eb25c976e2f67607bd9768b9ad8818f7f947cd5641e95507a3f54:4ae5,6b4c640162089e3d80f3759952729769845b683c86e496:0194,94ec4e2a54047ed968398ddf801566f45e9a7fb97b:2f303234353637393b3d3f404142434446484a4d4e535557595c5e5f61636465666768696a6b6c6d6f70737476787a7c7d7f81828384868788898a8b8c8e8f#9192939698999a9b9e9fa0a3a4a5aeafb0b2b3b5b6b7b9babbbcbdbebfc0c2c3c4,57c2803f68975de5653b529f606d9f9a4f9b8eac516c5bab5f135de96c5e62f18d21517194a952fe6c9f82df72d757a267848d2d591f8f9c83c754957b8d4f306cbd5b6459d19f1353e486ca9aa88c3780a16545987e56fa96c7522e74dc52505be1630289024e5662d0602a68fa51735b9851a089c27ba199867f5060ef704c8d2f51495e7f901b747089c4572d78455f529f9f95fa8f689b3c8be17678684267dc8d:ea35,523d8f8a6eda68cd950590ed56fd679c88f98fc754c87b:c5c8c9cacbcdcecfd0d2d4d5d6d7d8dbdcdedfe0e2e3e4e7e8e9ebecedeff0f2f3f4f5f6f8f9fafbfdff,7c:0001020304050608090a0d0e101112131415171819#1a1b1c1d1e20212223242528292b2c2d2e2f3031323334353637393a3b3c3d3e42,9ab85b696d776c264ea55bb39a87916361a890af97e9542b6db55bd251fd558a7f:55f0,64bc634d65f161be608d710a6c:5749,592f676d822a58d5568e8c6a6beb90dd597d801753f76d695475559d83:77cf,683879be548c4f55540876d28c8996026cb36db88d6b89109e648d3a563f9ed175d55f8872e0606854fc4ea86a2a886160528f7054c470d886799e3f6d2a5b8f5f187ea255894faf7334543c539a501954:0e7c,4e4e5ffd745a58f6846b80e1877472d07cca6e567c:434445464748494a4b4c4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f70717275767778797a7e7f8081828384858687#888a8b8c8d8e8f90939496999a9ba0a1a3a6a7a8a9abacadafb0b4b5b6b7b8babb,5f27864e552c62a44e926caa623782b154d7534e733e6ed1753b521253168bdd69d05f8a60006dee574f6b2273af68538fd87f13636260a3552475ea8c6271156da35ba65e7b8352614c9ec478fa87577c27768751f060f6714c66435e4c604d8c0e707063258f895fbd606286d456de6bc160946167534960e066668d3f79fd4f1a70e96c478b:b3f2,7ed88364660f5a5a9b426d:51f7,8c416d3b4f19706b83b7621660d1970d8d27797851fb57:3efa,673a75787a3d79ef7b957c:bfc0c2c3c4c6c9cbcecfd0d1d2d3d4d8dadbdddee1e2e3e4e5e6e7e9eaebecedeef0f1f2f3f4f5f6f7f9fafcfdfeff,7d:000102030405060708090b0c0d0e0f10#1112131415161718191a1b1c1d1e1f212324252628292a2c2d2e30313233343536,808c99658ff96fc08ba59e2159ec7ee97f095409678168d88f917c4d96c653ca602575be6c7253735ac97ea7632451e0810a5df184df628051805b634f0e796d524260b86d4e5b:c4c2,8b:a1b0,65e25fcc964559937e:e7aa,560967b759394f735bb652a0835a988a8d3e753294be50477a3c4ef767b69a7e5ac16b7c76d1575a5c167b3a95f4714e517c80a9827059787f04832768c067ec78:b177,62e363617b804fed526a51cf835069db92748d:f531,89c1952e7bad4ef67d:3738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6f70717273747576#78797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798,506582305251996f6e:1085,6da75efa50f559dc5c066d466c5f7586848b686859568bb253209171964d854969127901712680f64ea490ca6d479a845a0756bc640594f077eb4fa5811a72e189d2997a7f347ede527f655991758f:7f83,53eb7a9663:eda5,768679f888579636622a52ab8282685467706377776b7aed6d017ed389e359d0621285c982a5754c501f4ecb75a58beb5c4a5dfe7b4b65a491d14eca6d25895f7d2795264ec58c288fdb9773664b79818fd170ec6d787d:999a9b9c9d9e9fa0a1a2a3a4a5a7a8a9aaabacadafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9#dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fa,5c3d52b283465162830e775b66769cb84eac60ca7c:beb3,7ecf4e958b66666f988897595883656c955c5f8475c997567a:dfde,51c070af7a9863ea7a767ea0739697ed4e4570784e5d915253a965:51e7,81fc8205548e5c31759a97a062d872d975bd5c459a7983ca5c40548077e94e3e6cae805a62d2636e5de851778ddd8e1e952f4ff153e560e770ac526763509e435a1f5026773753777ee26485652b628963985014723589c951b38bc07edd574783cc94a7519b541b5cfb7d:fbfcfdfeff,7e:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f30313233343536373839#3a3c3d3e3f40424344454648494a4b4c4d4e4f505152535455565758595a5b5c5d,4fca7ae36d5a90e19a8f55805496536154af5f0063e9697751ef6168520a582a52d8574e780d770b5eb761777ce062:5b97,4ea27095800362f770e49760577782db67ef68f578d5989779d158f354b353ef6e34514b523b5ba28bfe80af554357a660735751542d7a7a60505b5463a762a053e362635bc767af54ed7a9f82e691775e9388e4593857ae630e8de880ef57577b774fa95feb5bbd6b3e53217b5072c2684677:ff36,65f751b54e8f76d45cbf7aa58475594e9b4150807e:5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f8081838485868788898a8b8c8d8e8f909192939495969798999a9c9d9e#aeb4bbbcd6e4ecf9,7f:0a101e37393b3c3d3e3f404143464748494a4b4c4d4e4f5253,998861276e8357646606634656f062:ec69,5ed39614578362c955878721814a8fa3556683b167658d5684dd5a6a680f62e67bee961151706f9c8c3063fd89c861d27f0670c26ee57405699472fc5eca90ce67176d6a635e52b3726280014f6c59e5916a70d96d9d52d24e5096f7956d857e78ca7d2f5121579264c2808b7c7b6cea68f1695e51b7539868a872819ece7bf172f879bb6f137406674e91cc9ca4793c83:8954,540f68174e3d538952b1783e5386522950884f:8bd0,7f:56595b5c5d5e6063646566676b6c6d6f7073757677787a7b7c7d7f8082838485868788898b8d8f9091929395969798999b9ca0a2a3a5a6a8a9aaabacadaeb1#b3b4b5b6b7babbbec0c2c3c4c6c7c8c9cbcdcfd0d1d2d3d6d7d9dadbdcdddee2e3,75e27acb7c926ca596b6529b748354e94fe9805483b28fde95705ec9601c6d9f5e18655b813894fe604b70bc7ec37cae51c968817cb1826f4e248f8691cf667e4eae8c0564a9804a50da759771ce5be58fbd6f664e86648295635ed66599521788c270c852a3730e7433679778f797164e3490bb9cde6dcb51db8d41541d62ce73b283f196f69f8494c34f367f9a51cc707596755cad988653e64ee46e9c740969b4786b998f7559521876246d4167f3516d9f99804b54997b3c7abf7f:e4e7e8eaebecedeff2f4f5f6f7f8f9fafdfeff,80:020708090a0e0f11131a1b1d1e1f2123242b2c2d2e2f303234393a3c3e404144454748494e4f505153555657#595b5c5d5e5f6061626364656667686b6c6d6e6f7072737475767778797a7b7c7d,9686578462e29647697c5a0464027bd36f0f964b82a6536298855e90708963b35364864f9c819e93788c97328d:ef42,9e7f6f5e79845f559646622e9a74541594dd4fa365c55c:6561,7f1586516c2f5f8b73876ee47eff5ce6631b5b6a6ee653754e7163a0756562a18f6e4f264ed16ca67eb68bba841d87ba7f57903b95237ba99aa188f8843d6d1b9a867edc59889ebb739b780186829a:6c82,561b541757cb4e709ea653568fc881097792999286ee6ee1851366fc61626f2b80:7e818285888a8d8e8f909192949597999ea3a6a7a8acb0b3b5b6b8b9bbc5c7c8c9cacbcfd0d1d2d3d4d5d8dfe0e2e3e6eef5f7f9fbfeff,81:000103040507080b#0c1517191b1c1d1f202122232425262728292a2b2d2e3033343537393a3b3c3d3f,8c298292832b76f26c135fd983bd732b8305951a6bdb77db94c6536f830251925e3d8c8c8d384e4873ab679a68859176970971646ca177095a9295416bcf7f8e66275bd059b95a9a95:e8f7,4eec84:0c99,6aac76df9530731b68a65b5f772f919a97617cdc8ff78c1c5f257c7379d889c56ccc871c5bc65e4268c977207ef551:954d,52c95a297f05976282d763cf778485d079d26e3a5e9959998511706d6c1162bf76bf654f60af95fd660e879f9e2394ed54:0d7d,8c2c647881:40414243444547494d4e4f525657585b5c5d5e5f6162636466686a6b6c6f727375767778818384858687898b8c8d8e90929394959697999a9e9fa0a1a2a4a5#a7a9abacadaeafb0b1b2b4b5b6b7b8b9bcbdbebfc4c5c7c8c9cbcdcecfd0d1d2d3,647986116a21819c78e864699b5462b9672b83ab58a89ed86cab6f205bde964c8c0b725f67d062c772614ea959c66bcd589366ae5e5552df6155672876ee776672677a4662ff54:ea50,94a090a35a1c7eb36c164e435976801059485357753796be56ca63208111607c95f96dd65462998151855ae980fd59ae9713502a6ce55c3c62df4f60533f817b90066eba852b62c85e7478be64b5637b5ff55a18917f9e1f5c3f634f80425b7d556e95:4a4d,6d8560a867e072de51dd5b8181:d4d5d6d7d8d9dadbdcdddedfe0e1e2e4e5e6e8e9ebeeeff0f1f2f5f6f7f8f9fafdff,82:030708090a0b0e0f111315161718191a1d2024252627292e323a3c3d3f#404142434546484a4c4d4e5051525354555657595b5c5d5e606162636465666769,62e76cde725b626d94ae7ebd81136d53519c5f04597452aa6012597366968650759f632a61e67cef8bfa54e66b279e256bb485d5545550766ca4556a8db4722c5e156015743662cd6392724c5f986e436d3e65006f5876d878d076fc7554522453db4e535e9e65c180:2ad6,629b5486522870ae888d8dd16ce1547880da57f988f48d54966a914d4f696c9b55b776c6783062a870f96f8e5f6d84ec68da787c7bf781a8670b9e4f636778b0576f7812973962:79ab,528874356bd782:6a6b6c6d71757677787b7c808183858687898c90939495969a9b9ea0a2a3a7b2b5b6babbbcbfc0c2c3c5c6c9d0d6d9dadde2e7e8e9eaecedeef0f2f3f5f6f8#fafcfdfeff,83:000a0b0d1012131618191d1e1f20212223242526292a2e3032373b3d,5564813e75b276ae533975de50fb5c418b6c7bc7504f72479a9798d86f0274e27968648777a562fc98918d2b54c180584e52576a82f9840d5e7351ed74f68bc45c4f57616cfc98875a4678349b448feb7c955256625194fa4ec68386846183e984b257d467345703666e6d668c3166dd7011671f6b3a6816621a59bb4e0351c46f0667d26c8f517668cb59476b6775665d0e81109f5065d779:4841,9a918d775c824e5e4f01542f5951780c56686c148fc45f036c:7de3,8bab639083:3e3f41424445484a4b4c4d4e5355565758595d6270717273747576797a7e7f808182838487888a8b8c8d8f909194959697999a9d9fa1a2a3a4a5a6a7acadae#afb5bbbebfc2c3c4c6c8c9cbcdced0d1d2d3d5d7d9dadbdee2e3e4e6e7e8ebeced,60706d3d7275626694:8ec5,53438fc17b7e4edf8c264e7e9ed494:b1b3,524d6f5c90636d458c3458115d4c6b:2049,67aa545b81547f8c589985375f3a62a26a47953965726084686577a74e544fa85de7979864ac7fd85ced4fcf7a8d520783044e14602f7a8394a64fb54eb279e6743452e482b964d279bd5bdd6c8197528f7b6c22503e537f6e0564ce66746c3060c598778bf75e86743c7a7779cb4e1890b174036c4256da914b6cc58d8b533a86c666f28eaf5c489a716e2083:eeeff3f4f5f6f7fafbfcfeff,84:0002050708090a10121314151617191a1b1e1f20212223292a2b2c2d2e2f30323334353637393a3b3e3f404142434445474849#4a4b4c4d4e4f505253545556585d5e5f606264656667686a6e6f70727477797b7c,53d65a369f8b8da353bb570898a76743919b6cc9516875ca62f372ac52:389d,7f3a7094763853749e4a69b7786e96c088d97fa471:36c3,518967d374e458e4651856b78ba9997662707ed560f970ed58ec4e:c1ba,5fcd97e74efb8ba45203598a7eab62544ecd65e5620e833884c98363878d71946eb65bb97ed2519763c967d480898339881551125b7a59828fb14e736c5d516589258f6f962e854a745e95:10f0,6da682e55f3164926d128428816e9cc3585e8d5b4e0953c184:7d7e7f8081838485868a8d8f90919293949596989a9b9d9e9fa0a2a3a4a5a6a7a8a9aaabacadaeb0b1b3b5b6b7bbbcbec0c2c3c5c6c7c8cbcccecfd2d4d5d7#d8d9dadbdcdee1e2e4e7e8e9eaebedeeeff1f2f3f4f5f6f7f8f9fafbfdfe,85:000102,4f1e6563685155d34e2764149a9a626b5ac2745f82726da968ee50e7838e7802674052396c997eb150bb5565715e7b5b665273ca82eb67495c715220717d886b95ea965564c58d6181b355846c5562477f2e58924f2455468d4f664c4e0a5c1a88f368a2634e7a0d70e7828d52fa97f65c1154e890b57ecd59628d4a86c782:0c0d,8d6664445c0461516d89793e8bbe78377533547b4f388eab6df15a207ec5795e6c885ba15a76751a80be614e6e1758f075:1f25,727253477ef385:030405060708090a0b0d0e0f101214151618191b1c1d1e2022232425262728292a2d2e2f303132333435363e3f404142444546474b4c4d4e4f505152535455#57585a5b5c5d5f60616263656667696a6b6c6d6e6f707173757677787c7d7f8081,770176db526980dc57235e08593172ee65bd6e7f8bd75c388671534177f362fe65f64ec098df86805b9e8bc653f277e24f7f5c4e9a7659cb5f0f793a58eb4e1667ff4e8b62ed8a93901d52bf662f55dc566c90024ed54f8d91ca99706c0f5e0260435ba489c68bd56536624b99965b:88ff,6388552e53d77626517d852c67a268b36b8a62928f9353d482126dd1758f4e668d4e5b70719f85af66:91d9,7f7287009ecd9f205c5e672f8ff06811675f620d7ad658855eb665706f3185:82838688898a8b8c8d8e909192939495969798999a9d9e9fa0a1a2a3a5a6a7a9abacadb1b2b3b4b5b6b8babbbcbdbebfc0c2c3c4c5c6c7c8cacbcccdced1d2#d4d6d7d8d9dadbdddedfe0e1e2e3e5e6e7e8eaebecedeeeff0f1f2f3f4f5f6f7f8,60555237800d6454887075295e05681362f4971c53cc723d8c016c3477617a0e542e77ac987a821c8bf47855671470c165af64955636601d79c153f84e1d6b7b80865bfa55e356db4f:3a3c,99725df3677e80386002988290015b8b8b:bcf5,641c825864de55fd82cf91654fd77d20901f7c9f50f358516eaf5bbf8bc980839178849c7b97867d96:8b8f,7ee59ad3788e5c817a57904296a7795f5b59635f7b0b84d168ad55067f2974107d2295016240584c4ed65b835979585485:f9fafcfdfe,86:0001020304060708090a0b0c0d0e0f10121314151718191a1b1c1d1e1f20212223242526282a2b2c2d2e2f3031323334353637393a3b3d3e3f40#4142434445464748494a4b4c525355565758595b5c5d5f6061636465666768696a,736d631e8e:4b0f,80ce82d462ac53f06cf0915e592a60016c70574d644a8d2a762b6ee9575b6a8075f06f6d8c:2d08,57666bef889278b363a253f970ad6c645858642a580268e0819b55107cd650188eba6dcc8d9f70eb638f6d9b6ed47ee68404684390036dd896768ba85957727985e4817e75bc8a8a68af52548e22951163d098988e44557c4f5366ff568f60d56d9552435c4959296dfb586b75:301c,606c82148146631167618fe2773a8d:f334,94c15e165385542c70c386:6d6f7072737475767778838485868788898e8f90919294969798999a9b9e9fa0a1a2a5a6abadaeb2b3b7b8b9bbbcbdbebfc1c2c3c5c8cccdd2d3d5d6d7dadc#dde0e1e2e3e5e6e7e8eaebeceff5f6f7fafbfcfdff,87:010405060b0c0e0f10111416,6c405ef7505c4ead5ead633a8247901a6850916e77b3540c94dc5f647ae5687663457b527edf75db507762955934900f51f879c37a8156fe5f9290146d825c60571f541051546e4d56e263a89893817f8715892a9000541e5c6f81c062:d658,81319e3596409a:6e7c,692d59a562d3553e631654c786d96d3c5a0374e6889c6b6a59168c4c5f2f6e7e73a9987d4e3870f75b8c7897633d665a769660cb5b9b5a494e0781556c6a738b4ea167897f515f8065fa671b5fd859845a0187:191b1d1f20242627282a2b2c2d2f303233353638393a3c3d404142434445464a4b4d4f505152545556585a5b5c5d5e5f6162666768696a6b6c6d6f71727375#7778797a7f8081848687898a8c8e8f90919294959698999a9b9c9d9ea0a1a2a3a4,5dcd5fae537197e68fdd684556f4552f60df4e3a6f4d7ef482c7840e59d44f:1f2a,5c3e7eac672a851a5473754f80c355829b4f4f4d6e2d8c135c096170536b761f6e29868a658795fb7eb9543b7a337d0a95ee55e17fc174ee631d87176da17a9d621165a1536763e16c835deb545c94a84e4c6c618bec5c4b65e0829c68a754:3e34,6b:cb66,4e9463425348821e4f:0dae,575e620a96fe6664726952:ffa1,609f8bef661471996790897f785277fd6670563b54389521727a87:a5a6a7a9aaaeb0b1b2b4b6b7b8b9bbbcbebfc1c2c3c4c5c7c8c9cccdcecfd0d4d5d6d7d8d9dadcdddedfe1e2e3e4e6e7e8e9ebecedeff0f1f2f3f4f5f6f7f8#fafbfcfdff,88:0001020405060708090b0c0d0e0f101112141718191a1c1d1e1f2023,7a00606f5e0c6089819d591560dc718470ef6eaa6c5072806a8488ad5e2d4e605ab3559c94e36d177cfb9699620f7ec6778e867e5323971e8f9666875ce14fa072ed4e0b53a6590f54136380952851484ed99c9c7ea454b88d248854823795f26d8e5f265acc663e966973:b02e,53bf817a99857fa15baa96:7750,7ebf76f853a2957699997bb189446e584e617fd479658be660f354cd4eab98795df76a6150cf54118c618427785d9704524a54ee56a395006d885bb56dc6665388:2425262728292a2b2c2d2e2f30313334353637383a3b3d3e3f414243464748494a4b4e4f505152535556585a5b5c5d5e5f6066676a6d6f717374757678797a#7b7c80838687898a8c8e8f90919394959798999a9b9d9e9fa0a1a3a5a6a7a8a9aa,5c0f5b5d6821809655787b11654869544e9b6b47874e978b534f631f643a90aa659c80c18c10519968b0537887f961c86c:c4fb,8c225c5185aa82af950c6b238f9b65b05f:fbc3,4fe18845661f8165732960fa51745211578b5f6290a2884c91925e78674f602759d351:44f6,80f853086c7996c4718a4f:11ee,7f9e673d55c5950879c088967ee3589f620c9700865a5618987b5f908bb884c4915753d965ed5e8f755c60647d6e5a7f7e:eaed,8f6955a75ba360ac65cb738488:acaeafb0b2b3b4b5b6b8b9babbbdbebfc0c3c4c7c8cacbcccdcfd0d1d3d6d7dadbdcdddee0e1e6e7e9eaebecedeeeff2f5f6f7fafbfdff,89:0001030405060708#090b0c0d0e0f1114151617181c1d1e1f20222324262728292c2d2e2f3132333537,9009766377297eda9774859b5b667a7496ea884052cb718f5faa65ec8be25bfb9a6f5de16b896c5b8b:adaf,900a8fc5538b62bc9e:262d,54404e2b82bd7259869c5d1688596daf96c554d14e9a8bb6710954bd960970df6df976d04e25781487125ca95ef68a00989c960e708e6cbf594463a9773c884d6f148273583071d5538c781a96c155015f6671305bb48c1a9a8c6b83592e9e2f79e76768626c4f6f75a17f8a6d0b96336c274ef075d2517b68376f3e908081705996747689:38393a3b3c3d3e3f40424345464748494a4b4c4d4e4f505152535455565758595a5b5c5d6061626364656768696a6b6c6d6e6f707172737475767778797a7c#7d7e808284858788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1,64475c2790657a918c2359da54ac8200836f898180006930564e8036723791ce51b64e5f987563964e1a53f666f3814b591c6db24e0058f9533b63d694f14f:9d0a,886398905937905779fb4eea80f075916c825b9c59e85f5d69058681501a5df24e5977e34ee5827a6291661390915c794ebf5f7981c69038808475ab4ea688d4610f6bc55fc64e4976ca6ea28b:e3ae,8c0a8bd15f027f:fccc,7ece83:356b,56e06bb797f3963459fb541f94f66deb5bc5996e5c395f15969089:a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c3cdd3d4d5d7d8d9dbdddfe0e1e2e4e7e8e9eaecedeef0f1f2f4f5f6f7f8f9fa#fbfcfdfeff,8a:01020304050608090a0b0c0d0e0f101112131415161718191a1b1c1d,537082f16a315a749e705e947f2883b984:2425,836787478fce8d6276c85f719896786c662054df62e54f6381c375c85eb896cd8e0a86f9548f6cf36d8c6c38607f52c775285e7d4f1860a05fe75c24753190ae94c072b96cb96e389149670953:cbf3,4f5191c98bf153c85e7c8fc26de44e8e76c26986865e611a82064f:59de,903e9c7c61096e:1d14,96854e885a3196e84e0e5c7f79b95b878bed7fbd738957df828b90c15401904755bb5cea5fa161086b3272f180b28a:891e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3f4041424344454647494a4b4c4d4e4f505152535455565758595a5b5c5d5e#5f606162636465666768696a6b6c6d6e6f7071727374757677787a7b7c7d7e7f80,6d745bd388d598848c6b9a6d9e336e0a51:a443,57a38881539f63f48f9556ed54585706733f6e907f188fdc82d1613f6028966266f07ea68d:8ac3,94a55cb37ca4670860a6960580184e9190e75300966851418fd08574915d665597f55b55531d78386742683d54c9707e5bb08f7d518d572854b1651266828d:5e43,810f846c906d7cdf51ff85fb67a365e96fa186a48e81566a90207682707671e58d2362e952196cfd8d3c600e589e618e66fe8d60624e55b36e23672d8f678a:81828384858687888b8c8d8e8f9091929495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2#c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3,94e195f87728680569a8548b4e4d70b88bc86458658b5b857a84503a5be877bb6be18a797c986cbe76cf65a98f975d2d5c5586386808536062187ad96e5b7efd6a1f7ae05f706f335f20638c6da867564e085e108d264ed780c07634969c62db662d627e6cbc8d7571677f695146808753ec906e629854f286f08f998005951785178fd96d5973cd659f771f7504782781fb8d1e94884fa6679575b98bca9707632f9547963584b8632377415f8172f04e896014657462ef6b63653f8a:e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,8b:0001020304050608090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223#24252728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445,5e2775c790d18bc1829d679d652f5431871877e580a281026c414e4b7ec7804c76f4690d6b966267503c4f84574063076b628dbe53ea65e87eb85fd763:1ab7,81:f3f4,7f6e5e1c5cd95236667a79e97a1a8d28709975d46ede6cbb7a924e2d76c55fe0949f88777ec879cd80bf91cd4ef24f17821f54685dde6d328bcc7ca58f7480985e1a549276b15b99663c9aa473e0682a86db6731732a8b:f8db,90107af970db716e62c477a956314e3b845767f152a986c08d2e94f87b518b:464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364656768696a6b6d6e6f707172737475767778797a7b7c7d7e7f80818283848586#8788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9facb1bbc7d0ea,8c:091e,4f4f6ce8795d9a7b6293722a62fd4e1378168f6c64b08d5a7bc668695e8488c55986649e58ee72b6690e95258ffd8d5857607f008c0651c6634962d95353684c74228301914c55447740707c6d4a517954a88d4459ff6ecb6dc45b5c7d2b4ed47c7d6ed35b5081ea6e0d5b579b0368d58e2a5b977efc603b7eb590b98d70594f63cd79df8db3535265cf79568bc5963b7ec494bb7e825634918967007f6a5c0a907566285de64f5067de505a4f5c57505e:a7#3$,8c:38393a3b3c3d3e3f4042434445484a4b4d4e4f5051525354565758595b5c5d5e5f60636465666768696c6d6e6f707172747576777b7c7d7e7f808183848687#888b8d8e8f90919293959697999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacad,4e:8d0c,51404e105eff53454e:15981e,9b325b6c56694e2879ba4e3f53154e47592d723b536e6c1056df80e499976bd3777e9f174e:369f,9f104e:5c6993,82885b5b556c560f4ec453:8d9da3a5ae,97658d5d53:1af5262e3e,8d5c53:6663,52:02080e2d333f404c5e615c,84af52:7d82819093,51827f544e:bbc3c9c2e8e1ebde,4f1b4ef34f:2264,4ef54f:2527092b5e67,65384f:5a5d,8c:aeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebec#edeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,8d:000102030405060708090a0b0c0d,4f:5f57323d76749189838f7e7baa7cac94e6e8eac5dae3dcd1dff8,50:294c,4ff350:2c0f2e2d,4ffe50:1c0c25287e4355484e6c7ba5a7a9bad6,510650:edece6ee,51:070b,4edd6c3d4f:5865ce,9fa06c467c74516e5dfd9ec999985181591452f9530d8a07531051eb591951554ea051564eb388:6ea4,4eb5811488d279805b3488037fb851:abb1bdbc,8d:0e0f101112131415161718191a1b1c205152575f6568696a6c6e6f717278797a7b7c7d7e7f808283868788898c8d8e8f90929395969798999a9b9c9d9ea0a1#a2a4a5a6a7a8a9aaabacadaeafb0b2b6b7b9bbbdc0c1c2c5c7c8c9cacdd0d2d3d4,51:c796a2a5,8b:a0a6a7aab4b5b7c2c3cbcfced2d3d4d6d8d9dcdfe0e4e8e9eef0f3f6f9fcff,8c:000204070c0f1112141516191b181d1f202125272a2b2e2f32333536,53:697a,96:1d2221312a3d3c4249545f676c7274888d97b0,90:979b9d99aca1b4b3b6ba,8d:d5d8d9dce0e1e2e5e6e7e9edeef0f1f2f4f6fcfeff,8e:00010203040607080b0d0e1011121315161718191a1b1c202124252627282b2d303233343637383b3c3e#3f4345464c4d4e4f505354555657585a5b5c5d5e5f60616263646567686a6b6e71,90:b8b0cfc5bed0c4c7d3e6e2dcd7dbebeffe,91:04221e23312f394346,520d594252:a2acadbe,54ff52:d0d6f0,53df71ee77cd5ef451:f5fc,9b2f53b65f01755a5def57:4ca9a1,58:7ebcc5d1,57:292c2a33392e2f5c3b4269856b867c7b686d7673ada48cb2cfa7b493a0d5d8dad9d2b8f4eff8e4dd,8e:73757778797a7b7d7e808283848688898a8b8c8d8e91929395969798999a9b9d9fa0a1a2a3a4a5a6a7a8a9aaadaeb0b1b3b4b5b6b7b8b9bbbcbdbebfc0c1c2#c3c4c5c6c7c8c9cacbcccdcfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4,58:0b0d,57:fded,58:001e194420656c81899a80,99a89f1961ff82:797d7f8f8aa8848e919799abb8beb0c8cae398b7aecbccc1a9b4a1aa9fc4cea4e1,830982:f7e4,83:0f07,82:dcf4d2d8,830c82:fbd3,83:111a061415,82:e0d5,83:1c515b5c08923c34319b5e2f4f47435f4017602d3a336665,8e:e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,8f:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223#2425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f4041424344,83:681b696c6a6d6eb078b3b4a0aa939c857cb6a97db87b989ea8babcc1,840183:e5d8,580784:180b,83:ddfdd6,84:1c381106,83:d4df,84:0f03,83:f8f9eac5c0,842683:f0e1,84:5c515a597387887a89783c4669768c8e316dc1cdd0e6bdd3cabfbae0a1b9b497e5e3,850c750d853884f085:391f3a,8f:45464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364656a808c929da0a1a2a4a5a6a7aaacadaeafb2b3b4b5b7b8babbbcbfc0c3c6#c9cacbcccdcfd2d6d7dae0e1e3e7eceff1f2f4f5f6fafbfcfeff,90:07080c0e131518,85:563b,84:fffc,85:594868645e7a,77a285:43727ba4a8878f79ae9c85b9b7b0d3c1dcff,86:270529163c,5efe5f0859:3c41,803759:555a58,530f5c:22252c34,62:4c6a9fbbcadad7ee,632262f663:394b43adf6717a8eb46dac8a69aebcf2f8e0ffc4dece,645263:c6be,64:45410b1b200c26215e846d96,90:191c2324252728292a2b2c303132333437393a3d3f4043454648494a4b4c4e545556595a5c5d5e5f6061646667696a6b6c6f70717273767778797a7b7c7e81#84858687898a8c8d8e8f90929496989a9c9e9fa0a4a5a7a8a9abadb2b7bcbdbfc0,64:7ab7b899bac0d0d7e4e2,65:09252e,5f:0bd2,75195f1153:5ff1fde9e8fb,54:1216064b5253545643215759233282947771649a9b8476669dd0adc2b4d2a7a6d3d472a3d5bbbfccd9dadca9aaa4ddcfde,551b54e7552054fd551454f355:22230f11272a678fb5496d41553f503c,90:c2c3c6c8c9cbcccdd2d4d5d6d8d9dadedfe0e3e4e5e9eaeceef0f1f2f3f5f6f7f9fafbfcff,91:00010305060708090a0b0c0d0e0f1011121314151617181a1b1c#1d1f20212425262728292a2b2c2d2e30323334353637383a3b3c3d3e3f40414244,55:375675767733305c8bd283b1b988819f7ed6917bdfbdbe9499eaf7c9,561f55:d1ebecd4e6ddc4efe5f2f3cccde8f5e4,8f9456:1e080c012423,55fe56:00272d5839572c4d62595c4c548664716b7b7c8593afd4d7dde1f5ebf9ff,57:040a091c,5e:0f191411313b3c,91:454748515354555658595b5c5f606667686b6d737a7b7c808182838486888a8e8f939495969798999c9d9e9fa0a1a4a5a6a7a8a9abacb0b1b2b3b6b7b8b9bb#bcbdbebfc0c1c2c3c4c5c6c8cbd0d2d3d4d5d6d7d8d9dadbdddedfe0e1e2e3e4e5,5e:3744545b5e61,5c:8c7a8d9096889899919a9cb5a2bdacabb1a3c1b7c4d2e4cbe5,5d:020327262e241e061b583e343d6c5b6f5d6b4b4a697482999d,8c735d:b7c5,5f:73778287898c95999ca8adb5bc,88625f6172:adb0b4b7b8c3c1cecdd2e8efe9f2f4f7,730172f3730372fa91:e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,92:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021222324#25262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445,72fb73:1713210a1e1d152239252c3831504d57606c6f7e,821b592598e759:2402,99:636768696a6b6c74777d8084878a8d9091939495,5e:80918b96a5a0b9b5beb3,8d535e:d2d1dbe8ea,81ba5f:c4c9d6cf,60035fee60045f:e1e4fe,60:0506,5f:eaedf8,60:1935261b0f0d292b0a3f2178797b7a42,92:464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f7071727375767778797a7b7c7d7e7f808182838485#868788898a8b8c8d8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7,60:6a7d969aad9d83928c9becbbb1ddd8c6dab4,61:20261523,60f461:000e2b4a75ac94a7b7d4f5,5fdd96b395:e9ebf1f3f5f6fcfe,96:030406080a0b0c0d0f12151617191a,4e2c723f62156c:35545c4aa38590948c6869747686a9d0d4adf7f8f1d7b2e0d6faebeeb1d3effe,92:a8a9aaabacadafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8#e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,93:00010203040506070809,6d:39270c43480704190e2b4d2e351a4f525433916f9ea05e93945c607c63,6e1a6d:c7c5de,6e0e6d:bfe0,6e116d:e6ddd9,6e166dab6e0c6dae6e:2b6e4e6bb25f865354322544dfb198e0,6f2d6e:e2a5a7bdbbb7d7b4cf8fc29f,6f:6246472415,6ef96f:2f364b742a0929898d8c78727c7ad1,93:0a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3f40414243444546474849#4a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696b,6f:c9a7b9b6c2e1eedee0ef,70:1a231b39354f5e,5b:80849593a5b8,752f9a9e64345b:e4ee,89305bf08e478b078f:b6d3d5e5eee4e9e6f3e8,90:05040b26110d162135362d2f445152506858625b,66b990:747d8288838b,5f:50575658,5c3b54ab5c:5059,5b715c:6366,7fbc5f:2a292d,82745f3c9b3b5c6e59:81838da9aaa3,93:6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaab#acadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cbcccd,59:97caab9ea4d2b2afd7be,5a:0506,59dd5a0859:e3d8f9,5a:0c09323411231340674a553c6275,80ec5a:aa9b777abeebb2d2d4b8e0e3f1d6e6d8dc,5b:091716323740,5c:151c,5b:5a6573515362,9a:7577787a7f7d808185888a90929396989b9c9d9fa0a2a3a5a7,7e:9fa1a3a5a8a9,93:cecfd0d1d2d3d4d5d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,94:000102030405060708090a0b0c0d#0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e,7e:adb0bec0c1c2c9cbccd0d4d7dbe0e1e8ebeeeff1f2,7f0d7e:f6fafbfe,7f:01020307080b0c0f111217191c1b1f212223242526272a2b2c2d2f3031323335,5e7a757f5ddb753e909573:8e91aea29fcfc2d1b7b3c0c9c8e5d9,987c740a73:e9e7debaf2,74:0f2a5b262528302e2c,94:2f303132333435363738393a3b3c3d3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6c6d6e6f#707172737475767778797a7b7c7d7e7f8081828384919698c7cfd3d4dae6fb,95:1c20,74:1b1a415c575559776d7e9c8e8081878b9ea8a990a7d2ba,97:eaebec,67:4c535e4869a5876a7398a775a89ead8b777cf0,680967d8680a67:e9b0,680c67:d9b5dab3dd,680067:c3b8e2,680e67:c1fd,68:323360614e624464831d55664167403e4a4929b58f7477936bc2,696e68fc69:1f20,68f995:27333d43484b555a606e74757778797a7b7c7d7e808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aa#abacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacb,692468f069:0b0157,68e369:10713960425d846b80987834cc8788ce896663799ba7bbabadd4b1c1cadf95e08dff,6a2f69ed6a:171865,69f26a:443ea0505b358e793d28587c9190a997ab,73:3752,6b:8182878492938d9a9ba1aa,8f:6b6d71727375767877797a7c7e818284878b,95:cccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7ecff,96:0713181b1e20232425262728292b2c2d2f303738393a3e41434a4e4f5152535657#58595a5c5d5e606365666b6d6e6f70717378797a7b7c7d7e7f808182838487898a,8f:8d8e8f989a,8ece62:0b171b1f222125242c,81e774:eff4ff,75:0f1113,65:34eeeff0,66:0a19,677266:031500,708566:f71d34313635,800666:5f54414f56615777848ca79dbedbdce6e9,8d:3233363b3d4045464849474d5559,89:c7cacbcccecfd0d1,72:6e9f5d666f7e7f848b8d8f92,63:0832b0,96:8c8e91929395969a9b9d9e9fa0a1a2a3a4a5a6a8a9aaabacadaeafb1b2b4b5b7b8babbbfc2c3c8cacbd0d1d3d4d6d7d8d9dadbdcdddedfe1e2e3e4e5e6e7eb#ecedeef0f1f2f4f5f8fafbfcfdff,97:0203050a0b0c10111214151718191a1b1d1f20,64:3fd8,80046b:eaf3fdf5f9,6c:0507060d1518191a2129242a32,65:35556b,72:4d525630,8662521680:9f9c93bc,670a80:bdb1abadb4b7e7e8e9eadbc2c4d9cdd7,671080:ddebf1f4ed,81:0d0e,80:f2fc,671581128c5a81:361e2c1832484c5374595a7160697c7d6d67,584d5ab581:888291,6ed581:a3aacc,672681:cabb,97:2122232425262728292b2c2e2f3133343536373a3b3c3d3f404142434445464748494a4b4c4d4e4f5051545557585a5c5d5f63646667686a6b6c6d6e6f7071#72757778797a7b7d7e7f8081828384868788898a8c8e8f9093959697999a9b9c9d,81:c1a6,6b:243739434659,98:d1d2d3d5d9da,6bb35f406bc289f365909f5165:93bcc6c4c3ccced2d6,70:809c969dbbc0b7abb1e8ca,71:1013162f31735c6845724a787a98b3b5a8a0e0d4e7f9,72:1d28,706c71:1866b9,62:3e3d434849,79:3b4046495b5c535a6257606f677a858a9aa7b3,5f:d1d0,97:9e9fa1a2a4a5a6a7a8a9aaacaeb0b1b3b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3#e4e5e8eeeff0f1f2f4f7f8f9fafbfcfdfeff,98:000102030405060708090a0b0c0d0e,60:3c5d5a67415963ab,61:060d5da99dcbd1,620680:807f,6c:93f6,6dfc77:f6f8,78:0009171811,65ab78:2d1c1d393a3b1f3c252c23294e6d56572650474c6a9b939a879ca1a3b2b9a5d4d9c9ecf2,790578f479:13241e34,9f9b9e:f9fbfc,76f177:040d,76f977:07081a22192d263538505147435a68,98:0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d#4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e,77:62657f8d7d808c919fa0b0b5bd,75:3a404e4b485b727983,7f:58615f,8a487f:68747179817e,76:cde5,883294:8586878b8a8c8d8f909497959a9b9ca3a4abaaadacafb0b2b4b6b7b8b9babcbdbfc4c8c9cacbcccdced0d1d2d5d6d7d9d8dbdedfe0e2e4e5e7e8ea,98:6f70717273748b8e929599a3a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcfd0d4d6d7dbdcdde0e1e2e3e4#e5e6e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,99:0001020304050607,94:e9ebeeeff3f4f5f7f9fcfdff,95:03020607090a0d0e0f1213141516181b1d1e1f222a2b292c3132343637383c3e3f4235444546494c4e4f525354565758595b5e5f5d61626465666768696a6b6c6f7172733a,77:e7ec,96c979:d5ede3eb,7a065d477a:03021e14,99:08090a0b0c0e0f1112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2f303132333435363738393a3b3c3d3e3f40414243444546474849#4a4b4c4d4e4f50515253565758595a5b5c5d5e5f60616264667378797b7e828389,7a:393751,9ecf99a57a7076:888e9399a4,74:dee0,752c9e:202228292a2b2c3231363837393a3e414244464748494b4c4e5155575a5b5c5e63666768696a6b6c716d73,75:929496a09daca3b3b4b8c4b1b0c3c2d6cde3e8e6e4ebe7,760375:f1fcff,76:1000050c170a25181519,99:8c8e9a9b9c9d9e9fa0a1a2a3a4a6a7a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8#d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9,76:1b3c2220402d303f35433e334d5e545c566b6f,7fca7a:e6787980868895a6a0aca8adb3,88:6469727d7f82a2c6b7bcc9e2cee3e5f1,891a88:fce8fef0,89:2119131b0a342b3641667b,758b80e576:b2b4,77dc80:1214161c20222526272928310b3543464d526971,898398:788083,99:fafbfcfdfeff,9a:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738#393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f50515253545556575859,98:898c8d8f949a9b9e9fa1a2a5a6,86:4d546c6e7f7a7c7ba88d8bac9da7a3aa93a9b6c4b5ceb0bab1afc9cfb4e9f1f2edf3d0,871386:def4dfd8d1,87:0307,86f887:080a0d09233b1e252e1a3e48343129373f82227d7e7b60704c6e8b53637c64596593afa8d2,9a:5a5b5c5d5e5f606162636465666768696a6b7283898d8e949599a6a9aaabacadaeafb2b3b4b5b9bbbdbebfc3c4c6c7c8c9cacdcecfd0d2d4d5d6d7d9dadbdc#dddee0e2e3e4e5e7e8e9eaeceef0f1f2f3f4f5f6f7f8fafcfdfeff,9b:000102040506,87:c68885ad9783abe5acb5b3cbd3bdd1c0cadbeae0ee,88:1613,87fe88:0a1b21393c,7f:36424445,82107a:fafd,7b:080304150a2b0f47382a192e31202524333e1e585a45754c5d606e7b62727190a6a7b8ac9da885aa9ca2abb4d1c1ccdddae5e6ea,7c0c7b:fefc,7c:0f160b,9b:07090a0b0c0d0e1011121415161718191a1b1c1d1e2021222425262728292a2b2c2d2e3031333435363738393a3d3e3f40464a4b4c4e50525355565758595a#5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b,7c:1f2a26384140,81fe82:010204,81ec884482:2122232d2f282b383b33343e44494b4f5a5f68,88:7e8588d8df,895e7f:9d9fa7afb0b2,7c7c65497c:919d9c9ea2b2bcbdc1c7cccdc8c5d7e8,826e66a87f:bfced5e5e1e6e9eef3,7cf87d:77a6ae,7e:479b,9e:b8b4,8d:73849491b1676d,8c:4749,91:4a504e4f64,9b:7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9ba#bbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadb,91:626170696f7d7e7274798c85908d91a2a3aaadaeafb5b4ba,8c559e7e8d:b8eb,8e:055969,8d:b5bfbcbac4d6d7dadececfdbc6ecf7f8e3f9fbe4,8e098dfd8e:141d1f2c2e232f3a4039353d3149414251524a70767c6f74858f94909c9e,8c:78828a859894,659b89:d6dedadc,9b:dcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,9c:000102030405060708090a0b0c0d0e0f101112131415161718191a#1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b,89:e5ebef,8a3e8b26975396:e9f3ef,97:0601080f0e2a2d303e,9f:808385868788898a8c,9efe9f:0b0d,96:b9bcbdced2,77bf96e092:8eaec8,93:3e6aca8f,94:3e6b,9c:7f8285868788,7a239c:8b8e90919294959a9b9e9fa0a1a2a3a5a6a7a8a9abadaeb0b1b2b3b4b5b6b7babbbcbdc4c5c6c7cacb3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a#7b7d7e808384898a8c8f93969798999daaacafb9bebfc0c1c2c8c9d1d2dadbe0e1cccdcecfd0d3d4d5d7d8d9dcdddfe2,97:7c85919294afaba3b2b4,9a:b1b0b7,9e589a:b6babcc1c0c5c2cbccd1,9b:45434749484d51,98e899:0d2e5554,9a:dfe1e6efebfbedf9,9b:080f131f23,9e:bdbe,7e3b9e:8287888b92,93d69e:9d9fdbdcdde0dfe2e9e7e5eaef,9f:222c2f39373d3e44,9c:e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,9d:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021#22232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142#92$434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f8081#82838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2#92$a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1#e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,9e:000102#92$030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e24272e30343b3c404d5052535456595d5f606162656e6f727475767778797a7b7c7d80#8183848586898a8c8d8e8f90919495969798999a9b9c9ea0a1a2a3a4a5a7a8a9aa#92$abacadaeafb0b1b2b3b5b6b7b9babcbfc0c1c2c3c5c6c7c8cacbccd0d2d3d5d6d7d9dadee1e3e4e6e8ebecedeef0f1f2f3f4f5f6f7f8fafdff,9f:000102030405#060708090a0c0f1112141516181a1b1c1d1e1f21232425262728292a2b2d2e3031#92$3233343536383a3c3f4041424345464748494a4b4c4d4e4f52535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778#797a7b7c7d7e81828d8e8f9091929394959697989c9d9ea1a2a3a4a5,f9:2c7995e7f1#92$,fa:0c0d0e0f111314181f20212324272829,e8:15161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f40414243#4445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364'), U2Ghash = {}, G2Uhash = {}; ! function(data) { diff --git a/JS/jinja.js b/JS/jinja.js index df91416..9a03ee5 100644 --- a/JS/jinja.js +++ b/JS/jinja.js @@ -21,7 +21,9 @@ /*global require, exports, module, define */ (function(global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : typeof define === 'function' && define.amd ? define(['exports'], factory) : (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.jinja = {})); + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : + typeof define === 'function' && define.amd ? define(['exports'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.jinja = {})); })(this, (function(jinja) { "use strict"; var STRINGS = /'(\\.|[^'])*'|"(\\.|[^"'"])*"/g; @@ -401,19 +403,20 @@ var _toString = Object.prototype.toString; var _hasOwnProperty = Object.prototype.hasOwnProperty; var getKeys = Object.keys || function(obj) { - var keys = []; - for (var n in obj) if (_hasOwnProperty.call(obj, n)) keys.push(n); - return keys; - }; + var keys = []; + for (var n in obj) + if (_hasOwnProperty.call(obj, n)) keys.push(n); + return keys; + }; var isArray = Array.isArray || function(obj) { - return _toString.call(obj) === '[object Array]'; - }; + return _toString.call(obj) === '[object Array]'; + }; var create = Object.create || function(obj) { - function F() {} + function F() {} - F.prototype = obj; - return new F(); - }; + F.prototype = obj; + return new F(); + }; var toString = function(val) { if (val == null) return ''; return (typeof val.toString == 'function') ? val.toString() : _toString.call(val); diff --git a/JS/jsencrypt.js b/JS/jsencrypt.js index 9eee60c..a7ea4e9 100644 --- a/JS/jsencrypt.js +++ b/JS/jsencrypt.js @@ -5,7 +5,8 @@ * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) * or disable the default devtool with "devtool: false". * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). - */ (function webpackUniversalModuleDefinition(root, factory) { + */ +(function webpackUniversalModuleDefinition(root, factory) { if (typeof exports === 'object' && typeof module === 'object') { // CommonJS module.exports = exports = factory(); @@ -23,241 +24,238 @@ /***/ "./lib/JSEncrypt.js": - /*!**************************!*\ - !*** ./lib/JSEncrypt.js ***! - \**************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncrypt\": () => (/* binding */ JSEncrypt)\n/* harmony export */ });\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ \"./lib/lib/jsbn/base64.js\");\n/* harmony import */ var _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./JSEncryptRSAKey */ \"./lib/JSEncryptRSAKey.js\");\n/* provided dependency */ var process = __webpack_require__(/*! process/browser */ \"./node_modules/process/browser.js\");\nvar _a;\n\n\nvar version = typeof process !== 'undefined'\n ? (_a = process.env) === null || _a === void 0 ? void 0 : \"3.3.2\"\n : undefined;\n/**\n *\n * @param {Object} [options = {}] - An object to customize JSEncrypt behaviour\n * possible parameters are:\n * - default_key_size {number} default: 1024 the key size in bit\n * - default_public_exponent {string} default: '010001' the hexadecimal representation of the public exponent\n * - log {boolean} default: false whether log warn/error or not\n * @constructor\n */\nvar JSEncrypt = /** @class */ (function () {\n function JSEncrypt(options) {\n if (options === void 0) { options = {}; }\n options = options || {};\n this.default_key_size = options.default_key_size\n ? parseInt(options.default_key_size, 10)\n : 1024;\n this.default_public_exponent = options.default_public_exponent || \"010001\"; // 65537 default openssl public exponent for rsa key type\n this.log = options.log || false;\n // The private and public key.\n this.key = null;\n }\n /**\n * Method to set the rsa key parameter (one method is enough to set both the public\n * and the private key, since the private key contains the public key paramenters)\n * Log a warning if logs are enabled\n * @param {Object|string} key the pem encoded string or an object (with or without header/footer)\n * @public\n */\n JSEncrypt.prototype.setKey = function (key) {\n if (this.log && this.key) {\n console.warn(\"A key was already set, overriding existing.\");\n }\n this.key = new _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__.JSEncryptRSAKey(key);\n };\n /**\n * Proxy method for setKey, for api compatibility\n * @see setKey\n * @public\n */\n JSEncrypt.prototype.setPrivateKey = function (privkey) {\n // Create the key.\n this.setKey(privkey);\n };\n /**\n * Proxy method for setKey, for api compatibility\n * @see setKey\n * @public\n */\n JSEncrypt.prototype.setPublicKey = function (pubkey) {\n // Sets the public key.\n this.setKey(pubkey);\n };\n /**\n * Proxy method for RSAKey object's decrypt, decrypt the string using the private\n * components of the rsa key object. Note that if the object was not set will be created\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\n * @param {string} str base64 encoded crypted string to decrypt\n * @return {string} the decrypted string\n * @public\n */\n JSEncrypt.prototype.decrypt = function (str) {\n // Return the decrypted string.\n try {\n return this.getKey().decrypt((0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.b64tohex)(str));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's encrypt, encrypt the string using the public\n * components of the rsa key object. Note that if the object was not set will be created\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\n * @param {string} str the string to encrypt\n * @return {string} the encrypted string encoded in base64\n * @public\n */\n JSEncrypt.prototype.encrypt = function (str) {\n // Return the encrypted string.\n try {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().encrypt(str));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's sign.\n * @param {string} str the string to sign\n * @param {function} digestMethod hash method\n * @param {string} digestName the name of the hash algorithm\n * @return {string} the signature encoded in base64\n * @public\n */\n JSEncrypt.prototype.sign = function (str, digestMethod, digestName) {\n // return the RSA signature of 'str' in 'hex' format.\n try {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().sign(str, digestMethod, digestName));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's verify.\n * @param {string} str the string to verify\n * @param {string} signature the signature encoded in base64 to compare the string to\n * @param {function} digestMethod hash method\n * @return {boolean} whether the data and signature match\n * @public\n */\n JSEncrypt.prototype.verify = function (str, signature, digestMethod) {\n // Return the decrypted 'digest' of the signature.\n try {\n return this.getKey().verify(str, (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.b64tohex)(signature), digestMethod);\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Getter for the current JSEncryptRSAKey object. If it doesn't exists a new object\n * will be created and returned\n * @param {callback} [cb] the callback to be called if we want the key to be generated\n * in an async fashion\n * @returns {JSEncryptRSAKey} the JSEncryptRSAKey object\n * @public\n */\n JSEncrypt.prototype.getKey = function (cb) {\n // Only create new if it does not exist.\n if (!this.key) {\n // Get a new private key.\n this.key = new _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__.JSEncryptRSAKey();\n if (cb && {}.toString.call(cb) === \"[object Function]\") {\n this.key.generateAsync(this.default_key_size, this.default_public_exponent, cb);\n return;\n }\n // Generate the key.\n this.key.generate(this.default_key_size, this.default_public_exponent);\n }\n return this.key;\n };\n /**\n * Returns the pem encoded representation of the private key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the private key WITH header and footer\n * @public\n */\n JSEncrypt.prototype.getPrivateKey = function () {\n // Return the private representation of this key.\n return this.getKey().getPrivateKey();\n };\n /**\n * Returns the pem encoded representation of the private key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the private key WITHOUT header and footer\n * @public\n */\n JSEncrypt.prototype.getPrivateKeyB64 = function () {\n // Return the private representation of this key.\n return this.getKey().getPrivateBaseKeyB64();\n };\n /**\n * Returns the pem encoded representation of the public key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the public key WITH header and footer\n * @public\n */\n JSEncrypt.prototype.getPublicKey = function () {\n // Return the private representation of this key.\n return this.getKey().getPublicKey();\n };\n /**\n * Returns the pem encoded representation of the public key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the public key WITHOUT header and footer\n * @public\n */\n JSEncrypt.prototype.getPublicKeyB64 = function () {\n // Return the private representation of this key.\n return this.getKey().getPublicBaseKeyB64();\n };\nvar b64map=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";var b64pad=\"=\";var base64DecodeChars=new Array(-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-1,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-1,-1,-1,-1,-1);function btoa(str){var out,i,len;var c1,c2,c3;len=str.length;i=0;out=\"\";while(i>2);out+=b64map.charAt((c1&3)<<4);out+=\"==\";break}c2=str.charCodeAt(i++);if(i==len){out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2);out+=\"=\";break}c3=str.charCodeAt(i++);out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2|(c3&192)>>6);out+=b64map.charAt(c3&63)}return out}function atob(str){var c1,c2,c3,c4;var i,len,out;len=str.length;i=0;out=\"\";while(i>4);do{c3=str.charCodeAt(i++)&255;if(c3==61)return out;c3=base64DecodeChars[c3]}while(i>2);do{c4=str.charCodeAt(i++)&255;if(c4==61)return out;c4=base64DecodeChars[c4]}while(i>6)+b64map.charAt(c&63)}if(i+1==h.length){c=parseInt(h.substring(i,i+1),16);ret+=b64map.charAt(c<<2)}else if(i+2==h.length){c=parseInt(h.substring(i,i+2),16);ret+=b64map.charAt(c>>2)+b64map.charAt((c&3)<<4)}while((ret.length&3)>0)ret+=b64pad;return ret}function hexToBytes(hex){for(var bytes=[],c=0;c>>4).toString(16));hex.push((bytes[i]&15).toString(16))}return hex.join(\"\")}function b64tohex(str){for(var i=0,bin=atob(str.replace(/[ \\r\\n]+$/,\"\")),hex=[];i>3};JSEncrypt.prototype.decryptUnicodeLong=function(string){var k=this.getKey();var maxLength=(k.n.bitLength()+7>>3)*2;try{var hexString=b64tohex(string);var decryptedString=\"\";var rexStr=\".{1,\"+maxLength+\"}\";var rex=new RegExp(rexStr,\"g\");var subStrArray=hexString.match(rex);if(subStrArray){subStrArray.forEach(function(entry){decryptedString+=k.decrypt(entry)});return decryptedString}}catch(ex){console.log(\"加密错误:\"+ex.message);return false}};JSEncrypt.prototype.encryptUnicodeLong=function(string){var k=this.getKey();var maxLength=(k.n.bitLength()+7>>3)-11;try{var subStr=\"\",encryptedString=\"\";var subStart=0,subEnd=0;var bitLen=0,tmpPoint=0;for(var i=0,len=string.length;imaxLength){subStr=string.substring(subStart,subEnd);encryptedString+=k.encrypt(subStr);subStart=subEnd;bitLen=bitLen-tmpPoint}else{subEnd=i;tmpPoint=bitLen}}subStr=string.substring(subStart,len);encryptedString+=k.encrypt(subStr);return hex2b64(encryptedString)}catch(ex){console.log(\"解密错误:\"+ex.message);return false}}; JSEncrypt.version = version;\n return JSEncrypt;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/JSEncrypt.js?"); - + /*!**************************!*\ + !*** ./lib/JSEncrypt.js ***! + \**************************/ /***/ - }), + ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + + "use strict"; + eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncrypt\": () => (/* binding */ JSEncrypt)\n/* harmony export */ });\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ \"./lib/lib/jsbn/base64.js\");\n/* harmony import */ var _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./JSEncryptRSAKey */ \"./lib/JSEncryptRSAKey.js\");\n/* provided dependency */ var process = __webpack_require__(/*! process/browser */ \"./node_modules/process/browser.js\");\nvar _a;\n\n\nvar version = typeof process !== 'undefined'\n ? (_a = process.env) === null || _a === void 0 ? void 0 : \"3.3.2\"\n : undefined;\n/**\n *\n * @param {Object} [options = {}] - An object to customize JSEncrypt behaviour\n * possible parameters are:\n * - default_key_size {number} default: 1024 the key size in bit\n * - default_public_exponent {string} default: '010001' the hexadecimal representation of the public exponent\n * - log {boolean} default: false whether log warn/error or not\n * @constructor\n */\nvar JSEncrypt = /** @class */ (function () {\n function JSEncrypt(options) {\n if (options === void 0) { options = {}; }\n options = options || {};\n this.default_key_size = options.default_key_size\n ? parseInt(options.default_key_size, 10)\n : 1024;\n this.default_public_exponent = options.default_public_exponent || \"010001\"; // 65537 default openssl public exponent for rsa key type\n this.log = options.log || false;\n // The private and public key.\n this.key = null;\n }\n /**\n * Method to set the rsa key parameter (one method is enough to set both the public\n * and the private key, since the private key contains the public key paramenters)\n * Log a warning if logs are enabled\n * @param {Object|string} key the pem encoded string or an object (with or without header/footer)\n * @public\n */\n JSEncrypt.prototype.setKey = function (key) {\n if (this.log && this.key) {\n console.warn(\"A key was already set, overriding existing.\");\n }\n this.key = new _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__.JSEncryptRSAKey(key);\n };\n /**\n * Proxy method for setKey, for api compatibility\n * @see setKey\n * @public\n */\n JSEncrypt.prototype.setPrivateKey = function (privkey) {\n // Create the key.\n this.setKey(privkey);\n };\n /**\n * Proxy method for setKey, for api compatibility\n * @see setKey\n * @public\n */\n JSEncrypt.prototype.setPublicKey = function (pubkey) {\n // Sets the public key.\n this.setKey(pubkey);\n };\n /**\n * Proxy method for RSAKey object's decrypt, decrypt the string using the private\n * components of the rsa key object. Note that if the object was not set will be created\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\n * @param {string} str base64 encoded crypted string to decrypt\n * @return {string} the decrypted string\n * @public\n */\n JSEncrypt.prototype.decrypt = function (str) {\n // Return the decrypted string.\n try {\n return this.getKey().decrypt((0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.b64tohex)(str));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's encrypt, encrypt the string using the public\n * components of the rsa key object. Note that if the object was not set will be created\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\n * @param {string} str the string to encrypt\n * @return {string} the encrypted string encoded in base64\n * @public\n */\n JSEncrypt.prototype.encrypt = function (str) {\n // Return the encrypted string.\n try {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().encrypt(str));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's sign.\n * @param {string} str the string to sign\n * @param {function} digestMethod hash method\n * @param {string} digestName the name of the hash algorithm\n * @return {string} the signature encoded in base64\n * @public\n */\n JSEncrypt.prototype.sign = function (str, digestMethod, digestName) {\n // return the RSA signature of 'str' in 'hex' format.\n try {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().sign(str, digestMethod, digestName));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's verify.\n * @param {string} str the string to verify\n * @param {string} signature the signature encoded in base64 to compare the string to\n * @param {function} digestMethod hash method\n * @return {boolean} whether the data and signature match\n * @public\n */\n JSEncrypt.prototype.verify = function (str, signature, digestMethod) {\n // Return the decrypted 'digest' of the signature.\n try {\n return this.getKey().verify(str, (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.b64tohex)(signature), digestMethod);\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Getter for the current JSEncryptRSAKey object. If it doesn't exists a new object\n * will be created and returned\n * @param {callback} [cb] the callback to be called if we want the key to be generated\n * in an async fashion\n * @returns {JSEncryptRSAKey} the JSEncryptRSAKey object\n * @public\n */\n JSEncrypt.prototype.getKey = function (cb) {\n // Only create new if it does not exist.\n if (!this.key) {\n // Get a new private key.\n this.key = new _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__.JSEncryptRSAKey();\n if (cb && {}.toString.call(cb) === \"[object Function]\") {\n this.key.generateAsync(this.default_key_size, this.default_public_exponent, cb);\n return;\n }\n // Generate the key.\n this.key.generate(this.default_key_size, this.default_public_exponent);\n }\n return this.key;\n };\n /**\n * Returns the pem encoded representation of the private key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the private key WITH header and footer\n * @public\n */\n JSEncrypt.prototype.getPrivateKey = function () {\n // Return the private representation of this key.\n return this.getKey().getPrivateKey();\n };\n /**\n * Returns the pem encoded representation of the private key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the private key WITHOUT header and footer\n * @public\n */\n JSEncrypt.prototype.getPrivateKeyB64 = function () {\n // Return the private representation of this key.\n return this.getKey().getPrivateBaseKeyB64();\n };\n /**\n * Returns the pem encoded representation of the public key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the public key WITH header and footer\n * @public\n */\n JSEncrypt.prototype.getPublicKey = function () {\n // Return the private representation of this key.\n return this.getKey().getPublicKey();\n };\n /**\n * Returns the pem encoded representation of the public key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the public key WITHOUT header and footer\n * @public\n */\n JSEncrypt.prototype.getPublicKeyB64 = function () {\n // Return the private representation of this key.\n return this.getKey().getPublicBaseKeyB64();\n };\nvar b64map=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";var b64pad=\"=\";var base64DecodeChars=new Array(-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-1,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-1,-1,-1,-1,-1);function btoa(str){var out,i,len;var c1,c2,c3;len=str.length;i=0;out=\"\";while(i>2);out+=b64map.charAt((c1&3)<<4);out+=\"==\";break}c2=str.charCodeAt(i++);if(i==len){out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2);out+=\"=\";break}c3=str.charCodeAt(i++);out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2|(c3&192)>>6);out+=b64map.charAt(c3&63)}return out}function atob(str){var c1,c2,c3,c4;var i,len,out;len=str.length;i=0;out=\"\";while(i>4);do{c3=str.charCodeAt(i++)&255;if(c3==61)return out;c3=base64DecodeChars[c3]}while(i>2);do{c4=str.charCodeAt(i++)&255;if(c4==61)return out;c4=base64DecodeChars[c4]}while(i>6)+b64map.charAt(c&63)}if(i+1==h.length){c=parseInt(h.substring(i,i+1),16);ret+=b64map.charAt(c<<2)}else if(i+2==h.length){c=parseInt(h.substring(i,i+2),16);ret+=b64map.charAt(c>>2)+b64map.charAt((c&3)<<4)}while((ret.length&3)>0)ret+=b64pad;return ret}function hexToBytes(hex){for(var bytes=[],c=0;c>>4).toString(16));hex.push((bytes[i]&15).toString(16))}return hex.join(\"\")}function b64tohex(str){for(var i=0,bin=atob(str.replace(/[ \\r\\n]+$/,\"\")),hex=[];i>3};JSEncrypt.prototype.decryptUnicodeLong=function(string){var k=this.getKey();var maxLength=(k.n.bitLength()+7>>3)*2;try{var hexString=b64tohex(string);var decryptedString=\"\";var rexStr=\".{1,\"+maxLength+\"}\";var rex=new RegExp(rexStr,\"g\");var subStrArray=hexString.match(rex);if(subStrArray){subStrArray.forEach(function(entry){decryptedString+=k.decrypt(entry)});return decryptedString}}catch(ex){console.log(\"加密错误:\"+ex.message);return false}};JSEncrypt.prototype.encryptUnicodeLong=function(string){var k=this.getKey();var maxLength=(k.n.bitLength()+7>>3)-11;try{var subStr=\"\",encryptedString=\"\";var subStart=0,subEnd=0;var bitLen=0,tmpPoint=0;for(var i=0,len=string.length;imaxLength){subStr=string.substring(subStart,subEnd);encryptedString+=k.encrypt(subStr);subStart=subEnd;bitLen=bitLen-tmpPoint}else{subEnd=i;tmpPoint=bitLen}}subStr=string.substring(subStart,len);encryptedString+=k.encrypt(subStr);return hex2b64(encryptedString)}catch(ex){console.log(\"解密错误:\"+ex.message);return false}}; JSEncrypt.version = version;\n return JSEncrypt;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/JSEncrypt.js?"); + + /***/ + }), /***/ "./lib/JSEncryptRSAKey.js": - /*!********************************!*\ - !*** ./lib/JSEncryptRSAKey.js ***! - \********************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncryptRSAKey\": () => (/* binding */ JSEncryptRSAKey)\n/* harmony export */ });\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ \"./lib/lib/jsbn/base64.js\");\n/* harmony import */ var _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lib/asn1js/hex */ \"./lib/lib/asn1js/hex.js\");\n/* harmony import */ var _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./lib/asn1js/base64 */ \"./lib/lib/asn1js/base64.js\");\n/* harmony import */ var _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./lib/asn1js/asn1 */ \"./lib/lib/asn1js/asn1.js\");\n/* harmony import */ var _lib_jsbn_rsa__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./lib/jsbn/rsa */ \"./lib/lib/jsbn/rsa.js\");\n/* harmony import */ var _lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./lib/jsbn/jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./lib/jsrsasign/asn1-1.0 */ \"./lib/lib/jsrsasign/asn1-1.0.js\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\n\n\n\n\n\n/**\n * Create a new JSEncryptRSAKey that extends Tom Wu's RSA key object.\n * This object is just a decorator for parsing the key parameter\n * @param {string|Object} key - The key in string format, or an object containing\n * the parameters needed to build a RSAKey object.\n * @constructor\n */\nvar JSEncryptRSAKey = /** @class */ (function (_super) {\n __extends(JSEncryptRSAKey, _super);\n function JSEncryptRSAKey(key) {\n var _this = _super.call(this) || this;\n // Call the super constructor.\n // RSAKey.call(this);\n // If a key key was provided.\n if (key) {\n // If this is a string...\n if (typeof key === \"string\") {\n _this.parseKey(key);\n }\n else if (JSEncryptRSAKey.hasPrivateKeyProperty(key) ||\n JSEncryptRSAKey.hasPublicKeyProperty(key)) {\n // Set the values for the key.\n _this.parsePropertiesFrom(key);\n }\n }\n return _this;\n }\n /**\n * Method to parse a pem encoded string containing both a public or private key.\n * The method will translate the pem encoded string in a der encoded string and\n * will parse private key and public key parameters. This method accepts public key\n * in the rsaencryption pkcs #1 format (oid: 1.2.840.113549.1.1.1).\n *\n * @todo Check how many rsa formats use the same format of pkcs #1.\n *\n * The format is defined as:\n * PublicKeyInfo ::= SEQUENCE {\n * algorithm AlgorithmIdentifier,\n * PublicKey BIT STRING\n * }\n * Where AlgorithmIdentifier is:\n * AlgorithmIdentifier ::= SEQUENCE {\n * algorithm OBJECT IDENTIFIER, the OID of the enc algorithm\n * parameters ANY DEFINED BY algorithm OPTIONAL (NULL for PKCS #1)\n * }\n * and PublicKey is a SEQUENCE encapsulated in a BIT STRING\n * RSAPublicKey ::= SEQUENCE {\n * modulus INTEGER, -- n\n * publicExponent INTEGER -- e\n * }\n * it's possible to examine the structure of the keys obtained from openssl using\n * an asn.1 dumper as the one used here to parse the components: http://lapo.it/asn1js/\n * @argument {string} pem the pem encoded string, can include the BEGIN/END header/footer\n * @private\n */\n JSEncryptRSAKey.prototype.parseKey = function (pem) {\n try {\n var modulus = 0;\n var public_exponent = 0;\n var reHex = /^\\s*(?:[0-9A-Fa-f][0-9A-Fa-f]\\s*)+$/;\n var der = reHex.test(pem) ? _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__.Hex.decode(pem) : _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__.Base64.unarmor(pem);\n var asn1 = _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__.ASN1.decode(der);\n // Fixes a bug with OpenSSL 1.0+ private keys\n if (asn1.sub.length === 3) {\n asn1 = asn1.sub[2].sub[0];\n }\n if (asn1.sub.length === 9) {\n // Parse the private key.\n modulus = asn1.sub[1].getHexStringValue(); // bigint\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\n public_exponent = asn1.sub[2].getHexStringValue(); // int\n this.e = parseInt(public_exponent, 16);\n var private_exponent = asn1.sub[3].getHexStringValue(); // bigint\n this.d = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(private_exponent, 16);\n var prime1 = asn1.sub[4].getHexStringValue(); // bigint\n this.p = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(prime1, 16);\n var prime2 = asn1.sub[5].getHexStringValue(); // bigint\n this.q = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(prime2, 16);\n var exponent1 = asn1.sub[6].getHexStringValue(); // bigint\n this.dmp1 = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(exponent1, 16);\n var exponent2 = asn1.sub[7].getHexStringValue(); // bigint\n this.dmq1 = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(exponent2, 16);\n var coefficient = asn1.sub[8].getHexStringValue(); // bigint\n this.coeff = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(coefficient, 16);\n }\n else if (asn1.sub.length === 2) {\n if (asn1.sub[0].sub) {\n // Parse ASN.1 SubjectPublicKeyInfo type as defined by X.509\n var bit_string = asn1.sub[1];\n var sequence = bit_string.sub[0];\n modulus = sequence.sub[0].getHexStringValue();\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\n public_exponent = sequence.sub[1].getHexStringValue();\n this.e = parseInt(public_exponent, 16);\n }\n else {\n // Parse ASN.1 RSAPublicKey type as defined by PKCS #1\n modulus = asn1.sub[0].getHexStringValue();\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\n public_exponent = asn1.sub[1].getHexStringValue();\n this.e = parseInt(public_exponent, 16);\n }\n }\n else {\n return false;\n }\n return true;\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Translate rsa parameters in a hex encoded string representing the rsa key.\n *\n * The translation follow the ASN.1 notation :\n * RSAPrivateKey ::= SEQUENCE {\n * version Version,\n * modulus INTEGER, -- n\n * publicExponent INTEGER, -- e\n * privateExponent INTEGER, -- d\n * prime1 INTEGER, -- p\n * prime2 INTEGER, -- q\n * exponent1 INTEGER, -- d mod (p1)\n * exponent2 INTEGER, -- d mod (q-1)\n * coefficient INTEGER, -- (inverse of q) mod p\n * }\n * @returns {string} DER Encoded String representing the rsa private key\n * @private\n */\n JSEncryptRSAKey.prototype.getPrivateBaseKey = function () {\n var options = {\n array: [\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: 0 }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.n }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: this.e }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.d }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.p }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.q }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.dmp1 }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.dmq1 }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.coeff }),\n ],\n };\n var seq = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence(options);\n return seq.getEncodedHex();\n };\n /**\n * base64 (pem) encoded version of the DER encoded representation\n * @returns {string} pem encoded representation without header and footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPrivateBaseKeyB64 = function () {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getPrivateBaseKey());\n };\n /**\n * Translate rsa parameters in a hex encoded string representing the rsa public key.\n * The representation follow the ASN.1 notation :\n * PublicKeyInfo ::= SEQUENCE {\n * algorithm AlgorithmIdentifier,\n * PublicKey BIT STRING\n * }\n * Where AlgorithmIdentifier is:\n * AlgorithmIdentifier ::= SEQUENCE {\n * algorithm OBJECT IDENTIFIER, the OID of the enc algorithm\n * parameters ANY DEFINED BY algorithm OPTIONAL (NULL for PKCS #1)\n * }\n * and PublicKey is a SEQUENCE encapsulated in a BIT STRING\n * RSAPublicKey ::= SEQUENCE {\n * modulus INTEGER, -- n\n * publicExponent INTEGER -- e\n * }\n * @returns {string} DER Encoded String representing the rsa public key\n * @private\n */\n JSEncryptRSAKey.prototype.getPublicBaseKey = function () {\n var first_sequence = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\n array: [\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERObjectIdentifier({ oid: \"1.2.840.113549.1.1.1\" }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERNull(),\n ],\n });\n var second_sequence = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\n array: [\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.n }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: this.e }),\n ],\n });\n var bit_string = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERBitString({\n hex: \"00\" + second_sequence.getEncodedHex(),\n });\n var seq = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\n array: [first_sequence, bit_string],\n });\n return seq.getEncodedHex();\n };\n /**\n * base64 (pem) encoded version of the DER encoded representation\n * @returns {string} pem encoded representation without header and footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPublicBaseKeyB64 = function () {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getPublicBaseKey());\n };\n /**\n * wrap the string in block of width chars. The default value for rsa keys is 64\n * characters.\n * @param {string} str the pem encoded string without header and footer\n * @param {Number} [width=64] - the length the string has to be wrapped at\n * @returns {string}\n * @private\n */\n JSEncryptRSAKey.wordwrap = function (str, width) {\n width = width || 64;\n if (!str) {\n return str;\n }\n var regex = \"(.{1,\" + width + \"})( +|$\\n?)|(.{1,\" + width + \"})\";\n return str.match(RegExp(regex, \"g\")).join(\"\\n\");\n };\n /**\n * Retrieve the pem encoded private key\n * @returns {string} the pem encoded private key with header/footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPrivateKey = function () {\n var key = \"-----BEGIN RSA PRIVATE KEY-----\\n\";\n key += JSEncryptRSAKey.wordwrap(this.getPrivateBaseKeyB64()) + \"\\n\";\n key += \"-----END RSA PRIVATE KEY-----\";\n return key;\n };\n /**\n * Retrieve the pem encoded public key\n * @returns {string} the pem encoded public key with header/footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPublicKey = function () {\n var key = \"-----BEGIN PUBLIC KEY-----\\n\";\n key += JSEncryptRSAKey.wordwrap(this.getPublicBaseKeyB64()) + \"\\n\";\n key += \"-----END PUBLIC KEY-----\";\n return key;\n };\n /**\n * Check if the object contains the necessary parameters to populate the rsa modulus\n * and public exponent parameters.\n * @param {Object} [obj={}] - An object that may contain the two public key\n * parameters\n * @returns {boolean} true if the object contains both the modulus and the public exponent\n * properties (n and e)\n * @todo check for types of n and e. N should be a parseable bigInt object, E should\n * be a parseable integer number\n * @private\n */\n JSEncryptRSAKey.hasPublicKeyProperty = function (obj) {\n obj = obj || {};\n return obj.hasOwnProperty(\"n\") && obj.hasOwnProperty(\"e\");\n };\n /**\n * Check if the object contains ALL the parameters of an RSA key.\n * @param {Object} [obj={}] - An object that may contain nine rsa key\n * parameters\n * @returns {boolean} true if the object contains all the parameters needed\n * @todo check for types of the parameters all the parameters but the public exponent\n * should be parseable bigint objects, the public exponent should be a parseable integer number\n * @private\n */\n JSEncryptRSAKey.hasPrivateKeyProperty = function (obj) {\n obj = obj || {};\n return (obj.hasOwnProperty(\"n\") &&\n obj.hasOwnProperty(\"e\") &&\n obj.hasOwnProperty(\"d\") &&\n obj.hasOwnProperty(\"p\") &&\n obj.hasOwnProperty(\"q\") &&\n obj.hasOwnProperty(\"dmp1\") &&\n obj.hasOwnProperty(\"dmq1\") &&\n obj.hasOwnProperty(\"coeff\"));\n };\n /**\n * Parse the properties of obj in the current rsa object. Obj should AT LEAST\n * include the modulus and public exponent (n, e) parameters.\n * @param {Object} obj - the object containing rsa parameters\n * @private\n */\n JSEncryptRSAKey.prototype.parsePropertiesFrom = function (obj) {\n this.n = obj.n;\n this.e = obj.e;\n if (obj.hasOwnProperty(\"d\")) {\n this.d = obj.d;\n this.p = obj.p;\n this.q = obj.q;\n this.dmp1 = obj.dmp1;\n this.dmq1 = obj.dmq1;\n this.coeff = obj.coeff;\n }\n };\n return JSEncryptRSAKey;\n}(_lib_jsbn_rsa__WEBPACK_IMPORTED_MODULE_4__.RSAKey));\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/JSEncryptRSAKey.js?"); - + /*!********************************!*\ + !*** ./lib/JSEncryptRSAKey.js ***! + \********************************/ /***/ - }), + ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + + "use strict"; + eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncryptRSAKey\": () => (/* binding */ JSEncryptRSAKey)\n/* harmony export */ });\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ \"./lib/lib/jsbn/base64.js\");\n/* harmony import */ var _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lib/asn1js/hex */ \"./lib/lib/asn1js/hex.js\");\n/* harmony import */ var _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./lib/asn1js/base64 */ \"./lib/lib/asn1js/base64.js\");\n/* harmony import */ var _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./lib/asn1js/asn1 */ \"./lib/lib/asn1js/asn1.js\");\n/* harmony import */ var _lib_jsbn_rsa__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./lib/jsbn/rsa */ \"./lib/lib/jsbn/rsa.js\");\n/* harmony import */ var _lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./lib/jsbn/jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./lib/jsrsasign/asn1-1.0 */ \"./lib/lib/jsrsasign/asn1-1.0.js\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\n\n\n\n\n\n/**\n * Create a new JSEncryptRSAKey that extends Tom Wu's RSA key object.\n * This object is just a decorator for parsing the key parameter\n * @param {string|Object} key - The key in string format, or an object containing\n * the parameters needed to build a RSAKey object.\n * @constructor\n */\nvar JSEncryptRSAKey = /** @class */ (function (_super) {\n __extends(JSEncryptRSAKey, _super);\n function JSEncryptRSAKey(key) {\n var _this = _super.call(this) || this;\n // Call the super constructor.\n // RSAKey.call(this);\n // If a key key was provided.\n if (key) {\n // If this is a string...\n if (typeof key === \"string\") {\n _this.parseKey(key);\n }\n else if (JSEncryptRSAKey.hasPrivateKeyProperty(key) ||\n JSEncryptRSAKey.hasPublicKeyProperty(key)) {\n // Set the values for the key.\n _this.parsePropertiesFrom(key);\n }\n }\n return _this;\n }\n /**\n * Method to parse a pem encoded string containing both a public or private key.\n * The method will translate the pem encoded string in a der encoded string and\n * will parse private key and public key parameters. This method accepts public key\n * in the rsaencryption pkcs #1 format (oid: 1.2.840.113549.1.1.1).\n *\n * @todo Check how many rsa formats use the same format of pkcs #1.\n *\n * The format is defined as:\n * PublicKeyInfo ::= SEQUENCE {\n * algorithm AlgorithmIdentifier,\n * PublicKey BIT STRING\n * }\n * Where AlgorithmIdentifier is:\n * AlgorithmIdentifier ::= SEQUENCE {\n * algorithm OBJECT IDENTIFIER, the OID of the enc algorithm\n * parameters ANY DEFINED BY algorithm OPTIONAL (NULL for PKCS #1)\n * }\n * and PublicKey is a SEQUENCE encapsulated in a BIT STRING\n * RSAPublicKey ::= SEQUENCE {\n * modulus INTEGER, -- n\n * publicExponent INTEGER -- e\n * }\n * it's possible to examine the structure of the keys obtained from openssl using\n * an asn.1 dumper as the one used here to parse the components: http://lapo.it/asn1js/\n * @argument {string} pem the pem encoded string, can include the BEGIN/END header/footer\n * @private\n */\n JSEncryptRSAKey.prototype.parseKey = function (pem) {\n try {\n var modulus = 0;\n var public_exponent = 0;\n var reHex = /^\\s*(?:[0-9A-Fa-f][0-9A-Fa-f]\\s*)+$/;\n var der = reHex.test(pem) ? _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__.Hex.decode(pem) : _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__.Base64.unarmor(pem);\n var asn1 = _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__.ASN1.decode(der);\n // Fixes a bug with OpenSSL 1.0+ private keys\n if (asn1.sub.length === 3) {\n asn1 = asn1.sub[2].sub[0];\n }\n if (asn1.sub.length === 9) {\n // Parse the private key.\n modulus = asn1.sub[1].getHexStringValue(); // bigint\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\n public_exponent = asn1.sub[2].getHexStringValue(); // int\n this.e = parseInt(public_exponent, 16);\n var private_exponent = asn1.sub[3].getHexStringValue(); // bigint\n this.d = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(private_exponent, 16);\n var prime1 = asn1.sub[4].getHexStringValue(); // bigint\n this.p = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(prime1, 16);\n var prime2 = asn1.sub[5].getHexStringValue(); // bigint\n this.q = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(prime2, 16);\n var exponent1 = asn1.sub[6].getHexStringValue(); // bigint\n this.dmp1 = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(exponent1, 16);\n var exponent2 = asn1.sub[7].getHexStringValue(); // bigint\n this.dmq1 = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(exponent2, 16);\n var coefficient = asn1.sub[8].getHexStringValue(); // bigint\n this.coeff = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(coefficient, 16);\n }\n else if (asn1.sub.length === 2) {\n if (asn1.sub[0].sub) {\n // Parse ASN.1 SubjectPublicKeyInfo type as defined by X.509\n var bit_string = asn1.sub[1];\n var sequence = bit_string.sub[0];\n modulus = sequence.sub[0].getHexStringValue();\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\n public_exponent = sequence.sub[1].getHexStringValue();\n this.e = parseInt(public_exponent, 16);\n }\n else {\n // Parse ASN.1 RSAPublicKey type as defined by PKCS #1\n modulus = asn1.sub[0].getHexStringValue();\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\n public_exponent = asn1.sub[1].getHexStringValue();\n this.e = parseInt(public_exponent, 16);\n }\n }\n else {\n return false;\n }\n return true;\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Translate rsa parameters in a hex encoded string representing the rsa key.\n *\n * The translation follow the ASN.1 notation :\n * RSAPrivateKey ::= SEQUENCE {\n * version Version,\n * modulus INTEGER, -- n\n * publicExponent INTEGER, -- e\n * privateExponent INTEGER, -- d\n * prime1 INTEGER, -- p\n * prime2 INTEGER, -- q\n * exponent1 INTEGER, -- d mod (p1)\n * exponent2 INTEGER, -- d mod (q-1)\n * coefficient INTEGER, -- (inverse of q) mod p\n * }\n * @returns {string} DER Encoded String representing the rsa private key\n * @private\n */\n JSEncryptRSAKey.prototype.getPrivateBaseKey = function () {\n var options = {\n array: [\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: 0 }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.n }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: this.e }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.d }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.p }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.q }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.dmp1 }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.dmq1 }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.coeff }),\n ],\n };\n var seq = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence(options);\n return seq.getEncodedHex();\n };\n /**\n * base64 (pem) encoded version of the DER encoded representation\n * @returns {string} pem encoded representation without header and footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPrivateBaseKeyB64 = function () {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getPrivateBaseKey());\n };\n /**\n * Translate rsa parameters in a hex encoded string representing the rsa public key.\n * The representation follow the ASN.1 notation :\n * PublicKeyInfo ::= SEQUENCE {\n * algorithm AlgorithmIdentifier,\n * PublicKey BIT STRING\n * }\n * Where AlgorithmIdentifier is:\n * AlgorithmIdentifier ::= SEQUENCE {\n * algorithm OBJECT IDENTIFIER, the OID of the enc algorithm\n * parameters ANY DEFINED BY algorithm OPTIONAL (NULL for PKCS #1)\n * }\n * and PublicKey is a SEQUENCE encapsulated in a BIT STRING\n * RSAPublicKey ::= SEQUENCE {\n * modulus INTEGER, -- n\n * publicExponent INTEGER -- e\n * }\n * @returns {string} DER Encoded String representing the rsa public key\n * @private\n */\n JSEncryptRSAKey.prototype.getPublicBaseKey = function () {\n var first_sequence = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\n array: [\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERObjectIdentifier({ oid: \"1.2.840.113549.1.1.1\" }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERNull(),\n ],\n });\n var second_sequence = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\n array: [\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.n }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: this.e }),\n ],\n });\n var bit_string = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERBitString({\n hex: \"00\" + second_sequence.getEncodedHex(),\n });\n var seq = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\n array: [first_sequence, bit_string],\n });\n return seq.getEncodedHex();\n };\n /**\n * base64 (pem) encoded version of the DER encoded representation\n * @returns {string} pem encoded representation without header and footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPublicBaseKeyB64 = function () {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getPublicBaseKey());\n };\n /**\n * wrap the string in block of width chars. The default value for rsa keys is 64\n * characters.\n * @param {string} str the pem encoded string without header and footer\n * @param {Number} [width=64] - the length the string has to be wrapped at\n * @returns {string}\n * @private\n */\n JSEncryptRSAKey.wordwrap = function (str, width) {\n width = width || 64;\n if (!str) {\n return str;\n }\n var regex = \"(.{1,\" + width + \"})( +|$\\n?)|(.{1,\" + width + \"})\";\n return str.match(RegExp(regex, \"g\")).join(\"\\n\");\n };\n /**\n * Retrieve the pem encoded private key\n * @returns {string} the pem encoded private key with header/footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPrivateKey = function () {\n var key = \"-----BEGIN RSA PRIVATE KEY-----\\n\";\n key += JSEncryptRSAKey.wordwrap(this.getPrivateBaseKeyB64()) + \"\\n\";\n key += \"-----END RSA PRIVATE KEY-----\";\n return key;\n };\n /**\n * Retrieve the pem encoded public key\n * @returns {string} the pem encoded public key with header/footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPublicKey = function () {\n var key = \"-----BEGIN PUBLIC KEY-----\\n\";\n key += JSEncryptRSAKey.wordwrap(this.getPublicBaseKeyB64()) + \"\\n\";\n key += \"-----END PUBLIC KEY-----\";\n return key;\n };\n /**\n * Check if the object contains the necessary parameters to populate the rsa modulus\n * and public exponent parameters.\n * @param {Object} [obj={}] - An object that may contain the two public key\n * parameters\n * @returns {boolean} true if the object contains both the modulus and the public exponent\n * properties (n and e)\n * @todo check for types of n and e. N should be a parseable bigInt object, E should\n * be a parseable integer number\n * @private\n */\n JSEncryptRSAKey.hasPublicKeyProperty = function (obj) {\n obj = obj || {};\n return obj.hasOwnProperty(\"n\") && obj.hasOwnProperty(\"e\");\n };\n /**\n * Check if the object contains ALL the parameters of an RSA key.\n * @param {Object} [obj={}] - An object that may contain nine rsa key\n * parameters\n * @returns {boolean} true if the object contains all the parameters needed\n * @todo check for types of the parameters all the parameters but the public exponent\n * should be parseable bigint objects, the public exponent should be a parseable integer number\n * @private\n */\n JSEncryptRSAKey.hasPrivateKeyProperty = function (obj) {\n obj = obj || {};\n return (obj.hasOwnProperty(\"n\") &&\n obj.hasOwnProperty(\"e\") &&\n obj.hasOwnProperty(\"d\") &&\n obj.hasOwnProperty(\"p\") &&\n obj.hasOwnProperty(\"q\") &&\n obj.hasOwnProperty(\"dmp1\") &&\n obj.hasOwnProperty(\"dmq1\") &&\n obj.hasOwnProperty(\"coeff\"));\n };\n /**\n * Parse the properties of obj in the current rsa object. Obj should AT LEAST\n * include the modulus and public exponent (n, e) parameters.\n * @param {Object} obj - the object containing rsa parameters\n * @private\n */\n JSEncryptRSAKey.prototype.parsePropertiesFrom = function (obj) {\n this.n = obj.n;\n this.e = obj.e;\n if (obj.hasOwnProperty(\"d\")) {\n this.d = obj.d;\n this.p = obj.p;\n this.q = obj.q;\n this.dmp1 = obj.dmp1;\n this.dmq1 = obj.dmq1;\n this.coeff = obj.coeff;\n }\n };\n return JSEncryptRSAKey;\n}(_lib_jsbn_rsa__WEBPACK_IMPORTED_MODULE_4__.RSAKey));\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/JSEncryptRSAKey.js?"); + + /***/ + }), /***/ "./lib/index.js": - /*!**********************!*\ - !*** ./lib/index.js ***! - \**********************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncrypt\": () => (/* reexport safe */ _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./JSEncrypt */ \"./lib/JSEncrypt.js\");\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/index.js?"); - + /*!**********************!*\ + !*** ./lib/index.js ***! + \**********************/ /***/ - }), + ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + + "use strict"; + eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncrypt\": () => (/* reexport safe */ _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./JSEncrypt */ \"./lib/JSEncrypt.js\");\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/index.js?"); + + /***/ + }), /***/ "./lib/lib/asn1js/asn1.js": - /*!********************************!*\ - !*** ./lib/lib/asn1js/asn1.js ***! - \********************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"ASN1\": () => (/* binding */ ASN1),\n/* harmony export */ \"ASN1Tag\": () => (/* binding */ ASN1Tag),\n/* harmony export */ \"Stream\": () => (/* binding */ Stream)\n/* harmony export */ });\n/* harmony import */ var _int10__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./int10 */ \"./lib/lib/asn1js/int10.js\");\n// ASN.1 JavaScript decoder\n// Copyright (c) 2008-2014 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\n/*global oids */\n\nvar ellipsis = \"\\u2026\";\nvar reTimeS = /^(\\d\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])([01]\\d|2[0-3])(?:([0-5]\\d)(?:([0-5]\\d)(?:[.,](\\d{1,3}))?)?)?(Z|[-+](?:[0]\\d|1[0-2])([0-5]\\d)?)?$/;\nvar reTimeL = /^(\\d\\d\\d\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])([01]\\d|2[0-3])(?:([0-5]\\d)(?:([0-5]\\d)(?:[.,](\\d{1,3}))?)?)?(Z|[-+](?:[0]\\d|1[0-2])([0-5]\\d)?)?$/;\nfunction stringCut(str, len) {\n if (str.length > len) {\n str = str.substring(0, len) + ellipsis;\n }\n return str;\n}\nvar Stream = /** @class */ (function () {\n function Stream(enc, pos) {\n this.hexDigits = \"0123456789ABCDEF\";\n if (enc instanceof Stream) {\n this.enc = enc.enc;\n this.pos = enc.pos;\n }\n else {\n // enc should be an array or a binary string\n this.enc = enc;\n this.pos = pos;\n }\n }\n Stream.prototype.get = function (pos) {\n if (pos === undefined) {\n pos = this.pos++;\n }\n if (pos >= this.enc.length) {\n throw new Error(\"Requesting byte offset \".concat(pos, \" on a stream of length \").concat(this.enc.length));\n }\n return (\"string\" === typeof this.enc) ? this.enc.charCodeAt(pos) : this.enc[pos];\n };\n Stream.prototype.hexByte = function (b) {\n return this.hexDigits.charAt((b >> 4) & 0xF) + this.hexDigits.charAt(b & 0xF);\n };\n Stream.prototype.hexDump = function (start, end, raw) {\n var s = \"\";\n for (var i = start; i < end; ++i) {\n s += this.hexByte(this.get(i));\n if (raw !== true) {\n switch (i & 0xF) {\n case 0x7:\n s += \" \";\n break;\n case 0xF:\n s += \"\\n\";\n break;\n default:\n s += \" \";\n }\n }\n }\n return s;\n };\n Stream.prototype.isASCII = function (start, end) {\n for (var i = start; i < end; ++i) {\n var c = this.get(i);\n if (c < 32 || c > 176) {\n return false;\n }\n }\n return true;\n };\n Stream.prototype.parseStringISO = function (start, end) {\n var s = \"\";\n for (var i = start; i < end; ++i) {\n s += String.fromCharCode(this.get(i));\n }\n return s;\n };\n Stream.prototype.parseStringUTF = function (start, end) {\n var s = \"\";\n for (var i = start; i < end;) {\n var c = this.get(i++);\n if (c < 128) {\n s += String.fromCharCode(c);\n }\n else if ((c > 191) && (c < 224)) {\n s += String.fromCharCode(((c & 0x1F) << 6) | (this.get(i++) & 0x3F));\n }\n else {\n s += String.fromCharCode(((c & 0x0F) << 12) | ((this.get(i++) & 0x3F) << 6) | (this.get(i++) & 0x3F));\n }\n }\n return s;\n };\n Stream.prototype.parseStringBMP = function (start, end) {\n var str = \"\";\n var hi;\n var lo;\n for (var i = start; i < end;) {\n hi = this.get(i++);\n lo = this.get(i++);\n str += String.fromCharCode((hi << 8) | lo);\n }\n return str;\n };\n Stream.prototype.parseTime = function (start, end, shortYear) {\n var s = this.parseStringISO(start, end);\n var m = (shortYear ? reTimeS : reTimeL).exec(s);\n if (!m) {\n return \"Unrecognized time: \" + s;\n }\n if (shortYear) {\n // to avoid querying the timer, use the fixed range [1970, 2069]\n // it will conform with ITU X.400 [-10, +40] sliding window until 2030\n m[1] = +m[1];\n m[1] += (+m[1] < 70) ? 2000 : 1900;\n }\n s = m[1] + \"-\" + m[2] + \"-\" + m[3] + \" \" + m[4];\n if (m[5]) {\n s += \":\" + m[5];\n if (m[6]) {\n s += \":\" + m[6];\n if (m[7]) {\n s += \".\" + m[7];\n }\n }\n }\n if (m[8]) {\n s += \" UTC\";\n if (m[8] != \"Z\") {\n s += m[8];\n if (m[9]) {\n s += \":\" + m[9];\n }\n }\n }\n return s;\n };\n Stream.prototype.parseInteger = function (start, end) {\n var v = this.get(start);\n var neg = (v > 127);\n var pad = neg ? 255 : 0;\n var len;\n var s = \"\";\n // skip unuseful bits (not allowed in DER)\n while (v == pad && ++start < end) {\n v = this.get(start);\n }\n len = end - start;\n if (len === 0) {\n return neg ? -1 : 0;\n }\n // show bit length of huge integers\n if (len > 4) {\n s = v;\n len <<= 3;\n while (((+s ^ pad) & 0x80) == 0) {\n s = +s << 1;\n --len;\n }\n s = \"(\" + len + \" bit)\\n\";\n }\n // decode the integer\n if (neg) {\n v = v - 256;\n }\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10(v);\n for (var i = start + 1; i < end; ++i) {\n n.mulAdd(256, this.get(i));\n }\n return s + n.toString();\n };\n Stream.prototype.parseBitString = function (start, end, maxLength) {\n var unusedBit = this.get(start);\n var lenBit = ((end - start - 1) << 3) - unusedBit;\n var intro = \"(\" + lenBit + \" bit)\\n\";\n var s = \"\";\n for (var i = start + 1; i < end; ++i) {\n var b = this.get(i);\n var skip = (i == end - 1) ? unusedBit : 0;\n for (var j = 7; j >= skip; --j) {\n s += (b >> j) & 1 ? \"1\" : \"0\";\n }\n if (s.length > maxLength) {\n return intro + stringCut(s, maxLength);\n }\n }\n return intro + s;\n };\n Stream.prototype.parseOctetString = function (start, end, maxLength) {\n if (this.isASCII(start, end)) {\n return stringCut(this.parseStringISO(start, end), maxLength);\n }\n var len = end - start;\n var s = \"(\" + len + \" byte)\\n\";\n maxLength /= 2; // we work in bytes\n if (len > maxLength) {\n end = start + maxLength;\n }\n for (var i = start; i < end; ++i) {\n s += this.hexByte(this.get(i));\n }\n if (len > maxLength) {\n s += ellipsis;\n }\n return s;\n };\n Stream.prototype.parseOID = function (start, end, maxLength) {\n var s = \"\";\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\n var bits = 0;\n for (var i = start; i < end; ++i) {\n var v = this.get(i);\n n.mulAdd(128, v & 0x7F);\n bits += 7;\n if (!(v & 0x80)) { // finished\n if (s === \"\") {\n n = n.simplify();\n if (n instanceof _int10__WEBPACK_IMPORTED_MODULE_0__.Int10) {\n n.sub(80);\n s = \"2.\" + n.toString();\n }\n else {\n var m = n < 80 ? n < 40 ? 0 : 1 : 2;\n s = m + \".\" + (n - m * 40);\n }\n }\n else {\n s += \".\" + n.toString();\n }\n if (s.length > maxLength) {\n return stringCut(s, maxLength);\n }\n n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\n bits = 0;\n }\n }\n if (bits > 0) {\n s += \".incomplete\";\n }\n return s;\n };\n return Stream;\n}());\n\nvar ASN1 = /** @class */ (function () {\n function ASN1(stream, header, length, tag, sub) {\n if (!(tag instanceof ASN1Tag)) {\n throw new Error(\"Invalid tag value.\");\n }\n this.stream = stream;\n this.header = header;\n this.length = length;\n this.tag = tag;\n this.sub = sub;\n }\n ASN1.prototype.typeName = function () {\n switch (this.tag.tagClass) {\n case 0: // universal\n switch (this.tag.tagNumber) {\n case 0x00:\n return \"EOC\";\n case 0x01:\n return \"BOOLEAN\";\n case 0x02:\n return \"INTEGER\";\n case 0x03:\n return \"BIT_STRING\";\n case 0x04:\n return \"OCTET_STRING\";\n case 0x05:\n return \"NULL\";\n case 0x06:\n return \"OBJECT_IDENTIFIER\";\n case 0x07:\n return \"ObjectDescriptor\";\n case 0x08:\n return \"EXTERNAL\";\n case 0x09:\n return \"REAL\";\n case 0x0A:\n return \"ENUMERATED\";\n case 0x0B:\n return \"EMBEDDED_PDV\";\n case 0x0C:\n return \"UTF8String\";\n case 0x10:\n return \"SEQUENCE\";\n case 0x11:\n return \"SET\";\n case 0x12:\n return \"NumericString\";\n case 0x13:\n return \"PrintableString\"; // ASCII subset\n case 0x14:\n return \"TeletexString\"; // aka T61String\n case 0x15:\n return \"VideotexString\";\n case 0x16:\n return \"IA5String\"; // ASCII\n case 0x17:\n return \"UTCTime\";\n case 0x18:\n return \"GeneralizedTime\";\n case 0x19:\n return \"GraphicString\";\n case 0x1A:\n return \"VisibleString\"; // ASCII subset\n case 0x1B:\n return \"GeneralString\";\n case 0x1C:\n return \"UniversalString\";\n case 0x1E:\n return \"BMPString\";\n }\n return \"Universal_\" + this.tag.tagNumber.toString();\n case 1:\n return \"Application_\" + this.tag.tagNumber.toString();\n case 2:\n return \"[\" + this.tag.tagNumber.toString() + \"]\"; // Context\n case 3:\n return \"Private_\" + this.tag.tagNumber.toString();\n }\n };\n ASN1.prototype.content = function (maxLength) {\n if (this.tag === undefined) {\n return null;\n }\n if (maxLength === undefined) {\n maxLength = Infinity;\n }\n var content = this.posContent();\n var len = Math.abs(this.length);\n if (!this.tag.isUniversal()) {\n if (this.sub !== null) {\n return \"(\" + this.sub.length + \" elem)\";\n }\n return this.stream.parseOctetString(content, content + len, maxLength);\n }\n switch (this.tag.tagNumber) {\n case 0x01: // BOOLEAN\n return (this.stream.get(content) === 0) ? \"false\" : \"true\";\n case 0x02: // INTEGER\n return this.stream.parseInteger(content, content + len);\n case 0x03: // BIT_STRING\n return this.sub ? \"(\" + this.sub.length + \" elem)\" :\n this.stream.parseBitString(content, content + len, maxLength);\n case 0x04: // OCTET_STRING\n return this.sub ? \"(\" + this.sub.length + \" elem)\" :\n this.stream.parseOctetString(content, content + len, maxLength);\n // case 0x05: // NULL\n case 0x06: // OBJECT_IDENTIFIER\n return this.stream.parseOID(content, content + len, maxLength);\n // case 0x07: // ObjectDescriptor\n // case 0x08: // EXTERNAL\n // case 0x09: // REAL\n // case 0x0A: // ENUMERATED\n // case 0x0B: // EMBEDDED_PDV\n case 0x10: // SEQUENCE\n case 0x11: // SET\n if (this.sub !== null) {\n return \"(\" + this.sub.length + \" elem)\";\n }\n else {\n return \"(no elem)\";\n }\n case 0x0C: // UTF8String\n return stringCut(this.stream.parseStringUTF(content, content + len), maxLength);\n case 0x12: // NumericString\n case 0x13: // PrintableString\n case 0x14: // TeletexString\n case 0x15: // VideotexString\n case 0x16: // IA5String\n // case 0x19: // GraphicString\n case 0x1A: // VisibleString\n // case 0x1B: // GeneralString\n // case 0x1C: // UniversalString\n return stringCut(this.stream.parseStringISO(content, content + len), maxLength);\n case 0x1E: // BMPString\n return stringCut(this.stream.parseStringBMP(content, content + len), maxLength);\n case 0x17: // UTCTime\n case 0x18: // GeneralizedTime\n return this.stream.parseTime(content, content + len, (this.tag.tagNumber == 0x17));\n }\n return null;\n };\n ASN1.prototype.toString = function () {\n return this.typeName() + \"@\" + this.stream.pos + \"[header:\" + this.header + \",length:\" + this.length + \",sub:\" + ((this.sub === null) ? \"null\" : this.sub.length) + \"]\";\n };\n ASN1.prototype.toPrettyString = function (indent) {\n if (indent === undefined) {\n indent = \"\";\n }\n var s = indent + this.typeName() + \" @\" + this.stream.pos;\n if (this.length >= 0) {\n s += \"+\";\n }\n s += this.length;\n if (this.tag.tagConstructed) {\n s += \" (constructed)\";\n }\n else if ((this.tag.isUniversal() && ((this.tag.tagNumber == 0x03) || (this.tag.tagNumber == 0x04))) && (this.sub !== null)) {\n s += \" (encapsulates)\";\n }\n s += \"\\n\";\n if (this.sub !== null) {\n indent += \" \";\n for (var i = 0, max = this.sub.length; i < max; ++i) {\n s += this.sub[i].toPrettyString(indent);\n }\n }\n return s;\n };\n ASN1.prototype.posStart = function () {\n return this.stream.pos;\n };\n ASN1.prototype.posContent = function () {\n return this.stream.pos + this.header;\n };\n ASN1.prototype.posEnd = function () {\n return this.stream.pos + this.header + Math.abs(this.length);\n };\n ASN1.prototype.toHexString = function () {\n return this.stream.hexDump(this.posStart(), this.posEnd(), true);\n };\n ASN1.decodeLength = function (stream) {\n var buf = stream.get();\n var len = buf & 0x7F;\n if (len == buf) {\n return len;\n }\n // no reason to use Int10, as it would be a huge buffer anyways\n if (len > 6) {\n throw new Error(\"Length over 48 bits not supported at position \" + (stream.pos - 1));\n }\n if (len === 0) {\n return null;\n } // undefined\n buf = 0;\n for (var i = 0; i < len; ++i) {\n buf = (buf * 256) + stream.get();\n }\n return buf;\n };\n /**\n * Retrieve the hexadecimal value (as a string) of the current ASN.1 element\n * @returns {string}\n * @public\n */\n ASN1.prototype.getHexStringValue = function () {\n var hexString = this.toHexString();\n var offset = this.header * 2;\n var length = this.length * 2;\n return hexString.substr(offset, length);\n };\n ASN1.decode = function (str) {\n var stream;\n if (!(str instanceof Stream)) {\n stream = new Stream(str, 0);\n }\n else {\n stream = str;\n }\n var streamStart = new Stream(stream);\n var tag = new ASN1Tag(stream);\n var len = ASN1.decodeLength(stream);\n var start = stream.pos;\n var header = start - streamStart.pos;\n var sub = null;\n var getSub = function () {\n var ret = [];\n if (len !== null) {\n // definite length\n var end = start + len;\n while (stream.pos < end) {\n ret[ret.length] = ASN1.decode(stream);\n }\n if (stream.pos != end) {\n throw new Error(\"Content size is not correct for container starting at offset \" + start);\n }\n }\n else {\n // undefined length\n try {\n for (;;) {\n var s = ASN1.decode(stream);\n if (s.tag.isEOC()) {\n break;\n }\n ret[ret.length] = s;\n }\n len = start - stream.pos; // undefined lengths are represented as negative values\n }\n catch (e) {\n throw new Error(\"Exception while decoding undefined length content: \" + e);\n }\n }\n return ret;\n };\n if (tag.tagConstructed) {\n // must have valid content\n sub = getSub();\n }\n else if (tag.isUniversal() && ((tag.tagNumber == 0x03) || (tag.tagNumber == 0x04))) {\n // sometimes BitString and OctetString are used to encapsulate ASN.1\n try {\n if (tag.tagNumber == 0x03) {\n if (stream.get() != 0) {\n throw new Error(\"BIT STRINGs with unused bits cannot encapsulate.\");\n }\n }\n sub = getSub();\n for (var i = 0; i < sub.length; ++i) {\n if (sub[i].tag.isEOC()) {\n throw new Error(\"EOC is not supposed to be actual content.\");\n }\n }\n }\n catch (e) {\n // but silently ignore when they don't\n sub = null;\n }\n }\n if (sub === null) {\n if (len === null) {\n throw new Error(\"We can't skip over an invalid tag with undefined length at offset \" + start);\n }\n stream.pos = start + Math.abs(len);\n }\n return new ASN1(streamStart, header, len, tag, sub);\n };\n return ASN1;\n}());\n\nvar ASN1Tag = /** @class */ (function () {\n function ASN1Tag(stream) {\n var buf = stream.get();\n this.tagClass = buf >> 6;\n this.tagConstructed = ((buf & 0x20) !== 0);\n this.tagNumber = buf & 0x1F;\n if (this.tagNumber == 0x1F) { // long tag\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\n do {\n buf = stream.get();\n n.mulAdd(128, buf & 0x7F);\n } while (buf & 0x80);\n this.tagNumber = n.simplify();\n }\n }\n ASN1Tag.prototype.isUniversal = function () {\n return this.tagClass === 0x00;\n };\n ASN1Tag.prototype.isEOC = function () {\n return this.tagClass === 0x00 && this.tagNumber === 0x00;\n };\n return ASN1Tag;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/asn1.js?"); - + /*!********************************!*\ + !*** ./lib/lib/asn1js/asn1.js ***! + \********************************/ /***/ - }), + ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + + "use strict"; + eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"ASN1\": () => (/* binding */ ASN1),\n/* harmony export */ \"ASN1Tag\": () => (/* binding */ ASN1Tag),\n/* harmony export */ \"Stream\": () => (/* binding */ Stream)\n/* harmony export */ });\n/* harmony import */ var _int10__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./int10 */ \"./lib/lib/asn1js/int10.js\");\n// ASN.1 JavaScript decoder\n// Copyright (c) 2008-2014 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\n/*global oids */\n\nvar ellipsis = \"\\u2026\";\nvar reTimeS = /^(\\d\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])([01]\\d|2[0-3])(?:([0-5]\\d)(?:([0-5]\\d)(?:[.,](\\d{1,3}))?)?)?(Z|[-+](?:[0]\\d|1[0-2])([0-5]\\d)?)?$/;\nvar reTimeL = /^(\\d\\d\\d\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])([01]\\d|2[0-3])(?:([0-5]\\d)(?:([0-5]\\d)(?:[.,](\\d{1,3}))?)?)?(Z|[-+](?:[0]\\d|1[0-2])([0-5]\\d)?)?$/;\nfunction stringCut(str, len) {\n if (str.length > len) {\n str = str.substring(0, len) + ellipsis;\n }\n return str;\n}\nvar Stream = /** @class */ (function () {\n function Stream(enc, pos) {\n this.hexDigits = \"0123456789ABCDEF\";\n if (enc instanceof Stream) {\n this.enc = enc.enc;\n this.pos = enc.pos;\n }\n else {\n // enc should be an array or a binary string\n this.enc = enc;\n this.pos = pos;\n }\n }\n Stream.prototype.get = function (pos) {\n if (pos === undefined) {\n pos = this.pos++;\n }\n if (pos >= this.enc.length) {\n throw new Error(\"Requesting byte offset \".concat(pos, \" on a stream of length \").concat(this.enc.length));\n }\n return (\"string\" === typeof this.enc) ? this.enc.charCodeAt(pos) : this.enc[pos];\n };\n Stream.prototype.hexByte = function (b) {\n return this.hexDigits.charAt((b >> 4) & 0xF) + this.hexDigits.charAt(b & 0xF);\n };\n Stream.prototype.hexDump = function (start, end, raw) {\n var s = \"\";\n for (var i = start; i < end; ++i) {\n s += this.hexByte(this.get(i));\n if (raw !== true) {\n switch (i & 0xF) {\n case 0x7:\n s += \" \";\n break;\n case 0xF:\n s += \"\\n\";\n break;\n default:\n s += \" \";\n }\n }\n }\n return s;\n };\n Stream.prototype.isASCII = function (start, end) {\n for (var i = start; i < end; ++i) {\n var c = this.get(i);\n if (c < 32 || c > 176) {\n return false;\n }\n }\n return true;\n };\n Stream.prototype.parseStringISO = function (start, end) {\n var s = \"\";\n for (var i = start; i < end; ++i) {\n s += String.fromCharCode(this.get(i));\n }\n return s;\n };\n Stream.prototype.parseStringUTF = function (start, end) {\n var s = \"\";\n for (var i = start; i < end;) {\n var c = this.get(i++);\n if (c < 128) {\n s += String.fromCharCode(c);\n }\n else if ((c > 191) && (c < 224)) {\n s += String.fromCharCode(((c & 0x1F) << 6) | (this.get(i++) & 0x3F));\n }\n else {\n s += String.fromCharCode(((c & 0x0F) << 12) | ((this.get(i++) & 0x3F) << 6) | (this.get(i++) & 0x3F));\n }\n }\n return s;\n };\n Stream.prototype.parseStringBMP = function (start, end) {\n var str = \"\";\n var hi;\n var lo;\n for (var i = start; i < end;) {\n hi = this.get(i++);\n lo = this.get(i++);\n str += String.fromCharCode((hi << 8) | lo);\n }\n return str;\n };\n Stream.prototype.parseTime = function (start, end, shortYear) {\n var s = this.parseStringISO(start, end);\n var m = (shortYear ? reTimeS : reTimeL).exec(s);\n if (!m) {\n return \"Unrecognized time: \" + s;\n }\n if (shortYear) {\n // to avoid querying the timer, use the fixed range [1970, 2069]\n // it will conform with ITU X.400 [-10, +40] sliding window until 2030\n m[1] = +m[1];\n m[1] += (+m[1] < 70) ? 2000 : 1900;\n }\n s = m[1] + \"-\" + m[2] + \"-\" + m[3] + \" \" + m[4];\n if (m[5]) {\n s += \":\" + m[5];\n if (m[6]) {\n s += \":\" + m[6];\n if (m[7]) {\n s += \".\" + m[7];\n }\n }\n }\n if (m[8]) {\n s += \" UTC\";\n if (m[8] != \"Z\") {\n s += m[8];\n if (m[9]) {\n s += \":\" + m[9];\n }\n }\n }\n return s;\n };\n Stream.prototype.parseInteger = function (start, end) {\n var v = this.get(start);\n var neg = (v > 127);\n var pad = neg ? 255 : 0;\n var len;\n var s = \"\";\n // skip unuseful bits (not allowed in DER)\n while (v == pad && ++start < end) {\n v = this.get(start);\n }\n len = end - start;\n if (len === 0) {\n return neg ? -1 : 0;\n }\n // show bit length of huge integers\n if (len > 4) {\n s = v;\n len <<= 3;\n while (((+s ^ pad) & 0x80) == 0) {\n s = +s << 1;\n --len;\n }\n s = \"(\" + len + \" bit)\\n\";\n }\n // decode the integer\n if (neg) {\n v = v - 256;\n }\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10(v);\n for (var i = start + 1; i < end; ++i) {\n n.mulAdd(256, this.get(i));\n }\n return s + n.toString();\n };\n Stream.prototype.parseBitString = function (start, end, maxLength) {\n var unusedBit = this.get(start);\n var lenBit = ((end - start - 1) << 3) - unusedBit;\n var intro = \"(\" + lenBit + \" bit)\\n\";\n var s = \"\";\n for (var i = start + 1; i < end; ++i) {\n var b = this.get(i);\n var skip = (i == end - 1) ? unusedBit : 0;\n for (var j = 7; j >= skip; --j) {\n s += (b >> j) & 1 ? \"1\" : \"0\";\n }\n if (s.length > maxLength) {\n return intro + stringCut(s, maxLength);\n }\n }\n return intro + s;\n };\n Stream.prototype.parseOctetString = function (start, end, maxLength) {\n if (this.isASCII(start, end)) {\n return stringCut(this.parseStringISO(start, end), maxLength);\n }\n var len = end - start;\n var s = \"(\" + len + \" byte)\\n\";\n maxLength /= 2; // we work in bytes\n if (len > maxLength) {\n end = start + maxLength;\n }\n for (var i = start; i < end; ++i) {\n s += this.hexByte(this.get(i));\n }\n if (len > maxLength) {\n s += ellipsis;\n }\n return s;\n };\n Stream.prototype.parseOID = function (start, end, maxLength) {\n var s = \"\";\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\n var bits = 0;\n for (var i = start; i < end; ++i) {\n var v = this.get(i);\n n.mulAdd(128, v & 0x7F);\n bits += 7;\n if (!(v & 0x80)) { // finished\n if (s === \"\") {\n n = n.simplify();\n if (n instanceof _int10__WEBPACK_IMPORTED_MODULE_0__.Int10) {\n n.sub(80);\n s = \"2.\" + n.toString();\n }\n else {\n var m = n < 80 ? n < 40 ? 0 : 1 : 2;\n s = m + \".\" + (n - m * 40);\n }\n }\n else {\n s += \".\" + n.toString();\n }\n if (s.length > maxLength) {\n return stringCut(s, maxLength);\n }\n n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\n bits = 0;\n }\n }\n if (bits > 0) {\n s += \".incomplete\";\n }\n return s;\n };\n return Stream;\n}());\n\nvar ASN1 = /** @class */ (function () {\n function ASN1(stream, header, length, tag, sub) {\n if (!(tag instanceof ASN1Tag)) {\n throw new Error(\"Invalid tag value.\");\n }\n this.stream = stream;\n this.header = header;\n this.length = length;\n this.tag = tag;\n this.sub = sub;\n }\n ASN1.prototype.typeName = function () {\n switch (this.tag.tagClass) {\n case 0: // universal\n switch (this.tag.tagNumber) {\n case 0x00:\n return \"EOC\";\n case 0x01:\n return \"BOOLEAN\";\n case 0x02:\n return \"INTEGER\";\n case 0x03:\n return \"BIT_STRING\";\n case 0x04:\n return \"OCTET_STRING\";\n case 0x05:\n return \"NULL\";\n case 0x06:\n return \"OBJECT_IDENTIFIER\";\n case 0x07:\n return \"ObjectDescriptor\";\n case 0x08:\n return \"EXTERNAL\";\n case 0x09:\n return \"REAL\";\n case 0x0A:\n return \"ENUMERATED\";\n case 0x0B:\n return \"EMBEDDED_PDV\";\n case 0x0C:\n return \"UTF8String\";\n case 0x10:\n return \"SEQUENCE\";\n case 0x11:\n return \"SET\";\n case 0x12:\n return \"NumericString\";\n case 0x13:\n return \"PrintableString\"; // ASCII subset\n case 0x14:\n return \"TeletexString\"; // aka T61String\n case 0x15:\n return \"VideotexString\";\n case 0x16:\n return \"IA5String\"; // ASCII\n case 0x17:\n return \"UTCTime\";\n case 0x18:\n return \"GeneralizedTime\";\n case 0x19:\n return \"GraphicString\";\n case 0x1A:\n return \"VisibleString\"; // ASCII subset\n case 0x1B:\n return \"GeneralString\";\n case 0x1C:\n return \"UniversalString\";\n case 0x1E:\n return \"BMPString\";\n }\n return \"Universal_\" + this.tag.tagNumber.toString();\n case 1:\n return \"Application_\" + this.tag.tagNumber.toString();\n case 2:\n return \"[\" + this.tag.tagNumber.toString() + \"]\"; // Context\n case 3:\n return \"Private_\" + this.tag.tagNumber.toString();\n }\n };\n ASN1.prototype.content = function (maxLength) {\n if (this.tag === undefined) {\n return null;\n }\n if (maxLength === undefined) {\n maxLength = Infinity;\n }\n var content = this.posContent();\n var len = Math.abs(this.length);\n if (!this.tag.isUniversal()) {\n if (this.sub !== null) {\n return \"(\" + this.sub.length + \" elem)\";\n }\n return this.stream.parseOctetString(content, content + len, maxLength);\n }\n switch (this.tag.tagNumber) {\n case 0x01: // BOOLEAN\n return (this.stream.get(content) === 0) ? \"false\" : \"true\";\n case 0x02: // INTEGER\n return this.stream.parseInteger(content, content + len);\n case 0x03: // BIT_STRING\n return this.sub ? \"(\" + this.sub.length + \" elem)\" :\n this.stream.parseBitString(content, content + len, maxLength);\n case 0x04: // OCTET_STRING\n return this.sub ? \"(\" + this.sub.length + \" elem)\" :\n this.stream.parseOctetString(content, content + len, maxLength);\n // case 0x05: // NULL\n case 0x06: // OBJECT_IDENTIFIER\n return this.stream.parseOID(content, content + len, maxLength);\n // case 0x07: // ObjectDescriptor\n // case 0x08: // EXTERNAL\n // case 0x09: // REAL\n // case 0x0A: // ENUMERATED\n // case 0x0B: // EMBEDDED_PDV\n case 0x10: // SEQUENCE\n case 0x11: // SET\n if (this.sub !== null) {\n return \"(\" + this.sub.length + \" elem)\";\n }\n else {\n return \"(no elem)\";\n }\n case 0x0C: // UTF8String\n return stringCut(this.stream.parseStringUTF(content, content + len), maxLength);\n case 0x12: // NumericString\n case 0x13: // PrintableString\n case 0x14: // TeletexString\n case 0x15: // VideotexString\n case 0x16: // IA5String\n // case 0x19: // GraphicString\n case 0x1A: // VisibleString\n // case 0x1B: // GeneralString\n // case 0x1C: // UniversalString\n return stringCut(this.stream.parseStringISO(content, content + len), maxLength);\n case 0x1E: // BMPString\n return stringCut(this.stream.parseStringBMP(content, content + len), maxLength);\n case 0x17: // UTCTime\n case 0x18: // GeneralizedTime\n return this.stream.parseTime(content, content + len, (this.tag.tagNumber == 0x17));\n }\n return null;\n };\n ASN1.prototype.toString = function () {\n return this.typeName() + \"@\" + this.stream.pos + \"[header:\" + this.header + \",length:\" + this.length + \",sub:\" + ((this.sub === null) ? \"null\" : this.sub.length) + \"]\";\n };\n ASN1.prototype.toPrettyString = function (indent) {\n if (indent === undefined) {\n indent = \"\";\n }\n var s = indent + this.typeName() + \" @\" + this.stream.pos;\n if (this.length >= 0) {\n s += \"+\";\n }\n s += this.length;\n if (this.tag.tagConstructed) {\n s += \" (constructed)\";\n }\n else if ((this.tag.isUniversal() && ((this.tag.tagNumber == 0x03) || (this.tag.tagNumber == 0x04))) && (this.sub !== null)) {\n s += \" (encapsulates)\";\n }\n s += \"\\n\";\n if (this.sub !== null) {\n indent += \" \";\n for (var i = 0, max = this.sub.length; i < max; ++i) {\n s += this.sub[i].toPrettyString(indent);\n }\n }\n return s;\n };\n ASN1.prototype.posStart = function () {\n return this.stream.pos;\n };\n ASN1.prototype.posContent = function () {\n return this.stream.pos + this.header;\n };\n ASN1.prototype.posEnd = function () {\n return this.stream.pos + this.header + Math.abs(this.length);\n };\n ASN1.prototype.toHexString = function () {\n return this.stream.hexDump(this.posStart(), this.posEnd(), true);\n };\n ASN1.decodeLength = function (stream) {\n var buf = stream.get();\n var len = buf & 0x7F;\n if (len == buf) {\n return len;\n }\n // no reason to use Int10, as it would be a huge buffer anyways\n if (len > 6) {\n throw new Error(\"Length over 48 bits not supported at position \" + (stream.pos - 1));\n }\n if (len === 0) {\n return null;\n } // undefined\n buf = 0;\n for (var i = 0; i < len; ++i) {\n buf = (buf * 256) + stream.get();\n }\n return buf;\n };\n /**\n * Retrieve the hexadecimal value (as a string) of the current ASN.1 element\n * @returns {string}\n * @public\n */\n ASN1.prototype.getHexStringValue = function () {\n var hexString = this.toHexString();\n var offset = this.header * 2;\n var length = this.length * 2;\n return hexString.substr(offset, length);\n };\n ASN1.decode = function (str) {\n var stream;\n if (!(str instanceof Stream)) {\n stream = new Stream(str, 0);\n }\n else {\n stream = str;\n }\n var streamStart = new Stream(stream);\n var tag = new ASN1Tag(stream);\n var len = ASN1.decodeLength(stream);\n var start = stream.pos;\n var header = start - streamStart.pos;\n var sub = null;\n var getSub = function () {\n var ret = [];\n if (len !== null) {\n // definite length\n var end = start + len;\n while (stream.pos < end) {\n ret[ret.length] = ASN1.decode(stream);\n }\n if (stream.pos != end) {\n throw new Error(\"Content size is not correct for container starting at offset \" + start);\n }\n }\n else {\n // undefined length\n try {\n for (;;) {\n var s = ASN1.decode(stream);\n if (s.tag.isEOC()) {\n break;\n }\n ret[ret.length] = s;\n }\n len = start - stream.pos; // undefined lengths are represented as negative values\n }\n catch (e) {\n throw new Error(\"Exception while decoding undefined length content: \" + e);\n }\n }\n return ret;\n };\n if (tag.tagConstructed) {\n // must have valid content\n sub = getSub();\n }\n else if (tag.isUniversal() && ((tag.tagNumber == 0x03) || (tag.tagNumber == 0x04))) {\n // sometimes BitString and OctetString are used to encapsulate ASN.1\n try {\n if (tag.tagNumber == 0x03) {\n if (stream.get() != 0) {\n throw new Error(\"BIT STRINGs with unused bits cannot encapsulate.\");\n }\n }\n sub = getSub();\n for (var i = 0; i < sub.length; ++i) {\n if (sub[i].tag.isEOC()) {\n throw new Error(\"EOC is not supposed to be actual content.\");\n }\n }\n }\n catch (e) {\n // but silently ignore when they don't\n sub = null;\n }\n }\n if (sub === null) {\n if (len === null) {\n throw new Error(\"We can't skip over an invalid tag with undefined length at offset \" + start);\n }\n stream.pos = start + Math.abs(len);\n }\n return new ASN1(streamStart, header, len, tag, sub);\n };\n return ASN1;\n}());\n\nvar ASN1Tag = /** @class */ (function () {\n function ASN1Tag(stream) {\n var buf = stream.get();\n this.tagClass = buf >> 6;\n this.tagConstructed = ((buf & 0x20) !== 0);\n this.tagNumber = buf & 0x1F;\n if (this.tagNumber == 0x1F) { // long tag\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\n do {\n buf = stream.get();\n n.mulAdd(128, buf & 0x7F);\n } while (buf & 0x80);\n this.tagNumber = n.simplify();\n }\n }\n ASN1Tag.prototype.isUniversal = function () {\n return this.tagClass === 0x00;\n };\n ASN1Tag.prototype.isEOC = function () {\n return this.tagClass === 0x00 && this.tagNumber === 0x00;\n };\n return ASN1Tag;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/asn1.js?"); + + /***/ + }), /***/ "./lib/lib/asn1js/base64.js": - /*!**********************************!*\ - !*** ./lib/lib/asn1js/base64.js ***! - \**********************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Base64\": () => (/* binding */ Base64)\n/* harmony export */ });\n// Base64 JavaScript decoder\n// Copyright (c) 2008-2013 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar decoder;\nvar Base64 = {\n decode: function (a) {\n var i;\n if (decoder === undefined) {\n var b64 = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\n var ignore = \"= \\f\\n\\r\\t\\u00A0\\u2028\\u2029\";\n decoder = Object.create(null);\n for (i = 0; i < 64; ++i) {\n decoder[b64.charAt(i)] = i;\n }\n decoder['-'] = 62; //+\n decoder['_'] = 63; //-\n for (i = 0; i < ignore.length; ++i) {\n decoder[ignore.charAt(i)] = -1;\n }\n }\n var out = [];\n var bits = 0;\n var char_count = 0;\n for (i = 0; i < a.length; ++i) {\n var c = a.charAt(i);\n if (c == \"=\") {\n break;\n }\n c = decoder[c];\n if (c == -1) {\n continue;\n }\n if (c === undefined) {\n throw new Error(\"Illegal character at offset \" + i);\n }\n bits |= c;\n if (++char_count >= 4) {\n out[out.length] = (bits >> 16);\n out[out.length] = (bits >> 8) & 0xFF;\n out[out.length] = bits & 0xFF;\n bits = 0;\n char_count = 0;\n }\n else {\n bits <<= 6;\n }\n }\n switch (char_count) {\n case 1:\n throw new Error(\"Base64 encoding incomplete: at least 2 bits missing\");\n case 2:\n out[out.length] = (bits >> 10);\n break;\n case 3:\n out[out.length] = (bits >> 16);\n out[out.length] = (bits >> 8) & 0xFF;\n break;\n }\n return out;\n },\n re: /-----BEGIN [^-]+-----([A-Za-z0-9+\\/=\\s]+)-----END [^-]+-----|begin-base64[^\\n]+\\n([A-Za-z0-9+\\/=\\s]+)====/,\n unarmor: function (a) {\n var m = Base64.re.exec(a);\n if (m) {\n if (m[1]) {\n a = m[1];\n }\n else if (m[2]) {\n a = m[2];\n }\n else {\n throw new Error(\"RegExp out of sync\");\n }\n }\n return Base64.decode(a);\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/base64.js?"); - + /*!**********************************!*\ + !*** ./lib/lib/asn1js/base64.js ***! + \**********************************/ /***/ - }), + ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + + "use strict"; + eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Base64\": () => (/* binding */ Base64)\n/* harmony export */ });\n// Base64 JavaScript decoder\n// Copyright (c) 2008-2013 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar decoder;\nvar Base64 = {\n decode: function (a) {\n var i;\n if (decoder === undefined) {\n var b64 = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\n var ignore = \"= \\f\\n\\r\\t\\u00A0\\u2028\\u2029\";\n decoder = Object.create(null);\n for (i = 0; i < 64; ++i) {\n decoder[b64.charAt(i)] = i;\n }\n decoder['-'] = 62; //+\n decoder['_'] = 63; //-\n for (i = 0; i < ignore.length; ++i) {\n decoder[ignore.charAt(i)] = -1;\n }\n }\n var out = [];\n var bits = 0;\n var char_count = 0;\n for (i = 0; i < a.length; ++i) {\n var c = a.charAt(i);\n if (c == \"=\") {\n break;\n }\n c = decoder[c];\n if (c == -1) {\n continue;\n }\n if (c === undefined) {\n throw new Error(\"Illegal character at offset \" + i);\n }\n bits |= c;\n if (++char_count >= 4) {\n out[out.length] = (bits >> 16);\n out[out.length] = (bits >> 8) & 0xFF;\n out[out.length] = bits & 0xFF;\n bits = 0;\n char_count = 0;\n }\n else {\n bits <<= 6;\n }\n }\n switch (char_count) {\n case 1:\n throw new Error(\"Base64 encoding incomplete: at least 2 bits missing\");\n case 2:\n out[out.length] = (bits >> 10);\n break;\n case 3:\n out[out.length] = (bits >> 16);\n out[out.length] = (bits >> 8) & 0xFF;\n break;\n }\n return out;\n },\n re: /-----BEGIN [^-]+-----([A-Za-z0-9+\\/=\\s]+)-----END [^-]+-----|begin-base64[^\\n]+\\n([A-Za-z0-9+\\/=\\s]+)====/,\n unarmor: function (a) {\n var m = Base64.re.exec(a);\n if (m) {\n if (m[1]) {\n a = m[1];\n }\n else if (m[2]) {\n a = m[2];\n }\n else {\n throw new Error(\"RegExp out of sync\");\n }\n }\n return Base64.decode(a);\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/base64.js?"); + + /***/ + }), /***/ "./lib/lib/asn1js/hex.js": - /*!*******************************!*\ - !*** ./lib/lib/asn1js/hex.js ***! - \*******************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Hex\": () => (/* binding */ Hex)\n/* harmony export */ });\n// Hex JavaScript decoder\n// Copyright (c) 2008-2013 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar decoder;\nvar Hex = {\n decode: function (a) {\n var i;\n if (decoder === undefined) {\n var hex = \"0123456789ABCDEF\";\n var ignore = \" \\f\\n\\r\\t\\u00A0\\u2028\\u2029\";\n decoder = {};\n for (i = 0; i < 16; ++i) {\n decoder[hex.charAt(i)] = i;\n }\n hex = hex.toLowerCase();\n for (i = 10; i < 16; ++i) {\n decoder[hex.charAt(i)] = i;\n }\n for (i = 0; i < ignore.length; ++i) {\n decoder[ignore.charAt(i)] = -1;\n }\n }\n var out = [];\n var bits = 0;\n var char_count = 0;\n for (i = 0; i < a.length; ++i) {\n var c = a.charAt(i);\n if (c == \"=\") {\n break;\n }\n c = decoder[c];\n if (c == -1) {\n continue;\n }\n if (c === undefined) {\n throw new Error(\"Illegal character at offset \" + i);\n }\n bits |= c;\n if (++char_count >= 2) {\n out[out.length] = bits;\n bits = 0;\n char_count = 0;\n }\n else {\n bits <<= 4;\n }\n }\n if (char_count) {\n throw new Error(\"Hex encoding incomplete: 4 bits missing\");\n }\n return out;\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/hex.js?"); - + /*!*******************************!*\ + !*** ./lib/lib/asn1js/hex.js ***! + \*******************************/ /***/ - }), + ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + + "use strict"; + eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Hex\": () => (/* binding */ Hex)\n/* harmony export */ });\n// Hex JavaScript decoder\n// Copyright (c) 2008-2013 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar decoder;\nvar Hex = {\n decode: function (a) {\n var i;\n if (decoder === undefined) {\n var hex = \"0123456789ABCDEF\";\n var ignore = \" \\f\\n\\r\\t\\u00A0\\u2028\\u2029\";\n decoder = {};\n for (i = 0; i < 16; ++i) {\n decoder[hex.charAt(i)] = i;\n }\n hex = hex.toLowerCase();\n for (i = 10; i < 16; ++i) {\n decoder[hex.charAt(i)] = i;\n }\n for (i = 0; i < ignore.length; ++i) {\n decoder[ignore.charAt(i)] = -1;\n }\n }\n var out = [];\n var bits = 0;\n var char_count = 0;\n for (i = 0; i < a.length; ++i) {\n var c = a.charAt(i);\n if (c == \"=\") {\n break;\n }\n c = decoder[c];\n if (c == -1) {\n continue;\n }\n if (c === undefined) {\n throw new Error(\"Illegal character at offset \" + i);\n }\n bits |= c;\n if (++char_count >= 2) {\n out[out.length] = bits;\n bits = 0;\n char_count = 0;\n }\n else {\n bits <<= 4;\n }\n }\n if (char_count) {\n throw new Error(\"Hex encoding incomplete: 4 bits missing\");\n }\n return out;\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/hex.js?"); + + /***/ + }), /***/ "./lib/lib/asn1js/int10.js": - /*!*********************************!*\ - !*** ./lib/lib/asn1js/int10.js ***! - \*********************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Int10\": () => (/* binding */ Int10)\n/* harmony export */ });\n// Big integer base-10 printing library\n// Copyright (c) 2014 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar max = 10000000000000; // biggest integer that can still fit 2^53 when multiplied by 256\nvar Int10 = /** @class */ (function () {\n function Int10(value) {\n this.buf = [+value || 0];\n }\n Int10.prototype.mulAdd = function (m, c) {\n // assert(m <= 256)\n var b = this.buf;\n var l = b.length;\n var i;\n var t;\n for (i = 0; i < l; ++i) {\n t = b[i] * m + c;\n if (t < max) {\n c = 0;\n }\n else {\n c = 0 | (t / max);\n t -= c * max;\n }\n b[i] = t;\n }\n if (c > 0) {\n b[i] = c;\n }\n };\n Int10.prototype.sub = function (c) {\n // assert(m <= 256)\n var b = this.buf;\n var l = b.length;\n var i;\n var t;\n for (i = 0; i < l; ++i) {\n t = b[i] - c;\n if (t < 0) {\n t += max;\n c = 1;\n }\n else {\n c = 0;\n }\n b[i] = t;\n }\n while (b[b.length - 1] === 0) {\n b.pop();\n }\n };\n Int10.prototype.toString = function (base) {\n if ((base || 10) != 10) {\n throw new Error(\"only base 10 is supported\");\n }\n var b = this.buf;\n var s = b[b.length - 1].toString();\n for (var i = b.length - 2; i >= 0; --i) {\n s += (max + b[i]).toString().substring(1);\n }\n return s;\n };\n Int10.prototype.valueOf = function () {\n var b = this.buf;\n var v = 0;\n for (var i = b.length - 1; i >= 0; --i) {\n v = v * max + b[i];\n }\n return v;\n };\n Int10.prototype.simplify = function () {\n var b = this.buf;\n return (b.length == 1) ? b[0] : this;\n };\n return Int10;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/int10.js?"); - + /*!*********************************!*\ + !*** ./lib/lib/asn1js/int10.js ***! + \*********************************/ /***/ - }), + ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + + "use strict"; + eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Int10\": () => (/* binding */ Int10)\n/* harmony export */ });\n// Big integer base-10 printing library\n// Copyright (c) 2014 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar max = 10000000000000; // biggest integer that can still fit 2^53 when multiplied by 256\nvar Int10 = /** @class */ (function () {\n function Int10(value) {\n this.buf = [+value || 0];\n }\n Int10.prototype.mulAdd = function (m, c) {\n // assert(m <= 256)\n var b = this.buf;\n var l = b.length;\n var i;\n var t;\n for (i = 0; i < l; ++i) {\n t = b[i] * m + c;\n if (t < max) {\n c = 0;\n }\n else {\n c = 0 | (t / max);\n t -= c * max;\n }\n b[i] = t;\n }\n if (c > 0) {\n b[i] = c;\n }\n };\n Int10.prototype.sub = function (c) {\n // assert(m <= 256)\n var b = this.buf;\n var l = b.length;\n var i;\n var t;\n for (i = 0; i < l; ++i) {\n t = b[i] - c;\n if (t < 0) {\n t += max;\n c = 1;\n }\n else {\n c = 0;\n }\n b[i] = t;\n }\n while (b[b.length - 1] === 0) {\n b.pop();\n }\n };\n Int10.prototype.toString = function (base) {\n if ((base || 10) != 10) {\n throw new Error(\"only base 10 is supported\");\n }\n var b = this.buf;\n var s = b[b.length - 1].toString();\n for (var i = b.length - 2; i >= 0; --i) {\n s += (max + b[i]).toString().substring(1);\n }\n return s;\n };\n Int10.prototype.valueOf = function () {\n var b = this.buf;\n var v = 0;\n for (var i = b.length - 1; i >= 0; --i) {\n v = v * max + b[i];\n }\n return v;\n };\n Int10.prototype.simplify = function () {\n var b = this.buf;\n return (b.length == 1) ? b[0] : this;\n };\n return Int10;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/int10.js?"); + + /***/ + }), /***/ "./lib/lib/jsbn/base64.js": - /*!********************************!*\ - !*** ./lib/lib/jsbn/base64.js ***! - \********************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"b64toBA\": () => (/* binding */ b64toBA),\n/* harmony export */ \"b64tohex\": () => (/* binding */ b64tohex),\n/* harmony export */ \"hex2b64\": () => (/* binding */ hex2b64)\n/* harmony export */ });\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"./lib/lib/jsbn/util.js\");\n\nvar b64map = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\nvar b64pad = \"=\";\nfunction hex2b64(h) {\n var i;\n var c;\n var ret = \"\";\n for (i = 0; i + 3 <= h.length; i += 3) {\n c = parseInt(h.substring(i, i + 3), 16);\n ret += b64map.charAt(c >> 6) + b64map.charAt(c & 63);\n }\n if (i + 1 == h.length) {\n c = parseInt(h.substring(i, i + 1), 16);\n ret += b64map.charAt(c << 2);\n }\n else if (i + 2 == h.length) {\n c = parseInt(h.substring(i, i + 2), 16);\n ret += b64map.charAt(c >> 2) + b64map.charAt((c & 3) << 4);\n }\n while ((ret.length & 3) > 0) {\n ret += b64pad;\n }\n return ret;\n}\n// convert a base64 string to hex\nfunction b64tohex(s) {\n var ret = \"\";\n var i;\n var k = 0; // b64 state, 0-3\n var slop = 0;\n for (i = 0; i < s.length; ++i) {\n if (s.charAt(i) == b64pad) {\n break;\n }\n var v = b64map.indexOf(s.charAt(i));\n if (v < 0) {\n continue;\n }\n if (k == 0) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\n slop = v & 3;\n k = 1;\n }\n else if (k == 1) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\n slop = v & 0xf;\n k = 2;\n }\n else if (k == 2) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop);\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\n slop = v & 3;\n k = 3;\n }\n else {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v & 0xf);\n k = 0;\n }\n }\n if (k == 1) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop << 2);\n }\n return ret;\n}\n// convert a base64 string to a byte/number array\nfunction b64toBA(s) {\n // piggyback on b64tohex for now, optimize later\n var h = b64tohex(s);\n var i;\n var a = [];\n for (i = 0; 2 * i < h.length; ++i) {\n a[i] = parseInt(h.substring(2 * i, 2 * i + 2), 16);\n }\n return a;\n}\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/base64.js?"); - + /*!********************************!*\ + !*** ./lib/lib/jsbn/base64.js ***! + \********************************/ /***/ - }), + ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + + "use strict"; + eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"b64toBA\": () => (/* binding */ b64toBA),\n/* harmony export */ \"b64tohex\": () => (/* binding */ b64tohex),\n/* harmony export */ \"hex2b64\": () => (/* binding */ hex2b64)\n/* harmony export */ });\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"./lib/lib/jsbn/util.js\");\n\nvar b64map = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\nvar b64pad = \"=\";\nfunction hex2b64(h) {\n var i;\n var c;\n var ret = \"\";\n for (i = 0; i + 3 <= h.length; i += 3) {\n c = parseInt(h.substring(i, i + 3), 16);\n ret += b64map.charAt(c >> 6) + b64map.charAt(c & 63);\n }\n if (i + 1 == h.length) {\n c = parseInt(h.substring(i, i + 1), 16);\n ret += b64map.charAt(c << 2);\n }\n else if (i + 2 == h.length) {\n c = parseInt(h.substring(i, i + 2), 16);\n ret += b64map.charAt(c >> 2) + b64map.charAt((c & 3) << 4);\n }\n while ((ret.length & 3) > 0) {\n ret += b64pad;\n }\n return ret;\n}\n// convert a base64 string to hex\nfunction b64tohex(s) {\n var ret = \"\";\n var i;\n var k = 0; // b64 state, 0-3\n var slop = 0;\n for (i = 0; i < s.length; ++i) {\n if (s.charAt(i) == b64pad) {\n break;\n }\n var v = b64map.indexOf(s.charAt(i));\n if (v < 0) {\n continue;\n }\n if (k == 0) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\n slop = v & 3;\n k = 1;\n }\n else if (k == 1) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\n slop = v & 0xf;\n k = 2;\n }\n else if (k == 2) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop);\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\n slop = v & 3;\n k = 3;\n }\n else {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v & 0xf);\n k = 0;\n }\n }\n if (k == 1) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop << 2);\n }\n return ret;\n}\n// convert a base64 string to a byte/number array\nfunction b64toBA(s) {\n // piggyback on b64tohex for now, optimize later\n var h = b64tohex(s);\n var i;\n var a = [];\n for (i = 0; 2 * i < h.length; ++i) {\n a[i] = parseInt(h.substring(2 * i, 2 * i + 2), 16);\n }\n return a;\n}\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/base64.js?"); + + /***/ + }), /***/ "./lib/lib/jsbn/jsbn.js": - /*!******************************!*\ - !*** ./lib/lib/jsbn/jsbn.js ***! - \******************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"BigInteger\": () => (/* binding */ BigInteger),\n/* harmony export */ \"intAt\": () => (/* binding */ intAt),\n/* harmony export */ \"nbi\": () => (/* binding */ nbi),\n/* harmony export */ \"nbits\": () => (/* binding */ nbits),\n/* harmony export */ \"nbv\": () => (/* binding */ nbv),\n/* harmony export */ \"parseBigInt\": () => (/* binding */ parseBigInt)\n/* harmony export */ });\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"./lib/lib/jsbn/util.js\");\n// Copyright (c) 2005 Tom Wu\n// All Rights Reserved.\n// See \"LICENSE\" for details.\n// Basic JavaScript BN library - subset useful for RSA encryption.\n\n// Bits per digit\nvar dbits;\n// JavaScript engine analysis\nvar canary = 0xdeadbeefcafe;\nvar j_lm = ((canary & 0xffffff) == 0xefcafe);\n//#region\nvar lowprimes = [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];\nvar lplim = (1 << 26) / lowprimes[lowprimes.length - 1];\n//#endregion\n// (public) Constructor\nvar BigInteger = /** @class */ (function () {\n function BigInteger(a, b, c) {\n if (a != null) {\n if (\"number\" == typeof a) {\n this.fromNumber(a, b, c);\n }\n else if (b == null && \"string\" != typeof a) {\n this.fromString(a, 256);\n }\n else {\n this.fromString(a, b);\n }\n }\n }\n //#region PUBLIC\n // BigInteger.prototype.toString = bnToString;\n // (public) return string representation in given radix\n BigInteger.prototype.toString = function (b) {\n if (this.s < 0) {\n return \"-\" + this.negate().toString(b);\n }\n var k;\n if (b == 16) {\n k = 4;\n }\n else if (b == 8) {\n k = 3;\n }\n else if (b == 2) {\n k = 1;\n }\n else if (b == 32) {\n k = 5;\n }\n else if (b == 4) {\n k = 2;\n }\n else {\n return this.toRadix(b);\n }\n var km = (1 << k) - 1;\n var d;\n var m = false;\n var r = \"\";\n var i = this.t;\n var p = this.DB - (i * this.DB) % k;\n if (i-- > 0) {\n if (p < this.DB && (d = this[i] >> p) > 0) {\n m = true;\n r = (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\n }\n while (i >= 0) {\n if (p < k) {\n d = (this[i] & ((1 << p) - 1)) << (k - p);\n d |= this[--i] >> (p += this.DB - k);\n }\n else {\n d = (this[i] >> (p -= k)) & km;\n if (p <= 0) {\n p += this.DB;\n --i;\n }\n }\n if (d > 0) {\n m = true;\n }\n if (m) {\n r += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\n }\n }\n }\n return m ? r : \"0\";\n };\n // BigInteger.prototype.negate = bnNegate;\n // (public) -this\n BigInteger.prototype.negate = function () {\n var r = nbi();\n BigInteger.ZERO.subTo(this, r);\n return r;\n };\n // BigInteger.prototype.abs = bnAbs;\n // (public) |this|\n BigInteger.prototype.abs = function () {\n return (this.s < 0) ? this.negate() : this;\n };\n // BigInteger.prototype.compareTo = bnCompareTo;\n // (public) return + if this > a, - if this < a, 0 if equal\n BigInteger.prototype.compareTo = function (a) {\n var r = this.s - a.s;\n if (r != 0) {\n return r;\n }\n var i = this.t;\n r = i - a.t;\n if (r != 0) {\n return (this.s < 0) ? -r : r;\n }\n while (--i >= 0) {\n if ((r = this[i] - a[i]) != 0) {\n return r;\n }\n }\n return 0;\n };\n // BigInteger.prototype.bitLength = bnBitLength;\n // (public) return the number of bits in \"this\"\n BigInteger.prototype.bitLength = function () {\n if (this.t <= 0) {\n return 0;\n }\n return this.DB * (this.t - 1) + nbits(this[this.t - 1] ^ (this.s & this.DM));\n };\n // BigInteger.prototype.mod = bnMod;\n // (public) this mod a\n BigInteger.prototype.mod = function (a) {\n var r = nbi();\n this.abs().divRemTo(a, null, r);\n if (this.s < 0 && r.compareTo(BigInteger.ZERO) > 0) {\n a.subTo(r, r);\n }\n return r;\n };\n // BigInteger.prototype.modPowInt = bnModPowInt;\n // (public) this^e % m, 0 <= e < 2^32\n BigInteger.prototype.modPowInt = function (e, m) {\n var z;\n if (e < 256 || m.isEven()) {\n z = new Classic(m);\n }\n else {\n z = new Montgomery(m);\n }\n return this.exp(e, z);\n };\n // BigInteger.prototype.clone = bnClone;\n // (public)\n BigInteger.prototype.clone = function () {\n var r = nbi();\n this.copyTo(r);\n return r;\n };\n // BigInteger.prototype.intValue = bnIntValue;\n // (public) return value as integer\n BigInteger.prototype.intValue = function () {\n if (this.s < 0) {\n if (this.t == 1) {\n return this[0] - this.DV;\n }\n else if (this.t == 0) {\n return -1;\n }\n }\n else if (this.t == 1) {\n return this[0];\n }\n else if (this.t == 0) {\n return 0;\n }\n // assumes 16 < DB < 32\n return ((this[1] & ((1 << (32 - this.DB)) - 1)) << this.DB) | this[0];\n };\n // BigInteger.prototype.byteValue = bnByteValue;\n // (public) return value as byte\n BigInteger.prototype.byteValue = function () {\n return (this.t == 0) ? this.s : (this[0] << 24) >> 24;\n };\n // BigInteger.prototype.shortValue = bnShortValue;\n // (public) return value as short (assumes DB>=16)\n BigInteger.prototype.shortValue = function () {\n return (this.t == 0) ? this.s : (this[0] << 16) >> 16;\n };\n // BigInteger.prototype.signum = bnSigNum;\n // (public) 0 if this == 0, 1 if this > 0\n BigInteger.prototype.signum = function () {\n if (this.s < 0) {\n return -1;\n }\n else if (this.t <= 0 || (this.t == 1 && this[0] <= 0)) {\n return 0;\n }\n else {\n return 1;\n }\n };\n // BigInteger.prototype.toByteArray = bnToByteArray;\n // (public) convert to bigendian byte array\n BigInteger.prototype.toByteArray = function () {\n var i = this.t;\n var r = [];\n r[0] = this.s;\n var p = this.DB - (i * this.DB) % 8;\n var d;\n var k = 0;\n if (i-- > 0) {\n if (p < this.DB && (d = this[i] >> p) != (this.s & this.DM) >> p) {\n r[k++] = d | (this.s << (this.DB - p));\n }\n while (i >= 0) {\n if (p < 8) {\n d = (this[i] & ((1 << p) - 1)) << (8 - p);\n d |= this[--i] >> (p += this.DB - 8);\n }\n else {\n d = (this[i] >> (p -= 8)) & 0xff;\n if (p <= 0) {\n p += this.DB;\n --i;\n }\n }\n if ((d & 0x80) != 0) {\n d |= -256;\n }\n if (k == 0 && (this.s & 0x80) != (d & 0x80)) {\n ++k;\n }\n if (k > 0 || d != this.s) {\n r[k++] = d;\n }\n }\n }\n return r;\n };\n // BigInteger.prototype.equals = bnEquals;\n BigInteger.prototype.equals = function (a) {\n return (this.compareTo(a) == 0);\n };\n // BigInteger.prototype.min = bnMin;\n BigInteger.prototype.min = function (a) {\n return (this.compareTo(a) < 0) ? this : a;\n };\n // BigInteger.prototype.max = bnMax;\n BigInteger.prototype.max = function (a) {\n return (this.compareTo(a) > 0) ? this : a;\n };\n // BigInteger.prototype.and = bnAnd;\n BigInteger.prototype.and = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_and, r);\n return r;\n };\n // BigInteger.prototype.or = bnOr;\n BigInteger.prototype.or = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_or, r);\n return r;\n };\n // BigInteger.prototype.xor = bnXor;\n BigInteger.prototype.xor = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_xor, r);\n return r;\n };\n // BigInteger.prototype.andNot = bnAndNot;\n BigInteger.prototype.andNot = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_andnot, r);\n return r;\n };\n // BigInteger.prototype.not = bnNot;\n // (public) ~this\n BigInteger.prototype.not = function () {\n var r = nbi();\n for (var i = 0; i < this.t; ++i) {\n r[i] = this.DM & ~this[i];\n }\n r.t = this.t;\n r.s = ~this.s;\n return r;\n };\n // BigInteger.prototype.shiftLeft = bnShiftLeft;\n // (public) this << n\n BigInteger.prototype.shiftLeft = function (n) {\n var r = nbi();\n if (n < 0) {\n this.rShiftTo(-n, r);\n }\n else {\n this.lShiftTo(n, r);\n }\n return r;\n };\n // BigInteger.prototype.shiftRight = bnShiftRight;\n // (public) this >> n\n BigInteger.prototype.shiftRight = function (n) {\n var r = nbi();\n if (n < 0) {\n this.lShiftTo(-n, r);\n }\n else {\n this.rShiftTo(n, r);\n }\n return r;\n };\n // BigInteger.prototype.getLowestSetBit = bnGetLowestSetBit;\n // (public) returns index of lowest 1-bit (or -1 if none)\n BigInteger.prototype.getLowestSetBit = function () {\n for (var i = 0; i < this.t; ++i) {\n if (this[i] != 0) {\n return i * this.DB + (0,_util__WEBPACK_IMPORTED_MODULE_0__.lbit)(this[i]);\n }\n }\n if (this.s < 0) {\n return this.t * this.DB;\n }\n return -1;\n };\n // BigInteger.prototype.bitCount = bnBitCount;\n // (public) return number of set bits\n BigInteger.prototype.bitCount = function () {\n var r = 0;\n var x = this.s & this.DM;\n for (var i = 0; i < this.t; ++i) {\n r += (0,_util__WEBPACK_IMPORTED_MODULE_0__.cbit)(this[i] ^ x);\n }\n return r;\n };\n // BigInteger.prototype.testBit = bnTestBit;\n // (public) true iff nth bit is set\n BigInteger.prototype.testBit = function (n) {\n var j = Math.floor(n / this.DB);\n if (j >= this.t) {\n return (this.s != 0);\n }\n return ((this[j] & (1 << (n % this.DB))) != 0);\n };\n // BigInteger.prototype.setBit = bnSetBit;\n // (public) this | (1< 1) {\n var g2 = nbi();\n z.sqrTo(g[1], g2);\n while (n <= km) {\n g[n] = nbi();\n z.mulTo(g2, g[n - 2], g[n]);\n n += 2;\n }\n }\n var j = e.t - 1;\n var w;\n var is1 = true;\n var r2 = nbi();\n var t;\n i = nbits(e[j]) - 1;\n while (j >= 0) {\n if (i >= k1) {\n w = (e[j] >> (i - k1)) & km;\n }\n else {\n w = (e[j] & ((1 << (i + 1)) - 1)) << (k1 - i);\n if (j > 0) {\n w |= e[j - 1] >> (this.DB + i - k1);\n }\n }\n n = k;\n while ((w & 1) == 0) {\n w >>= 1;\n --n;\n }\n if ((i -= n) < 0) {\n i += this.DB;\n --j;\n }\n if (is1) { // ret == 1, don't bother squaring or multiplying it\n g[w].copyTo(r);\n is1 = false;\n }\n else {\n while (n > 1) {\n z.sqrTo(r, r2);\n z.sqrTo(r2, r);\n n -= 2;\n }\n if (n > 0) {\n z.sqrTo(r, r2);\n }\n else {\n t = r;\n r = r2;\n r2 = t;\n }\n z.mulTo(r2, g[w], r);\n }\n while (j >= 0 && (e[j] & (1 << i)) == 0) {\n z.sqrTo(r, r2);\n t = r;\n r = r2;\n r2 = t;\n if (--i < 0) {\n i = this.DB - 1;\n --j;\n }\n }\n }\n return z.revert(r);\n };\n // BigInteger.prototype.modInverse = bnModInverse;\n // (public) 1/this % m (HAC 14.61)\n BigInteger.prototype.modInverse = function (m) {\n var ac = m.isEven();\n if ((this.isEven() && ac) || m.signum() == 0) {\n return BigInteger.ZERO;\n }\n var u = m.clone();\n var v = this.clone();\n var a = nbv(1);\n var b = nbv(0);\n var c = nbv(0);\n var d = nbv(1);\n while (u.signum() != 0) {\n while (u.isEven()) {\n u.rShiftTo(1, u);\n if (ac) {\n if (!a.isEven() || !b.isEven()) {\n a.addTo(this, a);\n b.subTo(m, b);\n }\n a.rShiftTo(1, a);\n }\n else if (!b.isEven()) {\n b.subTo(m, b);\n }\n b.rShiftTo(1, b);\n }\n while (v.isEven()) {\n v.rShiftTo(1, v);\n if (ac) {\n if (!c.isEven() || !d.isEven()) {\n c.addTo(this, c);\n d.subTo(m, d);\n }\n c.rShiftTo(1, c);\n }\n else if (!d.isEven()) {\n d.subTo(m, d);\n }\n d.rShiftTo(1, d);\n }\n if (u.compareTo(v) >= 0) {\n u.subTo(v, u);\n if (ac) {\n a.subTo(c, a);\n }\n b.subTo(d, b);\n }\n else {\n v.subTo(u, v);\n if (ac) {\n c.subTo(a, c);\n }\n d.subTo(b, d);\n }\n }\n if (v.compareTo(BigInteger.ONE) != 0) {\n return BigInteger.ZERO;\n }\n if (d.compareTo(m) >= 0) {\n return d.subtract(m);\n }\n if (d.signum() < 0) {\n d.addTo(m, d);\n }\n else {\n return d;\n }\n if (d.signum() < 0) {\n return d.add(m);\n }\n else {\n return d;\n }\n };\n // BigInteger.prototype.pow = bnPow;\n // (public) this^e\n BigInteger.prototype.pow = function (e) {\n return this.exp(e, new NullExp());\n };\n // BigInteger.prototype.gcd = bnGCD;\n // (public) gcd(this,a) (HAC 14.54)\n BigInteger.prototype.gcd = function (a) {\n var x = (this.s < 0) ? this.negate() : this.clone();\n var y = (a.s < 0) ? a.negate() : a.clone();\n if (x.compareTo(y) < 0) {\n var t = x;\n x = y;\n y = t;\n }\n var i = x.getLowestSetBit();\n var g = y.getLowestSetBit();\n if (g < 0) {\n return x;\n }\n if (i < g) {\n g = i;\n }\n if (g > 0) {\n x.rShiftTo(g, x);\n y.rShiftTo(g, y);\n }\n while (x.signum() > 0) {\n if ((i = x.getLowestSetBit()) > 0) {\n x.rShiftTo(i, x);\n }\n if ((i = y.getLowestSetBit()) > 0) {\n y.rShiftTo(i, y);\n }\n if (x.compareTo(y) >= 0) {\n x.subTo(y, x);\n x.rShiftTo(1, x);\n }\n else {\n y.subTo(x, y);\n y.rShiftTo(1, y);\n }\n }\n if (g > 0) {\n y.lShiftTo(g, y);\n }\n return y;\n };\n // BigInteger.prototype.isProbablePrime = bnIsProbablePrime;\n // (public) test primality with certainty >= 1-.5^t\n BigInteger.prototype.isProbablePrime = function (t) {\n var i;\n var x = this.abs();\n if (x.t == 1 && x[0] <= lowprimes[lowprimes.length - 1]) {\n for (i = 0; i < lowprimes.length; ++i) {\n if (x[0] == lowprimes[i]) {\n return true;\n }\n }\n return false;\n }\n if (x.isEven()) {\n return false;\n }\n i = 1;\n while (i < lowprimes.length) {\n var m = lowprimes[i];\n var j = i + 1;\n while (j < lowprimes.length && m < lplim) {\n m *= lowprimes[j++];\n }\n m = x.modInt(m);\n while (i < j) {\n if (m % lowprimes[i++] == 0) {\n return false;\n }\n }\n }\n return x.millerRabin(t);\n };\n //#endregion PUBLIC\n //#region PROTECTED\n // BigInteger.prototype.copyTo = bnpCopyTo;\n // (protected) copy this to r\n BigInteger.prototype.copyTo = function (r) {\n for (var i = this.t - 1; i >= 0; --i) {\n r[i] = this[i];\n }\n r.t = this.t;\n r.s = this.s;\n };\n // BigInteger.prototype.fromInt = bnpFromInt;\n // (protected) set from integer value x, -DV <= x < DV\n BigInteger.prototype.fromInt = function (x) {\n this.t = 1;\n this.s = (x < 0) ? -1 : 0;\n if (x > 0) {\n this[0] = x;\n }\n else if (x < -1) {\n this[0] = x + this.DV;\n }\n else {\n this.t = 0;\n }\n };\n // BigInteger.prototype.fromString = bnpFromString;\n // (protected) set from string and radix\n BigInteger.prototype.fromString = function (s, b) {\n var k;\n if (b == 16) {\n k = 4;\n }\n else if (b == 8) {\n k = 3;\n }\n else if (b == 256) {\n k = 8;\n /* byte array */\n }\n else if (b == 2) {\n k = 1;\n }\n else if (b == 32) {\n k = 5;\n }\n else if (b == 4) {\n k = 2;\n }\n else {\n this.fromRadix(s, b);\n return;\n }\n this.t = 0;\n this.s = 0;\n var i = s.length;\n var mi = false;\n var sh = 0;\n while (--i >= 0) {\n var x = (k == 8) ? (+s[i]) & 0xff : intAt(s, i);\n if (x < 0) {\n if (s.charAt(i) == \"-\") {\n mi = true;\n }\n continue;\n }\n mi = false;\n if (sh == 0) {\n this[this.t++] = x;\n }\n else if (sh + k > this.DB) {\n this[this.t - 1] |= (x & ((1 << (this.DB - sh)) - 1)) << sh;\n this[this.t++] = (x >> (this.DB - sh));\n }\n else {\n this[this.t - 1] |= x << sh;\n }\n sh += k;\n if (sh >= this.DB) {\n sh -= this.DB;\n }\n }\n if (k == 8 && ((+s[0]) & 0x80) != 0) {\n this.s = -1;\n if (sh > 0) {\n this[this.t - 1] |= ((1 << (this.DB - sh)) - 1) << sh;\n }\n }\n this.clamp();\n if (mi) {\n BigInteger.ZERO.subTo(this, this);\n }\n };\n // BigInteger.prototype.clamp = bnpClamp;\n // (protected) clamp off excess high words\n BigInteger.prototype.clamp = function () {\n var c = this.s & this.DM;\n while (this.t > 0 && this[this.t - 1] == c) {\n --this.t;\n }\n };\n // BigInteger.prototype.dlShiftTo = bnpDLShiftTo;\n // (protected) r = this << n*DB\n BigInteger.prototype.dlShiftTo = function (n, r) {\n var i;\n for (i = this.t - 1; i >= 0; --i) {\n r[i + n] = this[i];\n }\n for (i = n - 1; i >= 0; --i) {\n r[i] = 0;\n }\n r.t = this.t + n;\n r.s = this.s;\n };\n // BigInteger.prototype.drShiftTo = bnpDRShiftTo;\n // (protected) r = this >> n*DB\n BigInteger.prototype.drShiftTo = function (n, r) {\n for (var i = n; i < this.t; ++i) {\n r[i - n] = this[i];\n }\n r.t = Math.max(this.t - n, 0);\n r.s = this.s;\n };\n // BigInteger.prototype.lShiftTo = bnpLShiftTo;\n // (protected) r = this << n\n BigInteger.prototype.lShiftTo = function (n, r) {\n var bs = n % this.DB;\n var cbs = this.DB - bs;\n var bm = (1 << cbs) - 1;\n var ds = Math.floor(n / this.DB);\n var c = (this.s << bs) & this.DM;\n for (var i = this.t - 1; i >= 0; --i) {\n r[i + ds + 1] = (this[i] >> cbs) | c;\n c = (this[i] & bm) << bs;\n }\n for (var i = ds - 1; i >= 0; --i) {\n r[i] = 0;\n }\n r[ds] = c;\n r.t = this.t + ds + 1;\n r.s = this.s;\n r.clamp();\n };\n // BigInteger.prototype.rShiftTo = bnpRShiftTo;\n // (protected) r = this >> n\n BigInteger.prototype.rShiftTo = function (n, r) {\n r.s = this.s;\n var ds = Math.floor(n / this.DB);\n if (ds >= this.t) {\n r.t = 0;\n return;\n }\n var bs = n % this.DB;\n var cbs = this.DB - bs;\n var bm = (1 << bs) - 1;\n r[0] = this[ds] >> bs;\n for (var i = ds + 1; i < this.t; ++i) {\n r[i - ds - 1] |= (this[i] & bm) << cbs;\n r[i - ds] = this[i] >> bs;\n }\n if (bs > 0) {\n r[this.t - ds - 1] |= (this.s & bm) << cbs;\n }\n r.t = this.t - ds;\n r.clamp();\n };\n // BigInteger.prototype.subTo = bnpSubTo;\n // (protected) r = this - a\n BigInteger.prototype.subTo = function (a, r) {\n var i = 0;\n var c = 0;\n var m = Math.min(a.t, this.t);\n while (i < m) {\n c += this[i] - a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n if (a.t < this.t) {\n c -= a.s;\n while (i < this.t) {\n c += this[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += this.s;\n }\n else {\n c += this.s;\n while (i < a.t) {\n c -= a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c -= a.s;\n }\n r.s = (c < 0) ? -1 : 0;\n if (c < -1) {\n r[i++] = this.DV + c;\n }\n else if (c > 0) {\n r[i++] = c;\n }\n r.t = i;\n r.clamp();\n };\n // BigInteger.prototype.multiplyTo = bnpMultiplyTo;\n // (protected) r = this * a, r != this,a (HAC 14.12)\n // \"this\" should be the larger one if appropriate.\n BigInteger.prototype.multiplyTo = function (a, r) {\n var x = this.abs();\n var y = a.abs();\n var i = x.t;\n r.t = i + y.t;\n while (--i >= 0) {\n r[i] = 0;\n }\n for (i = 0; i < y.t; ++i) {\n r[i + x.t] = x.am(0, y[i], r, i, 0, x.t);\n }\n r.s = 0;\n r.clamp();\n if (this.s != a.s) {\n BigInteger.ZERO.subTo(r, r);\n }\n };\n // BigInteger.prototype.squareTo = bnpSquareTo;\n // (protected) r = this^2, r != this (HAC 14.16)\n BigInteger.prototype.squareTo = function (r) {\n var x = this.abs();\n var i = r.t = 2 * x.t;\n while (--i >= 0) {\n r[i] = 0;\n }\n for (i = 0; i < x.t - 1; ++i) {\n var c = x.am(i, x[i], r, 2 * i, 0, 1);\n if ((r[i + x.t] += x.am(i + 1, 2 * x[i], r, 2 * i + 1, c, x.t - i - 1)) >= x.DV) {\n r[i + x.t] -= x.DV;\n r[i + x.t + 1] = 1;\n }\n }\n if (r.t > 0) {\n r[r.t - 1] += x.am(i, x[i], r, 2 * i, 0, 1);\n }\n r.s = 0;\n r.clamp();\n };\n // BigInteger.prototype.divRemTo = bnpDivRemTo;\n // (protected) divide this by m, quotient and remainder to q, r (HAC 14.20)\n // r != q, this != m. q or r may be null.\n BigInteger.prototype.divRemTo = function (m, q, r) {\n var pm = m.abs();\n if (pm.t <= 0) {\n return;\n }\n var pt = this.abs();\n if (pt.t < pm.t) {\n if (q != null) {\n q.fromInt(0);\n }\n if (r != null) {\n this.copyTo(r);\n }\n return;\n }\n if (r == null) {\n r = nbi();\n }\n var y = nbi();\n var ts = this.s;\n var ms = m.s;\n var nsh = this.DB - nbits(pm[pm.t - 1]); // normalize modulus\n if (nsh > 0) {\n pm.lShiftTo(nsh, y);\n pt.lShiftTo(nsh, r);\n }\n else {\n pm.copyTo(y);\n pt.copyTo(r);\n }\n var ys = y.t;\n var y0 = y[ys - 1];\n if (y0 == 0) {\n return;\n }\n var yt = y0 * (1 << this.F1) + ((ys > 1) ? y[ys - 2] >> this.F2 : 0);\n var d1 = this.FV / yt;\n var d2 = (1 << this.F1) / yt;\n var e = 1 << this.F2;\n var i = r.t;\n var j = i - ys;\n var t = (q == null) ? nbi() : q;\n y.dlShiftTo(j, t);\n if (r.compareTo(t) >= 0) {\n r[r.t++] = 1;\n r.subTo(t, r);\n }\n BigInteger.ONE.dlShiftTo(ys, t);\n t.subTo(y, y); // \"negative\" y so we can replace sub with am later\n while (y.t < ys) {\n y[y.t++] = 0;\n }\n while (--j >= 0) {\n // Estimate quotient digit\n var qd = (r[--i] == y0) ? this.DM : Math.floor(r[i] * d1 + (r[i - 1] + e) * d2);\n if ((r[i] += y.am(0, qd, r, j, 0, ys)) < qd) { // Try it out\n y.dlShiftTo(j, t);\n r.subTo(t, r);\n while (r[i] < --qd) {\n r.subTo(t, r);\n }\n }\n }\n if (q != null) {\n r.drShiftTo(ys, q);\n if (ts != ms) {\n BigInteger.ZERO.subTo(q, q);\n }\n }\n r.t = ys;\n r.clamp();\n if (nsh > 0) {\n r.rShiftTo(nsh, r);\n } // Denormalize remainder\n if (ts < 0) {\n BigInteger.ZERO.subTo(r, r);\n }\n };\n // BigInteger.prototype.invDigit = bnpInvDigit;\n // (protected) return \"-1/this % 2^DB\"; useful for Mont. reduction\n // justification:\n // xy == 1 (mod m)\n // xy = 1+km\n // xy(2-xy) = (1+km)(1-km)\n // x[y(2-xy)] = 1-k^2m^2\n // x[y(2-xy)] == 1 (mod m^2)\n // if y is 1/x mod m, then y(2-xy) is 1/x mod m^2\n // should reduce x and y(2-xy) by m^2 at each step to keep size bounded.\n // JS multiply \"overflows\" differently from C/C++, so care is needed here.\n BigInteger.prototype.invDigit = function () {\n if (this.t < 1) {\n return 0;\n }\n var x = this[0];\n if ((x & 1) == 0) {\n return 0;\n }\n var y = x & 3; // y == 1/x mod 2^2\n y = (y * (2 - (x & 0xf) * y)) & 0xf; // y == 1/x mod 2^4\n y = (y * (2 - (x & 0xff) * y)) & 0xff; // y == 1/x mod 2^8\n y = (y * (2 - (((x & 0xffff) * y) & 0xffff))) & 0xffff; // y == 1/x mod 2^16\n // last step - calculate inverse mod DV directly;\n // assumes 16 < DB <= 32 and assumes ability to handle 48-bit ints\n y = (y * (2 - x * y % this.DV)) % this.DV; // y == 1/x mod 2^dbits\n // we really want the negative inverse, and -DV < y < DV\n return (y > 0) ? this.DV - y : -y;\n };\n // BigInteger.prototype.isEven = bnpIsEven;\n // (protected) true iff this is even\n BigInteger.prototype.isEven = function () {\n return ((this.t > 0) ? (this[0] & 1) : this.s) == 0;\n };\n // BigInteger.prototype.exp = bnpExp;\n // (protected) this^e, e < 2^32, doing sqr and mul with \"r\" (HAC 14.79)\n BigInteger.prototype.exp = function (e, z) {\n if (e > 0xffffffff || e < 1) {\n return BigInteger.ONE;\n }\n var r = nbi();\n var r2 = nbi();\n var g = z.convert(this);\n var i = nbits(e) - 1;\n g.copyTo(r);\n while (--i >= 0) {\n z.sqrTo(r, r2);\n if ((e & (1 << i)) > 0) {\n z.mulTo(r2, g, r);\n }\n else {\n var t = r;\n r = r2;\n r2 = t;\n }\n }\n return z.revert(r);\n };\n // BigInteger.prototype.chunkSize = bnpChunkSize;\n // (protected) return x s.t. r^x < DV\n BigInteger.prototype.chunkSize = function (r) {\n return Math.floor(Math.LN2 * this.DB / Math.log(r));\n };\n // BigInteger.prototype.toRadix = bnpToRadix;\n // (protected) convert to radix string\n BigInteger.prototype.toRadix = function (b) {\n if (b == null) {\n b = 10;\n }\n if (this.signum() == 0 || b < 2 || b > 36) {\n return \"0\";\n }\n var cs = this.chunkSize(b);\n var a = Math.pow(b, cs);\n var d = nbv(a);\n var y = nbi();\n var z = nbi();\n var r = \"\";\n this.divRemTo(d, y, z);\n while (y.signum() > 0) {\n r = (a + z.intValue()).toString(b).substr(1) + r;\n y.divRemTo(d, y, z);\n }\n return z.intValue().toString(b) + r;\n };\n // BigInteger.prototype.fromRadix = bnpFromRadix;\n // (protected) convert from radix string\n BigInteger.prototype.fromRadix = function (s, b) {\n this.fromInt(0);\n if (b == null) {\n b = 10;\n }\n var cs = this.chunkSize(b);\n var d = Math.pow(b, cs);\n var mi = false;\n var j = 0;\n var w = 0;\n for (var i = 0; i < s.length; ++i) {\n var x = intAt(s, i);\n if (x < 0) {\n if (s.charAt(i) == \"-\" && this.signum() == 0) {\n mi = true;\n }\n continue;\n }\n w = b * w + x;\n if (++j >= cs) {\n this.dMultiply(d);\n this.dAddOffset(w, 0);\n j = 0;\n w = 0;\n }\n }\n if (j > 0) {\n this.dMultiply(Math.pow(b, j));\n this.dAddOffset(w, 0);\n }\n if (mi) {\n BigInteger.ZERO.subTo(this, this);\n }\n };\n // BigInteger.prototype.fromNumber = bnpFromNumber;\n // (protected) alternate constructor\n BigInteger.prototype.fromNumber = function (a, b, c) {\n if (\"number\" == typeof b) {\n // new BigInteger(int,int,RNG)\n if (a < 2) {\n this.fromInt(1);\n }\n else {\n this.fromNumber(a, c);\n if (!this.testBit(a - 1)) {\n // force MSB set\n this.bitwiseTo(BigInteger.ONE.shiftLeft(a - 1), _util__WEBPACK_IMPORTED_MODULE_0__.op_or, this);\n }\n if (this.isEven()) {\n this.dAddOffset(1, 0);\n } // force odd\n while (!this.isProbablePrime(b)) {\n this.dAddOffset(2, 0);\n if (this.bitLength() > a) {\n this.subTo(BigInteger.ONE.shiftLeft(a - 1), this);\n }\n }\n }\n }\n else {\n // new BigInteger(int,RNG)\n var x = [];\n var t = a & 7;\n x.length = (a >> 3) + 1;\n b.nextBytes(x);\n if (t > 0) {\n x[0] &= ((1 << t) - 1);\n }\n else {\n x[0] = 0;\n }\n this.fromString(x, 256);\n }\n };\n // BigInteger.prototype.bitwiseTo = bnpBitwiseTo;\n // (protected) r = this op a (bitwise)\n BigInteger.prototype.bitwiseTo = function (a, op, r) {\n var i;\n var f;\n var m = Math.min(a.t, this.t);\n for (i = 0; i < m; ++i) {\n r[i] = op(this[i], a[i]);\n }\n if (a.t < this.t) {\n f = a.s & this.DM;\n for (i = m; i < this.t; ++i) {\n r[i] = op(this[i], f);\n }\n r.t = this.t;\n }\n else {\n f = this.s & this.DM;\n for (i = m; i < a.t; ++i) {\n r[i] = op(f, a[i]);\n }\n r.t = a.t;\n }\n r.s = op(this.s, a.s);\n r.clamp();\n };\n // BigInteger.prototype.changeBit = bnpChangeBit;\n // (protected) this op (1<>= this.DB;\n }\n if (a.t < this.t) {\n c += a.s;\n while (i < this.t) {\n c += this[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += this.s;\n }\n else {\n c += this.s;\n while (i < a.t) {\n c += a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += a.s;\n }\n r.s = (c < 0) ? -1 : 0;\n if (c > 0) {\n r[i++] = c;\n }\n else if (c < -1) {\n r[i++] = this.DV + c;\n }\n r.t = i;\n r.clamp();\n };\n // BigInteger.prototype.dMultiply = bnpDMultiply;\n // (protected) this *= n, this >= 0, 1 < n < DV\n BigInteger.prototype.dMultiply = function (n) {\n this[this.t] = this.am(0, n - 1, this, 0, 0, this.t);\n ++this.t;\n this.clamp();\n };\n // BigInteger.prototype.dAddOffset = bnpDAddOffset;\n // (protected) this += n << w words, this >= 0\n BigInteger.prototype.dAddOffset = function (n, w) {\n if (n == 0) {\n return;\n }\n while (this.t <= w) {\n this[this.t++] = 0;\n }\n this[w] += n;\n while (this[w] >= this.DV) {\n this[w] -= this.DV;\n if (++w >= this.t) {\n this[this.t++] = 0;\n }\n ++this[w];\n }\n };\n // BigInteger.prototype.multiplyLowerTo = bnpMultiplyLowerTo;\n // (protected) r = lower n words of \"this * a\", a.t <= n\n // \"this\" should be the larger one if appropriate.\n BigInteger.prototype.multiplyLowerTo = function (a, n, r) {\n var i = Math.min(this.t + a.t, n);\n r.s = 0; // assumes a,this >= 0\n r.t = i;\n while (i > 0) {\n r[--i] = 0;\n }\n for (var j = r.t - this.t; i < j; ++i) {\n r[i + this.t] = this.am(0, a[i], r, i, 0, this.t);\n }\n for (var j = Math.min(a.t, n); i < j; ++i) {\n this.am(0, a[i], r, i, 0, n - i);\n }\n r.clamp();\n };\n // BigInteger.prototype.multiplyUpperTo = bnpMultiplyUpperTo;\n // (protected) r = \"this * a\" without lower n words, n > 0\n // \"this\" should be the larger one if appropriate.\n BigInteger.prototype.multiplyUpperTo = function (a, n, r) {\n --n;\n var i = r.t = this.t + a.t - n;\n r.s = 0; // assumes a,this >= 0\n while (--i >= 0) {\n r[i] = 0;\n }\n for (i = Math.max(n - this.t, 0); i < a.t; ++i) {\n r[this.t + i - n] = this.am(n - i, a[i], r, 0, 0, this.t + i - n);\n }\n r.clamp();\n r.drShiftTo(1, r);\n };\n // BigInteger.prototype.modInt = bnpModInt;\n // (protected) this % n, n < 2^26\n BigInteger.prototype.modInt = function (n) {\n if (n <= 0) {\n return 0;\n }\n var d = this.DV % n;\n var r = (this.s < 0) ? n - 1 : 0;\n if (this.t > 0) {\n if (d == 0) {\n r = this[0] % n;\n }\n else {\n for (var i = this.t - 1; i >= 0; --i) {\n r = (d * r + this[i]) % n;\n }\n }\n }\n return r;\n };\n // BigInteger.prototype.millerRabin = bnpMillerRabin;\n // (protected) true if probably prime (HAC 4.24, Miller-Rabin)\n BigInteger.prototype.millerRabin = function (t) {\n var n1 = this.subtract(BigInteger.ONE);\n var k = n1.getLowestSetBit();\n if (k <= 0) {\n return false;\n }\n var r = n1.shiftRight(k);\n t = (t + 1) >> 1;\n if (t > lowprimes.length) {\n t = lowprimes.length;\n }\n var a = nbi();\n for (var i = 0; i < t; ++i) {\n // Pick bases at random, instead of starting at 2\n a.fromInt(lowprimes[Math.floor(Math.random() * lowprimes.length)]);\n var y = a.modPow(r, this);\n if (y.compareTo(BigInteger.ONE) != 0 && y.compareTo(n1) != 0) {\n var j = 1;\n while (j++ < k && y.compareTo(n1) != 0) {\n y = y.modPowInt(2, this);\n if (y.compareTo(BigInteger.ONE) == 0) {\n return false;\n }\n }\n if (y.compareTo(n1) != 0) {\n return false;\n }\n }\n }\n return true;\n };\n // BigInteger.prototype.square = bnSquare;\n // (public) this^2\n BigInteger.prototype.square = function () {\n var r = nbi();\n this.squareTo(r);\n return r;\n };\n //#region ASYNC\n // Public API method\n BigInteger.prototype.gcda = function (a, callback) {\n var x = (this.s < 0) ? this.negate() : this.clone();\n var y = (a.s < 0) ? a.negate() : a.clone();\n if (x.compareTo(y) < 0) {\n var t = x;\n x = y;\n y = t;\n }\n var i = x.getLowestSetBit();\n var g = y.getLowestSetBit();\n if (g < 0) {\n callback(x);\n return;\n }\n if (i < g) {\n g = i;\n }\n if (g > 0) {\n x.rShiftTo(g, x);\n y.rShiftTo(g, y);\n }\n // Workhorse of the algorithm, gets called 200 - 800 times per 512 bit keygen.\n var gcda1 = function () {\n if ((i = x.getLowestSetBit()) > 0) {\n x.rShiftTo(i, x);\n }\n if ((i = y.getLowestSetBit()) > 0) {\n y.rShiftTo(i, y);\n }\n if (x.compareTo(y) >= 0) {\n x.subTo(y, x);\n x.rShiftTo(1, x);\n }\n else {\n y.subTo(x, y);\n y.rShiftTo(1, y);\n }\n if (!(x.signum() > 0)) {\n if (g > 0) {\n y.lShiftTo(g, y);\n }\n setTimeout(function () { callback(y); }, 0); // escape\n }\n else {\n setTimeout(gcda1, 0);\n }\n };\n setTimeout(gcda1, 10);\n };\n // (protected) alternate constructor\n BigInteger.prototype.fromNumberAsync = function (a, b, c, callback) {\n if (\"number\" == typeof b) {\n if (a < 2) {\n this.fromInt(1);\n }\n else {\n this.fromNumber(a, c);\n if (!this.testBit(a - 1)) {\n this.bitwiseTo(BigInteger.ONE.shiftLeft(a - 1), _util__WEBPACK_IMPORTED_MODULE_0__.op_or, this);\n }\n if (this.isEven()) {\n this.dAddOffset(1, 0);\n }\n var bnp_1 = this;\n var bnpfn1_1 = function () {\n bnp_1.dAddOffset(2, 0);\n if (bnp_1.bitLength() > a) {\n bnp_1.subTo(BigInteger.ONE.shiftLeft(a - 1), bnp_1);\n }\n if (bnp_1.isProbablePrime(b)) {\n setTimeout(function () { callback(); }, 0); // escape\n }\n else {\n setTimeout(bnpfn1_1, 0);\n }\n };\n setTimeout(bnpfn1_1, 0);\n }\n }\n else {\n var x = [];\n var t = a & 7;\n x.length = (a >> 3) + 1;\n b.nextBytes(x);\n if (t > 0) {\n x[0] &= ((1 << t) - 1);\n }\n else {\n x[0] = 0;\n }\n this.fromString(x, 256);\n }\n };\n return BigInteger;\n}());\n\n//#region REDUCERS\n//#region NullExp\nvar NullExp = /** @class */ (function () {\n function NullExp() {\n }\n // NullExp.prototype.convert = nNop;\n NullExp.prototype.convert = function (x) {\n return x;\n };\n // NullExp.prototype.revert = nNop;\n NullExp.prototype.revert = function (x) {\n return x;\n };\n // NullExp.prototype.mulTo = nMulTo;\n NullExp.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n };\n // NullExp.prototype.sqrTo = nSqrTo;\n NullExp.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n };\n return NullExp;\n}());\n// Modular reduction using \"classic\" algorithm\nvar Classic = /** @class */ (function () {\n function Classic(m) {\n this.m = m;\n }\n // Classic.prototype.convert = cConvert;\n Classic.prototype.convert = function (x) {\n if (x.s < 0 || x.compareTo(this.m) >= 0) {\n return x.mod(this.m);\n }\n else {\n return x;\n }\n };\n // Classic.prototype.revert = cRevert;\n Classic.prototype.revert = function (x) {\n return x;\n };\n // Classic.prototype.reduce = cReduce;\n Classic.prototype.reduce = function (x) {\n x.divRemTo(this.m, null, x);\n };\n // Classic.prototype.mulTo = cMulTo;\n Classic.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n };\n // Classic.prototype.sqrTo = cSqrTo;\n Classic.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n this.reduce(r);\n };\n return Classic;\n}());\n//#endregion\n//#region Montgomery\n// Montgomery reduction\nvar Montgomery = /** @class */ (function () {\n function Montgomery(m) {\n this.m = m;\n this.mp = m.invDigit();\n this.mpl = this.mp & 0x7fff;\n this.mph = this.mp >> 15;\n this.um = (1 << (m.DB - 15)) - 1;\n this.mt2 = 2 * m.t;\n }\n // Montgomery.prototype.convert = montConvert;\n // xR mod m\n Montgomery.prototype.convert = function (x) {\n var r = nbi();\n x.abs().dlShiftTo(this.m.t, r);\n r.divRemTo(this.m, null, r);\n if (x.s < 0 && r.compareTo(BigInteger.ZERO) > 0) {\n this.m.subTo(r, r);\n }\n return r;\n };\n // Montgomery.prototype.revert = montRevert;\n // x/R mod m\n Montgomery.prototype.revert = function (x) {\n var r = nbi();\n x.copyTo(r);\n this.reduce(r);\n return r;\n };\n // Montgomery.prototype.reduce = montReduce;\n // x = x/R mod m (HAC 14.32)\n Montgomery.prototype.reduce = function (x) {\n while (x.t <= this.mt2) {\n // pad x so am has enough room later\n x[x.t++] = 0;\n }\n for (var i = 0; i < this.m.t; ++i) {\n // faster way of calculating u0 = x[i]*mp mod DV\n var j = x[i] & 0x7fff;\n var u0 = (j * this.mpl + (((j * this.mph + (x[i] >> 15) * this.mpl) & this.um) << 15)) & x.DM;\n // use am to combine the multiply-shift-add into one call\n j = i + this.m.t;\n x[j] += this.m.am(0, u0, x, i, 0, this.m.t);\n // propagate carry\n while (x[j] >= x.DV) {\n x[j] -= x.DV;\n x[++j]++;\n }\n }\n x.clamp();\n x.drShiftTo(this.m.t, x);\n if (x.compareTo(this.m) >= 0) {\n x.subTo(this.m, x);\n }\n };\n // Montgomery.prototype.mulTo = montMulTo;\n // r = \"xy/R mod m\"; x,y != r\n Montgomery.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n };\n // Montgomery.prototype.sqrTo = montSqrTo;\n // r = \"x^2/R mod m\"; x != r\n Montgomery.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n this.reduce(r);\n };\n return Montgomery;\n}());\n//#endregion Montgomery\n//#region Barrett\n// Barrett modular reduction\nvar Barrett = /** @class */ (function () {\n function Barrett(m) {\n this.m = m;\n // setup Barrett\n this.r2 = nbi();\n this.q3 = nbi();\n BigInteger.ONE.dlShiftTo(2 * m.t, this.r2);\n this.mu = this.r2.divide(m);\n }\n // Barrett.prototype.convert = barrettConvert;\n Barrett.prototype.convert = function (x) {\n if (x.s < 0 || x.t > 2 * this.m.t) {\n return x.mod(this.m);\n }\n else if (x.compareTo(this.m) < 0) {\n return x;\n }\n else {\n var r = nbi();\n x.copyTo(r);\n this.reduce(r);\n return r;\n }\n };\n // Barrett.prototype.revert = barrettRevert;\n Barrett.prototype.revert = function (x) {\n return x;\n };\n // Barrett.prototype.reduce = barrettReduce;\n // x = x mod m (HAC 14.42)\n Barrett.prototype.reduce = function (x) {\n x.drShiftTo(this.m.t - 1, this.r2);\n if (x.t > this.m.t + 1) {\n x.t = this.m.t + 1;\n x.clamp();\n }\n this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3);\n this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2);\n while (x.compareTo(this.r2) < 0) {\n x.dAddOffset(1, this.m.t + 1);\n }\n x.subTo(this.r2, x);\n while (x.compareTo(this.m) >= 0) {\n x.subTo(this.m, x);\n }\n };\n // Barrett.prototype.mulTo = barrettMulTo;\n // r = x*y mod m; x,y != r\n Barrett.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n };\n // Barrett.prototype.sqrTo = barrettSqrTo;\n // r = x^2 mod m; x != r\n Barrett.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n this.reduce(r);\n };\n return Barrett;\n}());\n//#endregion\n//#endregion REDUCERS\n// return new, unset BigInteger\nfunction nbi() { return new BigInteger(null); }\nfunction parseBigInt(str, r) {\n return new BigInteger(str, r);\n}\n// am: Compute w_j += (x*this_i), propagate carries,\n// c is initial carry, returns final carry.\n// c < 3*dvalue, x < 2*dvalue, this_i < dvalue\n// We need to select the fastest one that works in this environment.\nvar inBrowser = typeof navigator !== \"undefined\";\nif (inBrowser && j_lm && (navigator.appName == \"Microsoft Internet Explorer\")) {\n // am2 avoids a big mult-and-extract completely.\n // Max digit bits should be <= 30 because we do bitwise ops\n // on values up to 2*hdvalue^2-hdvalue-1 (< 2^31)\n BigInteger.prototype.am = function am2(i, x, w, j, c, n) {\n var xl = x & 0x7fff;\n var xh = x >> 15;\n while (--n >= 0) {\n var l = this[i] & 0x7fff;\n var h = this[i++] >> 15;\n var m = xh * l + h * xl;\n l = xl * l + ((m & 0x7fff) << 15) + w[j] + (c & 0x3fffffff);\n c = (l >>> 30) + (m >>> 15) + xh * h + (c >>> 30);\n w[j++] = l & 0x3fffffff;\n }\n return c;\n };\n dbits = 30;\n}\nelse if (inBrowser && j_lm && (navigator.appName != \"Netscape\")) {\n // am1: use a single mult and divide to get the high bits,\n // max digit bits should be 26 because\n // max internal value = 2*dvalue^2-2*dvalue (< 2^53)\n BigInteger.prototype.am = function am1(i, x, w, j, c, n) {\n while (--n >= 0) {\n var v = x * this[i++] + w[j] + c;\n c = Math.floor(v / 0x4000000);\n w[j++] = v & 0x3ffffff;\n }\n return c;\n };\n dbits = 26;\n}\nelse { // Mozilla/Netscape seems to prefer am3\n // Alternately, set max digit bits to 28 since some\n // browsers slow down when dealing with 32-bit numbers.\n BigInteger.prototype.am = function am3(i, x, w, j, c, n) {\n var xl = x & 0x3fff;\n var xh = x >> 14;\n while (--n >= 0) {\n var l = this[i] & 0x3fff;\n var h = this[i++] >> 14;\n var m = xh * l + h * xl;\n l = xl * l + ((m & 0x3fff) << 14) + w[j] + c;\n c = (l >> 28) + (m >> 14) + xh * h;\n w[j++] = l & 0xfffffff;\n }\n return c;\n };\n dbits = 28;\n}\nBigInteger.prototype.DB = dbits;\nBigInteger.prototype.DM = ((1 << dbits) - 1);\nBigInteger.prototype.DV = (1 << dbits);\nvar BI_FP = 52;\nBigInteger.prototype.FV = Math.pow(2, BI_FP);\nBigInteger.prototype.F1 = BI_FP - dbits;\nBigInteger.prototype.F2 = 2 * dbits - BI_FP;\n// Digit conversions\nvar BI_RC = [];\nvar rr;\nvar vv;\nrr = \"0\".charCodeAt(0);\nfor (vv = 0; vv <= 9; ++vv) {\n BI_RC[rr++] = vv;\n}\nrr = \"a\".charCodeAt(0);\nfor (vv = 10; vv < 36; ++vv) {\n BI_RC[rr++] = vv;\n}\nrr = \"A\".charCodeAt(0);\nfor (vv = 10; vv < 36; ++vv) {\n BI_RC[rr++] = vv;\n}\nfunction intAt(s, i) {\n var c = BI_RC[s.charCodeAt(i)];\n return (c == null) ? -1 : c;\n}\n// return bigint initialized to value\nfunction nbv(i) {\n var r = nbi();\n r.fromInt(i);\n return r;\n}\n// returns bit length of the integer x\nfunction nbits(x) {\n var r = 1;\n var t;\n if ((t = x >>> 16) != 0) {\n x = t;\n r += 16;\n }\n if ((t = x >> 8) != 0) {\n x = t;\n r += 8;\n }\n if ((t = x >> 4) != 0) {\n x = t;\n r += 4;\n }\n if ((t = x >> 2) != 0) {\n x = t;\n r += 2;\n }\n if ((t = x >> 1) != 0) {\n x = t;\n r += 1;\n }\n return r;\n}\n// \"constants\"\nBigInteger.ZERO = nbv(0);\nBigInteger.ONE = nbv(1);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/jsbn.js?"); - + /*!******************************!*\ + !*** ./lib/lib/jsbn/jsbn.js ***! + \******************************/ /***/ - }), + ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + + "use strict"; + eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"BigInteger\": () => (/* binding */ BigInteger),\n/* harmony export */ \"intAt\": () => (/* binding */ intAt),\n/* harmony export */ \"nbi\": () => (/* binding */ nbi),\n/* harmony export */ \"nbits\": () => (/* binding */ nbits),\n/* harmony export */ \"nbv\": () => (/* binding */ nbv),\n/* harmony export */ \"parseBigInt\": () => (/* binding */ parseBigInt)\n/* harmony export */ });\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"./lib/lib/jsbn/util.js\");\n// Copyright (c) 2005 Tom Wu\n// All Rights Reserved.\n// See \"LICENSE\" for details.\n// Basic JavaScript BN library - subset useful for RSA encryption.\n\n// Bits per digit\nvar dbits;\n// JavaScript engine analysis\nvar canary = 0xdeadbeefcafe;\nvar j_lm = ((canary & 0xffffff) == 0xefcafe);\n//#region\nvar lowprimes = [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];\nvar lplim = (1 << 26) / lowprimes[lowprimes.length - 1];\n//#endregion\n// (public) Constructor\nvar BigInteger = /** @class */ (function () {\n function BigInteger(a, b, c) {\n if (a != null) {\n if (\"number\" == typeof a) {\n this.fromNumber(a, b, c);\n }\n else if (b == null && \"string\" != typeof a) {\n this.fromString(a, 256);\n }\n else {\n this.fromString(a, b);\n }\n }\n }\n //#region PUBLIC\n // BigInteger.prototype.toString = bnToString;\n // (public) return string representation in given radix\n BigInteger.prototype.toString = function (b) {\n if (this.s < 0) {\n return \"-\" + this.negate().toString(b);\n }\n var k;\n if (b == 16) {\n k = 4;\n }\n else if (b == 8) {\n k = 3;\n }\n else if (b == 2) {\n k = 1;\n }\n else if (b == 32) {\n k = 5;\n }\n else if (b == 4) {\n k = 2;\n }\n else {\n return this.toRadix(b);\n }\n var km = (1 << k) - 1;\n var d;\n var m = false;\n var r = \"\";\n var i = this.t;\n var p = this.DB - (i * this.DB) % k;\n if (i-- > 0) {\n if (p < this.DB && (d = this[i] >> p) > 0) {\n m = true;\n r = (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\n }\n while (i >= 0) {\n if (p < k) {\n d = (this[i] & ((1 << p) - 1)) << (k - p);\n d |= this[--i] >> (p += this.DB - k);\n }\n else {\n d = (this[i] >> (p -= k)) & km;\n if (p <= 0) {\n p += this.DB;\n --i;\n }\n }\n if (d > 0) {\n m = true;\n }\n if (m) {\n r += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\n }\n }\n }\n return m ? r : \"0\";\n };\n // BigInteger.prototype.negate = bnNegate;\n // (public) -this\n BigInteger.prototype.negate = function () {\n var r = nbi();\n BigInteger.ZERO.subTo(this, r);\n return r;\n };\n // BigInteger.prototype.abs = bnAbs;\n // (public) |this|\n BigInteger.prototype.abs = function () {\n return (this.s < 0) ? this.negate() : this;\n };\n // BigInteger.prototype.compareTo = bnCompareTo;\n // (public) return + if this > a, - if this < a, 0 if equal\n BigInteger.prototype.compareTo = function (a) {\n var r = this.s - a.s;\n if (r != 0) {\n return r;\n }\n var i = this.t;\n r = i - a.t;\n if (r != 0) {\n return (this.s < 0) ? -r : r;\n }\n while (--i >= 0) {\n if ((r = this[i] - a[i]) != 0) {\n return r;\n }\n }\n return 0;\n };\n // BigInteger.prototype.bitLength = bnBitLength;\n // (public) return the number of bits in \"this\"\n BigInteger.prototype.bitLength = function () {\n if (this.t <= 0) {\n return 0;\n }\n return this.DB * (this.t - 1) + nbits(this[this.t - 1] ^ (this.s & this.DM));\n };\n // BigInteger.prototype.mod = bnMod;\n // (public) this mod a\n BigInteger.prototype.mod = function (a) {\n var r = nbi();\n this.abs().divRemTo(a, null, r);\n if (this.s < 0 && r.compareTo(BigInteger.ZERO) > 0) {\n a.subTo(r, r);\n }\n return r;\n };\n // BigInteger.prototype.modPowInt = bnModPowInt;\n // (public) this^e % m, 0 <= e < 2^32\n BigInteger.prototype.modPowInt = function (e, m) {\n var z;\n if (e < 256 || m.isEven()) {\n z = new Classic(m);\n }\n else {\n z = new Montgomery(m);\n }\n return this.exp(e, z);\n };\n // BigInteger.prototype.clone = bnClone;\n // (public)\n BigInteger.prototype.clone = function () {\n var r = nbi();\n this.copyTo(r);\n return r;\n };\n // BigInteger.prototype.intValue = bnIntValue;\n // (public) return value as integer\n BigInteger.prototype.intValue = function () {\n if (this.s < 0) {\n if (this.t == 1) {\n return this[0] - this.DV;\n }\n else if (this.t == 0) {\n return -1;\n }\n }\n else if (this.t == 1) {\n return this[0];\n }\n else if (this.t == 0) {\n return 0;\n }\n // assumes 16 < DB < 32\n return ((this[1] & ((1 << (32 - this.DB)) - 1)) << this.DB) | this[0];\n };\n // BigInteger.prototype.byteValue = bnByteValue;\n // (public) return value as byte\n BigInteger.prototype.byteValue = function () {\n return (this.t == 0) ? this.s : (this[0] << 24) >> 24;\n };\n // BigInteger.prototype.shortValue = bnShortValue;\n // (public) return value as short (assumes DB>=16)\n BigInteger.prototype.shortValue = function () {\n return (this.t == 0) ? this.s : (this[0] << 16) >> 16;\n };\n // BigInteger.prototype.signum = bnSigNum;\n // (public) 0 if this == 0, 1 if this > 0\n BigInteger.prototype.signum = function () {\n if (this.s < 0) {\n return -1;\n }\n else if (this.t <= 0 || (this.t == 1 && this[0] <= 0)) {\n return 0;\n }\n else {\n return 1;\n }\n };\n // BigInteger.prototype.toByteArray = bnToByteArray;\n // (public) convert to bigendian byte array\n BigInteger.prototype.toByteArray = function () {\n var i = this.t;\n var r = [];\n r[0] = this.s;\n var p = this.DB - (i * this.DB) % 8;\n var d;\n var k = 0;\n if (i-- > 0) {\n if (p < this.DB && (d = this[i] >> p) != (this.s & this.DM) >> p) {\n r[k++] = d | (this.s << (this.DB - p));\n }\n while (i >= 0) {\n if (p < 8) {\n d = (this[i] & ((1 << p) - 1)) << (8 - p);\n d |= this[--i] >> (p += this.DB - 8);\n }\n else {\n d = (this[i] >> (p -= 8)) & 0xff;\n if (p <= 0) {\n p += this.DB;\n --i;\n }\n }\n if ((d & 0x80) != 0) {\n d |= -256;\n }\n if (k == 0 && (this.s & 0x80) != (d & 0x80)) {\n ++k;\n }\n if (k > 0 || d != this.s) {\n r[k++] = d;\n }\n }\n }\n return r;\n };\n // BigInteger.prototype.equals = bnEquals;\n BigInteger.prototype.equals = function (a) {\n return (this.compareTo(a) == 0);\n };\n // BigInteger.prototype.min = bnMin;\n BigInteger.prototype.min = function (a) {\n return (this.compareTo(a) < 0) ? this : a;\n };\n // BigInteger.prototype.max = bnMax;\n BigInteger.prototype.max = function (a) {\n return (this.compareTo(a) > 0) ? this : a;\n };\n // BigInteger.prototype.and = bnAnd;\n BigInteger.prototype.and = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_and, r);\n return r;\n };\n // BigInteger.prototype.or = bnOr;\n BigInteger.prototype.or = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_or, r);\n return r;\n };\n // BigInteger.prototype.xor = bnXor;\n BigInteger.prototype.xor = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_xor, r);\n return r;\n };\n // BigInteger.prototype.andNot = bnAndNot;\n BigInteger.prototype.andNot = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_andnot, r);\n return r;\n };\n // BigInteger.prototype.not = bnNot;\n // (public) ~this\n BigInteger.prototype.not = function () {\n var r = nbi();\n for (var i = 0; i < this.t; ++i) {\n r[i] = this.DM & ~this[i];\n }\n r.t = this.t;\n r.s = ~this.s;\n return r;\n };\n // BigInteger.prototype.shiftLeft = bnShiftLeft;\n // (public) this << n\n BigInteger.prototype.shiftLeft = function (n) {\n var r = nbi();\n if (n < 0) {\n this.rShiftTo(-n, r);\n }\n else {\n this.lShiftTo(n, r);\n }\n return r;\n };\n // BigInteger.prototype.shiftRight = bnShiftRight;\n // (public) this >> n\n BigInteger.prototype.shiftRight = function (n) {\n var r = nbi();\n if (n < 0) {\n this.lShiftTo(-n, r);\n }\n else {\n this.rShiftTo(n, r);\n }\n return r;\n };\n // BigInteger.prototype.getLowestSetBit = bnGetLowestSetBit;\n // (public) returns index of lowest 1-bit (or -1 if none)\n BigInteger.prototype.getLowestSetBit = function () {\n for (var i = 0; i < this.t; ++i) {\n if (this[i] != 0) {\n return i * this.DB + (0,_util__WEBPACK_IMPORTED_MODULE_0__.lbit)(this[i]);\n }\n }\n if (this.s < 0) {\n return this.t * this.DB;\n }\n return -1;\n };\n // BigInteger.prototype.bitCount = bnBitCount;\n // (public) return number of set bits\n BigInteger.prototype.bitCount = function () {\n var r = 0;\n var x = this.s & this.DM;\n for (var i = 0; i < this.t; ++i) {\n r += (0,_util__WEBPACK_IMPORTED_MODULE_0__.cbit)(this[i] ^ x);\n }\n return r;\n };\n // BigInteger.prototype.testBit = bnTestBit;\n // (public) true iff nth bit is set\n BigInteger.prototype.testBit = function (n) {\n var j = Math.floor(n / this.DB);\n if (j >= this.t) {\n return (this.s != 0);\n }\n return ((this[j] & (1 << (n % this.DB))) != 0);\n };\n // BigInteger.prototype.setBit = bnSetBit;\n // (public) this | (1< 1) {\n var g2 = nbi();\n z.sqrTo(g[1], g2);\n while (n <= km) {\n g[n] = nbi();\n z.mulTo(g2, g[n - 2], g[n]);\n n += 2;\n }\n }\n var j = e.t - 1;\n var w;\n var is1 = true;\n var r2 = nbi();\n var t;\n i = nbits(e[j]) - 1;\n while (j >= 0) {\n if (i >= k1) {\n w = (e[j] >> (i - k1)) & km;\n }\n else {\n w = (e[j] & ((1 << (i + 1)) - 1)) << (k1 - i);\n if (j > 0) {\n w |= e[j - 1] >> (this.DB + i - k1);\n }\n }\n n = k;\n while ((w & 1) == 0) {\n w >>= 1;\n --n;\n }\n if ((i -= n) < 0) {\n i += this.DB;\n --j;\n }\n if (is1) { // ret == 1, don't bother squaring or multiplying it\n g[w].copyTo(r);\n is1 = false;\n }\n else {\n while (n > 1) {\n z.sqrTo(r, r2);\n z.sqrTo(r2, r);\n n -= 2;\n }\n if (n > 0) {\n z.sqrTo(r, r2);\n }\n else {\n t = r;\n r = r2;\n r2 = t;\n }\n z.mulTo(r2, g[w], r);\n }\n while (j >= 0 && (e[j] & (1 << i)) == 0) {\n z.sqrTo(r, r2);\n t = r;\n r = r2;\n r2 = t;\n if (--i < 0) {\n i = this.DB - 1;\n --j;\n }\n }\n }\n return z.revert(r);\n };\n // BigInteger.prototype.modInverse = bnModInverse;\n // (public) 1/this % m (HAC 14.61)\n BigInteger.prototype.modInverse = function (m) {\n var ac = m.isEven();\n if ((this.isEven() && ac) || m.signum() == 0) {\n return BigInteger.ZERO;\n }\n var u = m.clone();\n var v = this.clone();\n var a = nbv(1);\n var b = nbv(0);\n var c = nbv(0);\n var d = nbv(1);\n while (u.signum() != 0) {\n while (u.isEven()) {\n u.rShiftTo(1, u);\n if (ac) {\n if (!a.isEven() || !b.isEven()) {\n a.addTo(this, a);\n b.subTo(m, b);\n }\n a.rShiftTo(1, a);\n }\n else if (!b.isEven()) {\n b.subTo(m, b);\n }\n b.rShiftTo(1, b);\n }\n while (v.isEven()) {\n v.rShiftTo(1, v);\n if (ac) {\n if (!c.isEven() || !d.isEven()) {\n c.addTo(this, c);\n d.subTo(m, d);\n }\n c.rShiftTo(1, c);\n }\n else if (!d.isEven()) {\n d.subTo(m, d);\n }\n d.rShiftTo(1, d);\n }\n if (u.compareTo(v) >= 0) {\n u.subTo(v, u);\n if (ac) {\n a.subTo(c, a);\n }\n b.subTo(d, b);\n }\n else {\n v.subTo(u, v);\n if (ac) {\n c.subTo(a, c);\n }\n d.subTo(b, d);\n }\n }\n if (v.compareTo(BigInteger.ONE) != 0) {\n return BigInteger.ZERO;\n }\n if (d.compareTo(m) >= 0) {\n return d.subtract(m);\n }\n if (d.signum() < 0) {\n d.addTo(m, d);\n }\n else {\n return d;\n }\n if (d.signum() < 0) {\n return d.add(m);\n }\n else {\n return d;\n }\n };\n // BigInteger.prototype.pow = bnPow;\n // (public) this^e\n BigInteger.prototype.pow = function (e) {\n return this.exp(e, new NullExp());\n };\n // BigInteger.prototype.gcd = bnGCD;\n // (public) gcd(this,a) (HAC 14.54)\n BigInteger.prototype.gcd = function (a) {\n var x = (this.s < 0) ? this.negate() : this.clone();\n var y = (a.s < 0) ? a.negate() : a.clone();\n if (x.compareTo(y) < 0) {\n var t = x;\n x = y;\n y = t;\n }\n var i = x.getLowestSetBit();\n var g = y.getLowestSetBit();\n if (g < 0) {\n return x;\n }\n if (i < g) {\n g = i;\n }\n if (g > 0) {\n x.rShiftTo(g, x);\n y.rShiftTo(g, y);\n }\n while (x.signum() > 0) {\n if ((i = x.getLowestSetBit()) > 0) {\n x.rShiftTo(i, x);\n }\n if ((i = y.getLowestSetBit()) > 0) {\n y.rShiftTo(i, y);\n }\n if (x.compareTo(y) >= 0) {\n x.subTo(y, x);\n x.rShiftTo(1, x);\n }\n else {\n y.subTo(x, y);\n y.rShiftTo(1, y);\n }\n }\n if (g > 0) {\n y.lShiftTo(g, y);\n }\n return y;\n };\n // BigInteger.prototype.isProbablePrime = bnIsProbablePrime;\n // (public) test primality with certainty >= 1-.5^t\n BigInteger.prototype.isProbablePrime = function (t) {\n var i;\n var x = this.abs();\n if (x.t == 1 && x[0] <= lowprimes[lowprimes.length - 1]) {\n for (i = 0; i < lowprimes.length; ++i) {\n if (x[0] == lowprimes[i]) {\n return true;\n }\n }\n return false;\n }\n if (x.isEven()) {\n return false;\n }\n i = 1;\n while (i < lowprimes.length) {\n var m = lowprimes[i];\n var j = i + 1;\n while (j < lowprimes.length && m < lplim) {\n m *= lowprimes[j++];\n }\n m = x.modInt(m);\n while (i < j) {\n if (m % lowprimes[i++] == 0) {\n return false;\n }\n }\n }\n return x.millerRabin(t);\n };\n //#endregion PUBLIC\n //#region PROTECTED\n // BigInteger.prototype.copyTo = bnpCopyTo;\n // (protected) copy this to r\n BigInteger.prototype.copyTo = function (r) {\n for (var i = this.t - 1; i >= 0; --i) {\n r[i] = this[i];\n }\n r.t = this.t;\n r.s = this.s;\n };\n // BigInteger.prototype.fromInt = bnpFromInt;\n // (protected) set from integer value x, -DV <= x < DV\n BigInteger.prototype.fromInt = function (x) {\n this.t = 1;\n this.s = (x < 0) ? -1 : 0;\n if (x > 0) {\n this[0] = x;\n }\n else if (x < -1) {\n this[0] = x + this.DV;\n }\n else {\n this.t = 0;\n }\n };\n // BigInteger.prototype.fromString = bnpFromString;\n // (protected) set from string and radix\n BigInteger.prototype.fromString = function (s, b) {\n var k;\n if (b == 16) {\n k = 4;\n }\n else if (b == 8) {\n k = 3;\n }\n else if (b == 256) {\n k = 8;\n /* byte array */\n }\n else if (b == 2) {\n k = 1;\n }\n else if (b == 32) {\n k = 5;\n }\n else if (b == 4) {\n k = 2;\n }\n else {\n this.fromRadix(s, b);\n return;\n }\n this.t = 0;\n this.s = 0;\n var i = s.length;\n var mi = false;\n var sh = 0;\n while (--i >= 0) {\n var x = (k == 8) ? (+s[i]) & 0xff : intAt(s, i);\n if (x < 0) {\n if (s.charAt(i) == \"-\") {\n mi = true;\n }\n continue;\n }\n mi = false;\n if (sh == 0) {\n this[this.t++] = x;\n }\n else if (sh + k > this.DB) {\n this[this.t - 1] |= (x & ((1 << (this.DB - sh)) - 1)) << sh;\n this[this.t++] = (x >> (this.DB - sh));\n }\n else {\n this[this.t - 1] |= x << sh;\n }\n sh += k;\n if (sh >= this.DB) {\n sh -= this.DB;\n }\n }\n if (k == 8 && ((+s[0]) & 0x80) != 0) {\n this.s = -1;\n if (sh > 0) {\n this[this.t - 1] |= ((1 << (this.DB - sh)) - 1) << sh;\n }\n }\n this.clamp();\n if (mi) {\n BigInteger.ZERO.subTo(this, this);\n }\n };\n // BigInteger.prototype.clamp = bnpClamp;\n // (protected) clamp off excess high words\n BigInteger.prototype.clamp = function () {\n var c = this.s & this.DM;\n while (this.t > 0 && this[this.t - 1] == c) {\n --this.t;\n }\n };\n // BigInteger.prototype.dlShiftTo = bnpDLShiftTo;\n // (protected) r = this << n*DB\n BigInteger.prototype.dlShiftTo = function (n, r) {\n var i;\n for (i = this.t - 1; i >= 0; --i) {\n r[i + n] = this[i];\n }\n for (i = n - 1; i >= 0; --i) {\n r[i] = 0;\n }\n r.t = this.t + n;\n r.s = this.s;\n };\n // BigInteger.prototype.drShiftTo = bnpDRShiftTo;\n // (protected) r = this >> n*DB\n BigInteger.prototype.drShiftTo = function (n, r) {\n for (var i = n; i < this.t; ++i) {\n r[i - n] = this[i];\n }\n r.t = Math.max(this.t - n, 0);\n r.s = this.s;\n };\n // BigInteger.prototype.lShiftTo = bnpLShiftTo;\n // (protected) r = this << n\n BigInteger.prototype.lShiftTo = function (n, r) {\n var bs = n % this.DB;\n var cbs = this.DB - bs;\n var bm = (1 << cbs) - 1;\n var ds = Math.floor(n / this.DB);\n var c = (this.s << bs) & this.DM;\n for (var i = this.t - 1; i >= 0; --i) {\n r[i + ds + 1] = (this[i] >> cbs) | c;\n c = (this[i] & bm) << bs;\n }\n for (var i = ds - 1; i >= 0; --i) {\n r[i] = 0;\n }\n r[ds] = c;\n r.t = this.t + ds + 1;\n r.s = this.s;\n r.clamp();\n };\n // BigInteger.prototype.rShiftTo = bnpRShiftTo;\n // (protected) r = this >> n\n BigInteger.prototype.rShiftTo = function (n, r) {\n r.s = this.s;\n var ds = Math.floor(n / this.DB);\n if (ds >= this.t) {\n r.t = 0;\n return;\n }\n var bs = n % this.DB;\n var cbs = this.DB - bs;\n var bm = (1 << bs) - 1;\n r[0] = this[ds] >> bs;\n for (var i = ds + 1; i < this.t; ++i) {\n r[i - ds - 1] |= (this[i] & bm) << cbs;\n r[i - ds] = this[i] >> bs;\n }\n if (bs > 0) {\n r[this.t - ds - 1] |= (this.s & bm) << cbs;\n }\n r.t = this.t - ds;\n r.clamp();\n };\n // BigInteger.prototype.subTo = bnpSubTo;\n // (protected) r = this - a\n BigInteger.prototype.subTo = function (a, r) {\n var i = 0;\n var c = 0;\n var m = Math.min(a.t, this.t);\n while (i < m) {\n c += this[i] - a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n if (a.t < this.t) {\n c -= a.s;\n while (i < this.t) {\n c += this[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += this.s;\n }\n else {\n c += this.s;\n while (i < a.t) {\n c -= a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c -= a.s;\n }\n r.s = (c < 0) ? -1 : 0;\n if (c < -1) {\n r[i++] = this.DV + c;\n }\n else if (c > 0) {\n r[i++] = c;\n }\n r.t = i;\n r.clamp();\n };\n // BigInteger.prototype.multiplyTo = bnpMultiplyTo;\n // (protected) r = this * a, r != this,a (HAC 14.12)\n // \"this\" should be the larger one if appropriate.\n BigInteger.prototype.multiplyTo = function (a, r) {\n var x = this.abs();\n var y = a.abs();\n var i = x.t;\n r.t = i + y.t;\n while (--i >= 0) {\n r[i] = 0;\n }\n for (i = 0; i < y.t; ++i) {\n r[i + x.t] = x.am(0, y[i], r, i, 0, x.t);\n }\n r.s = 0;\n r.clamp();\n if (this.s != a.s) {\n BigInteger.ZERO.subTo(r, r);\n }\n };\n // BigInteger.prototype.squareTo = bnpSquareTo;\n // (protected) r = this^2, r != this (HAC 14.16)\n BigInteger.prototype.squareTo = function (r) {\n var x = this.abs();\n var i = r.t = 2 * x.t;\n while (--i >= 0) {\n r[i] = 0;\n }\n for (i = 0; i < x.t - 1; ++i) {\n var c = x.am(i, x[i], r, 2 * i, 0, 1);\n if ((r[i + x.t] += x.am(i + 1, 2 * x[i], r, 2 * i + 1, c, x.t - i - 1)) >= x.DV) {\n r[i + x.t] -= x.DV;\n r[i + x.t + 1] = 1;\n }\n }\n if (r.t > 0) {\n r[r.t - 1] += x.am(i, x[i], r, 2 * i, 0, 1);\n }\n r.s = 0;\n r.clamp();\n };\n // BigInteger.prototype.divRemTo = bnpDivRemTo;\n // (protected) divide this by m, quotient and remainder to q, r (HAC 14.20)\n // r != q, this != m. q or r may be null.\n BigInteger.prototype.divRemTo = function (m, q, r) {\n var pm = m.abs();\n if (pm.t <= 0) {\n return;\n }\n var pt = this.abs();\n if (pt.t < pm.t) {\n if (q != null) {\n q.fromInt(0);\n }\n if (r != null) {\n this.copyTo(r);\n }\n return;\n }\n if (r == null) {\n r = nbi();\n }\n var y = nbi();\n var ts = this.s;\n var ms = m.s;\n var nsh = this.DB - nbits(pm[pm.t - 1]); // normalize modulus\n if (nsh > 0) {\n pm.lShiftTo(nsh, y);\n pt.lShiftTo(nsh, r);\n }\n else {\n pm.copyTo(y);\n pt.copyTo(r);\n }\n var ys = y.t;\n var y0 = y[ys - 1];\n if (y0 == 0) {\n return;\n }\n var yt = y0 * (1 << this.F1) + ((ys > 1) ? y[ys - 2] >> this.F2 : 0);\n var d1 = this.FV / yt;\n var d2 = (1 << this.F1) / yt;\n var e = 1 << this.F2;\n var i = r.t;\n var j = i - ys;\n var t = (q == null) ? nbi() : q;\n y.dlShiftTo(j, t);\n if (r.compareTo(t) >= 0) {\n r[r.t++] = 1;\n r.subTo(t, r);\n }\n BigInteger.ONE.dlShiftTo(ys, t);\n t.subTo(y, y); // \"negative\" y so we can replace sub with am later\n while (y.t < ys) {\n y[y.t++] = 0;\n }\n while (--j >= 0) {\n // Estimate quotient digit\n var qd = (r[--i] == y0) ? this.DM : Math.floor(r[i] * d1 + (r[i - 1] + e) * d2);\n if ((r[i] += y.am(0, qd, r, j, 0, ys)) < qd) { // Try it out\n y.dlShiftTo(j, t);\n r.subTo(t, r);\n while (r[i] < --qd) {\n r.subTo(t, r);\n }\n }\n }\n if (q != null) {\n r.drShiftTo(ys, q);\n if (ts != ms) {\n BigInteger.ZERO.subTo(q, q);\n }\n }\n r.t = ys;\n r.clamp();\n if (nsh > 0) {\n r.rShiftTo(nsh, r);\n } // Denormalize remainder\n if (ts < 0) {\n BigInteger.ZERO.subTo(r, r);\n }\n };\n // BigInteger.prototype.invDigit = bnpInvDigit;\n // (protected) return \"-1/this % 2^DB\"; useful for Mont. reduction\n // justification:\n // xy == 1 (mod m)\n // xy = 1+km\n // xy(2-xy) = (1+km)(1-km)\n // x[y(2-xy)] = 1-k^2m^2\n // x[y(2-xy)] == 1 (mod m^2)\n // if y is 1/x mod m, then y(2-xy) is 1/x mod m^2\n // should reduce x and y(2-xy) by m^2 at each step to keep size bounded.\n // JS multiply \"overflows\" differently from C/C++, so care is needed here.\n BigInteger.prototype.invDigit = function () {\n if (this.t < 1) {\n return 0;\n }\n var x = this[0];\n if ((x & 1) == 0) {\n return 0;\n }\n var y = x & 3; // y == 1/x mod 2^2\n y = (y * (2 - (x & 0xf) * y)) & 0xf; // y == 1/x mod 2^4\n y = (y * (2 - (x & 0xff) * y)) & 0xff; // y == 1/x mod 2^8\n y = (y * (2 - (((x & 0xffff) * y) & 0xffff))) & 0xffff; // y == 1/x mod 2^16\n // last step - calculate inverse mod DV directly;\n // assumes 16 < DB <= 32 and assumes ability to handle 48-bit ints\n y = (y * (2 - x * y % this.DV)) % this.DV; // y == 1/x mod 2^dbits\n // we really want the negative inverse, and -DV < y < DV\n return (y > 0) ? this.DV - y : -y;\n };\n // BigInteger.prototype.isEven = bnpIsEven;\n // (protected) true iff this is even\n BigInteger.prototype.isEven = function () {\n return ((this.t > 0) ? (this[0] & 1) : this.s) == 0;\n };\n // BigInteger.prototype.exp = bnpExp;\n // (protected) this^e, e < 2^32, doing sqr and mul with \"r\" (HAC 14.79)\n BigInteger.prototype.exp = function (e, z) {\n if (e > 0xffffffff || e < 1) {\n return BigInteger.ONE;\n }\n var r = nbi();\n var r2 = nbi();\n var g = z.convert(this);\n var i = nbits(e) - 1;\n g.copyTo(r);\n while (--i >= 0) {\n z.sqrTo(r, r2);\n if ((e & (1 << i)) > 0) {\n z.mulTo(r2, g, r);\n }\n else {\n var t = r;\n r = r2;\n r2 = t;\n }\n }\n return z.revert(r);\n };\n // BigInteger.prototype.chunkSize = bnpChunkSize;\n // (protected) return x s.t. r^x < DV\n BigInteger.prototype.chunkSize = function (r) {\n return Math.floor(Math.LN2 * this.DB / Math.log(r));\n };\n // BigInteger.prototype.toRadix = bnpToRadix;\n // (protected) convert to radix string\n BigInteger.prototype.toRadix = function (b) {\n if (b == null) {\n b = 10;\n }\n if (this.signum() == 0 || b < 2 || b > 36) {\n return \"0\";\n }\n var cs = this.chunkSize(b);\n var a = Math.pow(b, cs);\n var d = nbv(a);\n var y = nbi();\n var z = nbi();\n var r = \"\";\n this.divRemTo(d, y, z);\n while (y.signum() > 0) {\n r = (a + z.intValue()).toString(b).substr(1) + r;\n y.divRemTo(d, y, z);\n }\n return z.intValue().toString(b) + r;\n };\n // BigInteger.prototype.fromRadix = bnpFromRadix;\n // (protected) convert from radix string\n BigInteger.prototype.fromRadix = function (s, b) {\n this.fromInt(0);\n if (b == null) {\n b = 10;\n }\n var cs = this.chunkSize(b);\n var d = Math.pow(b, cs);\n var mi = false;\n var j = 0;\n var w = 0;\n for (var i = 0; i < s.length; ++i) {\n var x = intAt(s, i);\n if (x < 0) {\n if (s.charAt(i) == \"-\" && this.signum() == 0) {\n mi = true;\n }\n continue;\n }\n w = b * w + x;\n if (++j >= cs) {\n this.dMultiply(d);\n this.dAddOffset(w, 0);\n j = 0;\n w = 0;\n }\n }\n if (j > 0) {\n this.dMultiply(Math.pow(b, j));\n this.dAddOffset(w, 0);\n }\n if (mi) {\n BigInteger.ZERO.subTo(this, this);\n }\n };\n // BigInteger.prototype.fromNumber = bnpFromNumber;\n // (protected) alternate constructor\n BigInteger.prototype.fromNumber = function (a, b, c) {\n if (\"number\" == typeof b) {\n // new BigInteger(int,int,RNG)\n if (a < 2) {\n this.fromInt(1);\n }\n else {\n this.fromNumber(a, c);\n if (!this.testBit(a - 1)) {\n // force MSB set\n this.bitwiseTo(BigInteger.ONE.shiftLeft(a - 1), _util__WEBPACK_IMPORTED_MODULE_0__.op_or, this);\n }\n if (this.isEven()) {\n this.dAddOffset(1, 0);\n } // force odd\n while (!this.isProbablePrime(b)) {\n this.dAddOffset(2, 0);\n if (this.bitLength() > a) {\n this.subTo(BigInteger.ONE.shiftLeft(a - 1), this);\n }\n }\n }\n }\n else {\n // new BigInteger(int,RNG)\n var x = [];\n var t = a & 7;\n x.length = (a >> 3) + 1;\n b.nextBytes(x);\n if (t > 0) {\n x[0] &= ((1 << t) - 1);\n }\n else {\n x[0] = 0;\n }\n this.fromString(x, 256);\n }\n };\n // BigInteger.prototype.bitwiseTo = bnpBitwiseTo;\n // (protected) r = this op a (bitwise)\n BigInteger.prototype.bitwiseTo = function (a, op, r) {\n var i;\n var f;\n var m = Math.min(a.t, this.t);\n for (i = 0; i < m; ++i) {\n r[i] = op(this[i], a[i]);\n }\n if (a.t < this.t) {\n f = a.s & this.DM;\n for (i = m; i < this.t; ++i) {\n r[i] = op(this[i], f);\n }\n r.t = this.t;\n }\n else {\n f = this.s & this.DM;\n for (i = m; i < a.t; ++i) {\n r[i] = op(f, a[i]);\n }\n r.t = a.t;\n }\n r.s = op(this.s, a.s);\n r.clamp();\n };\n // BigInteger.prototype.changeBit = bnpChangeBit;\n // (protected) this op (1<>= this.DB;\n }\n if (a.t < this.t) {\n c += a.s;\n while (i < this.t) {\n c += this[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += this.s;\n }\n else {\n c += this.s;\n while (i < a.t) {\n c += a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += a.s;\n }\n r.s = (c < 0) ? -1 : 0;\n if (c > 0) {\n r[i++] = c;\n }\n else if (c < -1) {\n r[i++] = this.DV + c;\n }\n r.t = i;\n r.clamp();\n };\n // BigInteger.prototype.dMultiply = bnpDMultiply;\n // (protected) this *= n, this >= 0, 1 < n < DV\n BigInteger.prototype.dMultiply = function (n) {\n this[this.t] = this.am(0, n - 1, this, 0, 0, this.t);\n ++this.t;\n this.clamp();\n };\n // BigInteger.prototype.dAddOffset = bnpDAddOffset;\n // (protected) this += n << w words, this >= 0\n BigInteger.prototype.dAddOffset = function (n, w) {\n if (n == 0) {\n return;\n }\n while (this.t <= w) {\n this[this.t++] = 0;\n }\n this[w] += n;\n while (this[w] >= this.DV) {\n this[w] -= this.DV;\n if (++w >= this.t) {\n this[this.t++] = 0;\n }\n ++this[w];\n }\n };\n // BigInteger.prototype.multiplyLowerTo = bnpMultiplyLowerTo;\n // (protected) r = lower n words of \"this * a\", a.t <= n\n // \"this\" should be the larger one if appropriate.\n BigInteger.prototype.multiplyLowerTo = function (a, n, r) {\n var i = Math.min(this.t + a.t, n);\n r.s = 0; // assumes a,this >= 0\n r.t = i;\n while (i > 0) {\n r[--i] = 0;\n }\n for (var j = r.t - this.t; i < j; ++i) {\n r[i + this.t] = this.am(0, a[i], r, i, 0, this.t);\n }\n for (var j = Math.min(a.t, n); i < j; ++i) {\n this.am(0, a[i], r, i, 0, n - i);\n }\n r.clamp();\n };\n // BigInteger.prototype.multiplyUpperTo = bnpMultiplyUpperTo;\n // (protected) r = \"this * a\" without lower n words, n > 0\n // \"this\" should be the larger one if appropriate.\n BigInteger.prototype.multiplyUpperTo = function (a, n, r) {\n --n;\n var i = r.t = this.t + a.t - n;\n r.s = 0; // assumes a,this >= 0\n while (--i >= 0) {\n r[i] = 0;\n }\n for (i = Math.max(n - this.t, 0); i < a.t; ++i) {\n r[this.t + i - n] = this.am(n - i, a[i], r, 0, 0, this.t + i - n);\n }\n r.clamp();\n r.drShiftTo(1, r);\n };\n // BigInteger.prototype.modInt = bnpModInt;\n // (protected) this % n, n < 2^26\n BigInteger.prototype.modInt = function (n) {\n if (n <= 0) {\n return 0;\n }\n var d = this.DV % n;\n var r = (this.s < 0) ? n - 1 : 0;\n if (this.t > 0) {\n if (d == 0) {\n r = this[0] % n;\n }\n else {\n for (var i = this.t - 1; i >= 0; --i) {\n r = (d * r + this[i]) % n;\n }\n }\n }\n return r;\n };\n // BigInteger.prototype.millerRabin = bnpMillerRabin;\n // (protected) true if probably prime (HAC 4.24, Miller-Rabin)\n BigInteger.prototype.millerRabin = function (t) {\n var n1 = this.subtract(BigInteger.ONE);\n var k = n1.getLowestSetBit();\n if (k <= 0) {\n return false;\n }\n var r = n1.shiftRight(k);\n t = (t + 1) >> 1;\n if (t > lowprimes.length) {\n t = lowprimes.length;\n }\n var a = nbi();\n for (var i = 0; i < t; ++i) {\n // Pick bases at random, instead of starting at 2\n a.fromInt(lowprimes[Math.floor(Math.random() * lowprimes.length)]);\n var y = a.modPow(r, this);\n if (y.compareTo(BigInteger.ONE) != 0 && y.compareTo(n1) != 0) {\n var j = 1;\n while (j++ < k && y.compareTo(n1) != 0) {\n y = y.modPowInt(2, this);\n if (y.compareTo(BigInteger.ONE) == 0) {\n return false;\n }\n }\n if (y.compareTo(n1) != 0) {\n return false;\n }\n }\n }\n return true;\n };\n // BigInteger.prototype.square = bnSquare;\n // (public) this^2\n BigInteger.prototype.square = function () {\n var r = nbi();\n this.squareTo(r);\n return r;\n };\n //#region ASYNC\n // Public API method\n BigInteger.prototype.gcda = function (a, callback) {\n var x = (this.s < 0) ? this.negate() : this.clone();\n var y = (a.s < 0) ? a.negate() : a.clone();\n if (x.compareTo(y) < 0) {\n var t = x;\n x = y;\n y = t;\n }\n var i = x.getLowestSetBit();\n var g = y.getLowestSetBit();\n if (g < 0) {\n callback(x);\n return;\n }\n if (i < g) {\n g = i;\n }\n if (g > 0) {\n x.rShiftTo(g, x);\n y.rShiftTo(g, y);\n }\n // Workhorse of the algorithm, gets called 200 - 800 times per 512 bit keygen.\n var gcda1 = function () {\n if ((i = x.getLowestSetBit()) > 0) {\n x.rShiftTo(i, x);\n }\n if ((i = y.getLowestSetBit()) > 0) {\n y.rShiftTo(i, y);\n }\n if (x.compareTo(y) >= 0) {\n x.subTo(y, x);\n x.rShiftTo(1, x);\n }\n else {\n y.subTo(x, y);\n y.rShiftTo(1, y);\n }\n if (!(x.signum() > 0)) {\n if (g > 0) {\n y.lShiftTo(g, y);\n }\n setTimeout(function () { callback(y); }, 0); // escape\n }\n else {\n setTimeout(gcda1, 0);\n }\n };\n setTimeout(gcda1, 10);\n };\n // (protected) alternate constructor\n BigInteger.prototype.fromNumberAsync = function (a, b, c, callback) {\n if (\"number\" == typeof b) {\n if (a < 2) {\n this.fromInt(1);\n }\n else {\n this.fromNumber(a, c);\n if (!this.testBit(a - 1)) {\n this.bitwiseTo(BigInteger.ONE.shiftLeft(a - 1), _util__WEBPACK_IMPORTED_MODULE_0__.op_or, this);\n }\n if (this.isEven()) {\n this.dAddOffset(1, 0);\n }\n var bnp_1 = this;\n var bnpfn1_1 = function () {\n bnp_1.dAddOffset(2, 0);\n if (bnp_1.bitLength() > a) {\n bnp_1.subTo(BigInteger.ONE.shiftLeft(a - 1), bnp_1);\n }\n if (bnp_1.isProbablePrime(b)) {\n setTimeout(function () { callback(); }, 0); // escape\n }\n else {\n setTimeout(bnpfn1_1, 0);\n }\n };\n setTimeout(bnpfn1_1, 0);\n }\n }\n else {\n var x = [];\n var t = a & 7;\n x.length = (a >> 3) + 1;\n b.nextBytes(x);\n if (t > 0) {\n x[0] &= ((1 << t) - 1);\n }\n else {\n x[0] = 0;\n }\n this.fromString(x, 256);\n }\n };\n return BigInteger;\n}());\n\n//#region REDUCERS\n//#region NullExp\nvar NullExp = /** @class */ (function () {\n function NullExp() {\n }\n // NullExp.prototype.convert = nNop;\n NullExp.prototype.convert = function (x) {\n return x;\n };\n // NullExp.prototype.revert = nNop;\n NullExp.prototype.revert = function (x) {\n return x;\n };\n // NullExp.prototype.mulTo = nMulTo;\n NullExp.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n };\n // NullExp.prototype.sqrTo = nSqrTo;\n NullExp.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n };\n return NullExp;\n}());\n// Modular reduction using \"classic\" algorithm\nvar Classic = /** @class */ (function () {\n function Classic(m) {\n this.m = m;\n }\n // Classic.prototype.convert = cConvert;\n Classic.prototype.convert = function (x) {\n if (x.s < 0 || x.compareTo(this.m) >= 0) {\n return x.mod(this.m);\n }\n else {\n return x;\n }\n };\n // Classic.prototype.revert = cRevert;\n Classic.prototype.revert = function (x) {\n return x;\n };\n // Classic.prototype.reduce = cReduce;\n Classic.prototype.reduce = function (x) {\n x.divRemTo(this.m, null, x);\n };\n // Classic.prototype.mulTo = cMulTo;\n Classic.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n };\n // Classic.prototype.sqrTo = cSqrTo;\n Classic.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n this.reduce(r);\n };\n return Classic;\n}());\n//#endregion\n//#region Montgomery\n// Montgomery reduction\nvar Montgomery = /** @class */ (function () {\n function Montgomery(m) {\n this.m = m;\n this.mp = m.invDigit();\n this.mpl = this.mp & 0x7fff;\n this.mph = this.mp >> 15;\n this.um = (1 << (m.DB - 15)) - 1;\n this.mt2 = 2 * m.t;\n }\n // Montgomery.prototype.convert = montConvert;\n // xR mod m\n Montgomery.prototype.convert = function (x) {\n var r = nbi();\n x.abs().dlShiftTo(this.m.t, r);\n r.divRemTo(this.m, null, r);\n if (x.s < 0 && r.compareTo(BigInteger.ZERO) > 0) {\n this.m.subTo(r, r);\n }\n return r;\n };\n // Montgomery.prototype.revert = montRevert;\n // x/R mod m\n Montgomery.prototype.revert = function (x) {\n var r = nbi();\n x.copyTo(r);\n this.reduce(r);\n return r;\n };\n // Montgomery.prototype.reduce = montReduce;\n // x = x/R mod m (HAC 14.32)\n Montgomery.prototype.reduce = function (x) {\n while (x.t <= this.mt2) {\n // pad x so am has enough room later\n x[x.t++] = 0;\n }\n for (var i = 0; i < this.m.t; ++i) {\n // faster way of calculating u0 = x[i]*mp mod DV\n var j = x[i] & 0x7fff;\n var u0 = (j * this.mpl + (((j * this.mph + (x[i] >> 15) * this.mpl) & this.um) << 15)) & x.DM;\n // use am to combine the multiply-shift-add into one call\n j = i + this.m.t;\n x[j] += this.m.am(0, u0, x, i, 0, this.m.t);\n // propagate carry\n while (x[j] >= x.DV) {\n x[j] -= x.DV;\n x[++j]++;\n }\n }\n x.clamp();\n x.drShiftTo(this.m.t, x);\n if (x.compareTo(this.m) >= 0) {\n x.subTo(this.m, x);\n }\n };\n // Montgomery.prototype.mulTo = montMulTo;\n // r = \"xy/R mod m\"; x,y != r\n Montgomery.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n };\n // Montgomery.prototype.sqrTo = montSqrTo;\n // r = \"x^2/R mod m\"; x != r\n Montgomery.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n this.reduce(r);\n };\n return Montgomery;\n}());\n//#endregion Montgomery\n//#region Barrett\n// Barrett modular reduction\nvar Barrett = /** @class */ (function () {\n function Barrett(m) {\n this.m = m;\n // setup Barrett\n this.r2 = nbi();\n this.q3 = nbi();\n BigInteger.ONE.dlShiftTo(2 * m.t, this.r2);\n this.mu = this.r2.divide(m);\n }\n // Barrett.prototype.convert = barrettConvert;\n Barrett.prototype.convert = function (x) {\n if (x.s < 0 || x.t > 2 * this.m.t) {\n return x.mod(this.m);\n }\n else if (x.compareTo(this.m) < 0) {\n return x;\n }\n else {\n var r = nbi();\n x.copyTo(r);\n this.reduce(r);\n return r;\n }\n };\n // Barrett.prototype.revert = barrettRevert;\n Barrett.prototype.revert = function (x) {\n return x;\n };\n // Barrett.prototype.reduce = barrettReduce;\n // x = x mod m (HAC 14.42)\n Barrett.prototype.reduce = function (x) {\n x.drShiftTo(this.m.t - 1, this.r2);\n if (x.t > this.m.t + 1) {\n x.t = this.m.t + 1;\n x.clamp();\n }\n this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3);\n this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2);\n while (x.compareTo(this.r2) < 0) {\n x.dAddOffset(1, this.m.t + 1);\n }\n x.subTo(this.r2, x);\n while (x.compareTo(this.m) >= 0) {\n x.subTo(this.m, x);\n }\n };\n // Barrett.prototype.mulTo = barrettMulTo;\n // r = x*y mod m; x,y != r\n Barrett.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n };\n // Barrett.prototype.sqrTo = barrettSqrTo;\n // r = x^2 mod m; x != r\n Barrett.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n this.reduce(r);\n };\n return Barrett;\n}());\n//#endregion\n//#endregion REDUCERS\n// return new, unset BigInteger\nfunction nbi() { return new BigInteger(null); }\nfunction parseBigInt(str, r) {\n return new BigInteger(str, r);\n}\n// am: Compute w_j += (x*this_i), propagate carries,\n// c is initial carry, returns final carry.\n// c < 3*dvalue, x < 2*dvalue, this_i < dvalue\n// We need to select the fastest one that works in this environment.\nvar inBrowser = typeof navigator !== \"undefined\";\nif (inBrowser && j_lm && (navigator.appName == \"Microsoft Internet Explorer\")) {\n // am2 avoids a big mult-and-extract completely.\n // Max digit bits should be <= 30 because we do bitwise ops\n // on values up to 2*hdvalue^2-hdvalue-1 (< 2^31)\n BigInteger.prototype.am = function am2(i, x, w, j, c, n) {\n var xl = x & 0x7fff;\n var xh = x >> 15;\n while (--n >= 0) {\n var l = this[i] & 0x7fff;\n var h = this[i++] >> 15;\n var m = xh * l + h * xl;\n l = xl * l + ((m & 0x7fff) << 15) + w[j] + (c & 0x3fffffff);\n c = (l >>> 30) + (m >>> 15) + xh * h + (c >>> 30);\n w[j++] = l & 0x3fffffff;\n }\n return c;\n };\n dbits = 30;\n}\nelse if (inBrowser && j_lm && (navigator.appName != \"Netscape\")) {\n // am1: use a single mult and divide to get the high bits,\n // max digit bits should be 26 because\n // max internal value = 2*dvalue^2-2*dvalue (< 2^53)\n BigInteger.prototype.am = function am1(i, x, w, j, c, n) {\n while (--n >= 0) {\n var v = x * this[i++] + w[j] + c;\n c = Math.floor(v / 0x4000000);\n w[j++] = v & 0x3ffffff;\n }\n return c;\n };\n dbits = 26;\n}\nelse { // Mozilla/Netscape seems to prefer am3\n // Alternately, set max digit bits to 28 since some\n // browsers slow down when dealing with 32-bit numbers.\n BigInteger.prototype.am = function am3(i, x, w, j, c, n) {\n var xl = x & 0x3fff;\n var xh = x >> 14;\n while (--n >= 0) {\n var l = this[i] & 0x3fff;\n var h = this[i++] >> 14;\n var m = xh * l + h * xl;\n l = xl * l + ((m & 0x3fff) << 14) + w[j] + c;\n c = (l >> 28) + (m >> 14) + xh * h;\n w[j++] = l & 0xfffffff;\n }\n return c;\n };\n dbits = 28;\n}\nBigInteger.prototype.DB = dbits;\nBigInteger.prototype.DM = ((1 << dbits) - 1);\nBigInteger.prototype.DV = (1 << dbits);\nvar BI_FP = 52;\nBigInteger.prototype.FV = Math.pow(2, BI_FP);\nBigInteger.prototype.F1 = BI_FP - dbits;\nBigInteger.prototype.F2 = 2 * dbits - BI_FP;\n// Digit conversions\nvar BI_RC = [];\nvar rr;\nvar vv;\nrr = \"0\".charCodeAt(0);\nfor (vv = 0; vv <= 9; ++vv) {\n BI_RC[rr++] = vv;\n}\nrr = \"a\".charCodeAt(0);\nfor (vv = 10; vv < 36; ++vv) {\n BI_RC[rr++] = vv;\n}\nrr = \"A\".charCodeAt(0);\nfor (vv = 10; vv < 36; ++vv) {\n BI_RC[rr++] = vv;\n}\nfunction intAt(s, i) {\n var c = BI_RC[s.charCodeAt(i)];\n return (c == null) ? -1 : c;\n}\n// return bigint initialized to value\nfunction nbv(i) {\n var r = nbi();\n r.fromInt(i);\n return r;\n}\n// returns bit length of the integer x\nfunction nbits(x) {\n var r = 1;\n var t;\n if ((t = x >>> 16) != 0) {\n x = t;\n r += 16;\n }\n if ((t = x >> 8) != 0) {\n x = t;\n r += 8;\n }\n if ((t = x >> 4) != 0) {\n x = t;\n r += 4;\n }\n if ((t = x >> 2) != 0) {\n x = t;\n r += 2;\n }\n if ((t = x >> 1) != 0) {\n x = t;\n r += 1;\n }\n return r;\n}\n// \"constants\"\nBigInteger.ZERO = nbv(0);\nBigInteger.ONE = nbv(1);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/jsbn.js?"); + + /***/ + }), /***/ "./lib/lib/jsbn/prng4.js": - /*!*******************************!*\ - !*** ./lib/lib/jsbn/prng4.js ***! - \*******************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Arcfour\": () => (/* binding */ Arcfour),\n/* harmony export */ \"prng_newstate\": () => (/* binding */ prng_newstate),\n/* harmony export */ \"rng_psize\": () => (/* binding */ rng_psize)\n/* harmony export */ });\n// prng4.js - uses Arcfour as a PRNG\nvar Arcfour = /** @class */ (function () {\n function Arcfour() {\n this.i = 0;\n this.j = 0;\n this.S = [];\n }\n // Arcfour.prototype.init = ARC4init;\n // Initialize arcfour context from key, an array of ints, each from [0..255]\n Arcfour.prototype.init = function (key) {\n var i;\n var j;\n var t;\n for (i = 0; i < 256; ++i) {\n this.S[i] = i;\n }\n j = 0;\n for (i = 0; i < 256; ++i) {\n j = (j + this.S[i] + key[i % key.length]) & 255;\n t = this.S[i];\n this.S[i] = this.S[j];\n this.S[j] = t;\n }\n this.i = 0;\n this.j = 0;\n };\n // Arcfour.prototype.next = ARC4next;\n Arcfour.prototype.next = function () {\n var t;\n this.i = (this.i + 1) & 255;\n this.j = (this.j + this.S[this.i]) & 255;\n t = this.S[this.i];\n this.S[this.i] = this.S[this.j];\n this.S[this.j] = t;\n return this.S[(t + this.S[this.i]) & 255];\n };\n return Arcfour;\n}());\n\n// Plug in your RNG constructor here\nfunction prng_newstate() {\n return new Arcfour();\n}\n// Pool size must be a multiple of 4 and greater than 32.\n// An array of bytes the size of the pool will be passed to init()\nvar rng_psize = 256;\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/prng4.js?"); - + /*!*******************************!*\ + !*** ./lib/lib/jsbn/prng4.js ***! + \*******************************/ /***/ - }), + ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + + "use strict"; + eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Arcfour\": () => (/* binding */ Arcfour),\n/* harmony export */ \"prng_newstate\": () => (/* binding */ prng_newstate),\n/* harmony export */ \"rng_psize\": () => (/* binding */ rng_psize)\n/* harmony export */ });\n// prng4.js - uses Arcfour as a PRNG\nvar Arcfour = /** @class */ (function () {\n function Arcfour() {\n this.i = 0;\n this.j = 0;\n this.S = [];\n }\n // Arcfour.prototype.init = ARC4init;\n // Initialize arcfour context from key, an array of ints, each from [0..255]\n Arcfour.prototype.init = function (key) {\n var i;\n var j;\n var t;\n for (i = 0; i < 256; ++i) {\n this.S[i] = i;\n }\n j = 0;\n for (i = 0; i < 256; ++i) {\n j = (j + this.S[i] + key[i % key.length]) & 255;\n t = this.S[i];\n this.S[i] = this.S[j];\n this.S[j] = t;\n }\n this.i = 0;\n this.j = 0;\n };\n // Arcfour.prototype.next = ARC4next;\n Arcfour.prototype.next = function () {\n var t;\n this.i = (this.i + 1) & 255;\n this.j = (this.j + this.S[this.i]) & 255;\n t = this.S[this.i];\n this.S[this.i] = this.S[this.j];\n this.S[this.j] = t;\n return this.S[(t + this.S[this.i]) & 255];\n };\n return Arcfour;\n}());\n\n// Plug in your RNG constructor here\nfunction prng_newstate() {\n return new Arcfour();\n}\n// Pool size must be a multiple of 4 and greater than 32.\n// An array of bytes the size of the pool will be passed to init()\nvar rng_psize = 256;\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/prng4.js?"); + + /***/ + }), /***/ "./lib/lib/jsbn/rng.js": - /*!*****************************!*\ - !*** ./lib/lib/jsbn/rng.js ***! - \*****************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"SecureRandom\": () => (/* binding */ SecureRandom)\n/* harmony export */ });\n/* harmony import */ var _prng4__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./prng4 */ \"./lib/lib/jsbn/prng4.js\");\n// Random number generator - requires a PRNG backend, e.g. prng4.js\n\nvar rng_state;\nvar rng_pool = null;\nvar rng_pptr;\n// Initialize the pool with junk if needed.\nif (rng_pool == null) {\n rng_pool = [];\n rng_pptr = 0;\n var t = void 0;\n if (typeof window !== 'undefined' && window.crypto && window.crypto.getRandomValues) {\n // Extract entropy (2048 bits) from RNG if available\n var z = new Uint32Array(256);\n window.crypto.getRandomValues(z);\n for (t = 0; t < z.length; ++t) {\n rng_pool[rng_pptr++] = z[t] & 255;\n }\n }\n // Use mouse events for entropy, if we do not have enough entropy by the time\n // we need it, entropy will be generated by Math.random.\n var count = 0;\n var onMouseMoveListener_1 = function (ev) {\n count = count || 0;\n if (count >= 256 || rng_pptr >= _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\n if (window.removeEventListener) {\n window.removeEventListener(\"mousemove\", onMouseMoveListener_1, false);\n }\n else if (window.detachEvent) {\n window.detachEvent(\"onmousemove\", onMouseMoveListener_1);\n }\n return;\n }\n try {\n var mouseCoordinates = ev.x + ev.y;\n rng_pool[rng_pptr++] = mouseCoordinates & 255;\n count += 1;\n }\n catch (e) {\n // Sometimes Firefox will deny permission to access event properties for some reason. Ignore.\n }\n };\n if (typeof window !== 'undefined') {\n if (window.addEventListener) {\n window.addEventListener(\"mousemove\", onMouseMoveListener_1, false);\n }\n else if (window.attachEvent) {\n window.attachEvent(\"onmousemove\", onMouseMoveListener_1);\n }\n }\n}\nfunction rng_get_byte() {\n if (rng_state == null) {\n rng_state = (0,_prng4__WEBPACK_IMPORTED_MODULE_0__.prng_newstate)();\n // At this point, we may not have collected enough entropy. If not, fall back to Math.random\n while (rng_pptr < _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\n var random = Math.floor(65536 * Math.random());\n rng_pool[rng_pptr++] = random & 255;\n }\n rng_state.init(rng_pool);\n for (rng_pptr = 0; rng_pptr < rng_pool.length; ++rng_pptr) {\n rng_pool[rng_pptr] = 0;\n }\n rng_pptr = 0;\n }\n // TODO: allow reseeding after first request\n return rng_state.next();\n}\nvar SecureRandom = /** @class */ (function () {\n function SecureRandom() {\n }\n SecureRandom.prototype.nextBytes = function (ba) {\n for (var i = 0; i < ba.length; ++i) {\n ba[i] = rng_get_byte();\n }\n };\n return SecureRandom;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/rng.js?"); - + /*!*****************************!*\ + !*** ./lib/lib/jsbn/rng.js ***! + \*****************************/ /***/ - }), + ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + + "use strict"; + eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"SecureRandom\": () => (/* binding */ SecureRandom)\n/* harmony export */ });\n/* harmony import */ var _prng4__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./prng4 */ \"./lib/lib/jsbn/prng4.js\");\n// Random number generator - requires a PRNG backend, e.g. prng4.js\n\nvar rng_state;\nvar rng_pool = null;\nvar rng_pptr;\n// Initialize the pool with junk if needed.\nif (rng_pool == null) {\n rng_pool = [];\n rng_pptr = 0;\n var t = void 0;\n if (typeof window !== 'undefined' && window.crypto && window.crypto.getRandomValues) {\n // Extract entropy (2048 bits) from RNG if available\n var z = new Uint32Array(256);\n window.crypto.getRandomValues(z);\n for (t = 0; t < z.length; ++t) {\n rng_pool[rng_pptr++] = z[t] & 255;\n }\n }\n // Use mouse events for entropy, if we do not have enough entropy by the time\n // we need it, entropy will be generated by Math.random.\n var count = 0;\n var onMouseMoveListener_1 = function (ev) {\n count = count || 0;\n if (count >= 256 || rng_pptr >= _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\n if (window.removeEventListener) {\n window.removeEventListener(\"mousemove\", onMouseMoveListener_1, false);\n }\n else if (window.detachEvent) {\n window.detachEvent(\"onmousemove\", onMouseMoveListener_1);\n }\n return;\n }\n try {\n var mouseCoordinates = ev.x + ev.y;\n rng_pool[rng_pptr++] = mouseCoordinates & 255;\n count += 1;\n }\n catch (e) {\n // Sometimes Firefox will deny permission to access event properties for some reason. Ignore.\n }\n };\n if (typeof window !== 'undefined') {\n if (window.addEventListener) {\n window.addEventListener(\"mousemove\", onMouseMoveListener_1, false);\n }\n else if (window.attachEvent) {\n window.attachEvent(\"onmousemove\", onMouseMoveListener_1);\n }\n }\n}\nfunction rng_get_byte() {\n if (rng_state == null) {\n rng_state = (0,_prng4__WEBPACK_IMPORTED_MODULE_0__.prng_newstate)();\n // At this point, we may not have collected enough entropy. If not, fall back to Math.random\n while (rng_pptr < _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\n var random = Math.floor(65536 * Math.random());\n rng_pool[rng_pptr++] = random & 255;\n }\n rng_state.init(rng_pool);\n for (rng_pptr = 0; rng_pptr < rng_pool.length; ++rng_pptr) {\n rng_pool[rng_pptr] = 0;\n }\n rng_pptr = 0;\n }\n // TODO: allow reseeding after first request\n return rng_state.next();\n}\nvar SecureRandom = /** @class */ (function () {\n function SecureRandom() {\n }\n SecureRandom.prototype.nextBytes = function (ba) {\n for (var i = 0; i < ba.length; ++i) {\n ba[i] = rng_get_byte();\n }\n };\n return SecureRandom;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/rng.js?"); + + /***/ + }), /***/ "./lib/lib/jsbn/rsa.js": - /*!*****************************!*\ - !*** ./lib/lib/jsbn/rsa.js ***! - \*****************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"RSAKey\": () => (/* binding */ RSAKey)\n/* harmony export */ });\n/* harmony import */ var _jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _rng__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./rng */ \"./lib/lib/jsbn/rng.js\");\n// Depends on jsbn.js and rng.js\n// Version 1.1: support utf-8 encoding in pkcs1pad2\n// convert a (hex) string to a bignum object\n\n\n// function linebrk(s,n) {\n// var ret = \"\";\n// var i = 0;\n// while(i + n < s.length) {\n// ret += s.substring(i,i+n) + \"\\n\";\n// i += n;\n// }\n// return ret + s.substring(i,s.length);\n// }\n// function byte2Hex(b) {\n// if(b < 0x10)\n// return \"0\" + b.toString(16);\n// else\n// return b.toString(16);\n// }\nfunction pkcs1pad1(s, n) {\n if (n < s.length + 22) {\n console.error(\"Message too long for RSA\");\n return null;\n }\n var len = n - s.length - 6;\n var filler = \"\";\n for (var f = 0; f < len; f += 2) {\n filler += \"ff\";\n }\n var m = \"0001\" + filler + \"00\" + s;\n return (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(m, 16);\n}\n// PKCS#1 (type 2, random) pad input string s to n bytes, and return a bigint\nfunction pkcs1pad2(s, n) {\n if (n < s.length + 11) { // TODO: fix for utf-8\n console.error(\"Message too long for RSA\");\n return null;\n }\n var ba = [];\n var i = s.length - 1;\n while (i >= 0 && n > 0) {\n var c = s.charCodeAt(i--);\n if (c < 128) { // encode using utf-8\n ba[--n] = c;\n }\n else if ((c > 127) && (c < 2048)) {\n ba[--n] = (c & 63) | 128;\n ba[--n] = (c >> 6) | 192;\n }\n else {\n ba[--n] = (c & 63) | 128;\n ba[--n] = ((c >> 6) & 63) | 128;\n ba[--n] = (c >> 12) | 224;\n }\n }\n ba[--n] = 0;\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var x = [];\n while (n > 2) { // random non-zero pad\n x[0] = 0;\n while (x[0] == 0) {\n rng.nextBytes(x);\n }\n ba[--n] = x[0];\n }\n ba[--n] = 2;\n ba[--n] = 0;\n return new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(ba);\n}\n// \"empty\" RSA key constructor\nvar RSAKey = /** @class */ (function () {\n function RSAKey() {\n this.n = null;\n this.e = 0;\n this.d = null;\n this.p = null;\n this.q = null;\n this.dmp1 = null;\n this.dmq1 = null;\n this.coeff = null;\n }\n //#region PROTECTED\n // protected\n // RSAKey.prototype.doPublic = RSADoPublic;\n // Perform raw public operation on \"x\": return x^e (mod n)\n RSAKey.prototype.doPublic = function (x) {\n return x.modPowInt(this.e, this.n);\n };\n // RSAKey.prototype.doPrivate = RSADoPrivate;\n // Perform raw private operation on \"x\": return x^d (mod n)\n RSAKey.prototype.doPrivate = function (x) {\n if (this.p == null || this.q == null) {\n return x.modPow(this.d, this.n);\n }\n // TODO: re-calculate any missing CRT params\n var xp = x.mod(this.p).modPow(this.dmp1, this.p);\n var xq = x.mod(this.q).modPow(this.dmq1, this.q);\n while (xp.compareTo(xq) < 0) {\n xp = xp.add(this.p);\n }\n return xp.subtract(xq).multiply(this.coeff).mod(this.p).multiply(this.q).add(xq);\n };\n //#endregion PROTECTED\n //#region PUBLIC\n // RSAKey.prototype.setPublic = RSASetPublic;\n // Set the public key fields N and e from hex strings\n RSAKey.prototype.setPublic = function (N, E) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n }\n else {\n console.error(\"Invalid RSA public key\");\n }\n };\n // RSAKey.prototype.encrypt = RSAEncrypt;\n // Return the PKCS#1 RSA encryption of \"text\" as an even-length hex string\n RSAKey.prototype.encrypt = function (text) {\n var maxLength = (this.n.bitLength() + 7) >> 3;\n var m = pkcs1pad2(text, maxLength);\n if (m == null) {\n return null;\n }\n var c = this.doPublic(m);\n if (c == null) {\n return null;\n }\n var h = c.toString(16);\n var length = h.length;\n // fix zero before result\n for (var i = 0; i < maxLength * 2 - length; i++) {\n h = \"0\" + h;\n }\n return h;\n };\n // RSAKey.prototype.setPrivate = RSASetPrivate;\n // Set the private key fields N, e, and d from hex strings\n RSAKey.prototype.setPrivate = function (N, E, D) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n this.d = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(D, 16);\n }\n else {\n console.error(\"Invalid RSA private key\");\n }\n };\n // RSAKey.prototype.setPrivateEx = RSASetPrivateEx;\n // Set the private key fields N, e, d and CRT params from hex strings\n RSAKey.prototype.setPrivateEx = function (N, E, D, P, Q, DP, DQ, C) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n this.d = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(D, 16);\n this.p = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(P, 16);\n this.q = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(Q, 16);\n this.dmp1 = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(DP, 16);\n this.dmq1 = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(DQ, 16);\n this.coeff = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(C, 16);\n }\n else {\n console.error(\"Invalid RSA private key\");\n }\n };\n // RSAKey.prototype.generate = RSAGenerate;\n // Generate a new random private key B bits long, using public expt E\n RSAKey.prototype.generate = function (B, E) {\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var qs = B >> 1;\n this.e = parseInt(E, 16);\n var ee = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(E, 16);\n for (;;) {\n for (;;) {\n this.p = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(B - qs, 1, rng);\n if (this.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && this.p.isProbablePrime(10)) {\n break;\n }\n }\n for (;;) {\n this.q = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(qs, 1, rng);\n if (this.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && this.q.isProbablePrime(10)) {\n break;\n }\n }\n if (this.p.compareTo(this.q) <= 0) {\n var t = this.p;\n this.p = this.q;\n this.q = t;\n }\n var p1 = this.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var q1 = this.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var phi = p1.multiply(q1);\n if (phi.gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0) {\n this.n = this.p.multiply(this.q);\n this.d = ee.modInverse(phi);\n this.dmp1 = this.d.mod(p1);\n this.dmq1 = this.d.mod(q1);\n this.coeff = this.q.modInverse(this.p);\n break;\n }\n }\n };\n // RSAKey.prototype.decrypt = RSADecrypt;\n // Return the PKCS#1 RSA decryption of \"ctext\".\n // \"ctext\" is an even-length hex string and the output is a plain string.\n RSAKey.prototype.decrypt = function (ctext) {\n var c = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(ctext, 16);\n var m = this.doPrivate(c);\n if (m == null) {\n return null;\n }\n return pkcs1unpad2(m, (this.n.bitLength() + 7) >> 3);\n };\n // Generate a new random private key B bits long, using public expt E\n RSAKey.prototype.generateAsync = function (B, E, callback) {\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var qs = B >> 1;\n this.e = parseInt(E, 16);\n var ee = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(E, 16);\n var rsa = this;\n // These functions have non-descript names because they were originally for(;;) loops.\n // I don't know about cryptography to give them better names than loop1-4.\n var loop1 = function () {\n var loop4 = function () {\n if (rsa.p.compareTo(rsa.q) <= 0) {\n var t = rsa.p;\n rsa.p = rsa.q;\n rsa.q = t;\n }\n var p1 = rsa.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var q1 = rsa.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var phi = p1.multiply(q1);\n if (phi.gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0) {\n rsa.n = rsa.p.multiply(rsa.q);\n rsa.d = ee.modInverse(phi);\n rsa.dmp1 = rsa.d.mod(p1);\n rsa.dmq1 = rsa.d.mod(q1);\n rsa.coeff = rsa.q.modInverse(rsa.p);\n setTimeout(function () { callback(); }, 0); // escape\n }\n else {\n setTimeout(loop1, 0);\n }\n };\n var loop3 = function () {\n rsa.q = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.nbi)();\n rsa.q.fromNumberAsync(qs, 1, rng, function () {\n rsa.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcda(ee, function (r) {\n if (r.compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && rsa.q.isProbablePrime(10)) {\n setTimeout(loop4, 0);\n }\n else {\n setTimeout(loop3, 0);\n }\n });\n });\n };\n var loop2 = function () {\n rsa.p = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.nbi)();\n rsa.p.fromNumberAsync(B - qs, 1, rng, function () {\n rsa.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcda(ee, function (r) {\n if (r.compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && rsa.p.isProbablePrime(10)) {\n setTimeout(loop3, 0);\n }\n else {\n setTimeout(loop2, 0);\n }\n });\n });\n };\n setTimeout(loop2, 0);\n };\n setTimeout(loop1, 0);\n };\n RSAKey.prototype.sign = function (text, digestMethod, digestName) {\n var header = getDigestHeader(digestName);\n var digest = header + digestMethod(text).toString();\n var m = pkcs1pad1(digest, this.n.bitLength() / 4);\n if (m == null) {\n return null;\n }\n var c = this.doPrivate(m);\n if (c == null) {\n return null;\n }\n var h = c.toString(16);\n if ((h.length & 1) == 0) {\n return h;\n }\n else {\n return \"0\" + h;\n }\n };\n RSAKey.prototype.verify = function (text, signature, digestMethod) {\n var c = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(signature, 16);\n var m = this.doPublic(c);\n if (m == null) {\n return null;\n }\n var unpadded = m.toString(16).replace(/^1f+00/, \"\");\n var digest = removeDigestHeader(unpadded);\n return digest == digestMethod(text).toString();\n };\n return RSAKey;\n}());\n\n// Undo PKCS#1 (type 2, random) padding and, if valid, return the plaintext\nfunction pkcs1unpad2(d, n) {\n var b = d.toByteArray();\n var i = 0;\n while (i < b.length && b[i] == 0) {\n ++i;\n }\n if (b.length - i != n - 1 || b[i] != 2) {\n return null;\n }\n ++i;\n while (b[i] != 0) {\n if (++i >= b.length) {\n return null;\n }\n }\n var ret = \"\";\n while (++i < b.length) {\n var c = b[i] & 255;\n if (c < 128) { // utf-8 decode\n ret += String.fromCharCode(c);\n }\n else if ((c > 191) && (c < 224)) {\n ret += String.fromCharCode(((c & 31) << 6) | (b[i + 1] & 63));\n ++i;\n }\n else {\n ret += String.fromCharCode(((c & 15) << 12) | ((b[i + 1] & 63) << 6) | (b[i + 2] & 63));\n i += 2;\n }\n }\n return ret;\n}\n// https://tools.ietf.org/html/rfc3447#page-43\nvar DIGEST_HEADERS = {\n md2: \"3020300c06082a864886f70d020205000410\",\n md5: \"3020300c06082a864886f70d020505000410\",\n sha1: \"3021300906052b0e03021a05000414\",\n sha224: \"302d300d06096086480165030402040500041c\",\n sha256: \"3031300d060960864801650304020105000420\",\n sha384: \"3041300d060960864801650304020205000430\",\n sha512: \"3051300d060960864801650304020305000440\",\n ripemd160: \"3021300906052b2403020105000414\"\n};\nfunction getDigestHeader(name) {\n return DIGEST_HEADERS[name] || \"\";\n}\nfunction removeDigestHeader(str) {\n for (var name_1 in DIGEST_HEADERS) {\n if (DIGEST_HEADERS.hasOwnProperty(name_1)) {\n var header = DIGEST_HEADERS[name_1];\n var len = header.length;\n if (str.substr(0, len) == header) {\n return str.substr(len);\n }\n }\n }\n return str;\n}\n// Return the PKCS#1 RSA encryption of \"text\" as a Base64-encoded string\n// function RSAEncryptB64(text) {\n// var h = this.encrypt(text);\n// if(h) return hex2b64(h); else return null;\n// }\n// public\n// RSAKey.prototype.encrypt_b64 = RSAEncryptB64;\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/rsa.js?"); - + /*!*****************************!*\ + !*** ./lib/lib/jsbn/rsa.js ***! + \*****************************/ /***/ - }), + ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + + "use strict"; + eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"RSAKey\": () => (/* binding */ RSAKey)\n/* harmony export */ });\n/* harmony import */ var _jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _rng__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./rng */ \"./lib/lib/jsbn/rng.js\");\n// Depends on jsbn.js and rng.js\n// Version 1.1: support utf-8 encoding in pkcs1pad2\n// convert a (hex) string to a bignum object\n\n\n// function linebrk(s,n) {\n// var ret = \"\";\n// var i = 0;\n// while(i + n < s.length) {\n// ret += s.substring(i,i+n) + \"\\n\";\n// i += n;\n// }\n// return ret + s.substring(i,s.length);\n// }\n// function byte2Hex(b) {\n// if(b < 0x10)\n// return \"0\" + b.toString(16);\n// else\n// return b.toString(16);\n// }\nfunction pkcs1pad1(s, n) {\n if (n < s.length + 22) {\n console.error(\"Message too long for RSA\");\n return null;\n }\n var len = n - s.length - 6;\n var filler = \"\";\n for (var f = 0; f < len; f += 2) {\n filler += \"ff\";\n }\n var m = \"0001\" + filler + \"00\" + s;\n return (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(m, 16);\n}\n// PKCS#1 (type 2, random) pad input string s to n bytes, and return a bigint\nfunction pkcs1pad2(s, n) {\n if (n < s.length + 11) { // TODO: fix for utf-8\n console.error(\"Message too long for RSA\");\n return null;\n }\n var ba = [];\n var i = s.length - 1;\n while (i >= 0 && n > 0) {\n var c = s.charCodeAt(i--);\n if (c < 128) { // encode using utf-8\n ba[--n] = c;\n }\n else if ((c > 127) && (c < 2048)) {\n ba[--n] = (c & 63) | 128;\n ba[--n] = (c >> 6) | 192;\n }\n else {\n ba[--n] = (c & 63) | 128;\n ba[--n] = ((c >> 6) & 63) | 128;\n ba[--n] = (c >> 12) | 224;\n }\n }\n ba[--n] = 0;\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var x = [];\n while (n > 2) { // random non-zero pad\n x[0] = 0;\n while (x[0] == 0) {\n rng.nextBytes(x);\n }\n ba[--n] = x[0];\n }\n ba[--n] = 2;\n ba[--n] = 0;\n return new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(ba);\n}\n// \"empty\" RSA key constructor\nvar RSAKey = /** @class */ (function () {\n function RSAKey() {\n this.n = null;\n this.e = 0;\n this.d = null;\n this.p = null;\n this.q = null;\n this.dmp1 = null;\n this.dmq1 = null;\n this.coeff = null;\n }\n //#region PROTECTED\n // protected\n // RSAKey.prototype.doPublic = RSADoPublic;\n // Perform raw public operation on \"x\": return x^e (mod n)\n RSAKey.prototype.doPublic = function (x) {\n return x.modPowInt(this.e, this.n);\n };\n // RSAKey.prototype.doPrivate = RSADoPrivate;\n // Perform raw private operation on \"x\": return x^d (mod n)\n RSAKey.prototype.doPrivate = function (x) {\n if (this.p == null || this.q == null) {\n return x.modPow(this.d, this.n);\n }\n // TODO: re-calculate any missing CRT params\n var xp = x.mod(this.p).modPow(this.dmp1, this.p);\n var xq = x.mod(this.q).modPow(this.dmq1, this.q);\n while (xp.compareTo(xq) < 0) {\n xp = xp.add(this.p);\n }\n return xp.subtract(xq).multiply(this.coeff).mod(this.p).multiply(this.q).add(xq);\n };\n //#endregion PROTECTED\n //#region PUBLIC\n // RSAKey.prototype.setPublic = RSASetPublic;\n // Set the public key fields N and e from hex strings\n RSAKey.prototype.setPublic = function (N, E) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n }\n else {\n console.error(\"Invalid RSA public key\");\n }\n };\n // RSAKey.prototype.encrypt = RSAEncrypt;\n // Return the PKCS#1 RSA encryption of \"text\" as an even-length hex string\n RSAKey.prototype.encrypt = function (text) {\n var maxLength = (this.n.bitLength() + 7) >> 3;\n var m = pkcs1pad2(text, maxLength);\n if (m == null) {\n return null;\n }\n var c = this.doPublic(m);\n if (c == null) {\n return null;\n }\n var h = c.toString(16);\n var length = h.length;\n // fix zero before result\n for (var i = 0; i < maxLength * 2 - length; i++) {\n h = \"0\" + h;\n }\n return h;\n };\n // RSAKey.prototype.setPrivate = RSASetPrivate;\n // Set the private key fields N, e, and d from hex strings\n RSAKey.prototype.setPrivate = function (N, E, D) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n this.d = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(D, 16);\n }\n else {\n console.error(\"Invalid RSA private key\");\n }\n };\n // RSAKey.prototype.setPrivateEx = RSASetPrivateEx;\n // Set the private key fields N, e, d and CRT params from hex strings\n RSAKey.prototype.setPrivateEx = function (N, E, D, P, Q, DP, DQ, C) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n this.d = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(D, 16);\n this.p = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(P, 16);\n this.q = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(Q, 16);\n this.dmp1 = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(DP, 16);\n this.dmq1 = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(DQ, 16);\n this.coeff = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(C, 16);\n }\n else {\n console.error(\"Invalid RSA private key\");\n }\n };\n // RSAKey.prototype.generate = RSAGenerate;\n // Generate a new random private key B bits long, using public expt E\n RSAKey.prototype.generate = function (B, E) {\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var qs = B >> 1;\n this.e = parseInt(E, 16);\n var ee = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(E, 16);\n for (;;) {\n for (;;) {\n this.p = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(B - qs, 1, rng);\n if (this.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && this.p.isProbablePrime(10)) {\n break;\n }\n }\n for (;;) {\n this.q = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(qs, 1, rng);\n if (this.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && this.q.isProbablePrime(10)) {\n break;\n }\n }\n if (this.p.compareTo(this.q) <= 0) {\n var t = this.p;\n this.p = this.q;\n this.q = t;\n }\n var p1 = this.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var q1 = this.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var phi = p1.multiply(q1);\n if (phi.gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0) {\n this.n = this.p.multiply(this.q);\n this.d = ee.modInverse(phi);\n this.dmp1 = this.d.mod(p1);\n this.dmq1 = this.d.mod(q1);\n this.coeff = this.q.modInverse(this.p);\n break;\n }\n }\n };\n // RSAKey.prototype.decrypt = RSADecrypt;\n // Return the PKCS#1 RSA decryption of \"ctext\".\n // \"ctext\" is an even-length hex string and the output is a plain string.\n RSAKey.prototype.decrypt = function (ctext) {\n var c = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(ctext, 16);\n var m = this.doPrivate(c);\n if (m == null) {\n return null;\n }\n return pkcs1unpad2(m, (this.n.bitLength() + 7) >> 3);\n };\n // Generate a new random private key B bits long, using public expt E\n RSAKey.prototype.generateAsync = function (B, E, callback) {\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var qs = B >> 1;\n this.e = parseInt(E, 16);\n var ee = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(E, 16);\n var rsa = this;\n // These functions have non-descript names because they were originally for(;;) loops.\n // I don't know about cryptography to give them better names than loop1-4.\n var loop1 = function () {\n var loop4 = function () {\n if (rsa.p.compareTo(rsa.q) <= 0) {\n var t = rsa.p;\n rsa.p = rsa.q;\n rsa.q = t;\n }\n var p1 = rsa.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var q1 = rsa.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var phi = p1.multiply(q1);\n if (phi.gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0) {\n rsa.n = rsa.p.multiply(rsa.q);\n rsa.d = ee.modInverse(phi);\n rsa.dmp1 = rsa.d.mod(p1);\n rsa.dmq1 = rsa.d.mod(q1);\n rsa.coeff = rsa.q.modInverse(rsa.p);\n setTimeout(function () { callback(); }, 0); // escape\n }\n else {\n setTimeout(loop1, 0);\n }\n };\n var loop3 = function () {\n rsa.q = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.nbi)();\n rsa.q.fromNumberAsync(qs, 1, rng, function () {\n rsa.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcda(ee, function (r) {\n if (r.compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && rsa.q.isProbablePrime(10)) {\n setTimeout(loop4, 0);\n }\n else {\n setTimeout(loop3, 0);\n }\n });\n });\n };\n var loop2 = function () {\n rsa.p = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.nbi)();\n rsa.p.fromNumberAsync(B - qs, 1, rng, function () {\n rsa.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcda(ee, function (r) {\n if (r.compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && rsa.p.isProbablePrime(10)) {\n setTimeout(loop3, 0);\n }\n else {\n setTimeout(loop2, 0);\n }\n });\n });\n };\n setTimeout(loop2, 0);\n };\n setTimeout(loop1, 0);\n };\n RSAKey.prototype.sign = function (text, digestMethod, digestName) {\n var header = getDigestHeader(digestName);\n var digest = header + digestMethod(text).toString();\n var m = pkcs1pad1(digest, this.n.bitLength() / 4);\n if (m == null) {\n return null;\n }\n var c = this.doPrivate(m);\n if (c == null) {\n return null;\n }\n var h = c.toString(16);\n if ((h.length & 1) == 0) {\n return h;\n }\n else {\n return \"0\" + h;\n }\n };\n RSAKey.prototype.verify = function (text, signature, digestMethod) {\n var c = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(signature, 16);\n var m = this.doPublic(c);\n if (m == null) {\n return null;\n }\n var unpadded = m.toString(16).replace(/^1f+00/, \"\");\n var digest = removeDigestHeader(unpadded);\n return digest == digestMethod(text).toString();\n };\n return RSAKey;\n}());\n\n// Undo PKCS#1 (type 2, random) padding and, if valid, return the plaintext\nfunction pkcs1unpad2(d, n) {\n var b = d.toByteArray();\n var i = 0;\n while (i < b.length && b[i] == 0) {\n ++i;\n }\n if (b.length - i != n - 1 || b[i] != 2) {\n return null;\n }\n ++i;\n while (b[i] != 0) {\n if (++i >= b.length) {\n return null;\n }\n }\n var ret = \"\";\n while (++i < b.length) {\n var c = b[i] & 255;\n if (c < 128) { // utf-8 decode\n ret += String.fromCharCode(c);\n }\n else if ((c > 191) && (c < 224)) {\n ret += String.fromCharCode(((c & 31) << 6) | (b[i + 1] & 63));\n ++i;\n }\n else {\n ret += String.fromCharCode(((c & 15) << 12) | ((b[i + 1] & 63) << 6) | (b[i + 2] & 63));\n i += 2;\n }\n }\n return ret;\n}\n// https://tools.ietf.org/html/rfc3447#page-43\nvar DIGEST_HEADERS = {\n md2: \"3020300c06082a864886f70d020205000410\",\n md5: \"3020300c06082a864886f70d020505000410\",\n sha1: \"3021300906052b0e03021a05000414\",\n sha224: \"302d300d06096086480165030402040500041c\",\n sha256: \"3031300d060960864801650304020105000420\",\n sha384: \"3041300d060960864801650304020205000430\",\n sha512: \"3051300d060960864801650304020305000440\",\n ripemd160: \"3021300906052b2403020105000414\"\n};\nfunction getDigestHeader(name) {\n return DIGEST_HEADERS[name] || \"\";\n}\nfunction removeDigestHeader(str) {\n for (var name_1 in DIGEST_HEADERS) {\n if (DIGEST_HEADERS.hasOwnProperty(name_1)) {\n var header = DIGEST_HEADERS[name_1];\n var len = header.length;\n if (str.substr(0, len) == header) {\n return str.substr(len);\n }\n }\n }\n return str;\n}\n// Return the PKCS#1 RSA encryption of \"text\" as a Base64-encoded string\n// function RSAEncryptB64(text) {\n// var h = this.encrypt(text);\n// if(h) return hex2b64(h); else return null;\n// }\n// public\n// RSAKey.prototype.encrypt_b64 = RSAEncryptB64;\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/rsa.js?"); + + /***/ + }), /***/ "./lib/lib/jsbn/util.js": - /*!******************************!*\ - !*** ./lib/lib/jsbn/util.js ***! - \******************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"cbit\": () => (/* binding */ cbit),\n/* harmony export */ \"int2char\": () => (/* binding */ int2char),\n/* harmony export */ \"lbit\": () => (/* binding */ lbit),\n/* harmony export */ \"op_and\": () => (/* binding */ op_and),\n/* harmony export */ \"op_andnot\": () => (/* binding */ op_andnot),\n/* harmony export */ \"op_or\": () => (/* binding */ op_or),\n/* harmony export */ \"op_xor\": () => (/* binding */ op_xor)\n/* harmony export */ });\nvar BI_RM = \"0123456789abcdefghijklmnopqrstuvwxyz\";\nfunction int2char(n) {\n return BI_RM.charAt(n);\n}\n//#region BIT_OPERATIONS\n// (public) this & a\nfunction op_and(x, y) {\n return x & y;\n}\n// (public) this | a\nfunction op_or(x, y) {\n return x | y;\n}\n// (public) this ^ a\nfunction op_xor(x, y) {\n return x ^ y;\n}\n// (public) this & ~a\nfunction op_andnot(x, y) {\n return x & ~y;\n}\n// return index of lowest 1-bit in x, x < 2^31\nfunction lbit(x) {\n if (x == 0) {\n return -1;\n }\n var r = 0;\n if ((x & 0xffff) == 0) {\n x >>= 16;\n r += 16;\n }\n if ((x & 0xff) == 0) {\n x >>= 8;\n r += 8;\n }\n if ((x & 0xf) == 0) {\n x >>= 4;\n r += 4;\n }\n if ((x & 3) == 0) {\n x >>= 2;\n r += 2;\n }\n if ((x & 1) == 0) {\n ++r;\n }\n return r;\n}\n// return number of 1 bits in x\nfunction cbit(x) {\n var r = 0;\n while (x != 0) {\n x &= x - 1;\n ++r;\n }\n return r;\n}\n//#endregion BIT_OPERATIONS\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/util.js?"); - + /*!******************************!*\ + !*** ./lib/lib/jsbn/util.js ***! + \******************************/ /***/ - }), + ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + + "use strict"; + eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"cbit\": () => (/* binding */ cbit),\n/* harmony export */ \"int2char\": () => (/* binding */ int2char),\n/* harmony export */ \"lbit\": () => (/* binding */ lbit),\n/* harmony export */ \"op_and\": () => (/* binding */ op_and),\n/* harmony export */ \"op_andnot\": () => (/* binding */ op_andnot),\n/* harmony export */ \"op_or\": () => (/* binding */ op_or),\n/* harmony export */ \"op_xor\": () => (/* binding */ op_xor)\n/* harmony export */ });\nvar BI_RM = \"0123456789abcdefghijklmnopqrstuvwxyz\";\nfunction int2char(n) {\n return BI_RM.charAt(n);\n}\n//#region BIT_OPERATIONS\n// (public) this & a\nfunction op_and(x, y) {\n return x & y;\n}\n// (public) this | a\nfunction op_or(x, y) {\n return x | y;\n}\n// (public) this ^ a\nfunction op_xor(x, y) {\n return x ^ y;\n}\n// (public) this & ~a\nfunction op_andnot(x, y) {\n return x & ~y;\n}\n// return index of lowest 1-bit in x, x < 2^31\nfunction lbit(x) {\n if (x == 0) {\n return -1;\n }\n var r = 0;\n if ((x & 0xffff) == 0) {\n x >>= 16;\n r += 16;\n }\n if ((x & 0xff) == 0) {\n x >>= 8;\n r += 8;\n }\n if ((x & 0xf) == 0) {\n x >>= 4;\n r += 4;\n }\n if ((x & 3) == 0) {\n x >>= 2;\n r += 2;\n }\n if ((x & 1) == 0) {\n ++r;\n }\n return r;\n}\n// return number of 1 bits in x\nfunction cbit(x) {\n var r = 0;\n while (x != 0) {\n x &= x - 1;\n ++r;\n }\n return r;\n}\n//#endregion BIT_OPERATIONS\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/util.js?"); + + /***/ + }), /***/ "./lib/lib/jsrsasign/asn1-1.0.js": - /*!***************************************!*\ - !*** ./lib/lib/jsrsasign/asn1-1.0.js ***! - \***************************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"KJUR\": () => (/* binding */ KJUR)\n/* harmony export */ });\n/* harmony import */ var _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../jsbn/jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _yahoo__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./yahoo */ \"./lib/lib/jsrsasign/yahoo.js\");\n/* asn1-1.0.13.js (c) 2013-2017 Kenji Urushima | kjur.github.com/jsrsasign/license\n */\n/*\n * asn1.js - ASN.1 DER encoder classes\n *\n * Copyright (c) 2013-2017 Kenji Urushima (kenji.urushima@gmail.com)\n *\n * This software is licensed under the terms of the MIT License.\n * https://kjur.github.io/jsrsasign/license\n *\n * The above copyright and license notice shall be\n * included in all copies or substantial portions of the Software.\n */\n\n\n/**\n * @fileOverview\n * @name asn1-1.0.js\n * @author Kenji Urushima kenji.urushima@gmail.com\n * @version asn1 1.0.13 (2017-Jun-02)\n * @since jsrsasign 2.1\n * @license MIT License\n */\n/**\n * kjur's class library name space\n *

\n * This name space provides following name spaces:\n *

    \n *
  • {@link KJUR.asn1} - ASN.1 primitive hexadecimal encoder
  • \n *
  • {@link KJUR.asn1.x509} - ASN.1 structure for X.509 certificate and CRL
  • \n *
  • {@link KJUR.crypto} - Java Cryptographic Extension(JCE) style MessageDigest/Signature\n * class and utilities
  • \n *
\n *

\n * NOTE: Please ignore method summary and document of this namespace. This caused by a bug of jsdoc2.\n * @name KJUR\n * @namespace kjur's class library name space\n */\nvar KJUR = {};\n/**\n * kjur's ASN.1 class library name space\n *

\n * This is ITU-T X.690 ASN.1 DER encoder class library and\n * class structure and methods is very similar to\n * org.bouncycastle.asn1 package of\n * well known BouncyCaslte Cryptography Library.\n *

PROVIDING ASN.1 PRIMITIVES

\n * Here are ASN.1 DER primitive classes.\n *
    \n *
  • 0x01 {@link KJUR.asn1.DERBoolean}
  • \n *
  • 0x02 {@link KJUR.asn1.DERInteger}
  • \n *
  • 0x03 {@link KJUR.asn1.DERBitString}
  • \n *
  • 0x04 {@link KJUR.asn1.DEROctetString}
  • \n *
  • 0x05 {@link KJUR.asn1.DERNull}
  • \n *
  • 0x06 {@link KJUR.asn1.DERObjectIdentifier}
  • \n *
  • 0x0a {@link KJUR.asn1.DEREnumerated}
  • \n *
  • 0x0c {@link KJUR.asn1.DERUTF8String}
  • \n *
  • 0x12 {@link KJUR.asn1.DERNumericString}
  • \n *
  • 0x13 {@link KJUR.asn1.DERPrintableString}
  • \n *
  • 0x14 {@link KJUR.asn1.DERTeletexString}
  • \n *
  • 0x16 {@link KJUR.asn1.DERIA5String}
  • \n *
  • 0x17 {@link KJUR.asn1.DERUTCTime}
  • \n *
  • 0x18 {@link KJUR.asn1.DERGeneralizedTime}
  • \n *
  • 0x30 {@link KJUR.asn1.DERSequence}
  • \n *
  • 0x31 {@link KJUR.asn1.DERSet}
  • \n *
\n *

OTHER ASN.1 CLASSES

\n *
    \n *
  • {@link KJUR.asn1.ASN1Object}
  • \n *
  • {@link KJUR.asn1.DERAbstractString}
  • \n *
  • {@link KJUR.asn1.DERAbstractTime}
  • \n *
  • {@link KJUR.asn1.DERAbstractStructured}
  • \n *
  • {@link KJUR.asn1.DERTaggedObject}
  • \n *
\n *

SUB NAME SPACES

\n *
    \n *
  • {@link KJUR.asn1.cades} - CAdES long term signature format
  • \n *
  • {@link KJUR.asn1.cms} - Cryptographic Message Syntax
  • \n *
  • {@link KJUR.asn1.csr} - Certificate Signing Request (CSR/PKCS#10)
  • \n *
  • {@link KJUR.asn1.tsp} - RFC 3161 Timestamping Protocol Format
  • \n *
  • {@link KJUR.asn1.x509} - RFC 5280 X.509 certificate and CRL
  • \n *
\n *

\n * NOTE: Please ignore method summary and document of this namespace.\n * This caused by a bug of jsdoc2.\n * @name KJUR.asn1\n * @namespace\n */\nif (typeof KJUR.asn1 == \"undefined\" || !KJUR.asn1)\n KJUR.asn1 = {};\n/**\n * ASN1 utilities class\n * @name KJUR.asn1.ASN1Util\n * @class ASN1 utilities class\n * @since asn1 1.0.2\n */\nKJUR.asn1.ASN1Util = new function () {\n this.integerToByteHex = function (i) {\n var h = i.toString(16);\n if ((h.length % 2) == 1)\n h = '0' + h;\n return h;\n };\n this.bigIntToMinTwosComplementsHex = function (bigIntegerValue) {\n var h = bigIntegerValue.toString(16);\n if (h.substr(0, 1) != '-') {\n if (h.length % 2 == 1) {\n h = '0' + h;\n }\n else {\n if (!h.match(/^[0-7]/)) {\n h = '00' + h;\n }\n }\n }\n else {\n var hPos = h.substr(1);\n var xorLen = hPos.length;\n if (xorLen % 2 == 1) {\n xorLen += 1;\n }\n else {\n if (!h.match(/^[0-7]/)) {\n xorLen += 2;\n }\n }\n var hMask = '';\n for (var i = 0; i < xorLen; i++) {\n hMask += 'f';\n }\n var biMask = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(hMask, 16);\n var biNeg = biMask.xor(bigIntegerValue).add(_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n h = biNeg.toString(16).replace(/^-/, '');\n }\n return h;\n };\n /**\n * get PEM string from hexadecimal data and header string\n * @name getPEMStringFromHex\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {String} dataHex hexadecimal string of PEM body\n * @param {String} pemHeader PEM header string (ex. 'RSA PRIVATE KEY')\n * @return {String} PEM formatted string of input data\n * @description\n * This method converts a hexadecimal string to a PEM string with\n * a specified header. Its line break will be CRLF(\"\\r\\n\").\n * @example\n * var pem = KJUR.asn1.ASN1Util.getPEMStringFromHex('616161', 'RSA PRIVATE KEY');\n * // value of pem will be:\n * -----BEGIN PRIVATE KEY-----\n * YWFh\n * -----END PRIVATE KEY-----\n */\n this.getPEMStringFromHex = function (dataHex, pemHeader) {\n return hextopem(dataHex, pemHeader);\n };\n /**\n * generate ASN1Object specifed by JSON parameters\n * @name newObject\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {Array} param JSON parameter to generate ASN1Object\n * @return {KJUR.asn1.ASN1Object} generated object\n * @since asn1 1.0.3\n * @description\n * generate any ASN1Object specified by JSON param\n * including ASN.1 primitive or structured.\n * Generally 'param' can be described as follows:\n *
\n * {TYPE-OF-ASNOBJ: ASN1OBJ-PARAMETER}\n *
\n * 'TYPE-OF-ASN1OBJ' can be one of following symbols:\n *
    \n *
  • 'bool' - DERBoolean
  • \n *
  • 'int' - DERInteger
  • \n *
  • 'bitstr' - DERBitString
  • \n *
  • 'octstr' - DEROctetString
  • \n *
  • 'null' - DERNull
  • \n *
  • 'oid' - DERObjectIdentifier
  • \n *
  • 'enum' - DEREnumerated
  • \n *
  • 'utf8str' - DERUTF8String
  • \n *
  • 'numstr' - DERNumericString
  • \n *
  • 'prnstr' - DERPrintableString
  • \n *
  • 'telstr' - DERTeletexString
  • \n *
  • 'ia5str' - DERIA5String
  • \n *
  • 'utctime' - DERUTCTime
  • \n *
  • 'gentime' - DERGeneralizedTime
  • \n *
  • 'seq' - DERSequence
  • \n *
  • 'set' - DERSet
  • \n *
  • 'tag' - DERTaggedObject
  • \n *
\n * @example\n * newObject({'prnstr': 'aaa'});\n * newObject({'seq': [{'int': 3}, {'prnstr': 'aaa'}]})\n * // ASN.1 Tagged Object\n * newObject({'tag': {'tag': 'a1',\n * 'explicit': true,\n * 'obj': {'seq': [{'int': 3}, {'prnstr': 'aaa'}]}}});\n * // more simple representation of ASN.1 Tagged Object\n * newObject({'tag': ['a1',\n * true,\n * {'seq': [\n * {'int': 3},\n * {'prnstr': 'aaa'}]}\n * ]});\n */\n this.newObject = function (param) {\n var _KJUR = KJUR, _KJUR_asn1 = _KJUR.asn1, _DERBoolean = _KJUR_asn1.DERBoolean, _DERInteger = _KJUR_asn1.DERInteger, _DERBitString = _KJUR_asn1.DERBitString, _DEROctetString = _KJUR_asn1.DEROctetString, _DERNull = _KJUR_asn1.DERNull, _DERObjectIdentifier = _KJUR_asn1.DERObjectIdentifier, _DEREnumerated = _KJUR_asn1.DEREnumerated, _DERUTF8String = _KJUR_asn1.DERUTF8String, _DERNumericString = _KJUR_asn1.DERNumericString, _DERPrintableString = _KJUR_asn1.DERPrintableString, _DERTeletexString = _KJUR_asn1.DERTeletexString, _DERIA5String = _KJUR_asn1.DERIA5String, _DERUTCTime = _KJUR_asn1.DERUTCTime, _DERGeneralizedTime = _KJUR_asn1.DERGeneralizedTime, _DERSequence = _KJUR_asn1.DERSequence, _DERSet = _KJUR_asn1.DERSet, _DERTaggedObject = _KJUR_asn1.DERTaggedObject, _newObject = _KJUR_asn1.ASN1Util.newObject;\n var keys = Object.keys(param);\n if (keys.length != 1)\n throw \"key of param shall be only one.\";\n var key = keys[0];\n if (\":bool:int:bitstr:octstr:null:oid:enum:utf8str:numstr:prnstr:telstr:ia5str:utctime:gentime:seq:set:tag:\".indexOf(\":\" + key + \":\") == -1)\n throw \"undefined key: \" + key;\n if (key == \"bool\")\n return new _DERBoolean(param[key]);\n if (key == \"int\")\n return new _DERInteger(param[key]);\n if (key == \"bitstr\")\n return new _DERBitString(param[key]);\n if (key == \"octstr\")\n return new _DEROctetString(param[key]);\n if (key == \"null\")\n return new _DERNull(param[key]);\n if (key == \"oid\")\n return new _DERObjectIdentifier(param[key]);\n if (key == \"enum\")\n return new _DEREnumerated(param[key]);\n if (key == \"utf8str\")\n return new _DERUTF8String(param[key]);\n if (key == \"numstr\")\n return new _DERNumericString(param[key]);\n if (key == \"prnstr\")\n return new _DERPrintableString(param[key]);\n if (key == \"telstr\")\n return new _DERTeletexString(param[key]);\n if (key == \"ia5str\")\n return new _DERIA5String(param[key]);\n if (key == \"utctime\")\n return new _DERUTCTime(param[key]);\n if (key == \"gentime\")\n return new _DERGeneralizedTime(param[key]);\n if (key == \"seq\") {\n var paramList = param[key];\n var a = [];\n for (var i = 0; i < paramList.length; i++) {\n var asn1Obj = _newObject(paramList[i]);\n a.push(asn1Obj);\n }\n return new _DERSequence({ 'array': a });\n }\n if (key == \"set\") {\n var paramList = param[key];\n var a = [];\n for (var i = 0; i < paramList.length; i++) {\n var asn1Obj = _newObject(paramList[i]);\n a.push(asn1Obj);\n }\n return new _DERSet({ 'array': a });\n }\n if (key == \"tag\") {\n var tagParam = param[key];\n if (Object.prototype.toString.call(tagParam) === '[object Array]' &&\n tagParam.length == 3) {\n var obj = _newObject(tagParam[2]);\n return new _DERTaggedObject({ tag: tagParam[0],\n explicit: tagParam[1],\n obj: obj });\n }\n else {\n var newParam = {};\n if (tagParam.explicit !== undefined)\n newParam.explicit = tagParam.explicit;\n if (tagParam.tag !== undefined)\n newParam.tag = tagParam.tag;\n if (tagParam.obj === undefined)\n throw \"obj shall be specified for 'tag'.\";\n newParam.obj = _newObject(tagParam.obj);\n return new _DERTaggedObject(newParam);\n }\n }\n };\n /**\n * get encoded hexadecimal string of ASN1Object specifed by JSON parameters\n * @name jsonToASN1HEX\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {Array} param JSON parameter to generate ASN1Object\n * @return hexadecimal string of ASN1Object\n * @since asn1 1.0.4\n * @description\n * As for ASN.1 object representation of JSON object,\n * please see {@link newObject}.\n * @example\n * jsonToASN1HEX({'prnstr': 'aaa'});\n */\n this.jsonToASN1HEX = function (param) {\n var asn1Obj = this.newObject(param);\n return asn1Obj.getEncodedHex();\n };\n};\n/**\n * get dot noted oid number string from hexadecimal value of OID\n * @name oidHexToInt\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {String} hex hexadecimal value of object identifier\n * @return {String} dot noted string of object identifier\n * @since jsrsasign 4.8.3 asn1 1.0.7\n * @description\n * This static method converts from hexadecimal string representation of\n * ASN.1 value of object identifier to oid number string.\n * @example\n * KJUR.asn1.ASN1Util.oidHexToInt('550406') → \"2.5.4.6\"\n */\nKJUR.asn1.ASN1Util.oidHexToInt = function (hex) {\n var s = \"\";\n var i01 = parseInt(hex.substr(0, 2), 16);\n var i0 = Math.floor(i01 / 40);\n var i1 = i01 % 40;\n var s = i0 + \".\" + i1;\n var binbuf = \"\";\n for (var i = 2; i < hex.length; i += 2) {\n var value = parseInt(hex.substr(i, 2), 16);\n var bin = (\"00000000\" + value.toString(2)).slice(-8);\n binbuf = binbuf + bin.substr(1, 7);\n if (bin.substr(0, 1) == \"0\") {\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(binbuf, 2);\n s = s + \".\" + bi.toString(10);\n binbuf = \"\";\n }\n }\n ;\n return s;\n};\n/**\n * get hexadecimal value of object identifier from dot noted oid value\n * @name oidIntToHex\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {String} oidString dot noted string of object identifier\n * @return {String} hexadecimal value of object identifier\n * @since jsrsasign 4.8.3 asn1 1.0.7\n * @description\n * This static method converts from object identifier value string.\n * to hexadecimal string representation of it.\n * @example\n * KJUR.asn1.ASN1Util.oidIntToHex(\"2.5.4.6\") → \"550406\"\n */\nKJUR.asn1.ASN1Util.oidIntToHex = function (oidString) {\n var itox = function (i) {\n var h = i.toString(16);\n if (h.length == 1)\n h = '0' + h;\n return h;\n };\n var roidtox = function (roid) {\n var h = '';\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(roid, 10);\n var b = bi.toString(2);\n var padLen = 7 - b.length % 7;\n if (padLen == 7)\n padLen = 0;\n var bPad = '';\n for (var i = 0; i < padLen; i++)\n bPad += '0';\n b = bPad + b;\n for (var i = 0; i < b.length - 1; i += 7) {\n var b8 = b.substr(i, 7);\n if (i != b.length - 7)\n b8 = '1' + b8;\n h += itox(parseInt(b8, 2));\n }\n return h;\n };\n if (!oidString.match(/^[0-9.]+$/)) {\n throw \"malformed oid string: \" + oidString;\n }\n var h = '';\n var a = oidString.split('.');\n var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);\n h += itox(i0);\n a.splice(0, 2);\n for (var i = 0; i < a.length; i++) {\n h += roidtox(a[i]);\n }\n return h;\n};\n// ********************************************************************\n// Abstract ASN.1 Classes\n// ********************************************************************\n// ********************************************************************\n/**\n * base class for ASN.1 DER encoder object\n * @name KJUR.asn1.ASN1Object\n * @class base class for ASN.1 DER encoder object\n * @property {Boolean} isModified flag whether internal data was changed\n * @property {String} hTLV hexadecimal string of ASN.1 TLV\n * @property {String} hT hexadecimal string of ASN.1 TLV tag(T)\n * @property {String} hL hexadecimal string of ASN.1 TLV length(L)\n * @property {String} hV hexadecimal string of ASN.1 TLV value(V)\n * @description\n */\nKJUR.asn1.ASN1Object = function () {\n var isModified = true;\n var hTLV = null;\n var hT = '00';\n var hL = '00';\n var hV = '';\n /**\n * get hexadecimal ASN.1 TLV length(L) bytes from TLV value(V)\n * @name getLengthHexFromValue\n * @memberOf KJUR.asn1.ASN1Object#\n * @function\n * @return {String} hexadecimal string of ASN.1 TLV length(L)\n */\n this.getLengthHexFromValue = function () {\n if (typeof this.hV == \"undefined\" || this.hV == null) {\n throw \"this.hV is null or undefined.\";\n }\n if (this.hV.length % 2 == 1) {\n throw \"value hex must be even length: n=\" + hV.length + \",v=\" + this.hV;\n }\n var n = this.hV.length / 2;\n var hN = n.toString(16);\n if (hN.length % 2 == 1) {\n hN = \"0\" + hN;\n }\n if (n < 128) {\n return hN;\n }\n else {\n var hNlen = hN.length / 2;\n if (hNlen > 15) {\n throw \"ASN.1 length too long to represent by 8x: n = \" + n.toString(16);\n }\n var head = 128 + hNlen;\n return head.toString(16) + hN;\n }\n };\n /**\n * get hexadecimal string of ASN.1 TLV bytes\n * @name getEncodedHex\n * @memberOf KJUR.asn1.ASN1Object#\n * @function\n * @return {String} hexadecimal string of ASN.1 TLV\n */\n this.getEncodedHex = function () {\n if (this.hTLV == null || this.isModified) {\n this.hV = this.getFreshValueHex();\n this.hL = this.getLengthHexFromValue();\n this.hTLV = this.hT + this.hL + this.hV;\n this.isModified = false;\n //alert(\"first time: \" + this.hTLV);\n }\n return this.hTLV;\n };\n /**\n * get hexadecimal string of ASN.1 TLV value(V) bytes\n * @name getValueHex\n * @memberOf KJUR.asn1.ASN1Object#\n * @function\n * @return {String} hexadecimal string of ASN.1 TLV value(V) bytes\n */\n this.getValueHex = function () {\n this.getEncodedHex();\n return this.hV;\n };\n this.getFreshValueHex = function () {\n return '';\n };\n};\n// == BEGIN DERAbstractString ================================================\n/**\n * base class for ASN.1 DER string classes\n * @name KJUR.asn1.DERAbstractString\n * @class base class for ASN.1 DER string classes\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @property {String} s internal string of value\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • str - specify initial ASN.1 value(V) by a string
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERAbstractString = function (params) {\n KJUR.asn1.DERAbstractString.superclass.constructor.call(this);\n var s = null;\n var hV = null;\n /**\n * get string value of this string object\n * @name getString\n * @memberOf KJUR.asn1.DERAbstractString#\n * @function\n * @return {String} string value of this string object\n */\n this.getString = function () {\n return this.s;\n };\n /**\n * set value by a string\n * @name setString\n * @memberOf KJUR.asn1.DERAbstractString#\n * @function\n * @param {String} newS value by a string to set\n */\n this.setString = function (newS) {\n this.hTLV = null;\n this.isModified = true;\n this.s = newS;\n this.hV = stohex(this.s);\n };\n /**\n * set value by a hexadecimal string\n * @name setStringHex\n * @memberOf KJUR.asn1.DERAbstractString#\n * @function\n * @param {String} newHexString value by a hexadecimal string to set\n */\n this.setStringHex = function (newHexString) {\n this.hTLV = null;\n this.isModified = true;\n this.s = null;\n this.hV = newHexString;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params == \"string\") {\n this.setString(params);\n }\n else if (typeof params['str'] != \"undefined\") {\n this.setString(params['str']);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setStringHex(params['hex']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractString, KJUR.asn1.ASN1Object);\n// == END DERAbstractString ================================================\n// == BEGIN DERAbstractTime ==================================================\n/**\n * base class for ASN.1 DER Generalized/UTCTime class\n * @name KJUR.asn1.DERAbstractTime\n * @class base class for ASN.1 DER Generalized/UTCTime class\n * @param {Array} params associative array of parameters (ex. {'str': '130430235959Z'})\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERAbstractTime = function (params) {\n KJUR.asn1.DERAbstractTime.superclass.constructor.call(this);\n var s = null;\n var date = null;\n // --- PRIVATE METHODS --------------------\n this.localDateToUTC = function (d) {\n utc = d.getTime() + (d.getTimezoneOffset() * 60000);\n var utcDate = new Date(utc);\n return utcDate;\n };\n /*\n * format date string by Data object\n * @name formatDate\n * @memberOf KJUR.asn1.AbstractTime;\n * @param {Date} dateObject\n * @param {string} type 'utc' or 'gen'\n * @param {boolean} withMillis flag for with millisections or not\n * @description\n * 'withMillis' flag is supported from asn1 1.0.6.\n */\n this.formatDate = function (dateObject, type, withMillis) {\n var pad = this.zeroPadding;\n var d = this.localDateToUTC(dateObject);\n var year = String(d.getFullYear());\n if (type == 'utc')\n year = year.substr(2, 2);\n var month = pad(String(d.getMonth() + 1), 2);\n var day = pad(String(d.getDate()), 2);\n var hour = pad(String(d.getHours()), 2);\n var min = pad(String(d.getMinutes()), 2);\n var sec = pad(String(d.getSeconds()), 2);\n var s = year + month + day + hour + min + sec;\n if (withMillis === true) {\n var millis = d.getMilliseconds();\n if (millis != 0) {\n var sMillis = pad(String(millis), 3);\n sMillis = sMillis.replace(/[0]+$/, \"\");\n s = s + \".\" + sMillis;\n }\n }\n return s + \"Z\";\n };\n this.zeroPadding = function (s, len) {\n if (s.length >= len)\n return s;\n return new Array(len - s.length + 1).join('0') + s;\n };\n // --- PUBLIC METHODS --------------------\n /**\n * get string value of this string object\n * @name getString\n * @memberOf KJUR.asn1.DERAbstractTime#\n * @function\n * @return {String} string value of this time object\n */\n this.getString = function () {\n return this.s;\n };\n /**\n * set value by a string\n * @name setString\n * @memberOf KJUR.asn1.DERAbstractTime#\n * @function\n * @param {String} newS value by a string to set such like \"130430235959Z\"\n */\n this.setString = function (newS) {\n this.hTLV = null;\n this.isModified = true;\n this.s = newS;\n this.hV = stohex(newS);\n };\n /**\n * set value by a Date object\n * @name setByDateValue\n * @memberOf KJUR.asn1.DERAbstractTime#\n * @function\n * @param {Integer} year year of date (ex. 2013)\n * @param {Integer} month month of date between 1 and 12 (ex. 12)\n * @param {Integer} day day of month\n * @param {Integer} hour hours of date\n * @param {Integer} min minutes of date\n * @param {Integer} sec seconds of date\n */\n this.setByDateValue = function (year, month, day, hour, min, sec) {\n var dateObject = new Date(Date.UTC(year, month - 1, day, hour, min, sec, 0));\n this.setByDate(dateObject);\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractTime, KJUR.asn1.ASN1Object);\n// == END DERAbstractTime ==================================================\n// == BEGIN DERAbstractStructured ============================================\n/**\n * base class for ASN.1 DER structured class\n * @name KJUR.asn1.DERAbstractStructured\n * @class base class for ASN.1 DER structured class\n * @property {Array} asn1Array internal array of ASN1Object\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERAbstractStructured = function (params) {\n KJUR.asn1.DERAbstractString.superclass.constructor.call(this);\n var asn1Array = null;\n /**\n * set value by array of ASN1Object\n * @name setByASN1ObjectArray\n * @memberOf KJUR.asn1.DERAbstractStructured#\n * @function\n * @param {array} asn1ObjectArray array of ASN1Object to set\n */\n this.setByASN1ObjectArray = function (asn1ObjectArray) {\n this.hTLV = null;\n this.isModified = true;\n this.asn1Array = asn1ObjectArray;\n };\n /**\n * append an ASN1Object to internal array\n * @name appendASN1Object\n * @memberOf KJUR.asn1.DERAbstractStructured#\n * @function\n * @param {ASN1Object} asn1Object to add\n */\n this.appendASN1Object = function (asn1Object) {\n this.hTLV = null;\n this.isModified = true;\n this.asn1Array.push(asn1Object);\n };\n this.asn1Array = new Array();\n if (typeof params != \"undefined\") {\n if (typeof params['array'] != \"undefined\") {\n this.asn1Array = params['array'];\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractStructured, KJUR.asn1.ASN1Object);\n// ********************************************************************\n// ASN.1 Object Classes\n// ********************************************************************\n// ********************************************************************\n/**\n * class for ASN.1 DER Boolean\n * @name KJUR.asn1.DERBoolean\n * @class class for ASN.1 DER Boolean\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERBoolean = function () {\n KJUR.asn1.DERBoolean.superclass.constructor.call(this);\n this.hT = \"01\";\n this.hTLV = \"0101ff\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERBoolean, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER Integer\n * @name KJUR.asn1.DERInteger\n * @class class for ASN.1 DER Integer\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • int - specify initial ASN.1 value(V) by integer value
  • \n *
  • bigint - specify initial ASN.1 value(V) by BigInteger object
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERInteger = function (params) {\n KJUR.asn1.DERInteger.superclass.constructor.call(this);\n this.hT = \"02\";\n /**\n * set value by Tom Wu's BigInteger object\n * @name setByBigInteger\n * @memberOf KJUR.asn1.DERInteger#\n * @function\n * @param {BigInteger} bigIntegerValue to set\n */\n this.setByBigInteger = function (bigIntegerValue) {\n this.hTLV = null;\n this.isModified = true;\n this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);\n };\n /**\n * set value by integer value\n * @name setByInteger\n * @memberOf KJUR.asn1.DERInteger\n * @function\n * @param {Integer} integer value to set\n */\n this.setByInteger = function (intValue) {\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(String(intValue), 10);\n this.setByBigInteger(bi);\n };\n /**\n * set value by integer value\n * @name setValueHex\n * @memberOf KJUR.asn1.DERInteger#\n * @function\n * @param {String} hexadecimal string of integer value\n * @description\n *
\n * NOTE: Value shall be represented by minimum octet length of\n * two's complement representation.\n * @example\n * new KJUR.asn1.DERInteger(123);\n * new KJUR.asn1.DERInteger({'int': 123});\n * new KJUR.asn1.DERInteger({'hex': '1fad'});\n */\n this.setValueHex = function (newHexString) {\n this.hV = newHexString;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params['bigint'] != \"undefined\") {\n this.setByBigInteger(params['bigint']);\n }\n else if (typeof params['int'] != \"undefined\") {\n this.setByInteger(params['int']);\n }\n else if (typeof params == \"number\") {\n this.setByInteger(params);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setValueHex(params['hex']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERInteger, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER encoded BitString primitive\n * @name KJUR.asn1.DERBitString\n * @class class for ASN.1 DER encoded BitString primitive\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • bin - specify binary string (ex. '10111')
  • \n *
  • array - specify array of boolean (ex. [true,false,true,true])
  • \n *
  • hex - specify hexadecimal string of ASN.1 value(V) including unused bits
  • \n *
  • obj - specify {@link KJUR.asn1.ASN1Util.newObject}\n * argument for \"BitString encapsulates\" structure.
  • \n *
\n * NOTE1: 'params' can be omitted.
\n * NOTE2: 'obj' parameter have been supported since\n * asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).
\n * @example\n * // default constructor\n * o = new KJUR.asn1.DERBitString();\n * // initialize with binary string\n * o = new KJUR.asn1.DERBitString({bin: \"1011\"});\n * // initialize with boolean array\n * o = new KJUR.asn1.DERBitString({array: [true,false,true,true]});\n * // initialize with hexadecimal string (04 is unused bits)\n * o = new KJUR.asn1.DEROctetString({hex: \"04bac0\"});\n * // initialize with ASN1Util.newObject argument for encapsulated\n * o = new KJUR.asn1.DERBitString({obj: {seq: [{int: 3}, {prnstr: 'aaa'}]}});\n * // above generates a ASN.1 data like this:\n * // BIT STRING, encapsulates {\n * // SEQUENCE {\n * // INTEGER 3\n * // PrintableString 'aaa'\n * // }\n * // }\n */\nKJUR.asn1.DERBitString = function (params) {\n if (params !== undefined && typeof params.obj !== \"undefined\") {\n var o = KJUR.asn1.ASN1Util.newObject(params.obj);\n params.hex = \"00\" + o.getEncodedHex();\n }\n KJUR.asn1.DERBitString.superclass.constructor.call(this);\n this.hT = \"03\";\n /**\n * set ASN.1 value(V) by a hexadecimal string including unused bits\n * @name setHexValueIncludingUnusedBits\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {String} newHexStringIncludingUnusedBits\n */\n this.setHexValueIncludingUnusedBits = function (newHexStringIncludingUnusedBits) {\n this.hTLV = null;\n this.isModified = true;\n this.hV = newHexStringIncludingUnusedBits;\n };\n /**\n * set ASN.1 value(V) by unused bit and hexadecimal string of value\n * @name setUnusedBitsAndHexValue\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {Integer} unusedBits\n * @param {String} hValue\n */\n this.setUnusedBitsAndHexValue = function (unusedBits, hValue) {\n if (unusedBits < 0 || 7 < unusedBits) {\n throw \"unused bits shall be from 0 to 7: u = \" + unusedBits;\n }\n var hUnusedBits = \"0\" + unusedBits;\n this.hTLV = null;\n this.isModified = true;\n this.hV = hUnusedBits + hValue;\n };\n /**\n * set ASN.1 DER BitString by binary string
\n * @name setByBinaryString\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {String} binaryString binary value string (i.e. '10111')\n * @description\n * Its unused bits will be calculated automatically by length of\n * 'binaryValue'.
\n * NOTE: Trailing zeros '0' will be ignored.\n * @example\n * o = new KJUR.asn1.DERBitString();\n * o.setByBooleanArray(\"01011\");\n */\n this.setByBinaryString = function (binaryString) {\n binaryString = binaryString.replace(/0+$/, '');\n var unusedBits = 8 - binaryString.length % 8;\n if (unusedBits == 8)\n unusedBits = 0;\n for (var i = 0; i <= unusedBits; i++) {\n binaryString += '0';\n }\n var h = '';\n for (var i = 0; i < binaryString.length - 1; i += 8) {\n var b = binaryString.substr(i, 8);\n var x = parseInt(b, 2).toString(16);\n if (x.length == 1)\n x = '0' + x;\n h += x;\n }\n this.hTLV = null;\n this.isModified = true;\n this.hV = '0' + unusedBits + h;\n };\n /**\n * set ASN.1 TLV value(V) by an array of boolean
\n * @name setByBooleanArray\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {array} booleanArray array of boolean (ex. [true, false, true])\n * @description\n * NOTE: Trailing falses will be ignored in the ASN.1 DER Object.\n * @example\n * o = new KJUR.asn1.DERBitString();\n * o.setByBooleanArray([false, true, false, true, true]);\n */\n this.setByBooleanArray = function (booleanArray) {\n var s = '';\n for (var i = 0; i < booleanArray.length; i++) {\n if (booleanArray[i] == true) {\n s += '1';\n }\n else {\n s += '0';\n }\n }\n this.setByBinaryString(s);\n };\n /**\n * generate an array of falses with specified length
\n * @name newFalseArray\n * @memberOf KJUR.asn1.DERBitString\n * @function\n * @param {Integer} nLength length of array to generate\n * @return {array} array of boolean falses\n * @description\n * This static method may be useful to initialize boolean array.\n * @example\n * o = new KJUR.asn1.DERBitString();\n * o.newFalseArray(3) → [false, false, false]\n */\n this.newFalseArray = function (nLength) {\n var a = new Array(nLength);\n for (var i = 0; i < nLength; i++) {\n a[i] = false;\n }\n return a;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params == \"string\" && params.toLowerCase().match(/^[0-9a-f]+$/)) {\n this.setHexValueIncludingUnusedBits(params);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setHexValueIncludingUnusedBits(params['hex']);\n }\n else if (typeof params['bin'] != \"undefined\") {\n this.setByBinaryString(params['bin']);\n }\n else if (typeof params['array'] != \"undefined\") {\n this.setByBooleanArray(params['array']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERBitString, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER OctetString
\n * @name KJUR.asn1.DEROctetString\n * @class class for ASN.1 DER OctetString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * This class provides ASN.1 OctetString simple type.
\n * Supported \"params\" attributes are:\n *
    \n *
  • str - to set a string as a value
  • \n *
  • hex - to set a hexadecimal string as a value
  • \n *
  • obj - to set a encapsulated ASN.1 value by JSON object\n * which is defined in {@link KJUR.asn1.ASN1Util.newObject}
  • \n *
\n * NOTE: A parameter 'obj' have been supported\n * for \"OCTET STRING, encapsulates\" structure.\n * since asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).\n * @see KJUR.asn1.DERAbstractString - superclass\n * @example\n * // default constructor\n * o = new KJUR.asn1.DEROctetString();\n * // initialize with string\n * o = new KJUR.asn1.DEROctetString({str: \"aaa\"});\n * // initialize with hexadecimal string\n * o = new KJUR.asn1.DEROctetString({hex: \"616161\"});\n * // initialize with ASN1Util.newObject argument\n * o = new KJUR.asn1.DEROctetString({obj: {seq: [{int: 3}, {prnstr: 'aaa'}]}});\n * // above generates a ASN.1 data like this:\n * // OCTET STRING, encapsulates {\n * // SEQUENCE {\n * // INTEGER 3\n * // PrintableString 'aaa'\n * // }\n * // }\n */\nKJUR.asn1.DEROctetString = function (params) {\n if (params !== undefined && typeof params.obj !== \"undefined\") {\n var o = KJUR.asn1.ASN1Util.newObject(params.obj);\n params.hex = o.getEncodedHex();\n }\n KJUR.asn1.DEROctetString.superclass.constructor.call(this, params);\n this.hT = \"04\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DEROctetString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER Null\n * @name KJUR.asn1.DERNull\n * @class class for ASN.1 DER Null\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERNull = function () {\n KJUR.asn1.DERNull.superclass.constructor.call(this);\n this.hT = \"05\";\n this.hTLV = \"0500\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERNull, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER ObjectIdentifier\n * @name KJUR.asn1.DERObjectIdentifier\n * @class class for ASN.1 DER ObjectIdentifier\n * @param {Array} params associative array of parameters (ex. {'oid': '2.5.4.5'})\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • oid - specify initial ASN.1 value(V) by a oid string (ex. 2.5.4.13)
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERObjectIdentifier = function (params) {\n var itox = function (i) {\n var h = i.toString(16);\n if (h.length == 1)\n h = '0' + h;\n return h;\n };\n var roidtox = function (roid) {\n var h = '';\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(roid, 10);\n var b = bi.toString(2);\n var padLen = 7 - b.length % 7;\n if (padLen == 7)\n padLen = 0;\n var bPad = '';\n for (var i = 0; i < padLen; i++)\n bPad += '0';\n b = bPad + b;\n for (var i = 0; i < b.length - 1; i += 7) {\n var b8 = b.substr(i, 7);\n if (i != b.length - 7)\n b8 = '1' + b8;\n h += itox(parseInt(b8, 2));\n }\n return h;\n };\n KJUR.asn1.DERObjectIdentifier.superclass.constructor.call(this);\n this.hT = \"06\";\n /**\n * set value by a hexadecimal string\n * @name setValueHex\n * @memberOf KJUR.asn1.DERObjectIdentifier#\n * @function\n * @param {String} newHexString hexadecimal value of OID bytes\n */\n this.setValueHex = function (newHexString) {\n this.hTLV = null;\n this.isModified = true;\n this.s = null;\n this.hV = newHexString;\n };\n /**\n * set value by a OID string
\n * @name setValueOidString\n * @memberOf KJUR.asn1.DERObjectIdentifier#\n * @function\n * @param {String} oidString OID string (ex. 2.5.4.13)\n * @example\n * o = new KJUR.asn1.DERObjectIdentifier();\n * o.setValueOidString(\"2.5.4.13\");\n */\n this.setValueOidString = function (oidString) {\n if (!oidString.match(/^[0-9.]+$/)) {\n throw \"malformed oid string: \" + oidString;\n }\n var h = '';\n var a = oidString.split('.');\n var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);\n h += itox(i0);\n a.splice(0, 2);\n for (var i = 0; i < a.length; i++) {\n h += roidtox(a[i]);\n }\n this.hTLV = null;\n this.isModified = true;\n this.s = null;\n this.hV = h;\n };\n /**\n * set value by a OID name\n * @name setValueName\n * @memberOf KJUR.asn1.DERObjectIdentifier#\n * @function\n * @param {String} oidName OID name (ex. 'serverAuth')\n * @since 1.0.1\n * @description\n * OID name shall be defined in 'KJUR.asn1.x509.OID.name2oidList'.\n * Otherwise raise error.\n * @example\n * o = new KJUR.asn1.DERObjectIdentifier();\n * o.setValueName(\"serverAuth\");\n */\n this.setValueName = function (oidName) {\n var oid = KJUR.asn1.x509.OID.name2oid(oidName);\n if (oid !== '') {\n this.setValueOidString(oid);\n }\n else {\n throw \"DERObjectIdentifier oidName undefined: \" + oidName;\n }\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (params !== undefined) {\n if (typeof params === \"string\") {\n if (params.match(/^[0-2].[0-9.]+$/)) {\n this.setValueOidString(params);\n }\n else {\n this.setValueName(params);\n }\n }\n else if (params.oid !== undefined) {\n this.setValueOidString(params.oid);\n }\n else if (params.hex !== undefined) {\n this.setValueHex(params.hex);\n }\n else if (params.name !== undefined) {\n this.setValueName(params.name);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERObjectIdentifier, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER Enumerated\n * @name KJUR.asn1.DEREnumerated\n * @class class for ASN.1 DER Enumerated\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • int - specify initial ASN.1 value(V) by integer value
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n * @example\n * new KJUR.asn1.DEREnumerated(123);\n * new KJUR.asn1.DEREnumerated({int: 123});\n * new KJUR.asn1.DEREnumerated({hex: '1fad'});\n */\nKJUR.asn1.DEREnumerated = function (params) {\n KJUR.asn1.DEREnumerated.superclass.constructor.call(this);\n this.hT = \"0a\";\n /**\n * set value by Tom Wu's BigInteger object\n * @name setByBigInteger\n * @memberOf KJUR.asn1.DEREnumerated#\n * @function\n * @param {BigInteger} bigIntegerValue to set\n */\n this.setByBigInteger = function (bigIntegerValue) {\n this.hTLV = null;\n this.isModified = true;\n this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);\n };\n /**\n * set value by integer value\n * @name setByInteger\n * @memberOf KJUR.asn1.DEREnumerated#\n * @function\n * @param {Integer} integer value to set\n */\n this.setByInteger = function (intValue) {\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(String(intValue), 10);\n this.setByBigInteger(bi);\n };\n /**\n * set value by integer value\n * @name setValueHex\n * @memberOf KJUR.asn1.DEREnumerated#\n * @function\n * @param {String} hexadecimal string of integer value\n * @description\n *
\n * NOTE: Value shall be represented by minimum octet length of\n * two's complement representation.\n */\n this.setValueHex = function (newHexString) {\n this.hV = newHexString;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params['int'] != \"undefined\") {\n this.setByInteger(params['int']);\n }\n else if (typeof params == \"number\") {\n this.setByInteger(params);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setValueHex(params['hex']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DEREnumerated, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER UTF8String\n * @name KJUR.asn1.DERUTF8String\n * @class class for ASN.1 DER UTF8String\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERUTF8String = function (params) {\n KJUR.asn1.DERUTF8String.superclass.constructor.call(this, params);\n this.hT = \"0c\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERUTF8String, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER NumericString\n * @name KJUR.asn1.DERNumericString\n * @class class for ASN.1 DER NumericString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERNumericString = function (params) {\n KJUR.asn1.DERNumericString.superclass.constructor.call(this, params);\n this.hT = \"12\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERNumericString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER PrintableString\n * @name KJUR.asn1.DERPrintableString\n * @class class for ASN.1 DER PrintableString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERPrintableString = function (params) {\n KJUR.asn1.DERPrintableString.superclass.constructor.call(this, params);\n this.hT = \"13\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERPrintableString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER TeletexString\n * @name KJUR.asn1.DERTeletexString\n * @class class for ASN.1 DER TeletexString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERTeletexString = function (params) {\n KJUR.asn1.DERTeletexString.superclass.constructor.call(this, params);\n this.hT = \"14\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERTeletexString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER IA5String\n * @name KJUR.asn1.DERIA5String\n * @class class for ASN.1 DER IA5String\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERIA5String = function (params) {\n KJUR.asn1.DERIA5String.superclass.constructor.call(this, params);\n this.hT = \"16\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERIA5String, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER UTCTime\n * @name KJUR.asn1.DERUTCTime\n * @class class for ASN.1 DER UTCTime\n * @param {Array} params associative array of parameters (ex. {'str': '130430235959Z'})\n * @extends KJUR.asn1.DERAbstractTime\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • str - specify initial ASN.1 value(V) by a string (ex.'130430235959Z')
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
  • date - specify Date object.
  • \n *
\n * NOTE: 'params' can be omitted.\n *

EXAMPLES

\n * @example\n * d1 = new KJUR.asn1.DERUTCTime();\n * d1.setString('130430125959Z');\n *\n * d2 = new KJUR.asn1.DERUTCTime({'str': '130430125959Z'});\n * d3 = new KJUR.asn1.DERUTCTime({'date': new Date(Date.UTC(2015, 0, 31, 0, 0, 0, 0))});\n * d4 = new KJUR.asn1.DERUTCTime('130430125959Z');\n */\nKJUR.asn1.DERUTCTime = function (params) {\n KJUR.asn1.DERUTCTime.superclass.constructor.call(this, params);\n this.hT = \"17\";\n /**\n * set value by a Date object
\n * @name setByDate\n * @memberOf KJUR.asn1.DERUTCTime#\n * @function\n * @param {Date} dateObject Date object to set ASN.1 value(V)\n * @example\n * o = new KJUR.asn1.DERUTCTime();\n * o.setByDate(new Date(\"2016/12/31\"));\n */\n this.setByDate = function (dateObject) {\n this.hTLV = null;\n this.isModified = true;\n this.date = dateObject;\n this.s = this.formatDate(this.date, 'utc');\n this.hV = stohex(this.s);\n };\n this.getFreshValueHex = function () {\n if (typeof this.date == \"undefined\" && typeof this.s == \"undefined\") {\n this.date = new Date();\n this.s = this.formatDate(this.date, 'utc');\n this.hV = stohex(this.s);\n }\n return this.hV;\n };\n if (params !== undefined) {\n if (params.str !== undefined) {\n this.setString(params.str);\n }\n else if (typeof params == \"string\" && params.match(/^[0-9]{12}Z$/)) {\n this.setString(params);\n }\n else if (params.hex !== undefined) {\n this.setStringHex(params.hex);\n }\n else if (params.date !== undefined) {\n this.setByDate(params.date);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERUTCTime, KJUR.asn1.DERAbstractTime);\n// ********************************************************************\n/**\n * class for ASN.1 DER GeneralizedTime\n * @name KJUR.asn1.DERGeneralizedTime\n * @class class for ASN.1 DER GeneralizedTime\n * @param {Array} params associative array of parameters (ex. {'str': '20130430235959Z'})\n * @property {Boolean} withMillis flag to show milliseconds or not\n * @extends KJUR.asn1.DERAbstractTime\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • str - specify initial ASN.1 value(V) by a string (ex.'20130430235959Z')
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
  • date - specify Date object.
  • \n *
  • millis - specify flag to show milliseconds (from 1.0.6)
  • \n *
\n * NOTE1: 'params' can be omitted.\n * NOTE2: 'withMillis' property is supported from asn1 1.0.6.\n */\nKJUR.asn1.DERGeneralizedTime = function (params) {\n KJUR.asn1.DERGeneralizedTime.superclass.constructor.call(this, params);\n this.hT = \"18\";\n this.withMillis = false;\n /**\n * set value by a Date object\n * @name setByDate\n * @memberOf KJUR.asn1.DERGeneralizedTime#\n * @function\n * @param {Date} dateObject Date object to set ASN.1 value(V)\n * @example\n * When you specify UTC time, use 'Date.UTC' method like this:
\n * o1 = new DERUTCTime();\n * o1.setByDate(date);\n *\n * date = new Date(Date.UTC(2015, 0, 31, 23, 59, 59, 0)); #2015JAN31 23:59:59\n */\n this.setByDate = function (dateObject) {\n this.hTLV = null;\n this.isModified = true;\n this.date = dateObject;\n this.s = this.formatDate(this.date, 'gen', this.withMillis);\n this.hV = stohex(this.s);\n };\n this.getFreshValueHex = function () {\n if (this.date === undefined && this.s === undefined) {\n this.date = new Date();\n this.s = this.formatDate(this.date, 'gen', this.withMillis);\n this.hV = stohex(this.s);\n }\n return this.hV;\n };\n if (params !== undefined) {\n if (params.str !== undefined) {\n this.setString(params.str);\n }\n else if (typeof params == \"string\" && params.match(/^[0-9]{14}Z$/)) {\n this.setString(params);\n }\n else if (params.hex !== undefined) {\n this.setStringHex(params.hex);\n }\n else if (params.date !== undefined) {\n this.setByDate(params.date);\n }\n if (params.millis === true) {\n this.withMillis = true;\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERGeneralizedTime, KJUR.asn1.DERAbstractTime);\n// ********************************************************************\n/**\n * class for ASN.1 DER Sequence\n * @name KJUR.asn1.DERSequence\n * @class class for ASN.1 DER Sequence\n * @extends KJUR.asn1.DERAbstractStructured\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • array - specify array of ASN1Object to set elements of content
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERSequence = function (params) {\n KJUR.asn1.DERSequence.superclass.constructor.call(this, params);\n this.hT = \"30\";\n this.getFreshValueHex = function () {\n var h = '';\n for (var i = 0; i < this.asn1Array.length; i++) {\n var asn1Obj = this.asn1Array[i];\n h += asn1Obj.getEncodedHex();\n }\n this.hV = h;\n return this.hV;\n };\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERSequence, KJUR.asn1.DERAbstractStructured);\n// ********************************************************************\n/**\n * class for ASN.1 DER Set\n * @name KJUR.asn1.DERSet\n * @class class for ASN.1 DER Set\n * @extends KJUR.asn1.DERAbstractStructured\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • array - specify array of ASN1Object to set elements of content
  • \n *
  • sortflag - flag for sort (default: true). ASN.1 BER is not sorted in 'SET OF'.
  • \n *
\n * NOTE1: 'params' can be omitted.
\n * NOTE2: sortflag is supported since 1.0.5.\n */\nKJUR.asn1.DERSet = function (params) {\n KJUR.asn1.DERSet.superclass.constructor.call(this, params);\n this.hT = \"31\";\n this.sortFlag = true; // item shall be sorted only in ASN.1 DER\n this.getFreshValueHex = function () {\n var a = new Array();\n for (var i = 0; i < this.asn1Array.length; i++) {\n var asn1Obj = this.asn1Array[i];\n a.push(asn1Obj.getEncodedHex());\n }\n if (this.sortFlag == true)\n a.sort();\n this.hV = a.join('');\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params.sortflag != \"undefined\" &&\n params.sortflag == false)\n this.sortFlag = false;\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERSet, KJUR.asn1.DERAbstractStructured);\n// ********************************************************************\n/**\n * class for ASN.1 DER TaggedObject\n * @name KJUR.asn1.DERTaggedObject\n * @class class for ASN.1 DER TaggedObject\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * Parameter 'tagNoNex' is ASN.1 tag(T) value for this object.\n * For example, if you find '[1]' tag in a ASN.1 dump,\n * 'tagNoHex' will be 'a1'.\n *
\n * As for optional argument 'params' for constructor, you can specify *ANY* of\n * following properties:\n *
    \n *
  • explicit - specify true if this is explicit tag otherwise false\n * (default is 'true').
  • \n *
  • tag - specify tag (default is 'a0' which means [0])
  • \n *
  • obj - specify ASN1Object which is tagged
  • \n *
\n * @example\n * d1 = new KJUR.asn1.DERUTF8String({'str':'a'});\n * d2 = new KJUR.asn1.DERTaggedObject({'obj': d1});\n * hex = d2.getEncodedHex();\n */\nKJUR.asn1.DERTaggedObject = function (params) {\n KJUR.asn1.DERTaggedObject.superclass.constructor.call(this);\n this.hT = \"a0\";\n this.hV = '';\n this.isExplicit = true;\n this.asn1Object = null;\n /**\n * set value by an ASN1Object\n * @name setString\n * @memberOf KJUR.asn1.DERTaggedObject#\n * @function\n * @param {Boolean} isExplicitFlag flag for explicit/implicit tag\n * @param {Integer} tagNoHex hexadecimal string of ASN.1 tag\n * @param {ASN1Object} asn1Object ASN.1 to encapsulate\n */\n this.setASN1Object = function (isExplicitFlag, tagNoHex, asn1Object) {\n this.hT = tagNoHex;\n this.isExplicit = isExplicitFlag;\n this.asn1Object = asn1Object;\n if (this.isExplicit) {\n this.hV = this.asn1Object.getEncodedHex();\n this.hTLV = null;\n this.isModified = true;\n }\n else {\n this.hV = null;\n this.hTLV = asn1Object.getEncodedHex();\n this.hTLV = this.hTLV.replace(/^../, tagNoHex);\n this.isModified = false;\n }\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params['tag'] != \"undefined\") {\n this.hT = params['tag'];\n }\n if (typeof params['explicit'] != \"undefined\") {\n this.isExplicit = params['explicit'];\n }\n if (typeof params['obj'] != \"undefined\") {\n this.asn1Object = params['obj'];\n this.setASN1Object(this.isExplicit, this.hT, this.asn1Object);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERTaggedObject, KJUR.asn1.ASN1Object);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsrsasign/asn1-1.0.js?"); - + /*!***************************************!*\ + !*** ./lib/lib/jsrsasign/asn1-1.0.js ***! + \***************************************/ /***/ - }), + ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + + "use strict"; + eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"KJUR\": () => (/* binding */ KJUR)\n/* harmony export */ });\n/* harmony import */ var _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../jsbn/jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _yahoo__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./yahoo */ \"./lib/lib/jsrsasign/yahoo.js\");\n/* asn1-1.0.13.js (c) 2013-2017 Kenji Urushima | kjur.github.com/jsrsasign/license\n */\n/*\n * asn1.js - ASN.1 DER encoder classes\n *\n * Copyright (c) 2013-2017 Kenji Urushima (kenji.urushima@gmail.com)\n *\n * This software is licensed under the terms of the MIT License.\n * https://kjur.github.io/jsrsasign/license\n *\n * The above copyright and license notice shall be\n * included in all copies or substantial portions of the Software.\n */\n\n\n/**\n * @fileOverview\n * @name asn1-1.0.js\n * @author Kenji Urushima kenji.urushima@gmail.com\n * @version asn1 1.0.13 (2017-Jun-02)\n * @since jsrsasign 2.1\n * @license MIT License\n */\n/**\n * kjur's class library name space\n *

\n * This name space provides following name spaces:\n *

    \n *
  • {@link KJUR.asn1} - ASN.1 primitive hexadecimal encoder
  • \n *
  • {@link KJUR.asn1.x509} - ASN.1 structure for X.509 certificate and CRL
  • \n *
  • {@link KJUR.crypto} - Java Cryptographic Extension(JCE) style MessageDigest/Signature\n * class and utilities
  • \n *
\n *

\n * NOTE: Please ignore method summary and document of this namespace. This caused by a bug of jsdoc2.\n * @name KJUR\n * @namespace kjur's class library name space\n */\nvar KJUR = {};\n/**\n * kjur's ASN.1 class library name space\n *

\n * This is ITU-T X.690 ASN.1 DER encoder class library and\n * class structure and methods is very similar to\n * org.bouncycastle.asn1 package of\n * well known BouncyCaslte Cryptography Library.\n *

PROVIDING ASN.1 PRIMITIVES

\n * Here are ASN.1 DER primitive classes.\n *
    \n *
  • 0x01 {@link KJUR.asn1.DERBoolean}
  • \n *
  • 0x02 {@link KJUR.asn1.DERInteger}
  • \n *
  • 0x03 {@link KJUR.asn1.DERBitString}
  • \n *
  • 0x04 {@link KJUR.asn1.DEROctetString}
  • \n *
  • 0x05 {@link KJUR.asn1.DERNull}
  • \n *
  • 0x06 {@link KJUR.asn1.DERObjectIdentifier}
  • \n *
  • 0x0a {@link KJUR.asn1.DEREnumerated}
  • \n *
  • 0x0c {@link KJUR.asn1.DERUTF8String}
  • \n *
  • 0x12 {@link KJUR.asn1.DERNumericString}
  • \n *
  • 0x13 {@link KJUR.asn1.DERPrintableString}
  • \n *
  • 0x14 {@link KJUR.asn1.DERTeletexString}
  • \n *
  • 0x16 {@link KJUR.asn1.DERIA5String}
  • \n *
  • 0x17 {@link KJUR.asn1.DERUTCTime}
  • \n *
  • 0x18 {@link KJUR.asn1.DERGeneralizedTime}
  • \n *
  • 0x30 {@link KJUR.asn1.DERSequence}
  • \n *
  • 0x31 {@link KJUR.asn1.DERSet}
  • \n *
\n *

OTHER ASN.1 CLASSES

\n *
    \n *
  • {@link KJUR.asn1.ASN1Object}
  • \n *
  • {@link KJUR.asn1.DERAbstractString}
  • \n *
  • {@link KJUR.asn1.DERAbstractTime}
  • \n *
  • {@link KJUR.asn1.DERAbstractStructured}
  • \n *
  • {@link KJUR.asn1.DERTaggedObject}
  • \n *
\n *

SUB NAME SPACES

\n *
    \n *
  • {@link KJUR.asn1.cades} - CAdES long term signature format
  • \n *
  • {@link KJUR.asn1.cms} - Cryptographic Message Syntax
  • \n *
  • {@link KJUR.asn1.csr} - Certificate Signing Request (CSR/PKCS#10)
  • \n *
  • {@link KJUR.asn1.tsp} - RFC 3161 Timestamping Protocol Format
  • \n *
  • {@link KJUR.asn1.x509} - RFC 5280 X.509 certificate and CRL
  • \n *
\n *

\n * NOTE: Please ignore method summary and document of this namespace.\n * This caused by a bug of jsdoc2.\n * @name KJUR.asn1\n * @namespace\n */\nif (typeof KJUR.asn1 == \"undefined\" || !KJUR.asn1)\n KJUR.asn1 = {};\n/**\n * ASN1 utilities class\n * @name KJUR.asn1.ASN1Util\n * @class ASN1 utilities class\n * @since asn1 1.0.2\n */\nKJUR.asn1.ASN1Util = new function () {\n this.integerToByteHex = function (i) {\n var h = i.toString(16);\n if ((h.length % 2) == 1)\n h = '0' + h;\n return h;\n };\n this.bigIntToMinTwosComplementsHex = function (bigIntegerValue) {\n var h = bigIntegerValue.toString(16);\n if (h.substr(0, 1) != '-') {\n if (h.length % 2 == 1) {\n h = '0' + h;\n }\n else {\n if (!h.match(/^[0-7]/)) {\n h = '00' + h;\n }\n }\n }\n else {\n var hPos = h.substr(1);\n var xorLen = hPos.length;\n if (xorLen % 2 == 1) {\n xorLen += 1;\n }\n else {\n if (!h.match(/^[0-7]/)) {\n xorLen += 2;\n }\n }\n var hMask = '';\n for (var i = 0; i < xorLen; i++) {\n hMask += 'f';\n }\n var biMask = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(hMask, 16);\n var biNeg = biMask.xor(bigIntegerValue).add(_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n h = biNeg.toString(16).replace(/^-/, '');\n }\n return h;\n };\n /**\n * get PEM string from hexadecimal data and header string\n * @name getPEMStringFromHex\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {String} dataHex hexadecimal string of PEM body\n * @param {String} pemHeader PEM header string (ex. 'RSA PRIVATE KEY')\n * @return {String} PEM formatted string of input data\n * @description\n * This method converts a hexadecimal string to a PEM string with\n * a specified header. Its line break will be CRLF(\"\\r\\n\").\n * @example\n * var pem = KJUR.asn1.ASN1Util.getPEMStringFromHex('616161', 'RSA PRIVATE KEY');\n * // value of pem will be:\n * -----BEGIN PRIVATE KEY-----\n * YWFh\n * -----END PRIVATE KEY-----\n */\n this.getPEMStringFromHex = function (dataHex, pemHeader) {\n return hextopem(dataHex, pemHeader);\n };\n /**\n * generate ASN1Object specifed by JSON parameters\n * @name newObject\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {Array} param JSON parameter to generate ASN1Object\n * @return {KJUR.asn1.ASN1Object} generated object\n * @since asn1 1.0.3\n * @description\n * generate any ASN1Object specified by JSON param\n * including ASN.1 primitive or structured.\n * Generally 'param' can be described as follows:\n *
\n * {TYPE-OF-ASNOBJ: ASN1OBJ-PARAMETER}\n *
\n * 'TYPE-OF-ASN1OBJ' can be one of following symbols:\n *
    \n *
  • 'bool' - DERBoolean
  • \n *
  • 'int' - DERInteger
  • \n *
  • 'bitstr' - DERBitString
  • \n *
  • 'octstr' - DEROctetString
  • \n *
  • 'null' - DERNull
  • \n *
  • 'oid' - DERObjectIdentifier
  • \n *
  • 'enum' - DEREnumerated
  • \n *
  • 'utf8str' - DERUTF8String
  • \n *
  • 'numstr' - DERNumericString
  • \n *
  • 'prnstr' - DERPrintableString
  • \n *
  • 'telstr' - DERTeletexString
  • \n *
  • 'ia5str' - DERIA5String
  • \n *
  • 'utctime' - DERUTCTime
  • \n *
  • 'gentime' - DERGeneralizedTime
  • \n *
  • 'seq' - DERSequence
  • \n *
  • 'set' - DERSet
  • \n *
  • 'tag' - DERTaggedObject
  • \n *
\n * @example\n * newObject({'prnstr': 'aaa'});\n * newObject({'seq': [{'int': 3}, {'prnstr': 'aaa'}]})\n * // ASN.1 Tagged Object\n * newObject({'tag': {'tag': 'a1',\n * 'explicit': true,\n * 'obj': {'seq': [{'int': 3}, {'prnstr': 'aaa'}]}}});\n * // more simple representation of ASN.1 Tagged Object\n * newObject({'tag': ['a1',\n * true,\n * {'seq': [\n * {'int': 3},\n * {'prnstr': 'aaa'}]}\n * ]});\n */\n this.newObject = function (param) {\n var _KJUR = KJUR, _KJUR_asn1 = _KJUR.asn1, _DERBoolean = _KJUR_asn1.DERBoolean, _DERInteger = _KJUR_asn1.DERInteger, _DERBitString = _KJUR_asn1.DERBitString, _DEROctetString = _KJUR_asn1.DEROctetString, _DERNull = _KJUR_asn1.DERNull, _DERObjectIdentifier = _KJUR_asn1.DERObjectIdentifier, _DEREnumerated = _KJUR_asn1.DEREnumerated, _DERUTF8String = _KJUR_asn1.DERUTF8String, _DERNumericString = _KJUR_asn1.DERNumericString, _DERPrintableString = _KJUR_asn1.DERPrintableString, _DERTeletexString = _KJUR_asn1.DERTeletexString, _DERIA5String = _KJUR_asn1.DERIA5String, _DERUTCTime = _KJUR_asn1.DERUTCTime, _DERGeneralizedTime = _KJUR_asn1.DERGeneralizedTime, _DERSequence = _KJUR_asn1.DERSequence, _DERSet = _KJUR_asn1.DERSet, _DERTaggedObject = _KJUR_asn1.DERTaggedObject, _newObject = _KJUR_asn1.ASN1Util.newObject;\n var keys = Object.keys(param);\n if (keys.length != 1)\n throw \"key of param shall be only one.\";\n var key = keys[0];\n if (\":bool:int:bitstr:octstr:null:oid:enum:utf8str:numstr:prnstr:telstr:ia5str:utctime:gentime:seq:set:tag:\".indexOf(\":\" + key + \":\") == -1)\n throw \"undefined key: \" + key;\n if (key == \"bool\")\n return new _DERBoolean(param[key]);\n if (key == \"int\")\n return new _DERInteger(param[key]);\n if (key == \"bitstr\")\n return new _DERBitString(param[key]);\n if (key == \"octstr\")\n return new _DEROctetString(param[key]);\n if (key == \"null\")\n return new _DERNull(param[key]);\n if (key == \"oid\")\n return new _DERObjectIdentifier(param[key]);\n if (key == \"enum\")\n return new _DEREnumerated(param[key]);\n if (key == \"utf8str\")\n return new _DERUTF8String(param[key]);\n if (key == \"numstr\")\n return new _DERNumericString(param[key]);\n if (key == \"prnstr\")\n return new _DERPrintableString(param[key]);\n if (key == \"telstr\")\n return new _DERTeletexString(param[key]);\n if (key == \"ia5str\")\n return new _DERIA5String(param[key]);\n if (key == \"utctime\")\n return new _DERUTCTime(param[key]);\n if (key == \"gentime\")\n return new _DERGeneralizedTime(param[key]);\n if (key == \"seq\") {\n var paramList = param[key];\n var a = [];\n for (var i = 0; i < paramList.length; i++) {\n var asn1Obj = _newObject(paramList[i]);\n a.push(asn1Obj);\n }\n return new _DERSequence({ 'array': a });\n }\n if (key == \"set\") {\n var paramList = param[key];\n var a = [];\n for (var i = 0; i < paramList.length; i++) {\n var asn1Obj = _newObject(paramList[i]);\n a.push(asn1Obj);\n }\n return new _DERSet({ 'array': a });\n }\n if (key == \"tag\") {\n var tagParam = param[key];\n if (Object.prototype.toString.call(tagParam) === '[object Array]' &&\n tagParam.length == 3) {\n var obj = _newObject(tagParam[2]);\n return new _DERTaggedObject({ tag: tagParam[0],\n explicit: tagParam[1],\n obj: obj });\n }\n else {\n var newParam = {};\n if (tagParam.explicit !== undefined)\n newParam.explicit = tagParam.explicit;\n if (tagParam.tag !== undefined)\n newParam.tag = tagParam.tag;\n if (tagParam.obj === undefined)\n throw \"obj shall be specified for 'tag'.\";\n newParam.obj = _newObject(tagParam.obj);\n return new _DERTaggedObject(newParam);\n }\n }\n };\n /**\n * get encoded hexadecimal string of ASN1Object specifed by JSON parameters\n * @name jsonToASN1HEX\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {Array} param JSON parameter to generate ASN1Object\n * @return hexadecimal string of ASN1Object\n * @since asn1 1.0.4\n * @description\n * As for ASN.1 object representation of JSON object,\n * please see {@link newObject}.\n * @example\n * jsonToASN1HEX({'prnstr': 'aaa'});\n */\n this.jsonToASN1HEX = function (param) {\n var asn1Obj = this.newObject(param);\n return asn1Obj.getEncodedHex();\n };\n};\n/**\n * get dot noted oid number string from hexadecimal value of OID\n * @name oidHexToInt\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {String} hex hexadecimal value of object identifier\n * @return {String} dot noted string of object identifier\n * @since jsrsasign 4.8.3 asn1 1.0.7\n * @description\n * This static method converts from hexadecimal string representation of\n * ASN.1 value of object identifier to oid number string.\n * @example\n * KJUR.asn1.ASN1Util.oidHexToInt('550406') → \"2.5.4.6\"\n */\nKJUR.asn1.ASN1Util.oidHexToInt = function (hex) {\n var s = \"\";\n var i01 = parseInt(hex.substr(0, 2), 16);\n var i0 = Math.floor(i01 / 40);\n var i1 = i01 % 40;\n var s = i0 + \".\" + i1;\n var binbuf = \"\";\n for (var i = 2; i < hex.length; i += 2) {\n var value = parseInt(hex.substr(i, 2), 16);\n var bin = (\"00000000\" + value.toString(2)).slice(-8);\n binbuf = binbuf + bin.substr(1, 7);\n if (bin.substr(0, 1) == \"0\") {\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(binbuf, 2);\n s = s + \".\" + bi.toString(10);\n binbuf = \"\";\n }\n }\n ;\n return s;\n};\n/**\n * get hexadecimal value of object identifier from dot noted oid value\n * @name oidIntToHex\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {String} oidString dot noted string of object identifier\n * @return {String} hexadecimal value of object identifier\n * @since jsrsasign 4.8.3 asn1 1.0.7\n * @description\n * This static method converts from object identifier value string.\n * to hexadecimal string representation of it.\n * @example\n * KJUR.asn1.ASN1Util.oidIntToHex(\"2.5.4.6\") → \"550406\"\n */\nKJUR.asn1.ASN1Util.oidIntToHex = function (oidString) {\n var itox = function (i) {\n var h = i.toString(16);\n if (h.length == 1)\n h = '0' + h;\n return h;\n };\n var roidtox = function (roid) {\n var h = '';\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(roid, 10);\n var b = bi.toString(2);\n var padLen = 7 - b.length % 7;\n if (padLen == 7)\n padLen = 0;\n var bPad = '';\n for (var i = 0; i < padLen; i++)\n bPad += '0';\n b = bPad + b;\n for (var i = 0; i < b.length - 1; i += 7) {\n var b8 = b.substr(i, 7);\n if (i != b.length - 7)\n b8 = '1' + b8;\n h += itox(parseInt(b8, 2));\n }\n return h;\n };\n if (!oidString.match(/^[0-9.]+$/)) {\n throw \"malformed oid string: \" + oidString;\n }\n var h = '';\n var a = oidString.split('.');\n var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);\n h += itox(i0);\n a.splice(0, 2);\n for (var i = 0; i < a.length; i++) {\n h += roidtox(a[i]);\n }\n return h;\n};\n// ********************************************************************\n// Abstract ASN.1 Classes\n// ********************************************************************\n// ********************************************************************\n/**\n * base class for ASN.1 DER encoder object\n * @name KJUR.asn1.ASN1Object\n * @class base class for ASN.1 DER encoder object\n * @property {Boolean} isModified flag whether internal data was changed\n * @property {String} hTLV hexadecimal string of ASN.1 TLV\n * @property {String} hT hexadecimal string of ASN.1 TLV tag(T)\n * @property {String} hL hexadecimal string of ASN.1 TLV length(L)\n * @property {String} hV hexadecimal string of ASN.1 TLV value(V)\n * @description\n */\nKJUR.asn1.ASN1Object = function () {\n var isModified = true;\n var hTLV = null;\n var hT = '00';\n var hL = '00';\n var hV = '';\n /**\n * get hexadecimal ASN.1 TLV length(L) bytes from TLV value(V)\n * @name getLengthHexFromValue\n * @memberOf KJUR.asn1.ASN1Object#\n * @function\n * @return {String} hexadecimal string of ASN.1 TLV length(L)\n */\n this.getLengthHexFromValue = function () {\n if (typeof this.hV == \"undefined\" || this.hV == null) {\n throw \"this.hV is null or undefined.\";\n }\n if (this.hV.length % 2 == 1) {\n throw \"value hex must be even length: n=\" + hV.length + \",v=\" + this.hV;\n }\n var n = this.hV.length / 2;\n var hN = n.toString(16);\n if (hN.length % 2 == 1) {\n hN = \"0\" + hN;\n }\n if (n < 128) {\n return hN;\n }\n else {\n var hNlen = hN.length / 2;\n if (hNlen > 15) {\n throw \"ASN.1 length too long to represent by 8x: n = \" + n.toString(16);\n }\n var head = 128 + hNlen;\n return head.toString(16) + hN;\n }\n };\n /**\n * get hexadecimal string of ASN.1 TLV bytes\n * @name getEncodedHex\n * @memberOf KJUR.asn1.ASN1Object#\n * @function\n * @return {String} hexadecimal string of ASN.1 TLV\n */\n this.getEncodedHex = function () {\n if (this.hTLV == null || this.isModified) {\n this.hV = this.getFreshValueHex();\n this.hL = this.getLengthHexFromValue();\n this.hTLV = this.hT + this.hL + this.hV;\n this.isModified = false;\n //alert(\"first time: \" + this.hTLV);\n }\n return this.hTLV;\n };\n /**\n * get hexadecimal string of ASN.1 TLV value(V) bytes\n * @name getValueHex\n * @memberOf KJUR.asn1.ASN1Object#\n * @function\n * @return {String} hexadecimal string of ASN.1 TLV value(V) bytes\n */\n this.getValueHex = function () {\n this.getEncodedHex();\n return this.hV;\n };\n this.getFreshValueHex = function () {\n return '';\n };\n};\n// == BEGIN DERAbstractString ================================================\n/**\n * base class for ASN.1 DER string classes\n * @name KJUR.asn1.DERAbstractString\n * @class base class for ASN.1 DER string classes\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @property {String} s internal string of value\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • str - specify initial ASN.1 value(V) by a string
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERAbstractString = function (params) {\n KJUR.asn1.DERAbstractString.superclass.constructor.call(this);\n var s = null;\n var hV = null;\n /**\n * get string value of this string object\n * @name getString\n * @memberOf KJUR.asn1.DERAbstractString#\n * @function\n * @return {String} string value of this string object\n */\n this.getString = function () {\n return this.s;\n };\n /**\n * set value by a string\n * @name setString\n * @memberOf KJUR.asn1.DERAbstractString#\n * @function\n * @param {String} newS value by a string to set\n */\n this.setString = function (newS) {\n this.hTLV = null;\n this.isModified = true;\n this.s = newS;\n this.hV = stohex(this.s);\n };\n /**\n * set value by a hexadecimal string\n * @name setStringHex\n * @memberOf KJUR.asn1.DERAbstractString#\n * @function\n * @param {String} newHexString value by a hexadecimal string to set\n */\n this.setStringHex = function (newHexString) {\n this.hTLV = null;\n this.isModified = true;\n this.s = null;\n this.hV = newHexString;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params == \"string\") {\n this.setString(params);\n }\n else if (typeof params['str'] != \"undefined\") {\n this.setString(params['str']);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setStringHex(params['hex']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractString, KJUR.asn1.ASN1Object);\n// == END DERAbstractString ================================================\n// == BEGIN DERAbstractTime ==================================================\n/**\n * base class for ASN.1 DER Generalized/UTCTime class\n * @name KJUR.asn1.DERAbstractTime\n * @class base class for ASN.1 DER Generalized/UTCTime class\n * @param {Array} params associative array of parameters (ex. {'str': '130430235959Z'})\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERAbstractTime = function (params) {\n KJUR.asn1.DERAbstractTime.superclass.constructor.call(this);\n var s = null;\n var date = null;\n // --- PRIVATE METHODS --------------------\n this.localDateToUTC = function (d) {\n utc = d.getTime() + (d.getTimezoneOffset() * 60000);\n var utcDate = new Date(utc);\n return utcDate;\n };\n /*\n * format date string by Data object\n * @name formatDate\n * @memberOf KJUR.asn1.AbstractTime;\n * @param {Date} dateObject\n * @param {string} type 'utc' or 'gen'\n * @param {boolean} withMillis flag for with millisections or not\n * @description\n * 'withMillis' flag is supported from asn1 1.0.6.\n */\n this.formatDate = function (dateObject, type, withMillis) {\n var pad = this.zeroPadding;\n var d = this.localDateToUTC(dateObject);\n var year = String(d.getFullYear());\n if (type == 'utc')\n year = year.substr(2, 2);\n var month = pad(String(d.getMonth() + 1), 2);\n var day = pad(String(d.getDate()), 2);\n var hour = pad(String(d.getHours()), 2);\n var min = pad(String(d.getMinutes()), 2);\n var sec = pad(String(d.getSeconds()), 2);\n var s = year + month + day + hour + min + sec;\n if (withMillis === true) {\n var millis = d.getMilliseconds();\n if (millis != 0) {\n var sMillis = pad(String(millis), 3);\n sMillis = sMillis.replace(/[0]+$/, \"\");\n s = s + \".\" + sMillis;\n }\n }\n return s + \"Z\";\n };\n this.zeroPadding = function (s, len) {\n if (s.length >= len)\n return s;\n return new Array(len - s.length + 1).join('0') + s;\n };\n // --- PUBLIC METHODS --------------------\n /**\n * get string value of this string object\n * @name getString\n * @memberOf KJUR.asn1.DERAbstractTime#\n * @function\n * @return {String} string value of this time object\n */\n this.getString = function () {\n return this.s;\n };\n /**\n * set value by a string\n * @name setString\n * @memberOf KJUR.asn1.DERAbstractTime#\n * @function\n * @param {String} newS value by a string to set such like \"130430235959Z\"\n */\n this.setString = function (newS) {\n this.hTLV = null;\n this.isModified = true;\n this.s = newS;\n this.hV = stohex(newS);\n };\n /**\n * set value by a Date object\n * @name setByDateValue\n * @memberOf KJUR.asn1.DERAbstractTime#\n * @function\n * @param {Integer} year year of date (ex. 2013)\n * @param {Integer} month month of date between 1 and 12 (ex. 12)\n * @param {Integer} day day of month\n * @param {Integer} hour hours of date\n * @param {Integer} min minutes of date\n * @param {Integer} sec seconds of date\n */\n this.setByDateValue = function (year, month, day, hour, min, sec) {\n var dateObject = new Date(Date.UTC(year, month - 1, day, hour, min, sec, 0));\n this.setByDate(dateObject);\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractTime, KJUR.asn1.ASN1Object);\n// == END DERAbstractTime ==================================================\n// == BEGIN DERAbstractStructured ============================================\n/**\n * base class for ASN.1 DER structured class\n * @name KJUR.asn1.DERAbstractStructured\n * @class base class for ASN.1 DER structured class\n * @property {Array} asn1Array internal array of ASN1Object\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERAbstractStructured = function (params) {\n KJUR.asn1.DERAbstractString.superclass.constructor.call(this);\n var asn1Array = null;\n /**\n * set value by array of ASN1Object\n * @name setByASN1ObjectArray\n * @memberOf KJUR.asn1.DERAbstractStructured#\n * @function\n * @param {array} asn1ObjectArray array of ASN1Object to set\n */\n this.setByASN1ObjectArray = function (asn1ObjectArray) {\n this.hTLV = null;\n this.isModified = true;\n this.asn1Array = asn1ObjectArray;\n };\n /**\n * append an ASN1Object to internal array\n * @name appendASN1Object\n * @memberOf KJUR.asn1.DERAbstractStructured#\n * @function\n * @param {ASN1Object} asn1Object to add\n */\n this.appendASN1Object = function (asn1Object) {\n this.hTLV = null;\n this.isModified = true;\n this.asn1Array.push(asn1Object);\n };\n this.asn1Array = new Array();\n if (typeof params != \"undefined\") {\n if (typeof params['array'] != \"undefined\") {\n this.asn1Array = params['array'];\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractStructured, KJUR.asn1.ASN1Object);\n// ********************************************************************\n// ASN.1 Object Classes\n// ********************************************************************\n// ********************************************************************\n/**\n * class for ASN.1 DER Boolean\n * @name KJUR.asn1.DERBoolean\n * @class class for ASN.1 DER Boolean\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERBoolean = function () {\n KJUR.asn1.DERBoolean.superclass.constructor.call(this);\n this.hT = \"01\";\n this.hTLV = \"0101ff\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERBoolean, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER Integer\n * @name KJUR.asn1.DERInteger\n * @class class for ASN.1 DER Integer\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • int - specify initial ASN.1 value(V) by integer value
  • \n *
  • bigint - specify initial ASN.1 value(V) by BigInteger object
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERInteger = function (params) {\n KJUR.asn1.DERInteger.superclass.constructor.call(this);\n this.hT = \"02\";\n /**\n * set value by Tom Wu's BigInteger object\n * @name setByBigInteger\n * @memberOf KJUR.asn1.DERInteger#\n * @function\n * @param {BigInteger} bigIntegerValue to set\n */\n this.setByBigInteger = function (bigIntegerValue) {\n this.hTLV = null;\n this.isModified = true;\n this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);\n };\n /**\n * set value by integer value\n * @name setByInteger\n * @memberOf KJUR.asn1.DERInteger\n * @function\n * @param {Integer} integer value to set\n */\n this.setByInteger = function (intValue) {\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(String(intValue), 10);\n this.setByBigInteger(bi);\n };\n /**\n * set value by integer value\n * @name setValueHex\n * @memberOf KJUR.asn1.DERInteger#\n * @function\n * @param {String} hexadecimal string of integer value\n * @description\n *
\n * NOTE: Value shall be represented by minimum octet length of\n * two's complement representation.\n * @example\n * new KJUR.asn1.DERInteger(123);\n * new KJUR.asn1.DERInteger({'int': 123});\n * new KJUR.asn1.DERInteger({'hex': '1fad'});\n */\n this.setValueHex = function (newHexString) {\n this.hV = newHexString;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params['bigint'] != \"undefined\") {\n this.setByBigInteger(params['bigint']);\n }\n else if (typeof params['int'] != \"undefined\") {\n this.setByInteger(params['int']);\n }\n else if (typeof params == \"number\") {\n this.setByInteger(params);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setValueHex(params['hex']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERInteger, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER encoded BitString primitive\n * @name KJUR.asn1.DERBitString\n * @class class for ASN.1 DER encoded BitString primitive\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • bin - specify binary string (ex. '10111')
  • \n *
  • array - specify array of boolean (ex. [true,false,true,true])
  • \n *
  • hex - specify hexadecimal string of ASN.1 value(V) including unused bits
  • \n *
  • obj - specify {@link KJUR.asn1.ASN1Util.newObject}\n * argument for \"BitString encapsulates\" structure.
  • \n *
\n * NOTE1: 'params' can be omitted.
\n * NOTE2: 'obj' parameter have been supported since\n * asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).
\n * @example\n * // default constructor\n * o = new KJUR.asn1.DERBitString();\n * // initialize with binary string\n * o = new KJUR.asn1.DERBitString({bin: \"1011\"});\n * // initialize with boolean array\n * o = new KJUR.asn1.DERBitString({array: [true,false,true,true]});\n * // initialize with hexadecimal string (04 is unused bits)\n * o = new KJUR.asn1.DEROctetString({hex: \"04bac0\"});\n * // initialize with ASN1Util.newObject argument for encapsulated\n * o = new KJUR.asn1.DERBitString({obj: {seq: [{int: 3}, {prnstr: 'aaa'}]}});\n * // above generates a ASN.1 data like this:\n * // BIT STRING, encapsulates {\n * // SEQUENCE {\n * // INTEGER 3\n * // PrintableString 'aaa'\n * // }\n * // }\n */\nKJUR.asn1.DERBitString = function (params) {\n if (params !== undefined && typeof params.obj !== \"undefined\") {\n var o = KJUR.asn1.ASN1Util.newObject(params.obj);\n params.hex = \"00\" + o.getEncodedHex();\n }\n KJUR.asn1.DERBitString.superclass.constructor.call(this);\n this.hT = \"03\";\n /**\n * set ASN.1 value(V) by a hexadecimal string including unused bits\n * @name setHexValueIncludingUnusedBits\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {String} newHexStringIncludingUnusedBits\n */\n this.setHexValueIncludingUnusedBits = function (newHexStringIncludingUnusedBits) {\n this.hTLV = null;\n this.isModified = true;\n this.hV = newHexStringIncludingUnusedBits;\n };\n /**\n * set ASN.1 value(V) by unused bit and hexadecimal string of value\n * @name setUnusedBitsAndHexValue\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {Integer} unusedBits\n * @param {String} hValue\n */\n this.setUnusedBitsAndHexValue = function (unusedBits, hValue) {\n if (unusedBits < 0 || 7 < unusedBits) {\n throw \"unused bits shall be from 0 to 7: u = \" + unusedBits;\n }\n var hUnusedBits = \"0\" + unusedBits;\n this.hTLV = null;\n this.isModified = true;\n this.hV = hUnusedBits + hValue;\n };\n /**\n * set ASN.1 DER BitString by binary string
\n * @name setByBinaryString\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {String} binaryString binary value string (i.e. '10111')\n * @description\n * Its unused bits will be calculated automatically by length of\n * 'binaryValue'.
\n * NOTE: Trailing zeros '0' will be ignored.\n * @example\n * o = new KJUR.asn1.DERBitString();\n * o.setByBooleanArray(\"01011\");\n */\n this.setByBinaryString = function (binaryString) {\n binaryString = binaryString.replace(/0+$/, '');\n var unusedBits = 8 - binaryString.length % 8;\n if (unusedBits == 8)\n unusedBits = 0;\n for (var i = 0; i <= unusedBits; i++) {\n binaryString += '0';\n }\n var h = '';\n for (var i = 0; i < binaryString.length - 1; i += 8) {\n var b = binaryString.substr(i, 8);\n var x = parseInt(b, 2).toString(16);\n if (x.length == 1)\n x = '0' + x;\n h += x;\n }\n this.hTLV = null;\n this.isModified = true;\n this.hV = '0' + unusedBits + h;\n };\n /**\n * set ASN.1 TLV value(V) by an array of boolean
\n * @name setByBooleanArray\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {array} booleanArray array of boolean (ex. [true, false, true])\n * @description\n * NOTE: Trailing falses will be ignored in the ASN.1 DER Object.\n * @example\n * o = new KJUR.asn1.DERBitString();\n * o.setByBooleanArray([false, true, false, true, true]);\n */\n this.setByBooleanArray = function (booleanArray) {\n var s = '';\n for (var i = 0; i < booleanArray.length; i++) {\n if (booleanArray[i] == true) {\n s += '1';\n }\n else {\n s += '0';\n }\n }\n this.setByBinaryString(s);\n };\n /**\n * generate an array of falses with specified length
\n * @name newFalseArray\n * @memberOf KJUR.asn1.DERBitString\n * @function\n * @param {Integer} nLength length of array to generate\n * @return {array} array of boolean falses\n * @description\n * This static method may be useful to initialize boolean array.\n * @example\n * o = new KJUR.asn1.DERBitString();\n * o.newFalseArray(3) → [false, false, false]\n */\n this.newFalseArray = function (nLength) {\n var a = new Array(nLength);\n for (var i = 0; i < nLength; i++) {\n a[i] = false;\n }\n return a;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params == \"string\" && params.toLowerCase().match(/^[0-9a-f]+$/)) {\n this.setHexValueIncludingUnusedBits(params);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setHexValueIncludingUnusedBits(params['hex']);\n }\n else if (typeof params['bin'] != \"undefined\") {\n this.setByBinaryString(params['bin']);\n }\n else if (typeof params['array'] != \"undefined\") {\n this.setByBooleanArray(params['array']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERBitString, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER OctetString
\n * @name KJUR.asn1.DEROctetString\n * @class class for ASN.1 DER OctetString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * This class provides ASN.1 OctetString simple type.
\n * Supported \"params\" attributes are:\n *
    \n *
  • str - to set a string as a value
  • \n *
  • hex - to set a hexadecimal string as a value
  • \n *
  • obj - to set a encapsulated ASN.1 value by JSON object\n * which is defined in {@link KJUR.asn1.ASN1Util.newObject}
  • \n *
\n * NOTE: A parameter 'obj' have been supported\n * for \"OCTET STRING, encapsulates\" structure.\n * since asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).\n * @see KJUR.asn1.DERAbstractString - superclass\n * @example\n * // default constructor\n * o = new KJUR.asn1.DEROctetString();\n * // initialize with string\n * o = new KJUR.asn1.DEROctetString({str: \"aaa\"});\n * // initialize with hexadecimal string\n * o = new KJUR.asn1.DEROctetString({hex: \"616161\"});\n * // initialize with ASN1Util.newObject argument\n * o = new KJUR.asn1.DEROctetString({obj: {seq: [{int: 3}, {prnstr: 'aaa'}]}});\n * // above generates a ASN.1 data like this:\n * // OCTET STRING, encapsulates {\n * // SEQUENCE {\n * // INTEGER 3\n * // PrintableString 'aaa'\n * // }\n * // }\n */\nKJUR.asn1.DEROctetString = function (params) {\n if (params !== undefined && typeof params.obj !== \"undefined\") {\n var o = KJUR.asn1.ASN1Util.newObject(params.obj);\n params.hex = o.getEncodedHex();\n }\n KJUR.asn1.DEROctetString.superclass.constructor.call(this, params);\n this.hT = \"04\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DEROctetString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER Null\n * @name KJUR.asn1.DERNull\n * @class class for ASN.1 DER Null\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERNull = function () {\n KJUR.asn1.DERNull.superclass.constructor.call(this);\n this.hT = \"05\";\n this.hTLV = \"0500\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERNull, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER ObjectIdentifier\n * @name KJUR.asn1.DERObjectIdentifier\n * @class class for ASN.1 DER ObjectIdentifier\n * @param {Array} params associative array of parameters (ex. {'oid': '2.5.4.5'})\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • oid - specify initial ASN.1 value(V) by a oid string (ex. 2.5.4.13)
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERObjectIdentifier = function (params) {\n var itox = function (i) {\n var h = i.toString(16);\n if (h.length == 1)\n h = '0' + h;\n return h;\n };\n var roidtox = function (roid) {\n var h = '';\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(roid, 10);\n var b = bi.toString(2);\n var padLen = 7 - b.length % 7;\n if (padLen == 7)\n padLen = 0;\n var bPad = '';\n for (var i = 0; i < padLen; i++)\n bPad += '0';\n b = bPad + b;\n for (var i = 0; i < b.length - 1; i += 7) {\n var b8 = b.substr(i, 7);\n if (i != b.length - 7)\n b8 = '1' + b8;\n h += itox(parseInt(b8, 2));\n }\n return h;\n };\n KJUR.asn1.DERObjectIdentifier.superclass.constructor.call(this);\n this.hT = \"06\";\n /**\n * set value by a hexadecimal string\n * @name setValueHex\n * @memberOf KJUR.asn1.DERObjectIdentifier#\n * @function\n * @param {String} newHexString hexadecimal value of OID bytes\n */\n this.setValueHex = function (newHexString) {\n this.hTLV = null;\n this.isModified = true;\n this.s = null;\n this.hV = newHexString;\n };\n /**\n * set value by a OID string
\n * @name setValueOidString\n * @memberOf KJUR.asn1.DERObjectIdentifier#\n * @function\n * @param {String} oidString OID string (ex. 2.5.4.13)\n * @example\n * o = new KJUR.asn1.DERObjectIdentifier();\n * o.setValueOidString(\"2.5.4.13\");\n */\n this.setValueOidString = function (oidString) {\n if (!oidString.match(/^[0-9.]+$/)) {\n throw \"malformed oid string: \" + oidString;\n }\n var h = '';\n var a = oidString.split('.');\n var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);\n h += itox(i0);\n a.splice(0, 2);\n for (var i = 0; i < a.length; i++) {\n h += roidtox(a[i]);\n }\n this.hTLV = null;\n this.isModified = true;\n this.s = null;\n this.hV = h;\n };\n /**\n * set value by a OID name\n * @name setValueName\n * @memberOf KJUR.asn1.DERObjectIdentifier#\n * @function\n * @param {String} oidName OID name (ex. 'serverAuth')\n * @since 1.0.1\n * @description\n * OID name shall be defined in 'KJUR.asn1.x509.OID.name2oidList'.\n * Otherwise raise error.\n * @example\n * o = new KJUR.asn1.DERObjectIdentifier();\n * o.setValueName(\"serverAuth\");\n */\n this.setValueName = function (oidName) {\n var oid = KJUR.asn1.x509.OID.name2oid(oidName);\n if (oid !== '') {\n this.setValueOidString(oid);\n }\n else {\n throw \"DERObjectIdentifier oidName undefined: \" + oidName;\n }\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (params !== undefined) {\n if (typeof params === \"string\") {\n if (params.match(/^[0-2].[0-9.]+$/)) {\n this.setValueOidString(params);\n }\n else {\n this.setValueName(params);\n }\n }\n else if (params.oid !== undefined) {\n this.setValueOidString(params.oid);\n }\n else if (params.hex !== undefined) {\n this.setValueHex(params.hex);\n }\n else if (params.name !== undefined) {\n this.setValueName(params.name);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERObjectIdentifier, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER Enumerated\n * @name KJUR.asn1.DEREnumerated\n * @class class for ASN.1 DER Enumerated\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • int - specify initial ASN.1 value(V) by integer value
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n * @example\n * new KJUR.asn1.DEREnumerated(123);\n * new KJUR.asn1.DEREnumerated({int: 123});\n * new KJUR.asn1.DEREnumerated({hex: '1fad'});\n */\nKJUR.asn1.DEREnumerated = function (params) {\n KJUR.asn1.DEREnumerated.superclass.constructor.call(this);\n this.hT = \"0a\";\n /**\n * set value by Tom Wu's BigInteger object\n * @name setByBigInteger\n * @memberOf KJUR.asn1.DEREnumerated#\n * @function\n * @param {BigInteger} bigIntegerValue to set\n */\n this.setByBigInteger = function (bigIntegerValue) {\n this.hTLV = null;\n this.isModified = true;\n this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);\n };\n /**\n * set value by integer value\n * @name setByInteger\n * @memberOf KJUR.asn1.DEREnumerated#\n * @function\n * @param {Integer} integer value to set\n */\n this.setByInteger = function (intValue) {\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(String(intValue), 10);\n this.setByBigInteger(bi);\n };\n /**\n * set value by integer value\n * @name setValueHex\n * @memberOf KJUR.asn1.DEREnumerated#\n * @function\n * @param {String} hexadecimal string of integer value\n * @description\n *
\n * NOTE: Value shall be represented by minimum octet length of\n * two's complement representation.\n */\n this.setValueHex = function (newHexString) {\n this.hV = newHexString;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params['int'] != \"undefined\") {\n this.setByInteger(params['int']);\n }\n else if (typeof params == \"number\") {\n this.setByInteger(params);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setValueHex(params['hex']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DEREnumerated, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER UTF8String\n * @name KJUR.asn1.DERUTF8String\n * @class class for ASN.1 DER UTF8String\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERUTF8String = function (params) {\n KJUR.asn1.DERUTF8String.superclass.constructor.call(this, params);\n this.hT = \"0c\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERUTF8String, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER NumericString\n * @name KJUR.asn1.DERNumericString\n * @class class for ASN.1 DER NumericString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERNumericString = function (params) {\n KJUR.asn1.DERNumericString.superclass.constructor.call(this, params);\n this.hT = \"12\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERNumericString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER PrintableString\n * @name KJUR.asn1.DERPrintableString\n * @class class for ASN.1 DER PrintableString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERPrintableString = function (params) {\n KJUR.asn1.DERPrintableString.superclass.constructor.call(this, params);\n this.hT = \"13\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERPrintableString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER TeletexString\n * @name KJUR.asn1.DERTeletexString\n * @class class for ASN.1 DER TeletexString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERTeletexString = function (params) {\n KJUR.asn1.DERTeletexString.superclass.constructor.call(this, params);\n this.hT = \"14\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERTeletexString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER IA5String\n * @name KJUR.asn1.DERIA5String\n * @class class for ASN.1 DER IA5String\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERIA5String = function (params) {\n KJUR.asn1.DERIA5String.superclass.constructor.call(this, params);\n this.hT = \"16\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERIA5String, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER UTCTime\n * @name KJUR.asn1.DERUTCTime\n * @class class for ASN.1 DER UTCTime\n * @param {Array} params associative array of parameters (ex. {'str': '130430235959Z'})\n * @extends KJUR.asn1.DERAbstractTime\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • str - specify initial ASN.1 value(V) by a string (ex.'130430235959Z')
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
  • date - specify Date object.
  • \n *
\n * NOTE: 'params' can be omitted.\n *

EXAMPLES

\n * @example\n * d1 = new KJUR.asn1.DERUTCTime();\n * d1.setString('130430125959Z');\n *\n * d2 = new KJUR.asn1.DERUTCTime({'str': '130430125959Z'});\n * d3 = new KJUR.asn1.DERUTCTime({'date': new Date(Date.UTC(2015, 0, 31, 0, 0, 0, 0))});\n * d4 = new KJUR.asn1.DERUTCTime('130430125959Z');\n */\nKJUR.asn1.DERUTCTime = function (params) {\n KJUR.asn1.DERUTCTime.superclass.constructor.call(this, params);\n this.hT = \"17\";\n /**\n * set value by a Date object
\n * @name setByDate\n * @memberOf KJUR.asn1.DERUTCTime#\n * @function\n * @param {Date} dateObject Date object to set ASN.1 value(V)\n * @example\n * o = new KJUR.asn1.DERUTCTime();\n * o.setByDate(new Date(\"2016/12/31\"));\n */\n this.setByDate = function (dateObject) {\n this.hTLV = null;\n this.isModified = true;\n this.date = dateObject;\n this.s = this.formatDate(this.date, 'utc');\n this.hV = stohex(this.s);\n };\n this.getFreshValueHex = function () {\n if (typeof this.date == \"undefined\" && typeof this.s == \"undefined\") {\n this.date = new Date();\n this.s = this.formatDate(this.date, 'utc');\n this.hV = stohex(this.s);\n }\n return this.hV;\n };\n if (params !== undefined) {\n if (params.str !== undefined) {\n this.setString(params.str);\n }\n else if (typeof params == \"string\" && params.match(/^[0-9]{12}Z$/)) {\n this.setString(params);\n }\n else if (params.hex !== undefined) {\n this.setStringHex(params.hex);\n }\n else if (params.date !== undefined) {\n this.setByDate(params.date);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERUTCTime, KJUR.asn1.DERAbstractTime);\n// ********************************************************************\n/**\n * class for ASN.1 DER GeneralizedTime\n * @name KJUR.asn1.DERGeneralizedTime\n * @class class for ASN.1 DER GeneralizedTime\n * @param {Array} params associative array of parameters (ex. {'str': '20130430235959Z'})\n * @property {Boolean} withMillis flag to show milliseconds or not\n * @extends KJUR.asn1.DERAbstractTime\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • str - specify initial ASN.1 value(V) by a string (ex.'20130430235959Z')
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
  • date - specify Date object.
  • \n *
  • millis - specify flag to show milliseconds (from 1.0.6)
  • \n *
\n * NOTE1: 'params' can be omitted.\n * NOTE2: 'withMillis' property is supported from asn1 1.0.6.\n */\nKJUR.asn1.DERGeneralizedTime = function (params) {\n KJUR.asn1.DERGeneralizedTime.superclass.constructor.call(this, params);\n this.hT = \"18\";\n this.withMillis = false;\n /**\n * set value by a Date object\n * @name setByDate\n * @memberOf KJUR.asn1.DERGeneralizedTime#\n * @function\n * @param {Date} dateObject Date object to set ASN.1 value(V)\n * @example\n * When you specify UTC time, use 'Date.UTC' method like this:
\n * o1 = new DERUTCTime();\n * o1.setByDate(date);\n *\n * date = new Date(Date.UTC(2015, 0, 31, 23, 59, 59, 0)); #2015JAN31 23:59:59\n */\n this.setByDate = function (dateObject) {\n this.hTLV = null;\n this.isModified = true;\n this.date = dateObject;\n this.s = this.formatDate(this.date, 'gen', this.withMillis);\n this.hV = stohex(this.s);\n };\n this.getFreshValueHex = function () {\n if (this.date === undefined && this.s === undefined) {\n this.date = new Date();\n this.s = this.formatDate(this.date, 'gen', this.withMillis);\n this.hV = stohex(this.s);\n }\n return this.hV;\n };\n if (params !== undefined) {\n if (params.str !== undefined) {\n this.setString(params.str);\n }\n else if (typeof params == \"string\" && params.match(/^[0-9]{14}Z$/)) {\n this.setString(params);\n }\n else if (params.hex !== undefined) {\n this.setStringHex(params.hex);\n }\n else if (params.date !== undefined) {\n this.setByDate(params.date);\n }\n if (params.millis === true) {\n this.withMillis = true;\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERGeneralizedTime, KJUR.asn1.DERAbstractTime);\n// ********************************************************************\n/**\n * class for ASN.1 DER Sequence\n * @name KJUR.asn1.DERSequence\n * @class class for ASN.1 DER Sequence\n * @extends KJUR.asn1.DERAbstractStructured\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • array - specify array of ASN1Object to set elements of content
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERSequence = function (params) {\n KJUR.asn1.DERSequence.superclass.constructor.call(this, params);\n this.hT = \"30\";\n this.getFreshValueHex = function () {\n var h = '';\n for (var i = 0; i < this.asn1Array.length; i++) {\n var asn1Obj = this.asn1Array[i];\n h += asn1Obj.getEncodedHex();\n }\n this.hV = h;\n return this.hV;\n };\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERSequence, KJUR.asn1.DERAbstractStructured);\n// ********************************************************************\n/**\n * class for ASN.1 DER Set\n * @name KJUR.asn1.DERSet\n * @class class for ASN.1 DER Set\n * @extends KJUR.asn1.DERAbstractStructured\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • array - specify array of ASN1Object to set elements of content
  • \n *
  • sortflag - flag for sort (default: true). ASN.1 BER is not sorted in 'SET OF'.
  • \n *
\n * NOTE1: 'params' can be omitted.
\n * NOTE2: sortflag is supported since 1.0.5.\n */\nKJUR.asn1.DERSet = function (params) {\n KJUR.asn1.DERSet.superclass.constructor.call(this, params);\n this.hT = \"31\";\n this.sortFlag = true; // item shall be sorted only in ASN.1 DER\n this.getFreshValueHex = function () {\n var a = new Array();\n for (var i = 0; i < this.asn1Array.length; i++) {\n var asn1Obj = this.asn1Array[i];\n a.push(asn1Obj.getEncodedHex());\n }\n if (this.sortFlag == true)\n a.sort();\n this.hV = a.join('');\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params.sortflag != \"undefined\" &&\n params.sortflag == false)\n this.sortFlag = false;\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERSet, KJUR.asn1.DERAbstractStructured);\n// ********************************************************************\n/**\n * class for ASN.1 DER TaggedObject\n * @name KJUR.asn1.DERTaggedObject\n * @class class for ASN.1 DER TaggedObject\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * Parameter 'tagNoNex' is ASN.1 tag(T) value for this object.\n * For example, if you find '[1]' tag in a ASN.1 dump,\n * 'tagNoHex' will be 'a1'.\n *
\n * As for optional argument 'params' for constructor, you can specify *ANY* of\n * following properties:\n *
    \n *
  • explicit - specify true if this is explicit tag otherwise false\n * (default is 'true').
  • \n *
  • tag - specify tag (default is 'a0' which means [0])
  • \n *
  • obj - specify ASN1Object which is tagged
  • \n *
\n * @example\n * d1 = new KJUR.asn1.DERUTF8String({'str':'a'});\n * d2 = new KJUR.asn1.DERTaggedObject({'obj': d1});\n * hex = d2.getEncodedHex();\n */\nKJUR.asn1.DERTaggedObject = function (params) {\n KJUR.asn1.DERTaggedObject.superclass.constructor.call(this);\n this.hT = \"a0\";\n this.hV = '';\n this.isExplicit = true;\n this.asn1Object = null;\n /**\n * set value by an ASN1Object\n * @name setString\n * @memberOf KJUR.asn1.DERTaggedObject#\n * @function\n * @param {Boolean} isExplicitFlag flag for explicit/implicit tag\n * @param {Integer} tagNoHex hexadecimal string of ASN.1 tag\n * @param {ASN1Object} asn1Object ASN.1 to encapsulate\n */\n this.setASN1Object = function (isExplicitFlag, tagNoHex, asn1Object) {\n this.hT = tagNoHex;\n this.isExplicit = isExplicitFlag;\n this.asn1Object = asn1Object;\n if (this.isExplicit) {\n this.hV = this.asn1Object.getEncodedHex();\n this.hTLV = null;\n this.isModified = true;\n }\n else {\n this.hV = null;\n this.hTLV = asn1Object.getEncodedHex();\n this.hTLV = this.hTLV.replace(/^../, tagNoHex);\n this.isModified = false;\n }\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params['tag'] != \"undefined\") {\n this.hT = params['tag'];\n }\n if (typeof params['explicit'] != \"undefined\") {\n this.isExplicit = params['explicit'];\n }\n if (typeof params['obj'] != \"undefined\") {\n this.asn1Object = params['obj'];\n this.setASN1Object(this.isExplicit, this.hT, this.asn1Object);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERTaggedObject, KJUR.asn1.ASN1Object);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsrsasign/asn1-1.0.js?"); + + /***/ + }), /***/ "./lib/lib/jsrsasign/yahoo.js": - /*!************************************!*\ - !*** ./lib/lib/jsrsasign/yahoo.js ***! - \************************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"YAHOO\": () => (/* binding */ YAHOO)\n/* harmony export */ });\n/*!\nCopyright (c) 2011, Yahoo! Inc. All rights reserved.\nCode licensed under the BSD License:\nhttp://developer.yahoo.com/yui/license.html\nversion: 2.9.0\n*/\nvar YAHOO = {};\nYAHOO.lang = {\n /**\n * Utility to set up the prototype, constructor and superclass properties to\n * support an inheritance strategy that can chain constructors and methods.\n * Static members will not be inherited.\n *\n * @method extend\n * @static\n * @param {Function} subc the object to modify\n * @param {Function} superc the object to inherit\n * @param {Object} overrides additional properties/methods to add to the\n * subclass prototype. These will override the\n * matching items obtained from the superclass\n * if present.\n */\n extend: function (subc, superc, overrides) {\n if (!superc || !subc) {\n throw new Error(\"YAHOO.lang.extend failed, please check that \" +\n \"all dependencies are included.\");\n }\n var F = function () { };\n F.prototype = superc.prototype;\n subc.prototype = new F();\n subc.prototype.constructor = subc;\n subc.superclass = superc.prototype;\n if (superc.prototype.constructor == Object.prototype.constructor) {\n superc.prototype.constructor = superc;\n }\n if (overrides) {\n var i;\n for (i in overrides) {\n subc.prototype[i] = overrides[i];\n }\n /*\n * IE will not enumerate native functions in a derived object even if the\n * function was overridden. This is a workaround for specific functions\n * we care about on the Object prototype.\n * @property _IEEnumFix\n * @param {Function} r the object to receive the augmentation\n * @param {Function} s the object that supplies the properties to augment\n * @static\n * @private\n */\n var _IEEnumFix = function () { }, ADD = [\"toString\", \"valueOf\"];\n try {\n if (/MSIE/.test(navigator.userAgent)) {\n _IEEnumFix = function (r, s) {\n for (i = 0; i < ADD.length; i = i + 1) {\n var fname = ADD[i], f = s[fname];\n if (typeof f === 'function' && f != Object.prototype[fname]) {\n r[fname] = f;\n }\n }\n };\n }\n }\n catch (ex) { }\n ;\n _IEEnumFix(subc.prototype, overrides);\n }\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsrsasign/yahoo.js?"); - + /*!************************************!*\ + !*** ./lib/lib/jsrsasign/yahoo.js ***! + \************************************/ /***/ - }), + ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + + "use strict"; + eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"YAHOO\": () => (/* binding */ YAHOO)\n/* harmony export */ });\n/*!\nCopyright (c) 2011, Yahoo! Inc. All rights reserved.\nCode licensed under the BSD License:\nhttp://developer.yahoo.com/yui/license.html\nversion: 2.9.0\n*/\nvar YAHOO = {};\nYAHOO.lang = {\n /**\n * Utility to set up the prototype, constructor and superclass properties to\n * support an inheritance strategy that can chain constructors and methods.\n * Static members will not be inherited.\n *\n * @method extend\n * @static\n * @param {Function} subc the object to modify\n * @param {Function} superc the object to inherit\n * @param {Object} overrides additional properties/methods to add to the\n * subclass prototype. These will override the\n * matching items obtained from the superclass\n * if present.\n */\n extend: function (subc, superc, overrides) {\n if (!superc || !subc) {\n throw new Error(\"YAHOO.lang.extend failed, please check that \" +\n \"all dependencies are included.\");\n }\n var F = function () { };\n F.prototype = superc.prototype;\n subc.prototype = new F();\n subc.prototype.constructor = subc;\n subc.superclass = superc.prototype;\n if (superc.prototype.constructor == Object.prototype.constructor) {\n superc.prototype.constructor = superc;\n }\n if (overrides) {\n var i;\n for (i in overrides) {\n subc.prototype[i] = overrides[i];\n }\n /*\n * IE will not enumerate native functions in a derived object even if the\n * function was overridden. This is a workaround for specific functions\n * we care about on the Object prototype.\n * @property _IEEnumFix\n * @param {Function} r the object to receive the augmentation\n * @param {Function} s the object that supplies the properties to augment\n * @static\n * @private\n */\n var _IEEnumFix = function () { }, ADD = [\"toString\", \"valueOf\"];\n try {\n if (/MSIE/.test(navigator.userAgent)) {\n _IEEnumFix = function (r, s) {\n for (i = 0; i < ADD.length; i = i + 1) {\n var fname = ADD[i], f = s[fname];\n if (typeof f === 'function' && f != Object.prototype[fname]) {\n r[fname] = f;\n }\n }\n };\n }\n }\n catch (ex) { }\n ;\n _IEEnumFix(subc.prototype, overrides);\n }\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsrsasign/yahoo.js?"); + + /***/ + }), /***/ "./node_modules/process/browser.js": - /*!*****************************************!*\ - !*** ./node_modules/process/browser.js ***! - \*****************************************/ - /***/ - ((module) => { - - eval("// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n//# sourceURL=webpack://JSEncrypt/./node_modules/process/browser.js?"); - + /*!*****************************************!*\ + !*** ./node_modules/process/browser.js ***! + \*****************************************/ /***/ - }) + ((module) => { + + eval("// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n//# sourceURL=webpack://JSEncrypt/./node_modules/process/browser.js?"); + + /***/ + }) /******/ }); /************************************************************************/ - /******/ - // The module cache + /******/ // The module cache /******/ var __webpack_module_cache__ = {}; /******/ - /******/ - // The require function + /******/ // The require function /******/ function __webpack_require__(moduleId) { - /******/ - // Check if module is in cache + /******/ // Check if module is in cache /******/ var cachedModule = __webpack_module_cache__[moduleId]; /******/ @@ -266,26 +264,21 @@ return cachedModule.exports; /******/ } - /******/ - // Create a new module (and put it into the cache) + /******/ // Create a new module (and put it into the cache) /******/ var module = __webpack_module_cache__[moduleId] = { - /******/ - // no module.id needed - /******/ - // no module.loaded needed + /******/ // no module.id needed + /******/ // no module.loaded needed /******/ exports: {} /******/ }; /******/ - /******/ - // Execute the module function + /******/ // Execute the module function /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); /******/ - /******/ - // Return the exports of the module + /******/ // Return the exports of the module /******/ return module.exports; /******/ @@ -296,8 +289,7 @@ /* webpack/runtime/define property getters */ /******/ (() => { - /******/ - // define getter functions for harmony exports + /******/ // define getter functions for harmony exports /******/ __webpack_require__.d = (exports, definition) => { /******/ @@ -331,8 +323,7 @@ /* webpack/runtime/make namespace object */ /******/ (() => { - /******/ - // define __esModule on exports + /******/ // define __esModule on exports /******/ __webpack_require__.r = (exports) => { /******/ @@ -354,12 +345,9 @@ /******/ /************************************************************************/ /******/ - /******/ - // startup - /******/ - // Load entry module and return exports - /******/ - // This entry module can't be inlined because the eval devtool is used. + /******/ // startup + /******/ // Load entry module and return exports + /******/ // This entry module can't be inlined because the eval devtool is used. /******/ var __webpack_exports__ = __webpack_require__("./lib/index.js"); /******/ diff --git a/JS/json5.js b/JS/json5.js index ae7e319..bb707e5 100644 --- a/JS/json5.js +++ b/JS/json5.js @@ -1,5 +1,7 @@ (function(global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : typeof define === 'function' && define.amd ? define(factory) : (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.JSON5 = factory()); + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.JSON5 = factory()); }(this, (function() { 'use strict'; @@ -11,10 +13,11 @@ var _global = createCommonjsModule(function(module) { // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 - var global = module.exports = typeof window != 'undefined' && window.Math == Math ? window : typeof self != 'undefined' && self.Math == Math ? self - // eslint-disable-next-line no-new-func - : - Function('return this')(); + var global = module.exports = typeof window != 'undefined' && window.Math == Math ? + window : typeof self != 'undefined' && self.Math == Math ? self + // eslint-disable-next-line no-new-func + : + Function('return this')(); if (typeof __g == 'number') { __g = global; } // eslint-disable-line no-undef @@ -97,22 +100,23 @@ var dP = Object.defineProperty; var f = _descriptors ? Object.defineProperty : function defineProperty(O, P, Attributes) { - _anObject(O); - P = _toPrimitive(P, true); - _anObject(Attributes); - if (_ie8DomDefine) { - try { - return dP(O, P, Attributes); - } catch (e) { /* empty */} - } - if ('get' in Attributes || 'set' in Attributes) { - throw TypeError('Accessors not supported!'); - } - if ('value' in Attributes) { - O[P] = Attributes.value; - } - return O; - }; + _anObject(O); + P = _toPrimitive(P, true); + _anObject(Attributes); + if (_ie8DomDefine) { + try { + return dP(O, P, Attributes); + } catch (e) { + /* empty */ } + } + if ('get' in Attributes || 'set' in Attributes) { + throw TypeError('Accessors not supported!'); + } + if ('value' in Attributes) { + O[P] = Attributes.value; + } + return O; + }; var _objectDp = { f: f @@ -128,11 +132,11 @@ }; var _hide = _descriptors ? function(object, key, value) { - return _objectDp.f(object, key, _propertyDesc(1, value)); - } : function(object, key, value) { - object[key] = value; - return object; - }; + return _objectDp.f(object, key, _propertyDesc(1, value)); + } : function(object, key, value) { + object[key] = value; + return object; + }; var hasOwnProperty = {}.hasOwnProperty; var _has = function(it, key) { @@ -306,7 +310,9 @@ return TO_STRING ? '' : undefined; } a = s.charCodeAt(i); - return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff ? TO_STRING ? s.charAt(i) : a : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000; + return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff ? + TO_STRING ? s.charAt(i) : a : + TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000; }; }; @@ -331,7 +337,7 @@ var $fromCodePoint = String.fromCodePoint; // length should be 1, old FF problem - _export(_export.S + _export.F * ( !! $fromCodePoint && $fromCodePoint.length != 1), 'String', { + _export(_export.S + _export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', { // 21.1.2.2 String.fromCodePoint(...codePoints) fromCodePoint: function fromCodePoint(x) { var arguments$1 = arguments; @@ -345,7 +351,10 @@ if (_toAbsoluteIndex(code, 0x10ffff) !== code) { throw RangeError(code + ' is not a valid code point'); } - res.push(code < 0x10000 ? fromCharCode(code) : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)); + res.push(code < 0x10000 ? + fromCharCode(code) : + fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00) + ); } return res.join(''); } @@ -371,12 +380,22 @@ isIdStartChar: function isIdStartChar(c) { return typeof c === 'string' && ( - (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c === '$') || (c === '_') || unicode.ID_Start.test(c)) + (c >= 'a' && c <= 'z') || + (c >= 'A' && c <= 'Z') || + (c === '$') || (c === '_') || + unicode.ID_Start.test(c) + ) }, isIdContinueChar: function isIdContinueChar(c) { return typeof c === 'string' && ( - (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9') || (c === '$') || (c === '_') || (c === '‌') || (c === '‍') || unicode.ID_Continue.test(c)) + (c >= 'a' && c <= 'z') || + (c >= 'A' && c <= 'Z') || + (c >= '0' && c <= '9') || + (c === '$') || (c === '_') || + (c === '\u200C') || (c === '\u200D') || + unicode.ID_Continue.test(c) + ) }, isDigit: function isDigit(c) { @@ -526,12 +545,12 @@ case '\v': case '\f': case ' ': - case ' ': - case '': + case '\u00A0': + case '\uFEFF': case '\n': case '\r': - case '
': - case '
': + case '\u2028': + case '\u2029': read(); return @@ -611,8 +630,8 @@ switch (c) { case '\n': case '\r': - case '
': - case '
': + case '\u2028': + case '\u2029': read(); lexState = 'default'; return @@ -727,8 +746,8 @@ switch (c) { case '$': case '_': - case '‌': - case '‍': + case '\u200C': + case '\u200D': buffer += read(); return @@ -756,8 +775,8 @@ switch (u) { case '$': case '_': - case '‌': - case '‍': + case '\u200C': + case '\u200D': break default: @@ -986,8 +1005,8 @@ case '\r': throw invalidChar(read()) - case '
': - case '
': + case '\u2028': + case '\u2029': separatorChar(c); break @@ -1162,8 +1181,8 @@ return unicodeEscape() case '\n': - case '
': - case '
': + case '\u2028': + case '\u2029': read(); return '' @@ -1482,8 +1501,8 @@ '\t': '\\t', '\v': '\\v', '\0': '\\0', - '
': '\\u2028', - '
': '\\u2029', + '\u2028': '\\u2028', + '\u2029': '\\u2029', }; if (replacements[c]) { @@ -1514,7 +1533,10 @@ var quote; if ( - replacer != null && typeof replacer === 'object' && !Array.isArray(replacer)) { + replacer != null && + typeof replacer === 'object' && + !Array.isArray(replacer) + ) { space = replacer.space; quote = replacer.quote; replacer = replacer.replacer; @@ -1532,7 +1554,10 @@ if (typeof v === 'string') { item = v; } else if ( - typeof v === 'number' || v instanceof String || v instanceof Number) { + typeof v === 'number' || + v instanceof String || + v instanceof Number + ) { item = String(v); } @@ -1624,8 +1649,8 @@ '\t': '\\t', '\v': '\\v', '\0': '\\0', - '
': '\\u2028', - '
': '\\u2029', + '\u2028': '\\u2028', + '\u2029': '\\u2029', }; var product = ''; diff --git a/JS/node-rsa.js b/JS/node-rsa.js index 600fbb5..4f9396f 100644 --- a/JS/node-rsa.js +++ b/JS/node-rsa.js @@ -2,2403 +2,2054 @@ "object" == typeof exports && "object" == typeof module ? module.exports = e() : "function" == typeof define && define.amd ? define([], e) : "object" == typeof exports ? exports.NODERSA = e() : t.NODERSA = e() }(globalThis, (() => (() => { var t = { - 6395: t => { - t.exports = { - newInvalidAsn1Error: function(t) { - var e = new Error; - return e.name = "InvalidAsn1Error", e.message = t || "", e - } - } - }, - 5670: (t, e, r) => { - var n = r(6395), - i = r(6299), - o = r(3319), - s = r(1431); - for (var a in t.exports = { - Reader: o, - Writer: s - }, i) i.hasOwnProperty(a) && (t.exports[a] = i[a]); - for (var f in n) n.hasOwnProperty(f) && (t.exports[f] = n[f]) - }, - 3319: (t, e, r) => { - var n = r(4529), - i = r(4774).Buffer, - o = r(6299), - s = r(6395).newInvalidAsn1Error; - - function a(t) { - if (!t || !i.isBuffer(t)) throw new TypeError("data must be a node Buffer"); - this._buf = t, this._size = t.length, this._len = 0, this._offset = 0 - } - Object.defineProperty(a.prototype, "length", { - enumerable: !0, - get: function() { - return this._len - } - }), Object.defineProperty(a.prototype, "offset", { - enumerable: !0, - get: function() { - return this._offset - } - }), Object.defineProperty(a.prototype, "remain", { - get: function() { - return this._size - this._offset - } - }), Object.defineProperty(a.prototype, "buffer", { - get: function() { - return this._buf.slice(this._offset) - } - }), a.prototype.readByte = function(t) { - if (this._size - this._offset < 1) return null; - var e = 255 & this._buf[this._offset]; - return t || (this._offset += 1), e - }, a.prototype.peek = function() { - return this.readByte(!0) - }, a.prototype.readLength = function(t) { - if (void 0 === t && (t = this._offset), t >= this._size) return null; - var e = 255 & this._buf[t++]; - if (null === e) return null; - if (128 & ~e) this._len = e; - else { - if (0 == (e &= 127)) throw s("Indefinite length not supported"); - if (e > 4) throw s("encoding too long"); - if (this._size - t < e) return null; - this._len = 0; - for (var r = 0; r < e; r++) this._len = (this._len << 8) + (255 & this._buf[t++]) - } - return t - }, a.prototype.readSequence = function(t) { - var e = this.peek(); - if (null === e) return null; - if (void 0 !== t && t !== e) throw s("Expected 0x" + t.toString(16) + ": got 0x" + e.toString(16)); - var r = this.readLength(this._offset + 1); - return null === r ? null : (this._offset = r, e) - }, a.prototype.readInt = function() { - return this._readTag(o.Integer) - }, a.prototype.readBoolean = function() { - return 0 !== this._readTag(o.Boolean) - }, a.prototype.readEnumeration = function() { - return this._readTag(o.Enumeration) - }, a.prototype.readString = function(t, e) { - t || (t = o.OctetString); - var r = this.peek(); - if (null === r) return null; - if (r !== t) throw s("Expected 0x" + t.toString(16) + ": got 0x" + r.toString(16)); - var n = this.readLength(this._offset + 1); - if (null === n) return null; - if (this.length > this._size - n) return null; - if (this._offset = n, 0 === this.length) return e ? i.alloc(0) : ""; - var a = this._buf.slice(this._offset, this._offset + this.length); - return this._offset += this.length, e ? a : a.toString("utf8") - }, a.prototype.readOID = function(t) { - t || (t = o.OID); - var e = this.readString(t, !0); - if (null === e) return null; - for (var r = [], n = 0, i = 0; i < e.length; i++) { - var s = 255 & e[i]; - n <<= 7, n += 127 & s, 128 & s || (r.push(n), n = 0) - } - return n = r.shift(), r.unshift(n % 40), r.unshift(n / 40 | 0), r.join(".") - }, a.prototype._readTag = function(t) { - n.ok(void 0 !== t); - var e = this.peek(); - if (null === e) return null; - if (e !== t) throw s("Expected 0x" + t.toString(16) + ": got 0x" + e.toString(16)); - var r = this.readLength(this._offset + 1); - if (null === r) return null; - if (this.length > 4) throw s("Integer too long: " + this.length); - if (this.length > this._size - r) return null; - this._offset = r; - for (var i = this._buf[this._offset], o = 0, a = 0; a < this.length; a++) o <<= 8, o |= 255 & this._buf[this._offset++]; - return 128 & ~i || 4 === a || (o -= 1 << 8 * a), 0 | o - }, t.exports = a - }, - 6299: t => { - t.exports = { - EOC: 0, - Boolean: 1, - Integer: 2, - BitString: 3, - OctetString: 4, - Null: 5, - OID: 6, - ObjectDescriptor: 7, - External: 8, - Real: 9, - Enumeration: 10, - PDV: 11, - Utf8String: 12, - RelativeOID: 13, - Sequence: 16, - Set: 17, - NumericString: 18, - PrintableString: 19, - T61String: 20, - VideotexString: 21, - IA5String: 22, - UTCTime: 23, - GeneralizedTime: 24, - GraphicString: 25, - VisibleString: 26, - GeneralString: 28, - UniversalString: 29, - CharacterString: 30, - BMPString: 31, - Constructor: 32, - Context: 128 - } - }, - 1431: (t, e, r) => { - var n = r(4529), - i = r(4774).Buffer, - o = r(6299), - s = r(6395).newInvalidAsn1Error, - a = { - size: 1024, - growthFactor: 8 - }; - - function f(t) { - var e, r; - e = a, r = t || {}, n.ok(e), n.equal(typeof e, "object"), n.ok(r), n.equal(typeof r, "object"), Object.getOwnPropertyNames(e).forEach((function(t) { - if (!r[t]) { - var n = Object.getOwnPropertyDescriptor(e, t); - Object.defineProperty(r, t, n) + 6395: t => { + t.exports = { + newInvalidAsn1Error: function(t) { + var e = new Error; + return e.name = "InvalidAsn1Error", e.message = t || "", e } - })), t = r, this._buf = i.alloc(t.size || 1024), this._size = this._buf.length, this._offset = 0, this._options = t, this._seq = [] - } - Object.defineProperty(f.prototype, "buffer", { - get: function() { - if (this._seq.length) throw s(this._seq.length + " unended sequence(s)"); - return this._buf.slice(0, this._offset) } - }), f.prototype.writeByte = function(t) { - if ("number" != typeof t) throw new TypeError("argument must be a Number"); - this._ensure(1), this._buf[this._offset++] = t - }, f.prototype.writeInt = function(t, e) { - if ("number" != typeof t) throw new TypeError("argument must be a Number"); - "number" != typeof e && (e = o.Integer); - for (var r = 4; - (!(4286578688 & t) || -8388608 == (4286578688 & t)) && r > 1;) r--, t <<= 8; - if (r > 4) throw s("BER ints cannot be > 0xffffffff"); - for (this._ensure(2 + r), this._buf[this._offset++] = e, this._buf[this._offset++] = r; r-- > 0;) this._buf[this._offset++] = (4278190080 & t) >>> 24, t <<= 8 - }, f.prototype.writeNull = function() { - this.writeByte(o.Null), this.writeByte(0) - }, f.prototype.writeEnumeration = function(t, e) { - if ("number" != typeof t) throw new TypeError("argument must be a Number"); - return "number" != typeof e && (e = o.Enumeration), this.writeInt(t, e) - }, f.prototype.writeBoolean = function(t, e) { - if ("boolean" != typeof t) throw new TypeError("argument must be a Boolean"); - "number" != typeof e && (e = o.Boolean), this._ensure(3), this._buf[this._offset++] = e, this._buf[this._offset++] = 1, this._buf[this._offset++] = t ? 255 : 0 - }, f.prototype.writeString = function(t, e) { - if ("string" != typeof t) throw new TypeError("argument must be a string (was: " + typeof t + ")"); - "number" != typeof e && (e = o.OctetString); - var r = i.byteLength(t); - this.writeByte(e), this.writeLength(r), r && (this._ensure(r), this._buf.write(t, this._offset), this._offset += r) - }, f.prototype.writeBuffer = function(t, e) { - if ("number" != typeof e) throw new TypeError("tag must be a number"); - if (!i.isBuffer(t)) throw new TypeError("argument must be a buffer"); - this.writeByte(e), this.writeLength(t.length), this._ensure(t.length), t.copy(this._buf, this._offset, 0, t.length), this._offset += t.length - }, f.prototype.writeStringArray = function(t) { - if (!t instanceof Array) throw new TypeError("argument must be an Array[String]"); - var e = this; - t.forEach((function(t) { - e.writeString(t) - })) - }, f.prototype.writeOID = function(t, e) { - if ("string" != typeof t) throw new TypeError("argument must be a string"); - if ("number" != typeof e && (e = o.OID), !/^([0-9]+\.){3,}[0-9]+$/.test(t)) throw new Error("argument is not a valid OID string"); - var r = t.split("."), - n = []; - n.push(40 * parseInt(r[0], 10) + parseInt(r[1], 10)), r.slice(2).forEach((function(t) { - ! function(t, e) { - e < 128 ? t.push(e) : e < 16384 ? (t.push(e >>> 7 | 128), t.push(127 & e)) : e < 2097152 ? (t.push(e >>> 14 | 128), t.push(e >>> 7 & 255 | 128), t.push(127 & e)) : e < 268435456 ? (t.push(e >>> 21 | 128), t.push(e >>> 14 & 255 | 128), t.push(e >>> 7 & 255 | 128), t.push(127 & e)) : (t.push(e >>> 28 & 255 | 128), t.push(e >>> 21 & 255 | 128), t.push(e >>> 14 & 255 | 128), t.push(e >>> 7 & 255 | 128), t.push(127 & e)) - }(n, parseInt(t, 10)) - })); - var i = this; - this._ensure(2 + n.length), this.writeByte(e), this.writeLength(n.length), n.forEach((function(t) { - i.writeByte(t) - })) - }, f.prototype.writeLength = function(t) { - if ("number" != typeof t) throw new TypeError("argument must be a Number"); - if (this._ensure(4), t <= 127) this._buf[this._offset++] = t; - else if (t <= 255) this._buf[this._offset++] = 129, this._buf[this._offset++] = t; - else if (t <= 65535) this._buf[this._offset++] = 130, this._buf[this._offset++] = t >> 8, this._buf[this._offset++] = t; - else { - if (!(t <= 16777215)) throw s("Length too long (> 4 bytes)"); - this._buf[this._offset++] = 131, this._buf[this._offset++] = t >> 16, this._buf[this._offset++] = t >> 8, this._buf[this._offset++] = t - } - }, f.prototype.startSequence = function(t) { - "number" != typeof t && (t = o.Sequence | o.Constructor), this.writeByte(t), this._seq.push(this._offset), this._ensure(3), this._offset += 3 - }, f.prototype.endSequence = function() { - var t = this._seq.pop(), - e = t + 3, - r = this._offset - e; - if (r <= 127) this._shift(e, r, -2), this._buf[t] = r; - else if (r <= 255) this._shift(e, r, -1), this._buf[t] = 129, this._buf[t + 1] = r; - else if (r <= 65535) this._buf[t] = 130, this._buf[t + 1] = r >> 8, this._buf[t + 2] = r; - else { - if (!(r <= 16777215)) throw s("Sequence too long"); - this._shift(e, r, 1), this._buf[t] = 131, this._buf[t + 1] = r >> 16, this._buf[t + 2] = r >> 8, this._buf[t + 3] = r - } - }, f.prototype._shift = function(t, e, r) { - n.ok(void 0 !== t), n.ok(void 0 !== e), n.ok(r), this._buf.copy(this._buf, t + r, t, t + e), this._offset += r - }, f.prototype._ensure = function(t) { - if (n.ok(t), this._size - this._offset < t) { - var e = this._size * this._options.growthFactor; - e - this._offset < t && (e += t); - var r = i.alloc(e); - this._buf.copy(r, 0, 0, this._offset), this._buf = r, this._size = e - } - }, t.exports = f - }, - 3100: (t, e, r) => { - var n = r(5670); - t.exports = { - Ber: n, - BerReader: n.Reader, - BerWriter: n.Writer - } - }, - 4529: (t, e, r) => { - "use strict"; - var n = r(1514)(); + }, + 5670: (t, e, r) => { + var n = r(6395), + i = r(6299), + o = r(3319), + s = r(1431); + for (var a in t.exports = { + Reader: o, + Writer: s + }, i) i.hasOwnProperty(a) && (t.exports[a] = i[a]); + for (var f in n) n.hasOwnProperty(f) && (t.exports[f] = n[f]) + }, + 3319: (t, e, r) => { + var n = r(4529), + i = r(4774).Buffer, + o = r(6299), + s = r(6395).newInvalidAsn1Error; - function i(t, e) { - if (t === e) return 0; - for (var r = t.length, n = e.length, i = 0, o = Math.min(r, n); i < o; ++i) if (t[i] !== e[i]) { - r = t[i], n = e[i]; - break + function a(t) { + if (!t || !i.isBuffer(t)) throw new TypeError("data must be a node Buffer"); + this._buf = t, this._size = t.length, this._len = 0, this._offset = 0 } - return r < n ? -1 : n < r ? 1 : 0 - } - function o(t) { - return r.g.Buffer && "function" == typeof r.g.Buffer.isBuffer ? r.g.Buffer.isBuffer(t) : !(null == t || !t._isBuffer) - } - var s = r(4591), - a = Object.prototype.hasOwnProperty, - f = Array.prototype.slice, - u = "foo" === function() {}.name; - - function c(t) { - return Object.prototype.toString.call(t) - } - function h(t) { - return !o(t) && "function" == typeof r.g.ArrayBuffer && ("function" == typeof ArrayBuffer.isView ? ArrayBuffer.isView(t) : !! t && (t instanceof DataView || !! (t.buffer && t.buffer instanceof ArrayBuffer))) - } - var p = t.exports = m, - l = /\s*function\s+([^\(\s]*)\s*/; - - function y(t) { - if (s.isFunction(t)) { - if (u) return t.name; - var e = t.toString().match(l); - return e && e[1] - } - } - function g(t, e) { - return "string" == typeof t ? t.length < e ? t : t.slice(0, e) : t - } - function d(t) { - if (u || !s.isFunction(t)) return s.inspect(t); - var e = y(t); - return "[Function" + (e ? ": " + e : "") + "]" - } - function v(t, e, r, n, i) { - throw new p.AssertionError({ - message: r, - actual: t, - expected: e, - operator: n, - stackStartFunction: i - }) - } - function m(t, e) { - t || v(t, !0, e, "==", p.ok) - } - function S(t, e, r, n) { - if (t === e) return !0; - if (o(t) && o(e)) return 0 === i(t, e); - if (s.isDate(t) && s.isDate(e)) return t.getTime() === e.getTime(); - if (s.isRegExp(t) && s.isRegExp(e)) return t.source === e.source && t.global === e.global && t.multiline === e.multiline && t.lastIndex === e.lastIndex && t.ignoreCase === e.ignoreCase; - if (null !== t && "object" == typeof t || null !== e && "object" == typeof e) { - if (h(t) && h(e) && c(t) === c(e) && !(t instanceof Float32Array || t instanceof Float64Array)) return 0 === i(new Uint8Array(t.buffer), new Uint8Array(e.buffer)); - if (o(t) !== o(e)) return !1; - var a = (n = n || { - actual: [], - expected: [] - }).actual.indexOf(t); - return -1 !== a && a === n.expected.indexOf(e) || (n.actual.push(t), n.expected.push(e), function(t, e, r, n) { - if (null == t || null == e) return !1; - if (s.isPrimitive(t) || s.isPrimitive(e)) return t === e; - if (r && Object.getPrototypeOf(t) !== Object.getPrototypeOf(e)) return !1; - var i = _(t), - o = _(e); - if (i && !o || !i && o) return !1; - if (i) return S(t = f.call(t), e = f.call(e), r); - var a, u, c = w(t), - h = w(e); - if (c.length !== h.length) return !1; - for (c.sort(), h.sort(), u = c.length - 1; u >= 0; u--) if (c[u] !== h[u]) return !1; - for (u = c.length - 1; u >= 0; u--) if (!S(t[a = c[u]], e[a], r, n)) return !1; - return !0 - }(t, e, r, n)) - } - return r ? t === e : t == e - } - function _(t) { - return "[object Arguments]" == Object.prototype.toString.call(t) - } - function b(t, e) { - if (!t || !e) return !1; - if ("[object RegExp]" == Object.prototype.toString.call(e)) return e.test(t); - try { - if (t instanceof e) return !0 - } catch (t) {} - return !Error.isPrototypeOf(e) && !0 === e.call({}, t) - } - function E(t, e, r, n) { - var i; - if ("function" != typeof e) throw new TypeError('"block" argument must be a function'); - "string" == typeof r && (n = r, r = null), i = function(t) { - var e; - try { - t() - } catch (t) { - e = t + Object.defineProperty(a.prototype, "length", { + enumerable: !0, + get: function() { + return this._len } - return e - }(e), n = (r && r.name ? " (" + r.name + ")." : ".") + (n ? " " + n : "."), t && !i && v(i, r, "Missing expected exception" + n); - var o = "string" == typeof n, - a = !t && i && !r; - if ((!t && s.isError(i) && o && b(i, r) || a) && v(i, r, "Got unwanted exception" + n), t && i && r && !b(i, r) || !t && i) throw i - } - p.AssertionError = function(t) { - this.name = "AssertionError", this.actual = t.actual, this.expected = t.expected, this.operator = t.operator, t.message ? (this.message = t.message, this.generatedMessage = !1) : (this.message = g(d(this.actual), 128) + " " + this.operator + " " + g(d(this.expected), 128), this.generatedMessage = !0); - var e = t.stackStartFunction || v; - if (Error.captureStackTrace) Error.captureStackTrace(this, e); - else { - var r = new Error; - if (r.stack) { - var n = r.stack, - i = y(e), - o = n.indexOf("\n" + i); - if (o >= 0) { - var s = n.indexOf("\n", o + 1); - n = n.substring(s + 1) + }), Object.defineProperty(a.prototype, "offset", { + enumerable: !0, + get: function() { + return this._offset + } + }), Object.defineProperty(a.prototype, "remain", { + get: function() { + return this._size - this._offset + } + }), Object.defineProperty(a.prototype, "buffer", { + get: function() { + return this._buf.slice(this._offset) + } + }), a.prototype.readByte = function(t) { + if (this._size - this._offset < 1) return null; + var e = 255 & this._buf[this._offset]; + return t || (this._offset += 1), e + }, a.prototype.peek = function() { + return this.readByte(!0) + }, a.prototype.readLength = function(t) { + if (void 0 === t && (t = this._offset), t >= this._size) return null; + var e = 255 & this._buf[t++]; + if (null === e) return null; + if (128 & ~e) this._len = e; + else { + if (0 == (e &= 127)) throw s("Indefinite length not supported"); + if (e > 4) throw s("encoding too long"); + if (this._size - t < e) return null; + this._len = 0; + for (var r = 0; r < e; r++) this._len = (this._len << 8) + (255 & this._buf[t++]) + } + return t + }, a.prototype.readSequence = function(t) { + var e = this.peek(); + if (null === e) return null; + if (void 0 !== t && t !== e) throw s("Expected 0x" + t.toString(16) + ": got 0x" + e.toString(16)); + var r = this.readLength(this._offset + 1); + return null === r ? null : (this._offset = r, e) + }, a.prototype.readInt = function() { + return this._readTag(o.Integer) + }, a.prototype.readBoolean = function() { + return 0 !== this._readTag(o.Boolean) + }, a.prototype.readEnumeration = function() { + return this._readTag(o.Enumeration) + }, a.prototype.readString = function(t, e) { + t || (t = o.OctetString); + var r = this.peek(); + if (null === r) return null; + if (r !== t) throw s("Expected 0x" + t.toString(16) + ": got 0x" + r.toString(16)); + var n = this.readLength(this._offset + 1); + if (null === n) return null; + if (this.length > this._size - n) return null; + if (this._offset = n, 0 === this.length) return e ? i.alloc(0) : ""; + var a = this._buf.slice(this._offset, this._offset + this.length); + return this._offset += this.length, e ? a : a.toString("utf8") + }, a.prototype.readOID = function(t) { + t || (t = o.OID); + var e = this.readString(t, !0); + if (null === e) return null; + for (var r = [], n = 0, i = 0; i < e.length; i++) { + var s = 255 & e[i]; + n <<= 7, n += 127 & s, 128 & s || (r.push(n), n = 0) + } + return n = r.shift(), r.unshift(n % 40), r.unshift(n / 40 | 0), r.join(".") + }, a.prototype._readTag = function(t) { + n.ok(void 0 !== t); + var e = this.peek(); + if (null === e) return null; + if (e !== t) throw s("Expected 0x" + t.toString(16) + ": got 0x" + e.toString(16)); + var r = this.readLength(this._offset + 1); + if (null === r) return null; + if (this.length > 4) throw s("Integer too long: " + this.length); + if (this.length > this._size - r) return null; + this._offset = r; + for (var i = this._buf[this._offset], o = 0, a = 0; a < this.length; a++) o <<= 8, o |= 255 & this._buf[this._offset++]; + return 128 & ~i || 4 === a || (o -= 1 << 8 * a), 0 | o + }, t.exports = a + }, + 6299: t => { + t.exports = { + EOC: 0, + Boolean: 1, + Integer: 2, + BitString: 3, + OctetString: 4, + Null: 5, + OID: 6, + ObjectDescriptor: 7, + External: 8, + Real: 9, + Enumeration: 10, + PDV: 11, + Utf8String: 12, + RelativeOID: 13, + Sequence: 16, + Set: 17, + NumericString: 18, + PrintableString: 19, + T61String: 20, + VideotexString: 21, + IA5String: 22, + UTCTime: 23, + GeneralizedTime: 24, + GraphicString: 25, + VisibleString: 26, + GeneralString: 28, + UniversalString: 29, + CharacterString: 30, + BMPString: 31, + Constructor: 32, + Context: 128 + } + }, + 1431: (t, e, r) => { + var n = r(4529), + i = r(4774).Buffer, + o = r(6299), + s = r(6395).newInvalidAsn1Error, + a = { + size: 1024, + growthFactor: 8 + }; + + function f(t) { + var e, r; + e = a, r = t || {}, n.ok(e), n.equal(typeof e, "object"), n.ok(r), n.equal(typeof r, "object"), Object.getOwnPropertyNames(e).forEach((function(t) { + if (!r[t]) { + var n = Object.getOwnPropertyDescriptor(e, t); + Object.defineProperty(r, t, n) } - this.stack = n + })), t = r, this._buf = i.alloc(t.size || 1024), this._size = this._buf.length, this._offset = 0, this._options = t, this._seq = [] + } + Object.defineProperty(f.prototype, "buffer", { + get: function() { + if (this._seq.length) throw s(this._seq.length + " unended sequence(s)"); + return this._buf.slice(0, this._offset) + } + }), f.prototype.writeByte = function(t) { + if ("number" != typeof t) throw new TypeError("argument must be a Number"); + this._ensure(1), this._buf[this._offset++] = t + }, f.prototype.writeInt = function(t, e) { + if ("number" != typeof t) throw new TypeError("argument must be a Number"); + "number" != typeof e && (e = o.Integer); + for (var r = 4; + (!(4286578688 & t) || -8388608 == (4286578688 & t)) && r > 1;) r--, t <<= 8; + if (r > 4) throw s("BER ints cannot be > 0xffffffff"); + for (this._ensure(2 + r), this._buf[this._offset++] = e, this._buf[this._offset++] = r; r-- > 0;) this._buf[this._offset++] = (4278190080 & t) >>> 24, t <<= 8 + }, f.prototype.writeNull = function() { + this.writeByte(o.Null), this.writeByte(0) + }, f.prototype.writeEnumeration = function(t, e) { + if ("number" != typeof t) throw new TypeError("argument must be a Number"); + return "number" != typeof e && (e = o.Enumeration), this.writeInt(t, e) + }, f.prototype.writeBoolean = function(t, e) { + if ("boolean" != typeof t) throw new TypeError("argument must be a Boolean"); + "number" != typeof e && (e = o.Boolean), this._ensure(3), this._buf[this._offset++] = e, this._buf[this._offset++] = 1, this._buf[this._offset++] = t ? 255 : 0 + }, f.prototype.writeString = function(t, e) { + if ("string" != typeof t) throw new TypeError("argument must be a string (was: " + typeof t + ")"); + "number" != typeof e && (e = o.OctetString); + var r = i.byteLength(t); + this.writeByte(e), this.writeLength(r), r && (this._ensure(r), this._buf.write(t, this._offset), this._offset += r) + }, f.prototype.writeBuffer = function(t, e) { + if ("number" != typeof e) throw new TypeError("tag must be a number"); + if (!i.isBuffer(t)) throw new TypeError("argument must be a buffer"); + this.writeByte(e), this.writeLength(t.length), this._ensure(t.length), t.copy(this._buf, this._offset, 0, t.length), this._offset += t.length + }, f.prototype.writeStringArray = function(t) { + if (!t instanceof Array) throw new TypeError("argument must be an Array[String]"); + var e = this; + t.forEach((function(t) { + e.writeString(t) + })) + }, f.prototype.writeOID = function(t, e) { + if ("string" != typeof t) throw new TypeError("argument must be a string"); + if ("number" != typeof e && (e = o.OID), !/^([0-9]+\.){3,}[0-9]+$/.test(t)) throw new Error("argument is not a valid OID string"); + var r = t.split("."), + n = []; + n.push(40 * parseInt(r[0], 10) + parseInt(r[1], 10)), r.slice(2).forEach((function(t) { + ! function(t, e) { + e < 128 ? t.push(e) : e < 16384 ? (t.push(e >>> 7 | 128), t.push(127 & e)) : e < 2097152 ? (t.push(e >>> 14 | 128), t.push(e >>> 7 & 255 | 128), t.push(127 & e)) : e < 268435456 ? (t.push(e >>> 21 | 128), t.push(e >>> 14 & 255 | 128), t.push(e >>> 7 & 255 | 128), t.push(127 & e)) : (t.push(e >>> 28 & 255 | 128), t.push(e >>> 21 & 255 | 128), t.push(e >>> 14 & 255 | 128), t.push(e >>> 7 & 255 | 128), t.push(127 & e)) + }(n, parseInt(t, 10)) + })); + var i = this; + this._ensure(2 + n.length), this.writeByte(e), this.writeLength(n.length), n.forEach((function(t) { + i.writeByte(t) + })) + }, f.prototype.writeLength = function(t) { + if ("number" != typeof t) throw new TypeError("argument must be a Number"); + if (this._ensure(4), t <= 127) this._buf[this._offset++] = t; + else if (t <= 255) this._buf[this._offset++] = 129, this._buf[this._offset++] = t; + else if (t <= 65535) this._buf[this._offset++] = 130, this._buf[this._offset++] = t >> 8, this._buf[this._offset++] = t; + else { + if (!(t <= 16777215)) throw s("Length too long (> 4 bytes)"); + this._buf[this._offset++] = 131, this._buf[this._offset++] = t >> 16, this._buf[this._offset++] = t >> 8, this._buf[this._offset++] = t + } + }, f.prototype.startSequence = function(t) { + "number" != typeof t && (t = o.Sequence | o.Constructor), this.writeByte(t), this._seq.push(this._offset), this._ensure(3), this._offset += 3 + }, f.prototype.endSequence = function() { + var t = this._seq.pop(), + e = t + 3, + r = this._offset - e; + if (r <= 127) this._shift(e, r, -2), this._buf[t] = r; + else if (r <= 255) this._shift(e, r, -1), this._buf[t] = 129, this._buf[t + 1] = r; + else if (r <= 65535) this._buf[t] = 130, this._buf[t + 1] = r >> 8, this._buf[t + 2] = r; + else { + if (!(r <= 16777215)) throw s("Sequence too long"); + this._shift(e, r, 1), this._buf[t] = 131, this._buf[t + 1] = r >> 16, this._buf[t + 2] = r >> 8, this._buf[t + 3] = r + } + }, f.prototype._shift = function(t, e, r) { + n.ok(void 0 !== t), n.ok(void 0 !== e), n.ok(r), this._buf.copy(this._buf, t + r, t, t + e), this._offset += r + }, f.prototype._ensure = function(t) { + if (n.ok(t), this._size - this._offset < t) { + var e = this._size * this._options.growthFactor; + e - this._offset < t && (e += t); + var r = i.alloc(e); + this._buf.copy(r, 0, 0, this._offset), this._buf = r, this._size = e + } + }, t.exports = f + }, + 3100: (t, e, r) => { + var n = r(5670); + t.exports = { + Ber: n, + BerReader: n.Reader, + BerWriter: n.Writer + } + }, + 4529: (t, e, r) => { + "use strict"; + var n = r(1514)(); + + function i(t, e) { + if (t === e) return 0; + for (var r = t.length, n = e.length, i = 0, o = Math.min(r, n); i < o; ++i) + if (t[i] !== e[i]) { + r = t[i], n = e[i]; + break + } return r < n ? -1 : n < r ? 1 : 0 + } + + function o(t) { + return r.g.Buffer && "function" == typeof r.g.Buffer.isBuffer ? r.g.Buffer.isBuffer(t) : !(null == t || !t._isBuffer) + } + var s = r(4591), + a = Object.prototype.hasOwnProperty, + f = Array.prototype.slice, + u = "foo" === function() {}.name; + + function c(t) { + return Object.prototype.toString.call(t) + } + + function h(t) { + return !o(t) && "function" == typeof r.g.ArrayBuffer && ("function" == typeof ArrayBuffer.isView ? ArrayBuffer.isView(t) : !!t && (t instanceof DataView || !!(t.buffer && t.buffer instanceof ArrayBuffer))) + } + var p = t.exports = m, + l = /\s*function\s+([^\(\s]*)\s*/; + + function y(t) { + if (s.isFunction(t)) { + if (u) return t.name; + var e = t.toString().match(l); + return e && e[1] } } - }, s.inherits(p.AssertionError, Error), p.fail = v, p.ok = m, p.equal = function(t, e, r) { - t != e && v(t, e, r, "==", p.equal) - }, p.notEqual = function(t, e, r) { - t == e && v(t, e, r, "!=", p.notEqual) - }, p.deepEqual = function(t, e, r) { - S(t, e, !1) || v(t, e, r, "deepEqual", p.deepEqual) - }, p.deepStrictEqual = function(t, e, r) { - S(t, e, !0) || v(t, e, r, "deepStrictEqual", p.deepStrictEqual) - }, p.notDeepEqual = function(t, e, r) { - S(t, e, !1) && v(t, e, r, "notDeepEqual", p.notDeepEqual) - }, p.notDeepStrictEqual = function t(e, r, n) { - S(e, r, !0) && v(e, r, n, "notDeepStrictEqual", t) - }, p.strictEqual = function(t, e, r) { - t !== e && v(t, e, r, "===", p.strictEqual) - }, p.notStrictEqual = function(t, e, r) { - t === e && v(t, e, r, "!==", p.notStrictEqual) - }, p.throws = function(t, e, r) { - E(!0, t, e, r) - }, p.doesNotThrow = function(t, e, r) { - E(!1, t, e, r) - }, p.ifError = function(t) { - if (t) throw t - }, p.strict = n((function t(e, r) { - e || v(e, !0, r, "==", t) - }), p, { - equal: p.strictEqual, - deepEqual: p.deepStrictEqual, - notEqual: p.notStrictEqual, - notDeepEqual: p.notDeepStrictEqual - }), p.strict.strict = p.strict; - var w = Object.keys || function(t) { + + function g(t, e) { + return "string" == typeof t ? t.length < e ? t : t.slice(0, e) : t + } + + function d(t) { + if (u || !s.isFunction(t)) return s.inspect(t); + var e = y(t); + return "[Function" + (e ? ": " + e : "") + "]" + } + + function v(t, e, r, n, i) { + throw new p.AssertionError({ + message: r, + actual: t, + expected: e, + operator: n, + stackStartFunction: i + }) + } + + function m(t, e) { + t || v(t, !0, e, "==", p.ok) + } + + function S(t, e, r, n) { + if (t === e) return !0; + if (o(t) && o(e)) return 0 === i(t, e); + if (s.isDate(t) && s.isDate(e)) return t.getTime() === e.getTime(); + if (s.isRegExp(t) && s.isRegExp(e)) return t.source === e.source && t.global === e.global && t.multiline === e.multiline && t.lastIndex === e.lastIndex && t.ignoreCase === e.ignoreCase; + if (null !== t && "object" == typeof t || null !== e && "object" == typeof e) { + if (h(t) && h(e) && c(t) === c(e) && !(t instanceof Float32Array || t instanceof Float64Array)) return 0 === i(new Uint8Array(t.buffer), new Uint8Array(e.buffer)); + if (o(t) !== o(e)) return !1; + var a = (n = n || { + actual: [], + expected: [] + }).actual.indexOf(t); + return -1 !== a && a === n.expected.indexOf(e) || (n.actual.push(t), n.expected.push(e), function(t, e, r, n) { + if (null == t || null == e) return !1; + if (s.isPrimitive(t) || s.isPrimitive(e)) return t === e; + if (r && Object.getPrototypeOf(t) !== Object.getPrototypeOf(e)) return !1; + var i = _(t), + o = _(e); + if (i && !o || !i && o) return !1; + if (i) return S(t = f.call(t), e = f.call(e), r); + var a, u, c = w(t), + h = w(e); + if (c.length !== h.length) return !1; + for (c.sort(), h.sort(), u = c.length - 1; u >= 0; u--) + if (c[u] !== h[u]) return !1; + for (u = c.length - 1; u >= 0; u--) + if (!S(t[a = c[u]], e[a], r, n)) return !1; + return !0 + }(t, e, r, n)) + } + return r ? t === e : t == e + } + + function _(t) { + return "[object Arguments]" == Object.prototype.toString.call(t) + } + + function b(t, e) { + if (!t || !e) return !1; + if ("[object RegExp]" == Object.prototype.toString.call(e)) return e.test(t); + try { + if (t instanceof e) return !0 + } catch (t) {} + return !Error.isPrototypeOf(e) && !0 === e.call({}, t) + } + + function E(t, e, r, n) { + var i; + if ("function" != typeof e) throw new TypeError('"block" argument must be a function'); + "string" == typeof r && (n = r, r = null), i = function(t) { + var e; + try { + t() + } catch (t) { + e = t + } + return e + }(e), n = (r && r.name ? " (" + r.name + ")." : ".") + (n ? " " + n : "."), t && !i && v(i, r, "Missing expected exception" + n); + var o = "string" == typeof n, + a = !t && i && !r; + if ((!t && s.isError(i) && o && b(i, r) || a) && v(i, r, "Got unwanted exception" + n), t && i && r && !b(i, r) || !t && i) throw i + } + p.AssertionError = function(t) { + this.name = "AssertionError", this.actual = t.actual, this.expected = t.expected, this.operator = t.operator, t.message ? (this.message = t.message, this.generatedMessage = !1) : (this.message = g(d(this.actual), 128) + " " + this.operator + " " + g(d(this.expected), 128), this.generatedMessage = !0); + var e = t.stackStartFunction || v; + if (Error.captureStackTrace) Error.captureStackTrace(this, e); + else { + var r = new Error; + if (r.stack) { + var n = r.stack, + i = y(e), + o = n.indexOf("\n" + i); + if (o >= 0) { + var s = n.indexOf("\n", o + 1); + n = n.substring(s + 1) + } + this.stack = n + } + } + }, s.inherits(p.AssertionError, Error), p.fail = v, p.ok = m, p.equal = function(t, e, r) { + t != e && v(t, e, r, "==", p.equal) + }, p.notEqual = function(t, e, r) { + t == e && v(t, e, r, "!=", p.notEqual) + }, p.deepEqual = function(t, e, r) { + S(t, e, !1) || v(t, e, r, "deepEqual", p.deepEqual) + }, p.deepStrictEqual = function(t, e, r) { + S(t, e, !0) || v(t, e, r, "deepStrictEqual", p.deepStrictEqual) + }, p.notDeepEqual = function(t, e, r) { + S(t, e, !1) && v(t, e, r, "notDeepEqual", p.notDeepEqual) + }, p.notDeepStrictEqual = function t(e, r, n) { + S(e, r, !0) && v(e, r, n, "notDeepStrictEqual", t) + }, p.strictEqual = function(t, e, r) { + t !== e && v(t, e, r, "===", p.strictEqual) + }, p.notStrictEqual = function(t, e, r) { + t === e && v(t, e, r, "!==", p.notStrictEqual) + }, p.throws = function(t, e, r) { + E(!0, t, e, r) + }, p.doesNotThrow = function(t, e, r) { + E(!1, t, e, r) + }, p.ifError = function(t) { + if (t) throw t + }, p.strict = n((function t(e, r) { + e || v(e, !0, r, "==", t) + }), p, { + equal: p.strictEqual, + deepEqual: p.deepStrictEqual, + notEqual: p.notStrictEqual, + notDeepEqual: p.notDeepStrictEqual + }), p.strict.strict = p.strict; + var w = Object.keys || function(t) { var e = []; for (var r in t) a.call(t, r) && e.push(r); return e } - }, - 6100: t => { - "function" == typeof Object.create ? t.exports = function(t, e) { - t.super_ = e, t.prototype = Object.create(e.prototype, { - constructor: { - value: t, - enumerable: !1, - writable: !0, - configurable: !0 - } - }) - } : t.exports = function(t, e) { - t.super_ = e; - var r = function() {}; - r.prototype = e.prototype, t.prototype = new r, t.prototype.constructor = t - } - }, - 3845: t => { - t.exports = function(t) { - return t && "object" == typeof t && "function" == typeof t.copy && "function" == typeof t.fill && "function" == typeof t.readUInt8 - } - }, - 4591: (t, e, r) => { - var n = r(5606), - i = /%[sdj%]/g; - e.format = function(t) { - if (!v(t)) { - for (var e = [], r = 0; r < arguments.length; r++) e.push(a(arguments[r])); - return e.join(" ") + }, + 6100: t => { + "function" == typeof Object.create ? t.exports = function(t, e) { + t.super_ = e, t.prototype = Object.create(e.prototype, { + constructor: { + value: t, + enumerable: !1, + writable: !0, + configurable: !0 + } + }) + } : t.exports = function(t, e) { + t.super_ = e; + var r = function() {}; + r.prototype = e.prototype, t.prototype = new r, t.prototype.constructor = t } - r = 1; - for (var n = arguments, o = n.length, s = String(t).replace(i, (function(t) { - if ("%%" === t) return "%"; - if (r >= o) return t; - switch (t) { - case "%s": - return String(n[r++]); - case "%d": - return Number(n[r++]); - case "%j": - try { - return JSON.stringify(n[r++]) - } catch (t) { - return "[Circular]" + }, + 3845: t => { + t.exports = function(t) { + return t && "object" == typeof t && "function" == typeof t.copy && "function" == typeof t.fill && "function" == typeof t.readUInt8 + } + }, + 4591: (t, e, r) => { + var n = r(5606), + i = /%[sdj%]/g; + e.format = function(t) { + if (!v(t)) { + for (var e = [], r = 0; r < arguments.length; r++) e.push(a(arguments[r])); + return e.join(" ") + } + r = 1; + for (var n = arguments, o = n.length, s = String(t).replace(i, (function(t) { + if ("%%" === t) return "%"; + if (r >= o) return t; + switch (t) { + case "%s": + return String(n[r++]); + case "%d": + return Number(n[r++]); + case "%j": + try { + return JSON.stringify(n[r++]) + } catch (t) { + return "[Circular]" + } + default: + return t } - default: - return t + })), f = n[r]; r < o; f = n[++r]) g(f) || !_(f) ? s += " " + f : s += " " + a(f); + return s + }, e.deprecate = function(t, i) { + if (m(r.g.process)) return function() { + return e.deprecate(t, i).apply(this, arguments) + }; + if (!0 === n.noDeprecation) return t; + var o = !1; + return function() { + if (!o) { + if (n.throwDeprecation) throw new Error(i); + n.traceDeprecation ? console.trace(i) : console.error(i), o = !0 + } + return t.apply(this, arguments) } - })), f = n[r]; r < o; f = n[++r]) g(f) || !_(f) ? s += " " + f : s += " " + a(f); - return s - }, e.deprecate = function(t, i) { - if (m(r.g.process)) return function() { - return e.deprecate(t, i).apply(this, arguments) }; - if (!0 === n.noDeprecation) return t; - var o = !1; - return function() { - if (!o) { - if (n.throwDeprecation) throw new Error(i); - n.traceDeprecation ? console.trace(i) : console.error(i), o = !0 - } - return t.apply(this, arguments) - } - }; - var o, s = {}; + var o, s = {}; - function a(t, r) { - var n = { - seen: [], - stylize: u - }; - return arguments.length >= 3 && (n.depth = arguments[2]), arguments.length >= 4 && (n.colors = arguments[3]), y(r) ? n.showHidden = r : r && e._extend(n, r), m(n.showHidden) && (n.showHidden = !1), m(n.depth) && (n.depth = 2), m(n.colors) && (n.colors = !1), m(n.customInspect) && (n.customInspect = !0), n.colors && (n.stylize = f), c(n, t, n.depth) - } - function f(t, e) { - var r = a.styles[e]; - return r ? "[" + a.colors[r][0] + "m" + t + "[" + a.colors[r][1] + "m" : t - } - function u(t, e) { - return t - } - function c(t, r, n) { - if (t.customInspect && r && w(r.inspect) && r.inspect !== e.inspect && (!r.constructor || r.constructor.prototype !== r)) { - var i = r.inspect(n, t); - return v(i) || (i = c(t, i, n)), i + function a(t, r) { + var n = { + seen: [], + stylize: u + }; + return arguments.length >= 3 && (n.depth = arguments[2]), arguments.length >= 4 && (n.colors = arguments[3]), y(r) ? n.showHidden = r : r && e._extend(n, r), m(n.showHidden) && (n.showHidden = !1), m(n.depth) && (n.depth = 2), m(n.colors) && (n.colors = !1), m(n.customInspect) && (n.customInspect = !0), n.colors && (n.stylize = f), c(n, t, n.depth) } - var o = function(t, e) { - if (m(e)) return t.stylize("undefined", "undefined"); - if (v(e)) { - var r = "'" + JSON.stringify(e).replace(/^"|"$/g, "").replace(/'/g, "\\'").replace(/\\"/g, '"') + "'"; - return t.stylize(r, "string") - } - return d(e) ? t.stylize("" + e, "number") : y(e) ? t.stylize("" + e, "boolean") : g(e) ? t.stylize("null", "null") : void 0 - }(t, r); - if (o) return o; - var s = Object.keys(r), - a = function(t) { - var e = {}; - return t.forEach((function(t, r) { - e[t] = !0 - })), e - }(s); - if (t.showHidden && (s = Object.getOwnPropertyNames(r)), E(r) && (s.indexOf("message") >= 0 || s.indexOf("description") >= 0)) return h(r); - if (0 === s.length) { - if (w(r)) { - var f = r.name ? ": " + r.name : ""; - return t.stylize("[Function" + f + "]", "special") - } - if (S(r)) return t.stylize(RegExp.prototype.toString.call(r), "regexp"); - if (b(r)) return t.stylize(Date.prototype.toString.call(r), "date"); - if (E(r)) return h(r) - } - var u, _ = "", - O = !1, - B = ["{", "}"]; - return l(r) && (O = !0, B = ["[", "]"]), w(r) && (_ = " [Function" + (r.name ? ": " + r.name : "") + "]"), S(r) && (_ = " " + RegExp.prototype.toString.call(r)), b(r) && (_ = " " + Date.prototype.toUTCString.call(r)), E(r) && (_ = " " + h(r)), 0 !== s.length || O && 0 != r.length ? n < 0 ? S(r) ? t.stylize(RegExp.prototype.toString.call(r), "regexp") : t.stylize("[Object]", "special") : (t.seen.push(r), u = O ? function(t, e, r, n, i) { - for (var o = [], s = 0, a = e.length; s < a; ++s) x(e, String(s)) ? o.push(p(t, e, r, n, String(s), !0)) : o.push(""); - return i.forEach((function(i) { - i.match(/^\d+$/) || o.push(p(t, e, r, n, i, !0)) - })), o - }(t, r, n, a, s) : s.map((function(e) { - return p(t, r, n, a, e, O) - })), t.seen.pop(), function(t, e, r) { - return t.reduce((function(t, e) { - return e.indexOf("\n"), t + e.replace(/\u001b\[\d\d?m/g, "").length + 1 - }), 0) > 60 ? r[0] + ("" === e ? "" : e + "\n ") + " " + t.join(",\n ") + " " + r[1] : r[0] + e + " " + t.join(", ") + " " + r[1] - }(u, _, B)) : B[0] + _ + B[1] - } - function h(t) { - return "[" + Error.prototype.toString.call(t) + "]" - } - function p(t, e, r, n, i, o) { - var s, a, f; - if ((f = Object.getOwnPropertyDescriptor(e, i) || { - value: e[i] - }).get ? a = f.set ? t.stylize("[Getter/Setter]", "special") : t.stylize("[Getter]", "special") : f.set && (a = t.stylize("[Setter]", "special")), x(n, i) || (s = "[" + i + "]"), a || (t.seen.indexOf(f.value) < 0 ? (a = g(r) ? c(t, f.value, null) : c(t, f.value, r - 1)).indexOf("\n") > -1 && (a = o ? a.split("\n").map((function(t) { - return " " + t - })).join("\n").substr(2) : "\n" + a.split("\n").map((function(t) { - return " " + t - })).join("\n")) : a = t.stylize("[Circular]", "special")), m(s)) { - if (o && i.match(/^\d+$/)) return a; - (s = JSON.stringify("" + i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/) ? (s = s.substr(1, s.length - 2), s = t.stylize(s, "name")) : (s = s.replace(/'/g, "\\'").replace(/\\"/g, '"').replace(/(^"|"$)/g, "'"), s = t.stylize(s, "string")) - } - return s + ": " + a - } - function l(t) { - return Array.isArray(t) - } - function y(t) { - return "boolean" == typeof t - } - function g(t) { - return null === t - } - function d(t) { - return "number" == typeof t - } - function v(t) { - return "string" == typeof t - } - function m(t) { - return void 0 === t - } - function S(t) { - return _(t) && "[object RegExp]" === O(t) - } - function _(t) { - return "object" == typeof t && null !== t - } - function b(t) { - return _(t) && "[object Date]" === O(t) - } - function E(t) { - return _(t) && ("[object Error]" === O(t) || t instanceof Error) - } - function w(t) { - return "function" == typeof t - } - function O(t) { - return Object.prototype.toString.call(t) - } - function B(t) { - return t < 10 ? "0" + t.toString(10) : t.toString(10) - } - e.debuglog = function(t) { - if (m(o) && (o = n.env.NODE_DEBUG || ""), t = t.toUpperCase(), !s[t]) if (new RegExp("\\b" + t + "\\b", "i").test(o)) { - var r = n.pid; - s[t] = function() { - var n = e.format.apply(e, arguments); - console.error("%s %d: %s", t, r, n) - } - } else s[t] = function() {}; - return s[t] - }, e.inspect = a, a.colors = { - bold: [1, 22], - italic: [3, 23], - underline: [4, 24], - inverse: [7, 27], - white: [37, 39], - grey: [90, 39], - black: [30, 39], - blue: [34, 39], - cyan: [36, 39], - green: [32, 39], - magenta: [35, 39], - red: [31, 39], - yellow: [33, 39] - }, a.styles = { - special: "cyan", - number: "yellow", - boolean: "yellow", - undefined: "grey", - null: "bold", - string: "green", - date: "magenta", - regexp: "red" - }, e.isArray = l, e.isBoolean = y, e.isNull = g, e.isNullOrUndefined = function(t) { - return null == t - }, e.isNumber = d, e.isString = v, e.isSymbol = function(t) { - return "symbol" == typeof t - }, e.isUndefined = m, e.isRegExp = S, e.isObject = _, e.isDate = b, e.isError = E, e.isFunction = w, e.isPrimitive = function(t) { - return null === t || "boolean" == typeof t || "number" == typeof t || "string" == typeof t || "symbol" == typeof t || void 0 === t - }, e.isBuffer = r(3845); - var A = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; - function x(t, e) { - return Object.prototype.hasOwnProperty.call(t, e) - } - e.log = function() { - var t, r; - console.log("%s - %s", (r = [B((t = new Date).getHours()), B(t.getMinutes()), B(t.getSeconds())].join(":"), [t.getDate(), A[t.getMonth()], r].join(" ")), e.format.apply(e, arguments)) - }, e.inherits = r(6100), e._extend = function(t, e) { - if (!e || !_(e)) return t; - for (var r = Object.keys(e), n = r.length; n--;) t[r[n]] = e[r[n]]; - return t - } - }, - 7526: (t, e) => { - "use strict"; - e.byteLength = function(t) { - var e = a(t), - r = e[0], - n = e[1]; - return 3 * (r + n) / 4 - n - }, e.toByteArray = function(t) { - var e, r, o = a(t), - s = o[0], - f = o[1], - u = new i(function(t, e, r) { - return 3 * (e + r) / 4 - r - }(0, s, f)), - c = 0, - h = f > 0 ? s - 4 : s; - for (r = 0; r < h; r += 4) e = n[t.charCodeAt(r)] << 18 | n[t.charCodeAt(r + 1)] << 12 | n[t.charCodeAt(r + 2)] << 6 | n[t.charCodeAt(r + 3)], u[c++] = e >> 16 & 255, u[c++] = e >> 8 & 255, u[c++] = 255 & e; - return 2 === f && (e = n[t.charCodeAt(r)] << 2 | n[t.charCodeAt(r + 1)] >> 4, u[c++] = 255 & e), 1 === f && (e = n[t.charCodeAt(r)] << 10 | n[t.charCodeAt(r + 1)] << 4 | n[t.charCodeAt(r + 2)] >> 2, u[c++] = e >> 8 & 255, u[c++] = 255 & e), u - }, e.fromByteArray = function(t) { - for (var e, n = t.length, i = n % 3, o = [], s = 16383, a = 0, u = n - i; a < u; a += s) o.push(f(t, a, a + s > u ? u : a + s)); - return 1 === i ? (e = t[n - 1], o.push(r[e >> 2] + r[e << 4 & 63] + "==")) : 2 === i && (e = (t[n - 2] << 8) + t[n - 1], o.push(r[e >> 10] + r[e >> 4 & 63] + r[e << 2 & 63] + "=")), o.join("") - }; - for (var r = [], n = [], i = "undefined" != typeof Uint8Array ? Uint8Array : Array, o = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", s = 0; s < 64; ++s) r[s] = o[s], n[o.charCodeAt(s)] = s; + function f(t, e) { + var r = a.styles[e]; + return r ? "[" + a.colors[r][0] + "m" + t + "[" + a.colors[r][1] + "m" : t + } - function a(t) { - var e = t.length; - if (e % 4 > 0) throw new Error("Invalid string. Length must be a multiple of 4"); - var r = t.indexOf("="); - return -1 === r && (r = e), [r, r === e ? 0 : 4 - r % 4] - } - function f(t, e, n) { - for (var i, o, s = [], a = e; a < n; a += 3) i = (t[a] << 16 & 16711680) + (t[a + 1] << 8 & 65280) + (255 & t[a + 2]), s.push(r[(o = i) >> 18 & 63] + r[o >> 12 & 63] + r[o >> 6 & 63] + r[63 & o]); - return s.join("") - } - n["-".charCodeAt(0)] = 62, n["_".charCodeAt(0)] = 63 - }, - 8287: (t, e, r) => { - "use strict"; - var n = r(7526), - i = r(251); - e.Buffer = a, e.SlowBuffer = function(t) { - return +t != t && (t = 0), a.alloc(+t) - }, e.INSPECT_MAX_BYTES = 50; - var o = 2147483647; - - function s(t) { - if (t > o) throw new RangeError('The value "' + t + '" is invalid for option "size"'); - var e = new Uint8Array(t); - return e.__proto__ = a.prototype, e - } - function a(t, e, r) { - if ("number" == typeof t) { - if ("string" == typeof e) throw new TypeError('The "string" argument must be of type string. Received type number'); - return c(t) - } - return f(t, e, r) - } - function f(t, e, r) { - if ("string" == typeof t) return function(t, e) { - if ("string" == typeof e && "" !== e || (e = "utf8"), !a.isEncoding(e)) throw new TypeError("Unknown encoding: " + e); - var r = 0 | l(t, e), - n = s(r), - i = n.write(t, e); - return i !== r && (n = n.slice(0, i)), n - }(t, e); - if (ArrayBuffer.isView(t)) return h(t); - if (null == t) throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof t); - if (H(t, ArrayBuffer) || t && H(t.buffer, ArrayBuffer)) return function(t, e, r) { - if (e < 0 || t.byteLength < e) throw new RangeError('"offset" is outside of buffer bounds'); - if (t.byteLength < e + (r || 0)) throw new RangeError('"length" is outside of buffer bounds'); - var n; - return (n = void 0 === e && void 0 === r ? new Uint8Array(t) : void 0 === r ? new Uint8Array(t, e) : new Uint8Array(t, e, r)).__proto__ = a.prototype, n - }(t, e, r); - if ("number" == typeof t) throw new TypeError('The "value" argument must not be of type number. Received type number'); - var n = t.valueOf && t.valueOf(); - if (null != n && n !== t) return a.from(n, e, r); - var i = function(t) { - if (a.isBuffer(t)) { - var e = 0 | p(t.length), - r = s(e); - return 0 === r.length || t.copy(r, 0, 0, e), r - } - return void 0 !== t.length ? "number" != typeof t.length || F(t.length) ? s(0) : h(t) : "Buffer" === t.type && Array.isArray(t.data) ? h(t.data) : void 0 - }(t); - if (i) return i; - if ("undefined" != typeof Symbol && null != Symbol.toPrimitive && "function" == typeof t[Symbol.toPrimitive]) return a.from(t[Symbol.toPrimitive]("string"), e, r); - throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof t) - } - function u(t) { - if ("number" != typeof t) throw new TypeError('"size" argument must be of type number'); - if (t < 0) throw new RangeError('The value "' + t + '" is invalid for option "size"') - } - function c(t) { - return u(t), s(t < 0 ? 0 : 0 | p(t)) - } - function h(t) { - for (var e = t.length < 0 ? 0 : 0 | p(t.length), r = s(e), n = 0; n < e; n += 1) r[n] = 255 & t[n]; - return r - } - function p(t) { - if (t >= o) throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x" + o.toString(16) + " bytes"); - return 0 | t - } - function l(t, e) { - if (a.isBuffer(t)) return t.length; - if (ArrayBuffer.isView(t) || H(t, ArrayBuffer)) return t.byteLength; - if ("string" != typeof t) throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + typeof t); - var r = t.length, - n = arguments.length > 2 && !0 === arguments[2]; - if (!n && 0 === r) return 0; - for (var i = !1;;) switch (e) { - case "ascii": - case "latin1": - case "binary": - return r; - case "utf8": - case "utf-8": - return U(t).length; - case "ucs2": - case "ucs-2": - case "utf16le": - case "utf-16le": - return 2 * r; - case "hex": - return r >>> 1; - case "base64": - return M(t).length; - default: - if (i) return n ? -1 : U(t).length; - e = ("" + e).toLowerCase(), i = !0 - } - } - function y(t, e, r) { - var n = !1; - if ((void 0 === e || e < 0) && (e = 0), e > this.length) return ""; - if ((void 0 === r || r > this.length) && (r = this.length), r <= 0) return ""; - if ((r >>>= 0) <= (e >>>= 0)) return ""; - for (t || (t = "utf8");;) switch (t) { - case "hex": - return T(this, e, r); - case "utf8": - case "utf-8": - return B(this, e, r); - case "ascii": - return x(this, e, r); - case "latin1": - case "binary": - return P(this, e, r); - case "base64": - return O(this, e, r); - case "ucs2": - case "ucs-2": - case "utf16le": - case "utf-16le": - return I(this, e, r); - default: - if (n) throw new TypeError("Unknown encoding: " + t); - t = (t + "").toLowerCase(), n = !0 - } - } - function g(t, e, r) { - var n = t[e]; - t[e] = t[r], t[r] = n - } - function d(t, e, r, n, i) { - if (0 === t.length) return -1; - if ("string" == typeof r ? (n = r, r = 0) : r > 2147483647 ? r = 2147483647 : r < -2147483648 && (r = -2147483648), F(r = +r) && (r = i ? 0 : t.length - 1), r < 0 && (r = t.length + r), r >= t.length) { - if (i) return -1; - r = t.length - 1 - } else if (r < 0) { - if (!i) return -1; - r = 0 - } - if ("string" == typeof e && (e = a.from(e, n)), a.isBuffer(e)) return 0 === e.length ? -1 : v(t, e, r, n, i); - if ("number" == typeof e) return e &= 255, "function" == typeof Uint8Array.prototype.indexOf ? i ? Uint8Array.prototype.indexOf.call(t, e, r) : Uint8Array.prototype.lastIndexOf.call(t, e, r) : v(t, [e], r, n, i); - throw new TypeError("val must be string, number or Buffer") - } - function v(t, e, r, n, i) { - var o, s = 1, - a = t.length, - f = e.length; - if (void 0 !== n && ("ucs2" === (n = String(n).toLowerCase()) || "ucs-2" === n || "utf16le" === n || "utf-16le" === n)) { - if (t.length < 2 || e.length < 2) return -1; - s = 2, a /= 2, f /= 2, r /= 2 - } function u(t, e) { - return 1 === s ? t[e] : t.readUInt16BE(e * s) - } - if (i) { - var c = -1; - for (o = r; o < a; o++) if (u(t, o) === u(e, -1 === c ? 0 : o - c)) { - if (-1 === c && (c = o), o - c + 1 === f) return c * s - } else -1 !== c && (o -= o - c), c = -1 - } else for (r + f > a && (r = a - f), o = r; o >= 0; o--) { - for (var h = !0, p = 0; p < f; p++) if (u(t, o + p) !== u(e, p)) { - h = !1; - break - } - if (h) return o - } - return -1 - } - function m(t, e, r, n) { - r = Number(r) || 0; - var i = t.length - r; - n ? (n = Number(n)) > i && (n = i) : n = i; - var o = e.length; - n > o / 2 && (n = o / 2); - for (var s = 0; s < n; ++s) { - var a = parseInt(e.substr(2 * s, 2), 16); - if (F(a)) return s; - t[r + s] = a - } - return s - } - function S(t, e, r, n) { - return j(U(e, t.length - r), t, r, n) - } - function _(t, e, r, n) { - return j(function(t) { - for (var e = [], r = 0; r < t.length; ++r) e.push(255 & t.charCodeAt(r)); - return e - }(e), t, r, n) - } - function b(t, e, r, n) { - return _(t, e, r, n) - } - function E(t, e, r, n) { - return j(M(e), t, r, n) - } - function w(t, e, r, n) { - return j(function(t, e) { - for (var r, n, i, o = [], s = 0; s < t.length && !((e -= 2) < 0); ++s) n = (r = t.charCodeAt(s)) >> 8, i = r % 256, o.push(i), o.push(n); - return o - }(e, t.length - r), t, r, n) - } - function O(t, e, r) { - return 0 === e && r === t.length ? n.fromByteArray(t) : n.fromByteArray(t.slice(e, r)) - } - function B(t, e, r) { - r = Math.min(t.length, r); - for (var n = [], i = e; i < r;) { - var o, s, a, f, u = t[i], - c = null, - h = u > 239 ? 4 : u > 223 ? 3 : u > 191 ? 2 : 1; - if (i + h <= r) switch (h) { - case 1: - u < 128 && (c = u); - break; - case 2: - 128 == (192 & (o = t[i + 1])) && (f = (31 & u) << 6 | 63 & o) > 127 && (c = f); - break; - case 3: - o = t[i + 1], s = t[i + 2], 128 == (192 & o) && 128 == (192 & s) && (f = (15 & u) << 12 | (63 & o) << 6 | 63 & s) > 2047 && (f < 55296 || f > 57343) && (c = f); - break; - case 4: - o = t[i + 1], s = t[i + 2], a = t[i + 3], 128 == (192 & o) && 128 == (192 & s) && 128 == (192 & a) && (f = (15 & u) << 18 | (63 & o) << 12 | (63 & s) << 6 | 63 & a) > 65535 && f < 1114112 && (c = f) - } - null === c ? (c = 65533, h = 1) : c > 65535 && (c -= 65536, n.push(c >>> 10 & 1023 | 55296), c = 56320 | 1023 & c), n.push(c), i += h - } - return function(t) { - var e = t.length; - if (e <= A) return String.fromCharCode.apply(String, t); - for (var r = "", n = 0; n < e;) r += String.fromCharCode.apply(String, t.slice(n, n += A)); - return r - }(n) - } - e.kMaxLength = o, a.TYPED_ARRAY_SUPPORT = function() { - try { - var t = new Uint8Array(1); - return t.__proto__ = { - __proto__: Uint8Array.prototype, - foo: function() { - return 42 - } - }, 42 === t.foo() - } catch (t) { - return !1 - } - }(), a.TYPED_ARRAY_SUPPORT || "undefined" == typeof console || "function" != typeof console.error || console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."), Object.defineProperty(a.prototype, "parent", { - enumerable: !0, - get: function() { - if (a.isBuffer(this)) return this.buffer - } - }), Object.defineProperty(a.prototype, "offset", { - enumerable: !0, - get: function() { - if (a.isBuffer(this)) return this.byteOffset - } - }), "undefined" != typeof Symbol && null != Symbol.species && a[Symbol.species] === a && Object.defineProperty(a, Symbol.species, { - value: null, - configurable: !0, - enumerable: !1, - writable: !1 - }), a.poolSize = 8192, a.from = function(t, e, r) { - return f(t, e, r) - }, a.prototype.__proto__ = Uint8Array.prototype, a.__proto__ = Uint8Array, a.alloc = function(t, e, r) { - return function(t, e, r) { - return u(t), t <= 0 ? s(t) : void 0 !== e ? "string" == typeof r ? s(t).fill(e, r) : s(t).fill(e) : s(t) - }(t, e, r) - }, a.allocUnsafe = function(t) { - return c(t) - }, a.allocUnsafeSlow = function(t) { - return c(t) - }, a.isBuffer = function(t) { - return null != t && !0 === t._isBuffer && t !== a.prototype - }, a.compare = function(t, e) { - if (H(t, Uint8Array) && (t = a.from(t, t.offset, t.byteLength)), H(e, Uint8Array) && (e = a.from(e, e.offset, e.byteLength)), !a.isBuffer(t) || !a.isBuffer(e)) throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array'); - if (t === e) return 0; - for (var r = t.length, n = e.length, i = 0, o = Math.min(r, n); i < o; ++i) if (t[i] !== e[i]) { - r = t[i], n = e[i]; - break - } - return r < n ? -1 : n < r ? 1 : 0 - }, a.isEncoding = function(t) { - switch (String(t).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 - } - }, a.concat = function(t, e) { - if (!Array.isArray(t)) throw new TypeError('"list" argument must be an Array of Buffers'); - if (0 === t.length) return a.alloc(0); - var r; - if (void 0 === e) for (e = 0, r = 0; r < t.length; ++r) e += t[r].length; - var n = a.allocUnsafe(e), - i = 0; - for (r = 0; r < t.length; ++r) { - var o = t[r]; - if (H(o, Uint8Array) && (o = a.from(o)), !a.isBuffer(o)) throw new TypeError('"list" argument must be an Array of Buffers'); - o.copy(n, i), i += o.length - } - return n - }, a.byteLength = l, a.prototype._isBuffer = !0, a.prototype.swap16 = function() { - var t = this.length; - if (t % 2 != 0) throw new RangeError("Buffer size must be a multiple of 16-bits"); - for (var e = 0; e < t; e += 2) g(this, e, e + 1); - return this - }, a.prototype.swap32 = function() { - var t = this.length; - if (t % 4 != 0) throw new RangeError("Buffer size must be a multiple of 32-bits"); - for (var e = 0; e < t; e += 4) g(this, e, e + 3), g(this, e + 1, e + 2); - return this - }, a.prototype.swap64 = function() { - var t = this.length; - if (t % 8 != 0) throw new RangeError("Buffer size must be a multiple of 64-bits"); - for (var e = 0; e < t; e += 8) g(this, e, e + 7), g(this, e + 1, e + 6), g(this, e + 2, e + 5), g(this, e + 3, e + 4); - return this - }, a.prototype.toString = function() { - var t = this.length; - return 0 === t ? "" : 0 === arguments.length ? B(this, 0, t) : y.apply(this, arguments) - }, a.prototype.toLocaleString = a.prototype.toString, a.prototype.equals = function(t) { - if (!a.isBuffer(t)) throw new TypeError("Argument must be a Buffer"); - return this === t || 0 === a.compare(this, t) - }, a.prototype.inspect = function() { - var t = "", - r = e.INSPECT_MAX_BYTES; - return t = this.toString("hex", 0, r).replace(/(.{2})/g, "$1 ").trim(), this.length > r && (t += " ... "), "" - }, a.prototype.compare = function(t, e, r, n, i) { - if (H(t, Uint8Array) && (t = a.from(t, t.offset, t.byteLength)), !a.isBuffer(t)) throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type ' + typeof t); - if (void 0 === e && (e = 0), void 0 === r && (r = t ? t.length : 0), void 0 === n && (n = 0), void 0 === i && (i = this.length), e < 0 || r > t.length || n < 0 || i > this.length) throw new RangeError("out of range index"); - if (n >= i && e >= r) return 0; - if (n >= i) return -1; - if (e >= r) return 1; - if (this === t) return 0; - for (var o = (i >>>= 0) - (n >>>= 0), s = (r >>>= 0) - (e >>>= 0), f = Math.min(o, s), u = this.slice(n, i), c = t.slice(e, r), h = 0; h < f; ++h) if (u[h] !== c[h]) { - o = u[h], s = c[h]; - break - } - return o < s ? -1 : s < o ? 1 : 0 - }, a.prototype.includes = function(t, e, r) { - return -1 !== this.indexOf(t, e, r) - }, a.prototype.indexOf = function(t, e, r) { - return d(this, t, e, r, !0) - }, a.prototype.lastIndexOf = function(t, e, r) { - return d(this, t, e, r, !1) - }, a.prototype.write = function(t, e, r, n) { - if (void 0 === e) n = "utf8", r = this.length, e = 0; - else if (void 0 === r && "string" == typeof e) n = e, r = this.length, e = 0; - else { - if (!isFinite(e)) throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported"); - e >>>= 0, isFinite(r) ? (r >>>= 0, void 0 === n && (n = "utf8")) : (n = r, r = void 0) - } - var i = this.length - e; - if ((void 0 === r || r > i) && (r = i), t.length > 0 && (r < 0 || e < 0) || e > this.length) throw new RangeError("Attempt to write outside buffer bounds"); - n || (n = "utf8"); - for (var o = !1;;) switch (n) { - case "hex": - return m(this, t, e, r); - case "utf8": - case "utf-8": - return S(this, t, e, r); - case "ascii": - return _(this, t, e, r); - case "latin1": - case "binary": - return b(this, t, e, r); - case "base64": - return E(this, t, e, r); - case "ucs2": - case "ucs-2": - case "utf16le": - case "utf-16le": - return w(this, t, e, r); - default: - if (o) throw new TypeError("Unknown encoding: " + n); - n = ("" + n).toLowerCase(), o = !0 - } - }, a.prototype.toJSON = function() { - return { - type: "Buffer", - data: Array.prototype.slice.call(this._arr || this, 0) - } - }; - var A = 4096; - - function x(t, e, r) { - var n = ""; - r = Math.min(t.length, r); - for (var i = e; i < r; ++i) n += String.fromCharCode(127 & t[i]); - return n - } - function P(t, e, r) { - var n = ""; - r = Math.min(t.length, r); - for (var i = e; i < r; ++i) n += String.fromCharCode(t[i]); - return n - } - function T(t, e, r) { - var n, i = t.length; - (!e || e < 0) && (e = 0), (!r || r < 0 || r > i) && (r = i); - for (var o = "", s = e; s < r; ++s) o += (n = t[s]) < 16 ? "0" + n.toString(16) : n.toString(16); - return o - } - function I(t, e, r) { - for (var n = t.slice(e, r), i = "", o = 0; o < n.length; o += 2) i += String.fromCharCode(n[o] + 256 * n[o + 1]); - return i - } - function k(t, e, r) { - if (t % 1 != 0 || t < 0) throw new RangeError("offset is not uint"); - if (t + e > r) throw new RangeError("Trying to access beyond buffer length") - } - function D(t, e, r, n, i, o) { - if (!a.isBuffer(t)) throw new TypeError('"buffer" argument must be a Buffer instance'); - if (e > i || e < o) throw new RangeError('"value" argument is out of bounds'); - if (r + n > t.length) throw new RangeError("Index out of range") - } - function R(t, e, r, n, i, o) { - if (r + n > t.length) throw new RangeError("Index out of range"); - if (r < 0) throw new RangeError("Index out of range") - } - function N(t, e, r, n, o) { - return e = +e, r >>>= 0, o || R(t, 0, r, 4), i.write(t, e, r, n, 23, 4), r + 4 - } - function L(t, e, r, n, o) { - return e = +e, r >>>= 0, o || R(t, 0, r, 8), i.write(t, e, r, n, 52, 8), r + 8 - } - a.prototype.slice = function(t, e) { - var r = this.length; - (t = ~~t) < 0 ? (t += r) < 0 && (t = 0) : t > r && (t = r), (e = void 0 === e ? r : ~~e) < 0 ? (e += r) < 0 && (e = 0) : e > r && (e = r), e < t && (e = t); - var n = this.subarray(t, e); - return n.__proto__ = a.prototype, n - }, a.prototype.readUIntLE = function(t, e, r) { - t >>>= 0, e >>>= 0, r || k(t, e, this.length); - for (var n = this[t], i = 1, o = 0; ++o < e && (i *= 256);) n += this[t + o] * i; - return n - }, a.prototype.readUIntBE = function(t, e, r) { - t >>>= 0, e >>>= 0, r || k(t, e, this.length); - for (var n = this[t + --e], i = 1; e > 0 && (i *= 256);) n += this[t + --e] * i; - return n - }, a.prototype.readUInt8 = function(t, e) { - return t >>>= 0, e || k(t, 1, this.length), this[t] - }, a.prototype.readUInt16LE = function(t, e) { - return t >>>= 0, e || k(t, 2, this.length), this[t] | this[t + 1] << 8 - }, a.prototype.readUInt16BE = function(t, e) { - return t >>>= 0, e || k(t, 2, this.length), this[t] << 8 | this[t + 1] - }, a.prototype.readUInt32LE = function(t, e) { - return t >>>= 0, e || k(t, 4, this.length), (this[t] | this[t + 1] << 8 | this[t + 2] << 16) + 16777216 * this[t + 3] - }, a.prototype.readUInt32BE = function(t, e) { - return t >>>= 0, e || k(t, 4, this.length), 16777216 * this[t] + (this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3]) - }, a.prototype.readIntLE = function(t, e, r) { - t >>>= 0, e >>>= 0, r || k(t, e, this.length); - for (var n = this[t], i = 1, o = 0; ++o < e && (i *= 256);) n += this[t + o] * i; - return n >= (i *= 128) && (n -= Math.pow(2, 8 * e)), n - }, a.prototype.readIntBE = function(t, e, r) { - t >>>= 0, e >>>= 0, r || k(t, e, this.length); - for (var n = e, i = 1, o = this[t + --n]; n > 0 && (i *= 256);) o += this[t + --n] * i; - return o >= (i *= 128) && (o -= Math.pow(2, 8 * e)), o - }, a.prototype.readInt8 = function(t, e) { - return t >>>= 0, e || k(t, 1, this.length), 128 & this[t] ? -1 * (255 - this[t] + 1) : this[t] - }, a.prototype.readInt16LE = function(t, e) { - t >>>= 0, e || k(t, 2, this.length); - var r = this[t] | this[t + 1] << 8; - return 32768 & r ? 4294901760 | r : r - }, a.prototype.readInt16BE = function(t, e) { - t >>>= 0, e || k(t, 2, this.length); - var r = this[t + 1] | this[t] << 8; - return 32768 & r ? 4294901760 | r : r - }, a.prototype.readInt32LE = function(t, e) { - return t >>>= 0, e || k(t, 4, this.length), this[t] | this[t + 1] << 8 | this[t + 2] << 16 | this[t + 3] << 24 - }, a.prototype.readInt32BE = function(t, e) { - return t >>>= 0, e || k(t, 4, this.length), this[t] << 24 | this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3] - }, a.prototype.readFloatLE = function(t, e) { - return t >>>= 0, e || k(t, 4, this.length), i.read(this, t, !0, 23, 4) - }, a.prototype.readFloatBE = function(t, e) { - return t >>>= 0, e || k(t, 4, this.length), i.read(this, t, !1, 23, 4) - }, a.prototype.readDoubleLE = function(t, e) { - return t >>>= 0, e || k(t, 8, this.length), i.read(this, t, !0, 52, 8) - }, a.prototype.readDoubleBE = function(t, e) { - return t >>>= 0, e || k(t, 8, this.length), i.read(this, t, !1, 52, 8) - }, a.prototype.writeUIntLE = function(t, e, r, n) { - t = +t, e >>>= 0, r >>>= 0, n || D(this, t, e, r, Math.pow(2, 8 * r) - 1, 0); - var i = 1, - o = 0; - for (this[e] = 255 & t; ++o < r && (i *= 256);) this[e + o] = t / i & 255; - return e + r - }, a.prototype.writeUIntBE = function(t, e, r, n) { - t = +t, e >>>= 0, r >>>= 0, n || D(this, t, e, r, Math.pow(2, 8 * r) - 1, 0); - var i = r - 1, - o = 1; - for (this[e + i] = 255 & t; --i >= 0 && (o *= 256);) this[e + i] = t / o & 255; - return e + r - }, a.prototype.writeUInt8 = function(t, e, r) { - return t = +t, e >>>= 0, r || D(this, t, e, 1, 255, 0), this[e] = 255 & t, e + 1 - }, a.prototype.writeUInt16LE = function(t, e, r) { - return t = +t, e >>>= 0, r || D(this, t, e, 2, 65535, 0), this[e] = 255 & t, this[e + 1] = t >>> 8, e + 2 - }, a.prototype.writeUInt16BE = function(t, e, r) { - return t = +t, e >>>= 0, r || D(this, t, e, 2, 65535, 0), this[e] = t >>> 8, this[e + 1] = 255 & t, e + 2 - }, a.prototype.writeUInt32LE = function(t, e, r) { - return t = +t, e >>>= 0, r || D(this, t, e, 4, 4294967295, 0), this[e + 3] = t >>> 24, this[e + 2] = t >>> 16, this[e + 1] = t >>> 8, this[e] = 255 & t, e + 4 - }, a.prototype.writeUInt32BE = function(t, e, r) { - return t = +t, e >>>= 0, r || D(this, t, e, 4, 4294967295, 0), this[e] = t >>> 24, this[e + 1] = t >>> 16, this[e + 2] = t >>> 8, this[e + 3] = 255 & t, e + 4 - }, a.prototype.writeIntLE = function(t, e, r, n) { - if (t = +t, e >>>= 0, !n) { - var i = Math.pow(2, 8 * r - 1); - D(this, t, e, r, i - 1, -i) - } - var o = 0, - s = 1, - a = 0; - for (this[e] = 255 & t; ++o < r && (s *= 256);) t < 0 && 0 === a && 0 !== this[e + o - 1] && (a = 1), this[e + o] = (t / s | 0) - a & 255; - return e + r - }, a.prototype.writeIntBE = function(t, e, r, n) { - if (t = +t, e >>>= 0, !n) { - var i = Math.pow(2, 8 * r - 1); - D(this, t, e, r, i - 1, -i) - } - var o = r - 1, - s = 1, - a = 0; - for (this[e + o] = 255 & t; --o >= 0 && (s *= 256);) t < 0 && 0 === a && 0 !== this[e + o + 1] && (a = 1), this[e + o] = (t / s | 0) - a & 255; - return e + r - }, a.prototype.writeInt8 = function(t, e, r) { - return t = +t, e >>>= 0, r || D(this, t, e, 1, 127, -128), t < 0 && (t = 255 + t + 1), this[e] = 255 & t, e + 1 - }, a.prototype.writeInt16LE = function(t, e, r) { - return t = +t, e >>>= 0, r || D(this, t, e, 2, 32767, -32768), this[e] = 255 & t, this[e + 1] = t >>> 8, e + 2 - }, a.prototype.writeInt16BE = function(t, e, r) { - return t = +t, e >>>= 0, r || D(this, t, e, 2, 32767, -32768), this[e] = t >>> 8, this[e + 1] = 255 & t, e + 2 - }, a.prototype.writeInt32LE = function(t, e, r) { - return t = +t, e >>>= 0, r || D(this, t, e, 4, 2147483647, -2147483648), this[e] = 255 & t, this[e + 1] = t >>> 8, this[e + 2] = t >>> 16, this[e + 3] = t >>> 24, e + 4 - }, a.prototype.writeInt32BE = function(t, e, r) { - return t = +t, e >>>= 0, r || D(this, t, e, 4, 2147483647, -2147483648), t < 0 && (t = 4294967295 + t + 1), this[e] = t >>> 24, this[e + 1] = t >>> 16, this[e + 2] = t >>> 8, this[e + 3] = 255 & t, e + 4 - }, a.prototype.writeFloatLE = function(t, e, r) { - return N(this, t, e, !0, r) - }, a.prototype.writeFloatBE = function(t, e, r) { - return N(this, t, e, !1, r) - }, a.prototype.writeDoubleLE = function(t, e, r) { - return L(this, t, e, !0, r) - }, a.prototype.writeDoubleBE = function(t, e, r) { - return L(this, t, e, !1, r) - }, a.prototype.copy = function(t, e, r, n) { - if (!a.isBuffer(t)) throw new TypeError("argument should be a Buffer"); - if (r || (r = 0), n || 0 === n || (n = this.length), e >= t.length && (e = t.length), e || (e = 0), n > 0 && n < r && (n = r), n === r) return 0; - if (0 === t.length || 0 === this.length) return 0; - if (e < 0) throw new RangeError("targetStart out of bounds"); - if (r < 0 || r >= this.length) throw new RangeError("Index out of range"); - if (n < 0) throw new RangeError("sourceEnd out of bounds"); - n > this.length && (n = this.length), t.length - e < n - r && (n = t.length - e + r); - var i = n - r; - if (this === t && "function" == typeof Uint8Array.prototype.copyWithin) this.copyWithin(e, r, n); - else if (this === t && r < e && e < n) for (var o = i - 1; o >= 0; --o) t[o + e] = this[o + r]; - else Uint8Array.prototype.set.call(t, this.subarray(r, n), e); - return i - }, a.prototype.fill = function(t, e, r, n) { - if ("string" == typeof t) { - if ("string" == typeof e ? (n = e, e = 0, r = this.length) : "string" == typeof r && (n = r, r = this.length), void 0 !== n && "string" != typeof n) throw new TypeError("encoding must be a string"); - if ("string" == typeof n && !a.isEncoding(n)) throw new TypeError("Unknown encoding: " + n); - if (1 === t.length) { - var i = t.charCodeAt(0); - ("utf8" === n && i < 128 || "latin1" === n) && (t = i) - } - } else "number" == typeof t && (t &= 255); - if (e < 0 || this.length < e || this.length < r) throw new RangeError("Out of range index"); - if (r <= e) return this; - var o; - if (e >>>= 0, r = void 0 === r ? this.length : r >>> 0, t || (t = 0), "number" == typeof t) for (o = e; o < r; ++o) this[o] = t; - else { - var s = a.isBuffer(t) ? t : a.from(t, n), - f = s.length; - if (0 === f) throw new TypeError('The value "' + t + '" is invalid for argument "value"'); - for (o = 0; o < r - e; ++o) this[o + e] = s[o % f] - } - return this - }; - var C = /[^+/0-9A-Za-z-_]/g; - - function U(t, e) { - var r; - e = e || 1 / 0; - for (var n = t.length, i = null, o = [], s = 0; s < n; ++s) { - if ((r = t.charCodeAt(s)) > 55295 && r < 57344) { - if (!i) { - if (r > 56319) { - (e -= 3) > -1 && o.push(239, 191, 189); - continue - } - if (s + 1 === n) { - (e -= 3) > -1 && o.push(239, 191, 189); - continue - } - i = r; - continue - } - if (r < 56320) { - (e -= 3) > -1 && o.push(239, 191, 189), i = r; - continue - } - r = 65536 + (i - 55296 << 10 | r - 56320) - } else i && (e -= 3) > -1 && o.push(239, 191, 189); - if (i = null, r < 128) { - if ((e -= 1) < 0) break; - o.push(r) - } else if (r < 2048) { - if ((e -= 2) < 0) break; - o.push(r >> 6 | 192, 63 & r | 128) - } else if (r < 65536) { - if ((e -= 3) < 0) break; - o.push(r >> 12 | 224, r >> 6 & 63 | 128, 63 & r | 128) - } else { - if (!(r < 1114112)) throw new Error("Invalid code point"); - if ((e -= 4) < 0) break; - o.push(r >> 18 | 240, r >> 12 & 63 | 128, r >> 6 & 63 | 128, 63 & r | 128) - } - } - return o - } - function M(t) { - return n.toByteArray(function(t) { - if ((t = (t = t.split("=")[0]).trim().replace(C, "")).length < 2) return ""; - for (; t.length % 4 != 0;) t += "="; return t - }(t)) - } - function j(t, e, r, n) { - for (var i = 0; i < n && !(i + r >= e.length || i >= t.length); ++i) e[i + r] = t[i]; - return i - } - function H(t, e) { - return t instanceof e || null != t && null != t.constructor && null != t.constructor.name && t.constructor.name === e.name - } - function F(t) { - return t != t - } - }, - 8075: (t, e, r) => { - "use strict"; - var n = r(453), - i = r(487), - o = i(n("String.prototype.indexOf")); - t.exports = function(t, e) { - var r = n(t, !! e); - return "function" == typeof r && o(t, ".prototype.") > -1 ? i(r) : r - } - }, - 487: (t, e, r) => { - "use strict"; - var n = r(6743), - i = r(453), - o = r(6897), - s = r(9675), - a = i("%Function.prototype.apply%"), - f = i("%Function.prototype.call%"), - u = i("%Reflect.apply%", !0) || n.call(f, a), - c = r(655), - h = i("%Math.max%"); - t.exports = function(t) { - if ("function" != typeof t) throw new s("a function is required"); - var e = u(n, f, arguments); - return o(e, 1 + h(0, t.length - (arguments.length - 1)), !0) - }; - var p = function() { - return u(n, a, arguments) - }; - c ? c(t.exports, "apply", { - value: p - }) : t.exports.apply = p - }, - 955: function(t, e, r) { - var n; - t.exports = (n = r(9021), r(754), r(4636), r(9506), r(7165), function() { - var t = n, - e = t.lib.BlockCipher, - r = t.algo, - i = [], - o = [], - s = [], - a = [], - f = [], - u = [], - c = [], - h = [], - p = [], - l = []; - ! function() { - for (var t = [], e = 0; e < 256; e++) t[e] = e < 128 ? e << 1 : e << 1 ^ 283; - var r = 0, - n = 0; - for (e = 0; e < 256; e++) { - var y = n ^ n << 1 ^ n << 2 ^ n << 3 ^ n << 4; - y = y >>> 8 ^ 255 & y ^ 99, i[r] = y, o[y] = r; - var g = t[r], - d = t[g], - v = t[d], - m = 257 * t[y] ^ 16843008 * y; - s[r] = m << 24 | m >>> 8, a[r] = m << 16 | m >>> 16, f[r] = m << 8 | m >>> 24, u[r] = m, m = 16843009 * v ^ 65537 * d ^ 257 * g ^ 16843008 * r, c[y] = m << 24 | m >>> 8, h[y] = m << 16 | m >>> 16, p[y] = m << 8 | m >>> 24, l[y] = m, r ? (r = g ^ t[t[t[v ^ g]]], n ^= t[t[n]]) : r = n = 1 - } - }(); - var y = [0, 1, 2, 4, 8, 16, 32, 64, 128, 27, 54], - g = r.AES = e.extend({ - _doReset: function() { - if (!this._nRounds || this._keyPriorReset !== this._key) { - for (var t = this._keyPriorReset = this._key, e = t.words, r = t.sigBytes / 4, n = 4 * ((this._nRounds = r + 6) + 1), o = this._keySchedule = [], s = 0; s < n; s++) if (s < r) o[s] = e[s]; - else { - var a = o[s - 1]; - s % r ? r > 6 && s % r == 4 && (a = i[a >>> 24] << 24 | i[a >>> 16 & 255] << 16 | i[a >>> 8 & 255] << 8 | i[255 & a]) : (a = i[(a = a << 8 | a >>> 24) >>> 24] << 24 | i[a >>> 16 & 255] << 16 | i[a >>> 8 & 255] << 8 | i[255 & a], a ^= y[s / r | 0] << 24), o[s] = o[s - r] ^ a - } - for (var f = this._invKeySchedule = [], u = 0; u < n; u++) s = n - u, a = u % 4 ? o[s] : o[s - 4], f[u] = u < 4 || s <= 4 ? a : c[i[a >>> 24]] ^ h[i[a >>> 16 & 255]] ^ p[i[a >>> 8 & 255]] ^ l[i[255 & a]] - } - }, - encryptBlock: function(t, e) { - this._doCryptBlock(t, e, this._keySchedule, s, a, f, u, i) - }, - decryptBlock: function(t, e) { - var r = t[e + 1]; - t[e + 1] = t[e + 3], t[e + 3] = r, this._doCryptBlock(t, e, this._invKeySchedule, c, h, p, l, o), r = t[e + 1], t[e + 1] = t[e + 3], t[e + 3] = r - }, - _doCryptBlock: function(t, e, r, n, i, o, s, a) { - for (var f = this._nRounds, u = t[e] ^ r[0], c = t[e + 1] ^ r[1], h = t[e + 2] ^ r[2], p = t[e + 3] ^ r[3], l = 4, y = 1; y < f; y++) { - var g = n[u >>> 24] ^ i[c >>> 16 & 255] ^ o[h >>> 8 & 255] ^ s[255 & p] ^ r[l++], - d = n[c >>> 24] ^ i[h >>> 16 & 255] ^ o[p >>> 8 & 255] ^ s[255 & u] ^ r[l++], - v = n[h >>> 24] ^ i[p >>> 16 & 255] ^ o[u >>> 8 & 255] ^ s[255 & c] ^ r[l++], - m = n[p >>> 24] ^ i[u >>> 16 & 255] ^ o[c >>> 8 & 255] ^ s[255 & h] ^ r[l++]; - u = g, c = d, h = v, p = m - } - g = (a[u >>> 24] << 24 | a[c >>> 16 & 255] << 16 | a[h >>> 8 & 255] << 8 | a[255 & p]) ^ r[l++], d = (a[c >>> 24] << 24 | a[h >>> 16 & 255] << 16 | a[p >>> 8 & 255] << 8 | a[255 & u]) ^ r[l++], v = (a[h >>> 24] << 24 | a[p >>> 16 & 255] << 16 | a[u >>> 8 & 255] << 8 | a[255 & c]) ^ r[l++], m = (a[p >>> 24] << 24 | a[u >>> 16 & 255] << 16 | a[c >>> 8 & 255] << 8 | a[255 & h]) ^ r[l++], t[e] = g, t[e + 1] = d, t[e + 2] = v, t[e + 3] = m - }, - keySize: 8 - }); - t.AES = e._createHelper(g) - }(), n.AES) - }, - 7165: function(t, e, r) { - var n, i, o, s, a, f, u, c, h, p, l, y, g, d, v, m, S, _, b; - t.exports = (n = r(9021), r(9506), void(n.lib.Cipher || (i = n, o = i.lib, s = o.Base, a = o.WordArray, f = o.BufferedBlockAlgorithm, u = i.enc, u.Utf8, c = u.Base64, h = i.algo.EvpKDF, p = o.Cipher = f.extend({ - cfg: s.extend(), - createEncryptor: function(t, e) { - return this.create(this._ENC_XFORM_MODE, t, e) - }, - createDecryptor: function(t, e) { - return this.create(this._DEC_XFORM_MODE, t, e) - }, - init: function(t, e, r) { - this.cfg = this.cfg.extend(r), this._xformMode = t, this._key = e, this.reset() - }, - reset: function() { - f.reset.call(this), this._doReset() - }, - process: function(t) { - return this._append(t), this._process() - }, - finalize: function(t) { - return t && this._append(t), this._doFinalize() - }, - keySize: 4, - ivSize: 4, - _ENC_XFORM_MODE: 1, - _DEC_XFORM_MODE: 2, - _createHelper: function() { - function t(t) { - return "string" == typeof t ? b : S - } - return function(e) { - return { - encrypt: function(r, n, i) { - return t(n).encrypt(e, r, n, i) - }, - decrypt: function(r, n, i) { - return t(n).decrypt(e, r, n, i) - } - } - } - }() - }), o.StreamCipher = p.extend({ - _doFinalize: function() { - return this._process(!0) - }, - blockSize: 1 - }), l = i.mode = {}, y = o.BlockCipherMode = s.extend({ - createEncryptor: function(t, e) { - return this.Encryptor.create(t, e) - }, - createDecryptor: function(t, e) { - return this.Decryptor.create(t, e) - }, - init: function(t, e) { - this._cipher = t, this._iv = e } - }), g = l.CBC = function() { - var t = y.extend(); - function e(t, e, r) { - var n = this._iv; - if (n) { - var i = n; - this._iv = void 0 - } else i = this._prevBlock; - for (var o = 0; o < r; o++) t[e + o] ^= i[o] - } - return t.Encryptor = t.extend({ - processBlock: function(t, r) { - var n = this._cipher, - i = n.blockSize; - e.call(this, t, r, i), n.encryptBlock(t, r), this._prevBlock = t.slice(r, r + i) + function c(t, r, n) { + if (t.customInspect && r && w(r.inspect) && r.inspect !== e.inspect && (!r.constructor || r.constructor.prototype !== r)) { + var i = r.inspect(n, t); + return v(i) || (i = c(t, i, n)), i } - }), t.Decryptor = t.extend({ - processBlock: function(t, r) { - var n = this._cipher, - i = n.blockSize, - o = t.slice(r, r + i); - n.decryptBlock(t, r), e.call(this, t, r, i), this._prevBlock = o - } - }), t - }(), d = (i.pad = {}).Pkcs7 = { - pad: function(t, e) { - for (var r = 4 * e, n = r - t.sigBytes % r, i = n << 24 | n << 16 | n << 8 | n, o = [], s = 0; s < n; s += 4) o.push(i); - var f = a.create(o, n); - t.concat(f) - }, - unpad: function(t) { - var e = 255 & t.words[t.sigBytes - 1 >>> 2]; - t.sigBytes -= e - } - }, o.BlockCipher = p.extend({ - cfg: p.cfg.extend({ - mode: g, - padding: d - }), - reset: function() { - p.reset.call(this); - var t = this.cfg, - e = t.iv, - r = t.mode; - if (this._xformMode == this._ENC_XFORM_MODE) var n = r.createEncryptor; - else n = r.createDecryptor, this._minBufferSize = 1; - this._mode && this._mode.__creator == n ? this._mode.init(this, e && e.words) : (this._mode = n.call(r, this, e && e.words), this._mode.__creator = n) - }, - _doProcessBlock: function(t, e) { - this._mode.processBlock(t, e) - }, - _doFinalize: function() { - var t = this.cfg.padding; - if (this._xformMode == this._ENC_XFORM_MODE) { - t.pad(this._data, this.blockSize); - var e = this._process(!0) - } else e = this._process(!0), t.unpad(e); - return e - }, - blockSize: 4 - }), v = o.CipherParams = s.extend({ - init: function(t) { - this.mixIn(t) - }, - toString: function(t) { - return (t || this.formatter).stringify(this) - } - }), m = (i.format = {}).OpenSSL = { - stringify: function(t) { - var e = t.ciphertext, - r = t.salt; - if (r) var n = a.create([1398893684, 1701076831]).concat(r).concat(e); - else n = e; - return n.toString(c) - }, - parse: function(t) { - var e = c.parse(t), - r = e.words; - if (1398893684 == r[0] && 1701076831 == r[1]) { - var n = a.create(r.slice(2, 4)); - r.splice(0, 4), e.sigBytes -= 16 - } - return v.create({ - ciphertext: e, - salt: n - }) - } - }, S = o.SerializableCipher = s.extend({ - cfg: s.extend({ - format: m - }), - encrypt: function(t, e, r, n) { - n = this.cfg.extend(n); - var i = t.createEncryptor(r, n), - o = i.finalize(e), - s = i.cfg; - return v.create({ - ciphertext: o, - key: r, - iv: s.iv, - algorithm: t, - mode: s.mode, - padding: s.padding, - blockSize: t.blockSize, - formatter: n.format - }) - }, - decrypt: function(t, e, r, n) { - return n = this.cfg.extend(n), e = this._parse(e, n.format), t.createDecryptor(r, n).finalize(e.ciphertext) - }, - _parse: function(t, e) { - return "string" == typeof t ? e.parse(t, this) : t - } - }), _ = (i.kdf = {}).OpenSSL = { - execute: function(t, e, r, n) { - n || (n = a.random(8)); - var i = h.create({ - keySize: e + r - }).compute(t, n), - o = a.create(i.words.slice(e), 4 * r); - return i.sigBytes = 4 * e, v.create({ - key: i, - iv: o, - salt: n - }) - } - }, b = o.PasswordBasedCipher = S.extend({ - cfg: S.cfg.extend({ - kdf: _ - }), - encrypt: function(t, e, r, n) { - var i = (n = this.cfg.extend(n)).kdf.execute(r, t.keySize, t.ivSize); - n.iv = i.iv; - var o = S.encrypt.call(this, t, e, i.key, n); - return o.mixIn(i), o - }, - decrypt: function(t, e, r, n) { - n = this.cfg.extend(n), e = this._parse(e, n.format); - var i = n.kdf.execute(r, t.keySize, t.ivSize, e.salt); - return n.iv = i.iv, S.decrypt.call(this, t, e, i.key, n) - } - })))) - }, - 9021: function(t, e) { - var r; - t.exports = (r = r || function(t, e) { - var r = Object.create || function() { - function t() {} - return function(e) { - var r; - return t.prototype = e, r = new t, t.prototype = null, r + var o = function(t, e) { + if (m(e)) return t.stylize("undefined", "undefined"); + if (v(e)) { + var r = "'" + JSON.stringify(e).replace(/^"|"$/g, "").replace(/'/g, "\\'").replace(/\\"/g, '"') + "'"; + return t.stylize(r, "string") } - }(), - n = {}, i = n.lib = {}, o = i.Base = { - extend: function(t) { - var e = r(this); - return t && e.mixIn(t), e.hasOwnProperty("init") && this.init !== e.init || (e.init = function() { - e.$super.init.apply(this, arguments) - }), e.init.prototype = e, e.$super = this, e - }, - create: function() { - var t = this.extend(); - return t.init.apply(t, arguments), t - }, - init: function() {}, - mixIn: function(t) { - for (var e in t) t.hasOwnProperty(e) && (this[e] = t[e]); - t.hasOwnProperty("toString") && (this.toString = t.toString) - }, - clone: function() { - return this.init.prototype.extend(this) + return d(e) ? t.stylize("" + e, "number") : y(e) ? t.stylize("" + e, "boolean") : g(e) ? t.stylize("null", "null") : void 0 + }(t, r); + if (o) return o; + var s = Object.keys(r), + a = function(t) { + var e = {}; + return t.forEach((function(t, r) { + e[t] = !0 + })), e + }(s); + if (t.showHidden && (s = Object.getOwnPropertyNames(r)), E(r) && (s.indexOf("message") >= 0 || s.indexOf("description") >= 0)) return h(r); + if (0 === s.length) { + if (w(r)) { + var f = r.name ? ": " + r.name : ""; + return t.stylize("[Function" + f + "]", "special") } - }, s = i.WordArray = o.extend({ - init: function(t, e) { - t = this.words = t || [], this.sigBytes = null != e ? e : 4 * t.length - }, - toString: function(t) { - return (t || f).stringify(this) - }, - concat: function(t) { - var e = this.words, - r = t.words, - n = this.sigBytes, - i = t.sigBytes; - if (this.clamp(), n % 4) for (var o = 0; o < i; o++) { - var s = r[o >>> 2] >>> 24 - o % 4 * 8 & 255; - e[n + o >>> 2] |= s << 24 - (n + o) % 4 * 8 - } else for (o = 0; o < i; o += 4) e[n + o >>> 2] = r[o >>> 2]; - return this.sigBytes += i, this - }, - clamp: function() { - var e = this.words, - r = this.sigBytes; - e[r >>> 2] &= 4294967295 << 32 - r % 4 * 8, e.length = t.ceil(r / 4) - }, - clone: function() { - var t = o.clone.call(this); - return t.words = this.words.slice(0), t - }, - random: function(e) { - for (var r, n = [], i = function(e) { - var r = 987654321, - n = 4294967295; - return function() { - var i = ((r = 36969 * (65535 & r) + (r >> 16) & n) << 16) + (e = 18e3 * (65535 & e) + (e >> 16) & n) & n; - return i /= 4294967296, (i += .5) * (t.random() > .5 ? 1 : -1) + if (S(r)) return t.stylize(RegExp.prototype.toString.call(r), "regexp"); + if (b(r)) return t.stylize(Date.prototype.toString.call(r), "date"); + if (E(r)) return h(r) + } + var u, _ = "", + O = !1, + B = ["{", "}"]; + return l(r) && (O = !0, B = ["[", "]"]), w(r) && (_ = " [Function" + (r.name ? ": " + r.name : "") + "]"), S(r) && (_ = " " + RegExp.prototype.toString.call(r)), b(r) && (_ = " " + Date.prototype.toUTCString.call(r)), E(r) && (_ = " " + h(r)), 0 !== s.length || O && 0 != r.length ? n < 0 ? S(r) ? t.stylize(RegExp.prototype.toString.call(r), "regexp") : t.stylize("[Object]", "special") : (t.seen.push(r), u = O ? function(t, e, r, n, i) { + for (var o = [], s = 0, a = e.length; s < a; ++s) x(e, String(s)) ? o.push(p(t, e, r, n, String(s), !0)) : o.push(""); + return i.forEach((function(i) { + i.match(/^\d+$/) || o.push(p(t, e, r, n, i, !0)) + })), o + }(t, r, n, a, s) : s.map((function(e) { + return p(t, r, n, a, e, O) + })), t.seen.pop(), function(t, e, r) { + return t.reduce((function(t, e) { + return e.indexOf("\n"), t + e.replace(/\u001b\[\d\d?m/g, "").length + 1 + }), 0) > 60 ? r[0] + ("" === e ? "" : e + "\n ") + " " + t.join(",\n ") + " " + r[1] : r[0] + e + " " + t.join(", ") + " " + r[1] + }(u, _, B)) : B[0] + _ + B[1] + } + + function h(t) { + return "[" + Error.prototype.toString.call(t) + "]" + } + + function p(t, e, r, n, i, o) { + var s, a, f; + if ((f = Object.getOwnPropertyDescriptor(e, i) || { + value: e[i] + }).get ? a = f.set ? t.stylize("[Getter/Setter]", "special") : t.stylize("[Getter]", "special") : f.set && (a = t.stylize("[Setter]", "special")), x(n, i) || (s = "[" + i + "]"), a || (t.seen.indexOf(f.value) < 0 ? (a = g(r) ? c(t, f.value, null) : c(t, f.value, r - 1)).indexOf("\n") > -1 && (a = o ? a.split("\n").map((function(t) { + return " " + t + })).join("\n").substr(2) : "\n" + a.split("\n").map((function(t) { + return " " + t + })).join("\n")) : a = t.stylize("[Circular]", "special")), m(s)) { + if (o && i.match(/^\d+$/)) return a; + (s = JSON.stringify("" + i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/) ? (s = s.substr(1, s.length - 2), s = t.stylize(s, "name")) : (s = s.replace(/'/g, "\\'").replace(/\\"/g, '"').replace(/(^"|"$)/g, "'"), s = t.stylize(s, "string")) + } + return s + ": " + a + } + + function l(t) { + return Array.isArray(t) + } + + function y(t) { + return "boolean" == typeof t + } + + function g(t) { + return null === t + } + + function d(t) { + return "number" == typeof t + } + + function v(t) { + return "string" == typeof t + } + + function m(t) { + return void 0 === t + } + + function S(t) { + return _(t) && "[object RegExp]" === O(t) + } + + function _(t) { + return "object" == typeof t && null !== t + } + + function b(t) { + return _(t) && "[object Date]" === O(t) + } + + function E(t) { + return _(t) && ("[object Error]" === O(t) || t instanceof Error) + } + + function w(t) { + return "function" == typeof t + } + + function O(t) { + return Object.prototype.toString.call(t) + } + + function B(t) { + return t < 10 ? "0" + t.toString(10) : t.toString(10) + } + e.debuglog = function(t) { + if (m(o) && (o = n.env.NODE_DEBUG || ""), t = t.toUpperCase(), !s[t]) + if (new RegExp("\\b" + t + "\\b", "i").test(o)) { + var r = n.pid; + s[t] = function() { + var n = e.format.apply(e, arguments); + console.error("%s %d: %s", t, r, n) + } + } else s[t] = function() {}; + return s[t] + }, e.inspect = a, a.colors = { + bold: [1, 22], + italic: [3, 23], + underline: [4, 24], + inverse: [7, 27], + white: [37, 39], + grey: [90, 39], + black: [30, 39], + blue: [34, 39], + cyan: [36, 39], + green: [32, 39], + magenta: [35, 39], + red: [31, 39], + yellow: [33, 39] + }, a.styles = { + special: "cyan", + number: "yellow", + boolean: "yellow", + undefined: "grey", + null: "bold", + string: "green", + date: "magenta", + regexp: "red" + }, e.isArray = l, e.isBoolean = y, e.isNull = g, e.isNullOrUndefined = function(t) { + return null == t + }, e.isNumber = d, e.isString = v, e.isSymbol = function(t) { + return "symbol" == typeof t + }, e.isUndefined = m, e.isRegExp = S, e.isObject = _, e.isDate = b, e.isError = E, e.isFunction = w, e.isPrimitive = function(t) { + return null === t || "boolean" == typeof t || "number" == typeof t || "string" == typeof t || "symbol" == typeof t || void 0 === t + }, e.isBuffer = r(3845); + var A = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; + + function x(t, e) { + return Object.prototype.hasOwnProperty.call(t, e) + } + e.log = function() { + var t, r; + console.log("%s - %s", (r = [B((t = new Date).getHours()), B(t.getMinutes()), B(t.getSeconds())].join(":"), [t.getDate(), A[t.getMonth()], r].join(" ")), e.format.apply(e, arguments)) + }, e.inherits = r(6100), e._extend = function(t, e) { + if (!e || !_(e)) return t; + for (var r = Object.keys(e), n = r.length; n--;) t[r[n]] = e[r[n]]; + return t + } + }, + 7526: (t, e) => { + "use strict"; + e.byteLength = function(t) { + var e = a(t), + r = e[0], + n = e[1]; + return 3 * (r + n) / 4 - n + }, e.toByteArray = function(t) { + var e, r, o = a(t), + s = o[0], + f = o[1], + u = new i(function(t, e, r) { + return 3 * (e + r) / 4 - r + }(0, s, f)), + c = 0, + h = f > 0 ? s - 4 : s; + for (r = 0; r < h; r += 4) e = n[t.charCodeAt(r)] << 18 | n[t.charCodeAt(r + 1)] << 12 | n[t.charCodeAt(r + 2)] << 6 | n[t.charCodeAt(r + 3)], u[c++] = e >> 16 & 255, u[c++] = e >> 8 & 255, u[c++] = 255 & e; + return 2 === f && (e = n[t.charCodeAt(r)] << 2 | n[t.charCodeAt(r + 1)] >> 4, u[c++] = 255 & e), 1 === f && (e = n[t.charCodeAt(r)] << 10 | n[t.charCodeAt(r + 1)] << 4 | n[t.charCodeAt(r + 2)] >> 2, u[c++] = e >> 8 & 255, u[c++] = 255 & e), u + }, e.fromByteArray = function(t) { + for (var e, n = t.length, i = n % 3, o = [], s = 16383, a = 0, u = n - i; a < u; a += s) o.push(f(t, a, a + s > u ? u : a + s)); + return 1 === i ? (e = t[n - 1], o.push(r[e >> 2] + r[e << 4 & 63] + "==")) : 2 === i && (e = (t[n - 2] << 8) + t[n - 1], o.push(r[e >> 10] + r[e >> 4 & 63] + r[e << 2 & 63] + "=")), o.join("") + }; + for (var r = [], n = [], i = "undefined" != typeof Uint8Array ? Uint8Array : Array, o = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", s = 0; s < 64; ++s) r[s] = o[s], n[o.charCodeAt(s)] = s; + + function a(t) { + var e = t.length; + if (e % 4 > 0) throw new Error("Invalid string. Length must be a multiple of 4"); + var r = t.indexOf("="); + return -1 === r && (r = e), [r, r === e ? 0 : 4 - r % 4] + } + + function f(t, e, n) { + for (var i, o, s = [], a = e; a < n; a += 3) i = (t[a] << 16 & 16711680) + (t[a + 1] << 8 & 65280) + (255 & t[a + 2]), s.push(r[(o = i) >> 18 & 63] + r[o >> 12 & 63] + r[o >> 6 & 63] + r[63 & o]); + return s.join("") + } + n["-".charCodeAt(0)] = 62, n["_".charCodeAt(0)] = 63 + }, + 8287: (t, e, r) => { + "use strict"; + var n = r(7526), + i = r(251); + e.Buffer = a, e.SlowBuffer = function(t) { + return +t != t && (t = 0), a.alloc(+t) + }, e.INSPECT_MAX_BYTES = 50; + var o = 2147483647; + + function s(t) { + if (t > o) throw new RangeError('The value "' + t + '" is invalid for option "size"'); + var e = new Uint8Array(t); + return e.__proto__ = a.prototype, e + } + + function a(t, e, r) { + if ("number" == typeof t) { + if ("string" == typeof e) throw new TypeError('The "string" argument must be of type string. Received type number'); + return c(t) + } + return f(t, e, r) + } + + function f(t, e, r) { + if ("string" == typeof t) return function(t, e) { + if ("string" == typeof e && "" !== e || (e = "utf8"), !a.isEncoding(e)) throw new TypeError("Unknown encoding: " + e); + var r = 0 | l(t, e), + n = s(r), + i = n.write(t, e); + return i !== r && (n = n.slice(0, i)), n + }(t, e); + if (ArrayBuffer.isView(t)) return h(t); + if (null == t) throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof t); + if (H(t, ArrayBuffer) || t && H(t.buffer, ArrayBuffer)) return function(t, e, r) { + if (e < 0 || t.byteLength < e) throw new RangeError('"offset" is outside of buffer bounds'); + if (t.byteLength < e + (r || 0)) throw new RangeError('"length" is outside of buffer bounds'); + var n; + return (n = void 0 === e && void 0 === r ? new Uint8Array(t) : void 0 === r ? new Uint8Array(t, e) : new Uint8Array(t, e, r)).__proto__ = a.prototype, n + }(t, e, r); + if ("number" == typeof t) throw new TypeError('The "value" argument must not be of type number. Received type number'); + var n = t.valueOf && t.valueOf(); + if (null != n && n !== t) return a.from(n, e, r); + var i = function(t) { + if (a.isBuffer(t)) { + var e = 0 | p(t.length), + r = s(e); + return 0 === r.length || t.copy(r, 0, 0, e), r + } + return void 0 !== t.length ? "number" != typeof t.length || F(t.length) ? s(0) : h(t) : "Buffer" === t.type && Array.isArray(t.data) ? h(t.data) : void 0 + }(t); + if (i) return i; + if ("undefined" != typeof Symbol && null != Symbol.toPrimitive && "function" == typeof t[Symbol.toPrimitive]) return a.from(t[Symbol.toPrimitive]("string"), e, r); + throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof t) + } + + function u(t) { + if ("number" != typeof t) throw new TypeError('"size" argument must be of type number'); + if (t < 0) throw new RangeError('The value "' + t + '" is invalid for option "size"') + } + + function c(t) { + return u(t), s(t < 0 ? 0 : 0 | p(t)) + } + + function h(t) { + for (var e = t.length < 0 ? 0 : 0 | p(t.length), r = s(e), n = 0; n < e; n += 1) r[n] = 255 & t[n]; + return r + } + + function p(t) { + if (t >= o) throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x" + o.toString(16) + " bytes"); + return 0 | t + } + + function l(t, e) { + if (a.isBuffer(t)) return t.length; + if (ArrayBuffer.isView(t) || H(t, ArrayBuffer)) return t.byteLength; + if ("string" != typeof t) throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + typeof t); + var r = t.length, + n = arguments.length > 2 && !0 === arguments[2]; + if (!n && 0 === r) return 0; + for (var i = !1;;) switch (e) { + case "ascii": + case "latin1": + case "binary": + return r; + case "utf8": + case "utf-8": + return U(t).length; + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + return 2 * r; + case "hex": + return r >>> 1; + case "base64": + return M(t).length; + default: + if (i) return n ? -1 : U(t).length; + e = ("" + e).toLowerCase(), i = !0 + } + } + + function y(t, e, r) { + var n = !1; + if ((void 0 === e || e < 0) && (e = 0), e > this.length) return ""; + if ((void 0 === r || r > this.length) && (r = this.length), r <= 0) return ""; + if ((r >>>= 0) <= (e >>>= 0)) return ""; + for (t || (t = "utf8");;) switch (t) { + case "hex": + return T(this, e, r); + case "utf8": + case "utf-8": + return B(this, e, r); + case "ascii": + return x(this, e, r); + case "latin1": + case "binary": + return P(this, e, r); + case "base64": + return O(this, e, r); + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + return I(this, e, r); + default: + if (n) throw new TypeError("Unknown encoding: " + t); + t = (t + "").toLowerCase(), n = !0 + } + } + + function g(t, e, r) { + var n = t[e]; + t[e] = t[r], t[r] = n + } + + function d(t, e, r, n, i) { + if (0 === t.length) return -1; + if ("string" == typeof r ? (n = r, r = 0) : r > 2147483647 ? r = 2147483647 : r < -2147483648 && (r = -2147483648), F(r = +r) && (r = i ? 0 : t.length - 1), r < 0 && (r = t.length + r), r >= t.length) { + if (i) return -1; + r = t.length - 1 + } else if (r < 0) { + if (!i) return -1; + r = 0 + } + if ("string" == typeof e && (e = a.from(e, n)), a.isBuffer(e)) return 0 === e.length ? -1 : v(t, e, r, n, i); + if ("number" == typeof e) return e &= 255, "function" == typeof Uint8Array.prototype.indexOf ? i ? Uint8Array.prototype.indexOf.call(t, e, r) : Uint8Array.prototype.lastIndexOf.call(t, e, r) : v(t, [e], r, n, i); + throw new TypeError("val must be string, number or Buffer") + } + + function v(t, e, r, n, i) { + var o, s = 1, + a = t.length, + f = e.length; + if (void 0 !== n && ("ucs2" === (n = String(n).toLowerCase()) || "ucs-2" === n || "utf16le" === n || "utf-16le" === n)) { + if (t.length < 2 || e.length < 2) return -1; + s = 2, a /= 2, f /= 2, r /= 2 + } + + function u(t, e) { + return 1 === s ? t[e] : t.readUInt16BE(e * s) + } + if (i) { + var c = -1; + for (o = r; o < a; o++) + if (u(t, o) === u(e, -1 === c ? 0 : o - c)) { + if (-1 === c && (c = o), o - c + 1 === f) return c * s + } else - 1 !== c && (o -= o - c), c = -1 + } else + for (r + f > a && (r = a - f), o = r; o >= 0; o--) { + for (var h = !0, p = 0; p < f; p++) + if (u(t, o + p) !== u(e, p)) { + h = !1; + break + } if (h) return o + } + return -1 + } + + function m(t, e, r, n) { + r = Number(r) || 0; + var i = t.length - r; + n ? (n = Number(n)) > i && (n = i) : n = i; + var o = e.length; + n > o / 2 && (n = o / 2); + for (var s = 0; s < n; ++s) { + var a = parseInt(e.substr(2 * s, 2), 16); + if (F(a)) return s; + t[r + s] = a + } + return s + } + + function S(t, e, r, n) { + return j(U(e, t.length - r), t, r, n) + } + + function _(t, e, r, n) { + return j(function(t) { + for (var e = [], r = 0; r < t.length; ++r) e.push(255 & t.charCodeAt(r)); + return e + }(e), t, r, n) + } + + function b(t, e, r, n) { + return _(t, e, r, n) + } + + function E(t, e, r, n) { + return j(M(e), t, r, n) + } + + function w(t, e, r, n) { + return j(function(t, e) { + for (var r, n, i, o = [], s = 0; s < t.length && !((e -= 2) < 0); ++s) n = (r = t.charCodeAt(s)) >> 8, i = r % 256, o.push(i), o.push(n); + return o + }(e, t.length - r), t, r, n) + } + + function O(t, e, r) { + return 0 === e && r === t.length ? n.fromByteArray(t) : n.fromByteArray(t.slice(e, r)) + } + + function B(t, e, r) { + r = Math.min(t.length, r); + for (var n = [], i = e; i < r;) { + var o, s, a, f, u = t[i], + c = null, + h = u > 239 ? 4 : u > 223 ? 3 : u > 191 ? 2 : 1; + if (i + h <= r) switch (h) { + case 1: + u < 128 && (c = u); + break; + case 2: + 128 == (192 & (o = t[i + 1])) && (f = (31 & u) << 6 | 63 & o) > 127 && (c = f); + break; + case 3: + o = t[i + 1], s = t[i + 2], 128 == (192 & o) && 128 == (192 & s) && (f = (15 & u) << 12 | (63 & o) << 6 | 63 & s) > 2047 && (f < 55296 || f > 57343) && (c = f); + break; + case 4: + o = t[i + 1], s = t[i + 2], a = t[i + 3], 128 == (192 & o) && 128 == (192 & s) && 128 == (192 & a) && (f = (15 & u) << 18 | (63 & o) << 12 | (63 & s) << 6 | 63 & a) > 65535 && f < 1114112 && (c = f) + } + null === c ? (c = 65533, h = 1) : c > 65535 && (c -= 65536, n.push(c >>> 10 & 1023 | 55296), c = 56320 | 1023 & c), n.push(c), i += h + } + return function(t) { + var e = t.length; + if (e <= A) return String.fromCharCode.apply(String, t); + for (var r = "", n = 0; n < e;) r += String.fromCharCode.apply(String, t.slice(n, n += A)); + return r + }(n) + } + e.kMaxLength = o, a.TYPED_ARRAY_SUPPORT = function() { + try { + var t = new Uint8Array(1); + return t.__proto__ = { + __proto__: Uint8Array.prototype, + foo: function() { + return 42 + } + }, 42 === t.foo() + } catch (t) { + return !1 + } + }(), a.TYPED_ARRAY_SUPPORT || "undefined" == typeof console || "function" != typeof console.error || console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."), Object.defineProperty(a.prototype, "parent", { + enumerable: !0, + get: function() { + if (a.isBuffer(this)) return this.buffer + } + }), Object.defineProperty(a.prototype, "offset", { + enumerable: !0, + get: function() { + if (a.isBuffer(this)) return this.byteOffset + } + }), "undefined" != typeof Symbol && null != Symbol.species && a[Symbol.species] === a && Object.defineProperty(a, Symbol.species, { + value: null, + configurable: !0, + enumerable: !1, + writable: !1 + }), a.poolSize = 8192, a.from = function(t, e, r) { + return f(t, e, r) + }, a.prototype.__proto__ = Uint8Array.prototype, a.__proto__ = Uint8Array, a.alloc = function(t, e, r) { + return function(t, e, r) { + return u(t), t <= 0 ? s(t) : void 0 !== e ? "string" == typeof r ? s(t).fill(e, r) : s(t).fill(e) : s(t) + }(t, e, r) + }, a.allocUnsafe = function(t) { + return c(t) + }, a.allocUnsafeSlow = function(t) { + return c(t) + }, a.isBuffer = function(t) { + return null != t && !0 === t._isBuffer && t !== a.prototype + }, a.compare = function(t, e) { + if (H(t, Uint8Array) && (t = a.from(t, t.offset, t.byteLength)), H(e, Uint8Array) && (e = a.from(e, e.offset, e.byteLength)), !a.isBuffer(t) || !a.isBuffer(e)) throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array'); + if (t === e) return 0; + for (var r = t.length, n = e.length, i = 0, o = Math.min(r, n); i < o; ++i) + if (t[i] !== e[i]) { + r = t[i], n = e[i]; + break + } return r < n ? -1 : n < r ? 1 : 0 + }, a.isEncoding = function(t) { + switch (String(t).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 + } + }, a.concat = function(t, e) { + if (!Array.isArray(t)) throw new TypeError('"list" argument must be an Array of Buffers'); + if (0 === t.length) return a.alloc(0); + var r; + if (void 0 === e) + for (e = 0, r = 0; r < t.length; ++r) e += t[r].length; + var n = a.allocUnsafe(e), + i = 0; + for (r = 0; r < t.length; ++r) { + var o = t[r]; + if (H(o, Uint8Array) && (o = a.from(o)), !a.isBuffer(o)) throw new TypeError('"list" argument must be an Array of Buffers'); + o.copy(n, i), i += o.length + } + return n + }, a.byteLength = l, a.prototype._isBuffer = !0, a.prototype.swap16 = function() { + var t = this.length; + if (t % 2 != 0) throw new RangeError("Buffer size must be a multiple of 16-bits"); + for (var e = 0; e < t; e += 2) g(this, e, e + 1); + return this + }, a.prototype.swap32 = function() { + var t = this.length; + if (t % 4 != 0) throw new RangeError("Buffer size must be a multiple of 32-bits"); + for (var e = 0; e < t; e += 4) g(this, e, e + 3), g(this, e + 1, e + 2); + return this + }, a.prototype.swap64 = function() { + var t = this.length; + if (t % 8 != 0) throw new RangeError("Buffer size must be a multiple of 64-bits"); + for (var e = 0; e < t; e += 8) g(this, e, e + 7), g(this, e + 1, e + 6), g(this, e + 2, e + 5), g(this, e + 3, e + 4); + return this + }, a.prototype.toString = function() { + var t = this.length; + return 0 === t ? "" : 0 === arguments.length ? B(this, 0, t) : y.apply(this, arguments) + }, a.prototype.toLocaleString = a.prototype.toString, a.prototype.equals = function(t) { + if (!a.isBuffer(t)) throw new TypeError("Argument must be a Buffer"); + return this === t || 0 === a.compare(this, t) + }, a.prototype.inspect = function() { + var t = "", + r = e.INSPECT_MAX_BYTES; + return t = this.toString("hex", 0, r).replace(/(.{2})/g, "$1 ").trim(), this.length > r && (t += " ... "), "" + }, a.prototype.compare = function(t, e, r, n, i) { + if (H(t, Uint8Array) && (t = a.from(t, t.offset, t.byteLength)), !a.isBuffer(t)) throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type ' + typeof t); + if (void 0 === e && (e = 0), void 0 === r && (r = t ? t.length : 0), void 0 === n && (n = 0), void 0 === i && (i = this.length), e < 0 || r > t.length || n < 0 || i > this.length) throw new RangeError("out of range index"); + if (n >= i && e >= r) return 0; + if (n >= i) return -1; + if (e >= r) return 1; + if (this === t) return 0; + for (var o = (i >>>= 0) - (n >>>= 0), s = (r >>>= 0) - (e >>>= 0), f = Math.min(o, s), u = this.slice(n, i), c = t.slice(e, r), h = 0; h < f; ++h) + if (u[h] !== c[h]) { + o = u[h], s = c[h]; + break + } return o < s ? -1 : s < o ? 1 : 0 + }, a.prototype.includes = function(t, e, r) { + return -1 !== this.indexOf(t, e, r) + }, a.prototype.indexOf = function(t, e, r) { + return d(this, t, e, r, !0) + }, a.prototype.lastIndexOf = function(t, e, r) { + return d(this, t, e, r, !1) + }, a.prototype.write = function(t, e, r, n) { + if (void 0 === e) n = "utf8", r = this.length, e = 0; + else if (void 0 === r && "string" == typeof e) n = e, r = this.length, e = 0; + else { + if (!isFinite(e)) throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported"); + e >>>= 0, isFinite(r) ? (r >>>= 0, void 0 === n && (n = "utf8")) : (n = r, r = void 0) + } + var i = this.length - e; + if ((void 0 === r || r > i) && (r = i), t.length > 0 && (r < 0 || e < 0) || e > this.length) throw new RangeError("Attempt to write outside buffer bounds"); + n || (n = "utf8"); + for (var o = !1;;) switch (n) { + case "hex": + return m(this, t, e, r); + case "utf8": + case "utf-8": + return S(this, t, e, r); + case "ascii": + return _(this, t, e, r); + case "latin1": + case "binary": + return b(this, t, e, r); + case "base64": + return E(this, t, e, r); + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + return w(this, t, e, r); + default: + if (o) throw new TypeError("Unknown encoding: " + n); + n = ("" + n).toLowerCase(), o = !0 + } + }, a.prototype.toJSON = function() { + return { + type: "Buffer", + data: Array.prototype.slice.call(this._arr || this, 0) + } + }; + var A = 4096; + + function x(t, e, r) { + var n = ""; + r = Math.min(t.length, r); + for (var i = e; i < r; ++i) n += String.fromCharCode(127 & t[i]); + return n + } + + function P(t, e, r) { + var n = ""; + r = Math.min(t.length, r); + for (var i = e; i < r; ++i) n += String.fromCharCode(t[i]); + return n + } + + function T(t, e, r) { + var n, i = t.length; + (!e || e < 0) && (e = 0), (!r || r < 0 || r > i) && (r = i); + for (var o = "", s = e; s < r; ++s) o += (n = t[s]) < 16 ? "0" + n.toString(16) : n.toString(16); + return o + } + + function I(t, e, r) { + for (var n = t.slice(e, r), i = "", o = 0; o < n.length; o += 2) i += String.fromCharCode(n[o] + 256 * n[o + 1]); + return i + } + + function k(t, e, r) { + if (t % 1 != 0 || t < 0) throw new RangeError("offset is not uint"); + if (t + e > r) throw new RangeError("Trying to access beyond buffer length") + } + + function D(t, e, r, n, i, o) { + if (!a.isBuffer(t)) throw new TypeError('"buffer" argument must be a Buffer instance'); + if (e > i || e < o) throw new RangeError('"value" argument is out of bounds'); + if (r + n > t.length) throw new RangeError("Index out of range") + } + + function R(t, e, r, n, i, o) { + if (r + n > t.length) throw new RangeError("Index out of range"); + if (r < 0) throw new RangeError("Index out of range") + } + + function N(t, e, r, n, o) { + return e = +e, r >>>= 0, o || R(t, 0, r, 4), i.write(t, e, r, n, 23, 4), r + 4 + } + + function L(t, e, r, n, o) { + return e = +e, r >>>= 0, o || R(t, 0, r, 8), i.write(t, e, r, n, 52, 8), r + 8 + } + a.prototype.slice = function(t, e) { + var r = this.length; + (t = ~~t) < 0 ? (t += r) < 0 && (t = 0) : t > r && (t = r), (e = void 0 === e ? r : ~~e) < 0 ? (e += r) < 0 && (e = 0) : e > r && (e = r), e < t && (e = t); + var n = this.subarray(t, e); + return n.__proto__ = a.prototype, n + }, a.prototype.readUIntLE = function(t, e, r) { + t >>>= 0, e >>>= 0, r || k(t, e, this.length); + for (var n = this[t], i = 1, o = 0; ++o < e && (i *= 256);) n += this[t + o] * i; + return n + }, a.prototype.readUIntBE = function(t, e, r) { + t >>>= 0, e >>>= 0, r || k(t, e, this.length); + for (var n = this[t + --e], i = 1; e > 0 && (i *= 256);) n += this[t + --e] * i; + return n + }, a.prototype.readUInt8 = function(t, e) { + return t >>>= 0, e || k(t, 1, this.length), this[t] + }, a.prototype.readUInt16LE = function(t, e) { + return t >>>= 0, e || k(t, 2, this.length), this[t] | this[t + 1] << 8 + }, a.prototype.readUInt16BE = function(t, e) { + return t >>>= 0, e || k(t, 2, this.length), this[t] << 8 | this[t + 1] + }, a.prototype.readUInt32LE = function(t, e) { + return t >>>= 0, e || k(t, 4, this.length), (this[t] | this[t + 1] << 8 | this[t + 2] << 16) + 16777216 * this[t + 3] + }, a.prototype.readUInt32BE = function(t, e) { + return t >>>= 0, e || k(t, 4, this.length), 16777216 * this[t] + (this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3]) + }, a.prototype.readIntLE = function(t, e, r) { + t >>>= 0, e >>>= 0, r || k(t, e, this.length); + for (var n = this[t], i = 1, o = 0; ++o < e && (i *= 256);) n += this[t + o] * i; + return n >= (i *= 128) && (n -= Math.pow(2, 8 * e)), n + }, a.prototype.readIntBE = function(t, e, r) { + t >>>= 0, e >>>= 0, r || k(t, e, this.length); + for (var n = e, i = 1, o = this[t + --n]; n > 0 && (i *= 256);) o += this[t + --n] * i; + return o >= (i *= 128) && (o -= Math.pow(2, 8 * e)), o + }, a.prototype.readInt8 = function(t, e) { + return t >>>= 0, e || k(t, 1, this.length), 128 & this[t] ? -1 * (255 - this[t] + 1) : this[t] + }, a.prototype.readInt16LE = function(t, e) { + t >>>= 0, e || k(t, 2, this.length); + var r = this[t] | this[t + 1] << 8; + return 32768 & r ? 4294901760 | r : r + }, a.prototype.readInt16BE = function(t, e) { + t >>>= 0, e || k(t, 2, this.length); + var r = this[t + 1] | this[t] << 8; + return 32768 & r ? 4294901760 | r : r + }, a.prototype.readInt32LE = function(t, e) { + return t >>>= 0, e || k(t, 4, this.length), this[t] | this[t + 1] << 8 | this[t + 2] << 16 | this[t + 3] << 24 + }, a.prototype.readInt32BE = function(t, e) { + return t >>>= 0, e || k(t, 4, this.length), this[t] << 24 | this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3] + }, a.prototype.readFloatLE = function(t, e) { + return t >>>= 0, e || k(t, 4, this.length), i.read(this, t, !0, 23, 4) + }, a.prototype.readFloatBE = function(t, e) { + return t >>>= 0, e || k(t, 4, this.length), i.read(this, t, !1, 23, 4) + }, a.prototype.readDoubleLE = function(t, e) { + return t >>>= 0, e || k(t, 8, this.length), i.read(this, t, !0, 52, 8) + }, a.prototype.readDoubleBE = function(t, e) { + return t >>>= 0, e || k(t, 8, this.length), i.read(this, t, !1, 52, 8) + }, a.prototype.writeUIntLE = function(t, e, r, n) { + t = +t, e >>>= 0, r >>>= 0, n || D(this, t, e, r, Math.pow(2, 8 * r) - 1, 0); + var i = 1, + o = 0; + for (this[e] = 255 & t; ++o < r && (i *= 256);) this[e + o] = t / i & 255; + return e + r + }, a.prototype.writeUIntBE = function(t, e, r, n) { + t = +t, e >>>= 0, r >>>= 0, n || D(this, t, e, r, Math.pow(2, 8 * r) - 1, 0); + var i = r - 1, + o = 1; + for (this[e + i] = 255 & t; --i >= 0 && (o *= 256);) this[e + i] = t / o & 255; + return e + r + }, a.prototype.writeUInt8 = function(t, e, r) { + return t = +t, e >>>= 0, r || D(this, t, e, 1, 255, 0), this[e] = 255 & t, e + 1 + }, a.prototype.writeUInt16LE = function(t, e, r) { + return t = +t, e >>>= 0, r || D(this, t, e, 2, 65535, 0), this[e] = 255 & t, this[e + 1] = t >>> 8, e + 2 + }, a.prototype.writeUInt16BE = function(t, e, r) { + return t = +t, e >>>= 0, r || D(this, t, e, 2, 65535, 0), this[e] = t >>> 8, this[e + 1] = 255 & t, e + 2 + }, a.prototype.writeUInt32LE = function(t, e, r) { + return t = +t, e >>>= 0, r || D(this, t, e, 4, 4294967295, 0), this[e + 3] = t >>> 24, this[e + 2] = t >>> 16, this[e + 1] = t >>> 8, this[e] = 255 & t, e + 4 + }, a.prototype.writeUInt32BE = function(t, e, r) { + return t = +t, e >>>= 0, r || D(this, t, e, 4, 4294967295, 0), this[e] = t >>> 24, this[e + 1] = t >>> 16, this[e + 2] = t >>> 8, this[e + 3] = 255 & t, e + 4 + }, a.prototype.writeIntLE = function(t, e, r, n) { + if (t = +t, e >>>= 0, !n) { + var i = Math.pow(2, 8 * r - 1); + D(this, t, e, r, i - 1, -i) + } + var o = 0, + s = 1, + a = 0; + for (this[e] = 255 & t; ++o < r && (s *= 256);) t < 0 && 0 === a && 0 !== this[e + o - 1] && (a = 1), this[e + o] = (t / s | 0) - a & 255; + return e + r + }, a.prototype.writeIntBE = function(t, e, r, n) { + if (t = +t, e >>>= 0, !n) { + var i = Math.pow(2, 8 * r - 1); + D(this, t, e, r, i - 1, -i) + } + var o = r - 1, + s = 1, + a = 0; + for (this[e + o] = 255 & t; --o >= 0 && (s *= 256);) t < 0 && 0 === a && 0 !== this[e + o + 1] && (a = 1), this[e + o] = (t / s | 0) - a & 255; + return e + r + }, a.prototype.writeInt8 = function(t, e, r) { + return t = +t, e >>>= 0, r || D(this, t, e, 1, 127, -128), t < 0 && (t = 255 + t + 1), this[e] = 255 & t, e + 1 + }, a.prototype.writeInt16LE = function(t, e, r) { + return t = +t, e >>>= 0, r || D(this, t, e, 2, 32767, -32768), this[e] = 255 & t, this[e + 1] = t >>> 8, e + 2 + }, a.prototype.writeInt16BE = function(t, e, r) { + return t = +t, e >>>= 0, r || D(this, t, e, 2, 32767, -32768), this[e] = t >>> 8, this[e + 1] = 255 & t, e + 2 + }, a.prototype.writeInt32LE = function(t, e, r) { + return t = +t, e >>>= 0, r || D(this, t, e, 4, 2147483647, -2147483648), this[e] = 255 & t, this[e + 1] = t >>> 8, this[e + 2] = t >>> 16, this[e + 3] = t >>> 24, e + 4 + }, a.prototype.writeInt32BE = function(t, e, r) { + return t = +t, e >>>= 0, r || D(this, t, e, 4, 2147483647, -2147483648), t < 0 && (t = 4294967295 + t + 1), this[e] = t >>> 24, this[e + 1] = t >>> 16, this[e + 2] = t >>> 8, this[e + 3] = 255 & t, e + 4 + }, a.prototype.writeFloatLE = function(t, e, r) { + return N(this, t, e, !0, r) + }, a.prototype.writeFloatBE = function(t, e, r) { + return N(this, t, e, !1, r) + }, a.prototype.writeDoubleLE = function(t, e, r) { + return L(this, t, e, !0, r) + }, a.prototype.writeDoubleBE = function(t, e, r) { + return L(this, t, e, !1, r) + }, a.prototype.copy = function(t, e, r, n) { + if (!a.isBuffer(t)) throw new TypeError("argument should be a Buffer"); + if (r || (r = 0), n || 0 === n || (n = this.length), e >= t.length && (e = t.length), e || (e = 0), n > 0 && n < r && (n = r), n === r) return 0; + if (0 === t.length || 0 === this.length) return 0; + if (e < 0) throw new RangeError("targetStart out of bounds"); + if (r < 0 || r >= this.length) throw new RangeError("Index out of range"); + if (n < 0) throw new RangeError("sourceEnd out of bounds"); + n > this.length && (n = this.length), t.length - e < n - r && (n = t.length - e + r); + var i = n - r; + if (this === t && "function" == typeof Uint8Array.prototype.copyWithin) this.copyWithin(e, r, n); + else if (this === t && r < e && e < n) + for (var o = i - 1; o >= 0; --o) t[o + e] = this[o + r]; + else Uint8Array.prototype.set.call(t, this.subarray(r, n), e); + return i + }, a.prototype.fill = function(t, e, r, n) { + if ("string" == typeof t) { + if ("string" == typeof e ? (n = e, e = 0, r = this.length) : "string" == typeof r && (n = r, r = this.length), void 0 !== n && "string" != typeof n) throw new TypeError("encoding must be a string"); + if ("string" == typeof n && !a.isEncoding(n)) throw new TypeError("Unknown encoding: " + n); + if (1 === t.length) { + var i = t.charCodeAt(0); + ("utf8" === n && i < 128 || "latin1" === n) && (t = i) + } + } else "number" == typeof t && (t &= 255); + if (e < 0 || this.length < e || this.length < r) throw new RangeError("Out of range index"); + if (r <= e) return this; + var o; + if (e >>>= 0, r = void 0 === r ? this.length : r >>> 0, t || (t = 0), "number" == typeof t) + for (o = e; o < r; ++o) this[o] = t; + else { + var s = a.isBuffer(t) ? t : a.from(t, n), + f = s.length; + if (0 === f) throw new TypeError('The value "' + t + '" is invalid for argument "value"'); + for (o = 0; o < r - e; ++o) this[o + e] = s[o % f] + } + return this + }; + var C = /[^+/0-9A-Za-z-_]/g; + + function U(t, e) { + var r; + e = e || 1 / 0; + for (var n = t.length, i = null, o = [], s = 0; s < n; ++s) { + if ((r = t.charCodeAt(s)) > 55295 && r < 57344) { + if (!i) { + if (r > 56319) { + (e -= 3) > -1 && o.push(239, 191, 189); + continue } - }, o = 0; o < e; o += 4) { - var a = i(4294967296 * (r || t.random())); - r = 987654071 * a(), n.push(4294967296 * a() | 0) + if (s + 1 === n) { + (e -= 3) > -1 && o.push(239, 191, 189); + continue + } + i = r; + continue } - return new s.init(n, e) + if (r < 56320) { + (e -= 3) > -1 && o.push(239, 191, 189), i = r; + continue + } + r = 65536 + (i - 55296 << 10 | r - 56320) + } else i && (e -= 3) > -1 && o.push(239, 191, 189); + if (i = null, r < 128) { + if ((e -= 1) < 0) break; + o.push(r) + } else if (r < 2048) { + if ((e -= 2) < 0) break; + o.push(r >> 6 | 192, 63 & r | 128) + } else if (r < 65536) { + if ((e -= 3) < 0) break; + o.push(r >> 12 | 224, r >> 6 & 63 | 128, 63 & r | 128) + } else { + if (!(r < 1114112)) throw new Error("Invalid code point"); + if ((e -= 4) < 0) break; + o.push(r >> 18 | 240, r >> 12 & 63 | 128, r >> 6 & 63 | 128, 63 & r | 128) } + } + return o + } + + function M(t) { + return n.toByteArray(function(t) { + if ((t = (t = t.split("=")[0]).trim().replace(C, "")).length < 2) return ""; + for (; t.length % 4 != 0;) t += "="; + return t + }(t)) + } + + function j(t, e, r, n) { + for (var i = 0; i < n && !(i + r >= e.length || i >= t.length); ++i) e[i + r] = t[i]; + return i + } + + function H(t, e) { + return t instanceof e || null != t && null != t.constructor && null != t.constructor.name && t.constructor.name === e.name + } + + function F(t) { + return t != t + } + }, + 8075: (t, e, r) => { + "use strict"; + var n = r(453), + i = r(487), + o = i(n("String.prototype.indexOf")); + t.exports = function(t, e) { + var r = n(t, !!e); + return "function" == typeof r && o(t, ".prototype.") > -1 ? i(r) : r + } + }, + 487: (t, e, r) => { + "use strict"; + var n = r(6743), + i = r(453), + o = r(6897), + s = r(9675), + a = i("%Function.prototype.apply%"), + f = i("%Function.prototype.call%"), + u = i("%Reflect.apply%", !0) || n.call(f, a), + c = r(655), + h = i("%Math.max%"); + t.exports = function(t) { + if ("function" != typeof t) throw new s("a function is required"); + var e = u(n, f, arguments); + return o(e, 1 + h(0, t.length - (arguments.length - 1)), !0) + }; + var p = function() { + return u(n, a, arguments) + }; + c ? c(t.exports, "apply", { + value: p + }) : t.exports.apply = p + }, + 955: function(t, e, r) { + var n; + t.exports = (n = r(9021), r(754), r(4636), r(9506), r(7165), function() { + var t = n, + e = t.lib.BlockCipher, + r = t.algo, + i = [], + o = [], + s = [], + a = [], + f = [], + u = [], + c = [], + h = [], + p = [], + l = []; + ! function() { + for (var t = [], e = 0; e < 256; e++) t[e] = e < 128 ? e << 1 : e << 1 ^ 283; + var r = 0, + n = 0; + for (e = 0; e < 256; e++) { + var y = n ^ n << 1 ^ n << 2 ^ n << 3 ^ n << 4; + y = y >>> 8 ^ 255 & y ^ 99, i[r] = y, o[y] = r; + var g = t[r], + d = t[g], + v = t[d], + m = 257 * t[y] ^ 16843008 * y; + s[r] = m << 24 | m >>> 8, a[r] = m << 16 | m >>> 16, f[r] = m << 8 | m >>> 24, u[r] = m, m = 16843009 * v ^ 65537 * d ^ 257 * g ^ 16843008 * r, c[y] = m << 24 | m >>> 8, h[y] = m << 16 | m >>> 16, p[y] = m << 8 | m >>> 24, l[y] = m, r ? (r = g ^ t[t[t[v ^ g]]], n ^= t[t[n]]) : r = n = 1 + } + }(); + var y = [0, 1, 2, 4, 8, 16, 32, 64, 128, 27, 54], + g = r.AES = e.extend({ + _doReset: function() { + if (!this._nRounds || this._keyPriorReset !== this._key) { + for (var t = this._keyPriorReset = this._key, e = t.words, r = t.sigBytes / 4, n = 4 * ((this._nRounds = r + 6) + 1), o = this._keySchedule = [], s = 0; s < n; s++) + if (s < r) o[s] = e[s]; + else { + var a = o[s - 1]; + s % r ? r > 6 && s % r == 4 && (a = i[a >>> 24] << 24 | i[a >>> 16 & 255] << 16 | i[a >>> 8 & 255] << 8 | i[255 & a]) : (a = i[(a = a << 8 | a >>> 24) >>> 24] << 24 | i[a >>> 16 & 255] << 16 | i[a >>> 8 & 255] << 8 | i[255 & a], a ^= y[s / r | 0] << 24), o[s] = o[s - r] ^ a + } for (var f = this._invKeySchedule = [], u = 0; u < n; u++) s = n - u, a = u % 4 ? o[s] : o[s - 4], f[u] = u < 4 || s <= 4 ? a : c[i[a >>> 24]] ^ h[i[a >>> 16 & 255]] ^ p[i[a >>> 8 & 255]] ^ l[i[255 & a]] + } + }, + encryptBlock: function(t, e) { + this._doCryptBlock(t, e, this._keySchedule, s, a, f, u, i) + }, + decryptBlock: function(t, e) { + var r = t[e + 1]; + t[e + 1] = t[e + 3], t[e + 3] = r, this._doCryptBlock(t, e, this._invKeySchedule, c, h, p, l, o), r = t[e + 1], t[e + 1] = t[e + 3], t[e + 3] = r + }, + _doCryptBlock: function(t, e, r, n, i, o, s, a) { + for (var f = this._nRounds, u = t[e] ^ r[0], c = t[e + 1] ^ r[1], h = t[e + 2] ^ r[2], p = t[e + 3] ^ r[3], l = 4, y = 1; y < f; y++) { + var g = n[u >>> 24] ^ i[c >>> 16 & 255] ^ o[h >>> 8 & 255] ^ s[255 & p] ^ r[l++], + d = n[c >>> 24] ^ i[h >>> 16 & 255] ^ o[p >>> 8 & 255] ^ s[255 & u] ^ r[l++], + v = n[h >>> 24] ^ i[p >>> 16 & 255] ^ o[u >>> 8 & 255] ^ s[255 & c] ^ r[l++], + m = n[p >>> 24] ^ i[u >>> 16 & 255] ^ o[c >>> 8 & 255] ^ s[255 & h] ^ r[l++]; + u = g, c = d, h = v, p = m + } + g = (a[u >>> 24] << 24 | a[c >>> 16 & 255] << 16 | a[h >>> 8 & 255] << 8 | a[255 & p]) ^ r[l++], d = (a[c >>> 24] << 24 | a[h >>> 16 & 255] << 16 | a[p >>> 8 & 255] << 8 | a[255 & u]) ^ r[l++], v = (a[h >>> 24] << 24 | a[p >>> 16 & 255] << 16 | a[u >>> 8 & 255] << 8 | a[255 & c]) ^ r[l++], m = (a[p >>> 24] << 24 | a[u >>> 16 & 255] << 16 | a[c >>> 8 & 255] << 8 | a[255 & h]) ^ r[l++], t[e] = g, t[e + 1] = d, t[e + 2] = v, t[e + 3] = m + }, + keySize: 8 + }); + t.AES = e._createHelper(g) + }(), n.AES) + }, + 7165: function(t, e, r) { + var n, i, o, s, a, f, u, c, h, p, l, y, g, d, v, m, S, _, b; + t.exports = (n = r(9021), r(9506), void(n.lib.Cipher || (i = n, o = i.lib, s = o.Base, a = o.WordArray, f = o.BufferedBlockAlgorithm, u = i.enc, u.Utf8, c = u.Base64, h = i.algo.EvpKDF, p = o.Cipher = f.extend({ + cfg: s.extend(), + createEncryptor: function(t, e) { + return this.create(this._ENC_XFORM_MODE, t, e) + }, + createDecryptor: function(t, e) { + return this.create(this._DEC_XFORM_MODE, t, e) + }, + init: function(t, e, r) { + this.cfg = this.cfg.extend(r), this._xformMode = t, this._key = e, this.reset() + }, + reset: function() { + f.reset.call(this), this._doReset() + }, + process: function(t) { + return this._append(t), this._process() + }, + finalize: function(t) { + return t && this._append(t), this._doFinalize() + }, + keySize: 4, + ivSize: 4, + _ENC_XFORM_MODE: 1, + _DEC_XFORM_MODE: 2, + _createHelper: function() { + function t(t) { + return "string" == typeof t ? b : S + } + return function(e) { + return { + encrypt: function(r, n, i) { + return t(n).encrypt(e, r, n, i) + }, + decrypt: function(r, n, i) { + return t(n).decrypt(e, r, n, i) + } + } + } + }() + }), o.StreamCipher = p.extend({ + _doFinalize: function() { + return this._process(!0) + }, + blockSize: 1 + }), l = i.mode = {}, y = o.BlockCipherMode = s.extend({ + createEncryptor: function(t, e) { + return this.Encryptor.create(t, e) + }, + createDecryptor: function(t, e) { + return this.Decryptor.create(t, e) + }, + init: function(t, e) { + this._cipher = t, this._iv = e + } + }), g = l.CBC = function() { + var t = y.extend(); + + function e(t, e, r) { + var n = this._iv; + if (n) { + var i = n; + this._iv = void 0 + } else i = this._prevBlock; + for (var o = 0; o < r; o++) t[e + o] ^= i[o] + } + return t.Encryptor = t.extend({ + processBlock: function(t, r) { + var n = this._cipher, + i = n.blockSize; + e.call(this, t, r, i), n.encryptBlock(t, r), this._prevBlock = t.slice(r, r + i) + } + }), t.Decryptor = t.extend({ + processBlock: function(t, r) { + var n = this._cipher, + i = n.blockSize, + o = t.slice(r, r + i); + n.decryptBlock(t, r), e.call(this, t, r, i), this._prevBlock = o + } + }), t + }(), d = (i.pad = {}).Pkcs7 = { + pad: function(t, e) { + for (var r = 4 * e, n = r - t.sigBytes % r, i = n << 24 | n << 16 | n << 8 | n, o = [], s = 0; s < n; s += 4) o.push(i); + var f = a.create(o, n); + t.concat(f) + }, + unpad: function(t) { + var e = 255 & t.words[t.sigBytes - 1 >>> 2]; + t.sigBytes -= e + } + }, o.BlockCipher = p.extend({ + cfg: p.cfg.extend({ + mode: g, + padding: d }), - a = n.enc = {}, f = a.Hex = { - stringify: function(t) { - for (var e = t.words, r = t.sigBytes, n = [], i = 0; i < r; i++) { - var o = e[i >>> 2] >>> 24 - i % 4 * 8 & 255; - n.push((o >>> 4).toString(16)), n.push((15 & o).toString(16)) - } - return n.join("") - }, - parse: function(t) { - for (var e = t.length, r = [], n = 0; n < e; n += 2) r[n >>> 3] |= parseInt(t.substr(n, 2), 16) << 24 - n % 8 * 4; - return new s.init(r, e / 2) + reset: function() { + p.reset.call(this); + var t = this.cfg, + e = t.iv, + r = t.mode; + if (this._xformMode == this._ENC_XFORM_MODE) var n = r.createEncryptor; + else n = r.createDecryptor, this._minBufferSize = 1; + this._mode && this._mode.__creator == n ? this._mode.init(this, e && e.words) : (this._mode = n.call(r, this, e && e.words), this._mode.__creator = n) + }, + _doProcessBlock: function(t, e) { + this._mode.processBlock(t, e) + }, + _doFinalize: function() { + var t = this.cfg.padding; + if (this._xformMode == this._ENC_XFORM_MODE) { + t.pad(this._data, this.blockSize); + var e = this._process(!0) + } else e = this._process(!0), t.unpad(e); + return e + }, + blockSize: 4 + }), v = o.CipherParams = s.extend({ + init: function(t) { + this.mixIn(t) + }, + toString: function(t) { + return (t || this.formatter).stringify(this) + } + }), m = (i.format = {}).OpenSSL = { + stringify: function(t) { + var e = t.ciphertext, + r = t.salt; + if (r) var n = a.create([1398893684, 1701076831]).concat(r).concat(e); + else n = e; + return n.toString(c) + }, + parse: function(t) { + var e = c.parse(t), + r = e.words; + if (1398893684 == r[0] && 1701076831 == r[1]) { + var n = a.create(r.slice(2, 4)); + r.splice(0, 4), e.sigBytes -= 16 } - }, u = a.Latin1 = { + return v.create({ + ciphertext: e, + salt: n + }) + } + }, S = o.SerializableCipher = s.extend({ + cfg: s.extend({ + format: m + }), + encrypt: function(t, e, r, n) { + n = this.cfg.extend(n); + var i = t.createEncryptor(r, n), + o = i.finalize(e), + s = i.cfg; + return v.create({ + ciphertext: o, + key: r, + iv: s.iv, + algorithm: t, + mode: s.mode, + padding: s.padding, + blockSize: t.blockSize, + formatter: n.format + }) + }, + decrypt: function(t, e, r, n) { + return n = this.cfg.extend(n), e = this._parse(e, n.format), t.createDecryptor(r, n).finalize(e.ciphertext) + }, + _parse: function(t, e) { + return "string" == typeof t ? e.parse(t, this) : t + } + }), _ = (i.kdf = {}).OpenSSL = { + execute: function(t, e, r, n) { + n || (n = a.random(8)); + var i = h.create({ + keySize: e + r + }).compute(t, n), + o = a.create(i.words.slice(e), 4 * r); + return i.sigBytes = 4 * e, v.create({ + key: i, + iv: o, + salt: n + }) + } + }, b = o.PasswordBasedCipher = S.extend({ + cfg: S.cfg.extend({ + kdf: _ + }), + encrypt: function(t, e, r, n) { + var i = (n = this.cfg.extend(n)).kdf.execute(r, t.keySize, t.ivSize); + n.iv = i.iv; + var o = S.encrypt.call(this, t, e, i.key, n); + return o.mixIn(i), o + }, + decrypt: function(t, e, r, n) { + n = this.cfg.extend(n), e = this._parse(e, n.format); + var i = n.kdf.execute(r, t.keySize, t.ivSize, e.salt); + return n.iv = i.iv, S.decrypt.call(this, t, e, i.key, n) + } + })))) + }, + 9021: function(t, e) { + var r; + t.exports = (r = r || function(t, e) { + var r = Object.create || function() { + function t() {} + return function(e) { + var r; + return t.prototype = e, r = new t, t.prototype = null, r + } + }(), + n = {}, + i = n.lib = {}, + o = i.Base = { + extend: function(t) { + var e = r(this); + return t && e.mixIn(t), e.hasOwnProperty("init") && this.init !== e.init || (e.init = function() { + e.$super.init.apply(this, arguments) + }), e.init.prototype = e, e.$super = this, e + }, + create: function() { + var t = this.extend(); + return t.init.apply(t, arguments), t + }, + init: function() {}, + mixIn: function(t) { + for (var e in t) t.hasOwnProperty(e) && (this[e] = t[e]); + t.hasOwnProperty("toString") && (this.toString = t.toString) + }, + clone: function() { + return this.init.prototype.extend(this) + } + }, + s = i.WordArray = o.extend({ + init: function(t, e) { + t = this.words = t || [], this.sigBytes = null != e ? e : 4 * t.length + }, + toString: function(t) { + return (t || f).stringify(this) + }, + concat: function(t) { + var e = this.words, + r = t.words, + n = this.sigBytes, + i = t.sigBytes; + if (this.clamp(), n % 4) + for (var o = 0; o < i; o++) { + var s = r[o >>> 2] >>> 24 - o % 4 * 8 & 255; + e[n + o >>> 2] |= s << 24 - (n + o) % 4 * 8 + } else + for (o = 0; o < i; o += 4) e[n + o >>> 2] = r[o >>> 2]; + return this.sigBytes += i, this + }, + clamp: function() { + var e = this.words, + r = this.sigBytes; + e[r >>> 2] &= 4294967295 << 32 - r % 4 * 8, e.length = t.ceil(r / 4) + }, + clone: function() { + var t = o.clone.call(this); + return t.words = this.words.slice(0), t + }, + random: function(e) { + for (var r, n = [], i = function(e) { + var r = 987654321, + n = 4294967295; + return function() { + var i = ((r = 36969 * (65535 & r) + (r >> 16) & n) << 16) + (e = 18e3 * (65535 & e) + (e >> 16) & n) & n; + return i /= 4294967296, (i += .5) * (t.random() > .5 ? 1 : -1) + } + }, o = 0; o < e; o += 4) { + var a = i(4294967296 * (r || t.random())); + r = 987654071 * a(), n.push(4294967296 * a() | 0) + } + return new s.init(n, e) + } + }), + a = n.enc = {}, + f = a.Hex = { + stringify: function(t) { + for (var e = t.words, r = t.sigBytes, n = [], i = 0; i < r; i++) { + var o = e[i >>> 2] >>> 24 - i % 4 * 8 & 255; + n.push((o >>> 4).toString(16)), n.push((15 & o).toString(16)) + } + return n.join("") + }, + parse: function(t) { + for (var e = t.length, r = [], n = 0; n < e; n += 2) r[n >>> 3] |= parseInt(t.substr(n, 2), 16) << 24 - n % 8 * 4; + return new s.init(r, e / 2) + } + }, + u = a.Latin1 = { + stringify: function(t) { + for (var e = t.words, r = t.sigBytes, n = [], i = 0; i < r; i++) { + var o = e[i >>> 2] >>> 24 - i % 4 * 8 & 255; + n.push(String.fromCharCode(o)) + } + return n.join("") + }, + parse: function(t) { + for (var e = t.length, r = [], n = 0; n < e; n++) r[n >>> 2] |= (255 & t.charCodeAt(n)) << 24 - n % 4 * 8; + return new s.init(r, e) + } + }, + c = a.Utf8 = { + stringify: function(t) { + try { + return decodeURIComponent(escape(u.stringify(t))) + } catch (t) { + throw new Error("Malformed UTF-8 data") + } + }, + parse: function(t) { + return u.parse(unescape(encodeURIComponent(t))) + } + }, + h = i.BufferedBlockAlgorithm = o.extend({ + reset: function() { + this._data = new s.init, this._nDataBytes = 0 + }, + _append: function(t) { + "string" == typeof t && (t = c.parse(t)), this._data.concat(t), this._nDataBytes += t.sigBytes + }, + _process: function(e) { + var r = this._data, + n = r.words, + i = r.sigBytes, + o = this.blockSize, + a = i / (4 * o), + f = (a = e ? t.ceil(a) : t.max((0 | a) - this._minBufferSize, 0)) * o, + u = t.min(4 * f, i); + if (f) { + for (var c = 0; c < f; c += o) this._doProcessBlock(n, c); + var h = n.splice(0, f); + r.sigBytes -= u + } + return new s.init(h, u) + }, + clone: function() { + var t = o.clone.call(this); + return t._data = this._data.clone(), t + }, + _minBufferSize: 0 + }), + p = (i.Hasher = h.extend({ + cfg: o.extend(), + init: function(t) { + this.cfg = this.cfg.extend(t), this.reset() + }, + reset: function() { + h.reset.call(this), this._doReset() + }, + update: function(t) { + return this._append(t), this._process(), this + }, + finalize: function(t) { + return t && this._append(t), this._doFinalize() + }, + blockSize: 16, + _createHelper: function(t) { + return function(e, r) { + return new t.init(r).finalize(e) + } + }, + _createHmacHelper: function(t) { + return function(e, r) { + return new p.HMAC.init(t, r).finalize(e) + } + } + }), n.algo = {}); + return n + }(Math), r) + }, + 754: function(t, e, r) { + var n, i, o; + t.exports = (n = r(9021), o = (i = n).lib.WordArray, i.enc.Base64 = { + stringify: function(t) { + var e = t.words, + r = t.sigBytes, + n = this._map; + t.clamp(); + for (var i = [], o = 0; o < r; o += 3) + for (var s = (e[o >>> 2] >>> 24 - o % 4 * 8 & 255) << 16 | (e[o + 1 >>> 2] >>> 24 - (o + 1) % 4 * 8 & 255) << 8 | e[o + 2 >>> 2] >>> 24 - (o + 2) % 4 * 8 & 255, a = 0; a < 4 && o + .75 * a < r; a++) i.push(n.charAt(s >>> 6 * (3 - a) & 63)); + var f = n.charAt(64); + if (f) + for (; i.length % 4;) i.push(f); + return i.join("") + }, + parse: function(t) { + var e = t.length, + r = this._map, + n = this._reverseMap; + if (!n) { + n = this._reverseMap = []; + for (var i = 0; i < r.length; i++) n[r.charCodeAt(i)] = i + } + var s = r.charAt(64); + if (s) { + var a = t.indexOf(s); - 1 !== a && (e = a) + } + return function(t, e, r) { + for (var n = [], i = 0, s = 0; s < e; s++) + if (s % 4) { + var a = r[t.charCodeAt(s - 1)] << s % 4 * 2, + f = r[t.charCodeAt(s)] >>> 6 - s % 4 * 2; + n[i >>> 2] |= (a | f) << 24 - i % 4 * 8, i++ + } return o.create(n, i) + }(t, e, n) + }, + _map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" + }, n.enc.Base64) + }, + 5503: function(t, e, r) { + var n; + t.exports = (n = r(9021), function() { + var t = n, + e = t.lib.WordArray, + r = t.enc; + + function i(t) { + return t << 8 & 4278255360 | t >>> 8 & 16711935 + } + r.Utf16 = r.Utf16BE = { stringify: function(t) { - for (var e = t.words, r = t.sigBytes, n = [], i = 0; i < r; i++) { - var o = e[i >>> 2] >>> 24 - i % 4 * 8 & 255; + for (var e = t.words, r = t.sigBytes, n = [], i = 0; i < r; i += 2) { + var o = e[i >>> 2] >>> 16 - i % 4 * 8 & 65535; n.push(String.fromCharCode(o)) } return n.join("") }, parse: function(t) { - for (var e = t.length, r = [], n = 0; n < e; n++) r[n >>> 2] |= (255 & t.charCodeAt(n)) << 24 - n % 4 * 8; - return new s.init(r, e) + for (var r = t.length, n = [], i = 0; i < r; i++) n[i >>> 1] |= t.charCodeAt(i) << 16 - i % 2 * 16; + return e.create(n, 2 * r) } - }, c = a.Utf8 = { + }, r.Utf16LE = { stringify: function(t) { - try { - return decodeURIComponent(escape(u.stringify(t))) - } catch (t) { - throw new Error("Malformed UTF-8 data") + for (var e = t.words, r = t.sigBytes, n = [], o = 0; o < r; o += 2) { + var s = i(e[o >>> 2] >>> 16 - o % 4 * 8 & 65535); + n.push(String.fromCharCode(s)) } + return n.join("") }, parse: function(t) { - return u.parse(unescape(encodeURIComponent(t))) + for (var r = t.length, n = [], o = 0; o < r; o++) n[o >>> 1] |= i(t.charCodeAt(o) << 16 - o % 2 * 16); + return e.create(n, 2 * r) } - }, h = i.BufferedBlockAlgorithm = o.extend({ - reset: function() { - this._data = new s.init, this._nDataBytes = 0 - }, - _append: function(t) { - "string" == typeof t && (t = c.parse(t)), this._data.concat(t), this._nDataBytes += t.sigBytes - }, - _process: function(e) { - var r = this._data, - n = r.words, - i = r.sigBytes, - o = this.blockSize, - a = i / (4 * o), - f = (a = e ? t.ceil(a) : t.max((0 | a) - this._minBufferSize, 0)) * o, - u = t.min(4 * f, i); - if (f) { - for (var c = 0; c < f; c += o) this._doProcessBlock(n, c); - var h = n.splice(0, f); - r.sigBytes -= u - } - return new s.init(h, u) - }, - clone: function() { - var t = o.clone.call(this); - return t._data = this._data.clone(), t - }, - _minBufferSize: 0 + } + }(), n.enc.Utf16) + }, + 9506: function(t, e, r) { + var n, i, o, s, a, f, u, c; + t.exports = (c = r(9021), r(5471), r(1025), o = (i = (n = c).lib).Base, s = i.WordArray, f = (a = n.algo).MD5, u = a.EvpKDF = o.extend({ + cfg: o.extend({ + keySize: 4, + hasher: f, + iterations: 1 }), - p = (i.Hasher = h.extend({ - cfg: o.extend(), - init: function(t) { - this.cfg = this.cfg.extend(t), this.reset() - }, - reset: function() { - h.reset.call(this), this._doReset() - }, - update: function(t) { - return this._append(t), this._process(), this - }, - finalize: function(t) { - return t && this._append(t), this._doFinalize() - }, - blockSize: 16, - _createHelper: function(t) { - return function(e, r) { - return new t.init(r).finalize(e) - } - }, - _createHmacHelper: function(t) { - return function(e, r) { - return new p.HMAC.init(t, r).finalize(e) - } + init: function(t) { + this.cfg = this.cfg.extend(t) + }, + compute: function(t, e) { + for (var r = this.cfg, n = r.hasher.create(), i = s.create(), o = i.words, a = r.keySize, f = r.iterations; o.length < a;) { + u && n.update(u); + var u = n.update(t).finalize(e); + n.reset(); + for (var c = 1; c < f; c++) u = n.finalize(u), n.reset(); + i.concat(u) } - }), n.algo = {}); - return n - }(Math), r) - }, - 754: function(t, e, r) { - var n, i, o; - t.exports = (n = r(9021), o = (i = n).lib.WordArray, i.enc.Base64 = { - stringify: function(t) { - var e = t.words, - r = t.sigBytes, - n = this._map; - t.clamp(); - for (var i = [], o = 0; o < r; o += 3) for (var s = (e[o >>> 2] >>> 24 - o % 4 * 8 & 255) << 16 | (e[o + 1 >>> 2] >>> 24 - (o + 1) % 4 * 8 & 255) << 8 | e[o + 2 >>> 2] >>> 24 - (o + 2) % 4 * 8 & 255, a = 0; a < 4 && o + .75 * a < r; a++) i.push(n.charAt(s >>> 6 * (3 - a) & 63)); - var f = n.charAt(64); - if (f) for (; i.length % 4;) i.push(f); - return i.join("") - }, - parse: function(t) { - var e = t.length, - r = this._map, - n = this._reverseMap; - if (!n) { - n = this._reverseMap = []; - for (var i = 0; i < r.length; i++) n[r.charCodeAt(i)] = i + return i.sigBytes = 4 * a, i } - var s = r.charAt(64); - if (s) { - var a = t.indexOf(s); - 1 !== a && (e = a) - } - return function(t, e, r) { - for (var n = [], i = 0, s = 0; s < e; s++) if (s % 4) { - var a = r[t.charCodeAt(s - 1)] << s % 4 * 2, - f = r[t.charCodeAt(s)] >>> 6 - s % 4 * 2; - n[i >>> 2] |= (a | f) << 24 - i % 4 * 8, i++ - } - return o.create(n, i) - }(t, e, n) - }, - _map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" - }, n.enc.Base64) - }, - 5503: function(t, e, r) { - var n; - t.exports = (n = r(9021), function() { - var t = n, - e = t.lib.WordArray, - r = t.enc; - - function i(t) { - return t << 8 & 4278255360 | t >>> 8 & 16711935 - } - r.Utf16 = r.Utf16BE = { + }), n.EvpKDF = function(t, e, r) { + return u.create(r).compute(t, e) + }, c.EvpKDF) + }, + 25: function(t, e, r) { + var n, i, o, s; + t.exports = (s = r(9021), r(7165), i = (n = s).lib.CipherParams, o = n.enc.Hex, n.format.Hex = { stringify: function(t) { - for (var e = t.words, r = t.sigBytes, n = [], i = 0; i < r; i += 2) { - var o = e[i >>> 2] >>> 16 - i % 4 * 8 & 65535; - n.push(String.fromCharCode(o)) - } - return n.join("") + return t.ciphertext.toString(o) }, parse: function(t) { - for (var r = t.length, n = [], i = 0; i < r; i++) n[i >>> 1] |= t.charCodeAt(i) << 16 - i % 2 * 16; - return e.create(n, 2 * r) + var e = o.parse(t); + return i.create({ + ciphertext: e + }) } - }, r.Utf16LE = { - stringify: function(t) { - for (var e = t.words, r = t.sigBytes, n = [], o = 0; o < r; o += 2) { - var s = i(e[o >>> 2] >>> 16 - o % 4 * 8 & 65535); - n.push(String.fromCharCode(s)) - } - return n.join("") + }, s.format.Hex) + }, + 1025: function(t, e, r) { + var n, i, o; + t.exports = (i = (n = r(9021)).lib.Base, o = n.enc.Utf8, void(n.algo.HMAC = i.extend({ + init: function(t, e) { + t = this._hasher = new t.init, "string" == typeof e && (e = o.parse(e)); + var r = t.blockSize, + n = 4 * r; + e.sigBytes > n && (e = t.finalize(e)), e.clamp(); + for (var i = this._oKey = e.clone(), s = this._iKey = e.clone(), a = i.words, f = s.words, u = 0; u < r; u++) a[u] ^= 1549556828, f[u] ^= 909522486; + i.sigBytes = s.sigBytes = n, this.reset() }, - parse: function(t) { - for (var r = t.length, n = [], o = 0; o < r; o++) n[o >>> 1] |= i(t.charCodeAt(o) << 16 - o % 2 * 16); - return e.create(n, 2 * r) - } - } - }(), n.enc.Utf16) - }, - 9506: function(t, e, r) { - var n, i, o, s, a, f, u, c; - t.exports = (c = r(9021), r(5471), r(1025), o = (i = (n = c).lib).Base, s = i.WordArray, f = (a = n.algo).MD5, u = a.EvpKDF = o.extend({ - cfg: o.extend({ - keySize: 4, - hasher: f, - iterations: 1 - }), - init: function(t) { - this.cfg = this.cfg.extend(t) - }, - compute: function(t, e) { - for (var r = this.cfg, n = r.hasher.create(), i = s.create(), o = i.words, a = r.keySize, f = r.iterations; o.length < a;) { - u && n.update(u); - var u = n.update(t).finalize(e); - n.reset(); - for (var c = 1; c < f; c++) u = n.finalize(u), n.reset(); - i.concat(u) - } - return i.sigBytes = 4 * a, i - } - }), n.EvpKDF = function(t, e, r) { - return u.create(r).compute(t, e) - }, c.EvpKDF) - }, - 25: function(t, e, r) { - var n, i, o, s; - t.exports = (s = r(9021), r(7165), i = (n = s).lib.CipherParams, o = n.enc.Hex, n.format.Hex = { - stringify: function(t) { - return t.ciphertext.toString(o) - }, - parse: function(t) { - var e = o.parse(t); - return i.create({ - ciphertext: e - }) - } - }, s.format.Hex) - }, - 1025: function(t, e, r) { - var n, i, o; - t.exports = (i = (n = r(9021)).lib.Base, o = n.enc.Utf8, void(n.algo.HMAC = i.extend({ - init: function(t, e) { - t = this._hasher = new t.init, "string" == typeof e && (e = o.parse(e)); - var r = t.blockSize, - n = 4 * r; - e.sigBytes > n && (e = t.finalize(e)), e.clamp(); - for (var i = this._oKey = e.clone(), s = this._iKey = e.clone(), a = i.words, f = s.words, u = 0; u < r; u++) a[u] ^= 1549556828, f[u] ^= 909522486; - i.sigBytes = s.sigBytes = n, this.reset() - }, - reset: function() { - var t = this._hasher; - t.reset(), t.update(this._iKey) - }, - update: function(t) { - return this._hasher.update(t), this - }, - finalize: function(t) { - var e = this._hasher, - r = e.finalize(t); - return e.reset(), e.finalize(this._oKey.clone().concat(r)) - } - }))) - }, - 1396: function(t, e, r) { - var n; - t.exports = (n = r(9021), r(3240), r(6440), r(5503), r(754), r(4636), r(5471), r(3009), r(6308), r(1380), r(9557), r(5953), r(8056), r(1025), r(19), r(9506), r(7165), r(2169), r(6939), r(6372), r(3797), r(8454), r(2073), r(4905), r(482), r(2155), r(8124), r(25), r(955), r(7628), r(7193), r(6298), r(2696), n) - }, - 6440: function(t, e, r) { - var n; - t.exports = (n = r(9021), function() { - if ("function" == typeof ArrayBuffer) { - var t = n.lib.WordArray, - e = t.init, - r = t.init = function(t) { - if (t instanceof ArrayBuffer && (t = new Uint8Array(t)), (t instanceof Int8Array || "undefined" != typeof Uint8ClampedArray && t instanceof Uint8ClampedArray || t instanceof Int16Array || t instanceof Uint16Array || t instanceof Int32Array || t instanceof Uint32Array || t instanceof Float32Array || t instanceof Float64Array) && (t = new Uint8Array(t.buffer, t.byteOffset, t.byteLength)), t instanceof Uint8Array) { - for (var r = t.byteLength, n = [], i = 0; i < r; i++) n[i >>> 2] |= t[i] << 24 - i % 4 * 8; - e.call(this, n, r) - } else e.apply(this, arguments) - }; - r.prototype = t - } - }(), n.lib.WordArray) - }, - 4636: function(t, e, r) { - var n; - t.exports = (n = r(9021), function(t) { - var e = n, - r = e.lib, - i = r.WordArray, - o = r.Hasher, - s = e.algo, - a = []; - ! function() { - for (var e = 0; e < 64; e++) a[e] = 4294967296 * t.abs(t.sin(e + 1)) | 0 - }(); - var f = s.MD5 = o.extend({ - _doReset: function() { - this._hash = new i.init([1732584193, 4023233417, 2562383102, 271733878]) + reset: function() { + var t = this._hasher; + t.reset(), t.update(this._iKey) }, - _doProcessBlock: function(t, e) { - for (var r = 0; r < 16; r++) { - var n = e + r, - i = t[n]; - t[n] = 16711935 & (i << 8 | i >>> 24) | 4278255360 & (i << 24 | i >>> 8) - } - var o = this._hash.words, - s = t[e + 0], - f = t[e + 1], - l = t[e + 2], - y = t[e + 3], - g = t[e + 4], - d = t[e + 5], - v = t[e + 6], - m = t[e + 7], - S = t[e + 8], - _ = t[e + 9], - b = t[e + 10], - E = t[e + 11], - w = t[e + 12], - O = t[e + 13], - B = t[e + 14], - A = t[e + 15], - x = o[0], - P = o[1], - T = o[2], - I = o[3]; - x = u(x, P, T, I, s, 7, a[0]), I = u(I, x, P, T, f, 12, a[1]), T = u(T, I, x, P, l, 17, a[2]), P = u(P, T, I, x, y, 22, a[3]), x = u(x, P, T, I, g, 7, a[4]), I = u(I, x, P, T, d, 12, a[5]), T = u(T, I, x, P, v, 17, a[6]), P = u(P, T, I, x, m, 22, a[7]), x = u(x, P, T, I, S, 7, a[8]), I = u(I, x, P, T, _, 12, a[9]), T = u(T, I, x, P, b, 17, a[10]), P = u(P, T, I, x, E, 22, a[11]), x = u(x, P, T, I, w, 7, a[12]), I = u(I, x, P, T, O, 12, a[13]), T = u(T, I, x, P, B, 17, a[14]), x = c(x, P = u(P, T, I, x, A, 22, a[15]), T, I, f, 5, a[16]), I = c(I, x, P, T, v, 9, a[17]), T = c(T, I, x, P, E, 14, a[18]), P = c(P, T, I, x, s, 20, a[19]), x = c(x, P, T, I, d, 5, a[20]), I = c(I, x, P, T, b, 9, a[21]), T = c(T, I, x, P, A, 14, a[22]), P = c(P, T, I, x, g, 20, a[23]), x = c(x, P, T, I, _, 5, a[24]), I = c(I, x, P, T, B, 9, a[25]), T = c(T, I, x, P, y, 14, a[26]), P = c(P, T, I, x, S, 20, a[27]), x = c(x, P, T, I, O, 5, a[28]), I = c(I, x, P, T, l, 9, a[29]), T = c(T, I, x, P, m, 14, a[30]), x = h(x, P = c(P, T, I, x, w, 20, a[31]), T, I, d, 4, a[32]), I = h(I, x, P, T, S, 11, a[33]), T = h(T, I, x, P, E, 16, a[34]), P = h(P, T, I, x, B, 23, a[35]), x = h(x, P, T, I, f, 4, a[36]), I = h(I, x, P, T, g, 11, a[37]), T = h(T, I, x, P, m, 16, a[38]), P = h(P, T, I, x, b, 23, a[39]), x = h(x, P, T, I, O, 4, a[40]), I = h(I, x, P, T, s, 11, a[41]), T = h(T, I, x, P, y, 16, a[42]), P = h(P, T, I, x, v, 23, a[43]), x = h(x, P, T, I, _, 4, a[44]), I = h(I, x, P, T, w, 11, a[45]), T = h(T, I, x, P, A, 16, a[46]), x = p(x, P = h(P, T, I, x, l, 23, a[47]), T, I, s, 6, a[48]), I = p(I, x, P, T, m, 10, a[49]), T = p(T, I, x, P, B, 15, a[50]), P = p(P, T, I, x, d, 21, a[51]), x = p(x, P, T, I, w, 6, a[52]), I = p(I, x, P, T, y, 10, a[53]), T = p(T, I, x, P, b, 15, a[54]), P = p(P, T, I, x, f, 21, a[55]), x = p(x, P, T, I, S, 6, a[56]), I = p(I, x, P, T, A, 10, a[57]), T = p(T, I, x, P, v, 15, a[58]), P = p(P, T, I, x, O, 21, a[59]), x = p(x, P, T, I, g, 6, a[60]), I = p(I, x, P, T, E, 10, a[61]), T = p(T, I, x, P, l, 15, a[62]), P = p(P, T, I, x, _, 21, a[63]), o[0] = o[0] + x | 0, o[1] = o[1] + P | 0, o[2] = o[2] + T | 0, o[3] = o[3] + I | 0 + update: function(t) { + return this._hasher.update(t), this }, - _doFinalize: function() { - var e = this._data, - r = e.words, - n = 8 * this._nDataBytes, - i = 8 * e.sigBytes; - r[i >>> 5] |= 128 << 24 - i % 32; - var o = t.floor(n / 4294967296), - s = n; - r[15 + (i + 64 >>> 9 << 4)] = 16711935 & (o << 8 | o >>> 24) | 4278255360 & (o << 24 | o >>> 8), r[14 + (i + 64 >>> 9 << 4)] = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), e.sigBytes = 4 * (r.length + 1), this._process(); - for (var a = this._hash, f = a.words, u = 0; u < 4; u++) { - var c = f[u]; - f[u] = 16711935 & (c << 8 | c >>> 24) | 4278255360 & (c << 24 | c >>> 8) - } - return a - }, - clone: function() { - var t = o.clone.call(this); - return t._hash = this._hash.clone(), t + finalize: function(t) { + var e = this._hasher, + r = e.finalize(t); + return e.reset(), e.finalize(this._oKey.clone().concat(r)) } - }); - - function u(t, e, r, n, i, o, s) { - var a = t + (e & r | ~e & n) + i + s; - return (a << o | a >>> 32 - o) + e - } - function c(t, e, r, n, i, o, s) { - var a = t + (e & n | r & ~n) + i + s; - return (a << o | a >>> 32 - o) + e - } - function h(t, e, r, n, i, o, s) { - var a = t + (e ^ r ^ n) + i + s; - return (a << o | a >>> 32 - o) + e - } - function p(t, e, r, n, i, o, s) { - var a = t + (r ^ (e | ~n)) + i + s; - return (a << o | a >>> 32 - o) + e - } - e.MD5 = o._createHelper(f), e.HmacMD5 = o._createHmacHelper(f) - }(Math), n.MD5) - }, - 2169: function(t, e, r) { - var n; - t.exports = (n = r(9021), r(7165), n.mode.CFB = function() { - var t = n.lib.BlockCipherMode.extend(); - - function e(t, e, r, n) { - var i = this._iv; - if (i) { - var o = i.slice(0); - this._iv = void 0 - } else o = this._prevBlock; - n.encryptBlock(o, 0); - for (var s = 0; s < r; s++) t[e + s] ^= o[s] - } - return t.Encryptor = t.extend({ - processBlock: function(t, r) { - var n = this._cipher, - i = n.blockSize; - e.call(this, t, r, i, n), this._prevBlock = t.slice(r, r + i) + }))) + }, + 1396: function(t, e, r) { + var n; + t.exports = (n = r(9021), r(3240), r(6440), r(5503), r(754), r(4636), r(5471), r(3009), r(6308), r(1380), r(9557), r(5953), r(8056), r(1025), r(19), r(9506), r(7165), r(2169), r(6939), r(6372), r(3797), r(8454), r(2073), r(4905), r(482), r(2155), r(8124), r(25), r(955), r(7628), r(7193), r(6298), r(2696), n) + }, + 6440: function(t, e, r) { + var n; + t.exports = (n = r(9021), function() { + if ("function" == typeof ArrayBuffer) { + var t = n.lib.WordArray, + e = t.init, + r = t.init = function(t) { + if (t instanceof ArrayBuffer && (t = new Uint8Array(t)), (t instanceof Int8Array || "undefined" != typeof Uint8ClampedArray && t instanceof Uint8ClampedArray || t instanceof Int16Array || t instanceof Uint16Array || t instanceof Int32Array || t instanceof Uint32Array || t instanceof Float32Array || t instanceof Float64Array) && (t = new Uint8Array(t.buffer, t.byteOffset, t.byteLength)), t instanceof Uint8Array) { + for (var r = t.byteLength, n = [], i = 0; i < r; i++) n[i >>> 2] |= t[i] << 24 - i % 4 * 8; + e.call(this, n, r) + } else e.apply(this, arguments) + }; + r.prototype = t } - }), t.Decryptor = t.extend({ - processBlock: function(t, r) { - var n = this._cipher, - i = n.blockSize, - o = t.slice(r, r + i); - e.call(this, t, r, i, n), this._prevBlock = o - } - }), t - }(), n.mode.CFB) - }, - 6372: function(t, e, r) { - var n; - t.exports = (n = r(9021), r(7165), n.mode.CTRGladman = function() { - var t = n.lib.BlockCipherMode.extend(); - - function e(t) { - if (255 & ~ (t >> 24)) t += 1 << 24; - else { - var e = t >> 16 & 255, - r = t >> 8 & 255, - n = 255 & t; - 255 === e ? (e = 0, 255 === r ? (r = 0, 255 === n ? n = 0 : ++n) : ++r) : ++e, t = 0, t += e << 16, t += r << 8, t += n - } - return t - } - var r = t.Encryptor = t.extend({ - processBlock: function(t, r) { - var n = this._cipher, - i = n.blockSize, - o = this._iv, - s = this._counter; - o && (s = this._counter = o.slice(0), this._iv = void 0), - function(t) { - 0 === (t[0] = e(t[0])) && (t[1] = e(t[1])) - }(s); - var a = s.slice(0); - n.encryptBlock(a, 0); - for (var f = 0; f < i; f++) t[r + f] ^= a[f] - } - }); - return t.Decryptor = r, t - }(), n.mode.CTRGladman) - }, - 6939: function(t, e, r) { - var n, i, o; - t.exports = (o = r(9021), r(7165), o.mode.CTR = (i = (n = o.lib.BlockCipherMode.extend()).Encryptor = n.extend({ - processBlock: function(t, e) { - var r = this._cipher, - n = r.blockSize, - i = this._iv, - o = this._counter; - i && (o = this._counter = i.slice(0), this._iv = void 0); - var s = o.slice(0); - r.encryptBlock(s, 0), o[n - 1] = o[n - 1] + 1 | 0; - for (var a = 0; a < n; a++) t[e + a] ^= s[a] - } - }), n.Decryptor = i, n), o.mode.CTR) - }, - 8454: function(t, e, r) { - var n, i; - t.exports = (i = r(9021), r(7165), i.mode.ECB = ((n = i.lib.BlockCipherMode.extend()).Encryptor = n.extend({ - processBlock: function(t, e) { - this._cipher.encryptBlock(t, e) - } - }), n.Decryptor = n.extend({ - processBlock: function(t, e) { - this._cipher.decryptBlock(t, e) - } - }), n), i.mode.ECB) - }, - 3797: function(t, e, r) { - var n, i, o; - t.exports = (o = r(9021), r(7165), o.mode.OFB = (i = (n = o.lib.BlockCipherMode.extend()).Encryptor = n.extend({ - processBlock: function(t, e) { - var r = this._cipher, - n = r.blockSize, - i = this._iv, - o = this._keystream; - i && (o = this._keystream = i.slice(0), this._iv = void 0), r.encryptBlock(o, 0); - for (var s = 0; s < n; s++) t[e + s] ^= o[s] - } - }), n.Decryptor = i, n), o.mode.OFB) - }, - 2073: function(t, e, r) { - var n; - t.exports = (n = r(9021), r(7165), n.pad.AnsiX923 = { - pad: function(t, e) { - var r = t.sigBytes, - n = 4 * e, - i = n - r % n, - o = r + i - 1; - t.clamp(), t.words[o >>> 2] |= i << 24 - o % 4 * 8, t.sigBytes += i - }, - unpad: function(t) { - var e = 255 & t.words[t.sigBytes - 1 >>> 2]; - t.sigBytes -= e - } - }, n.pad.Ansix923) - }, - 4905: function(t, e, r) { - var n; - t.exports = (n = r(9021), r(7165), n.pad.Iso10126 = { - pad: function(t, e) { - var r = 4 * e, - i = r - t.sigBytes % r; - t.concat(n.lib.WordArray.random(i - 1)).concat(n.lib.WordArray.create([i << 24], 1)) - }, - unpad: function(t) { - var e = 255 & t.words[t.sigBytes - 1 >>> 2]; - t.sigBytes -= e - } - }, n.pad.Iso10126) - }, - 482: function(t, e, r) { - var n; - t.exports = (n = r(9021), r(7165), n.pad.Iso97971 = { - pad: function(t, e) { - t.concat(n.lib.WordArray.create([2147483648], 1)), n.pad.ZeroPadding.pad(t, e) - }, - unpad: function(t) { - n.pad.ZeroPadding.unpad(t), t.sigBytes-- - } - }, n.pad.Iso97971) - }, - 8124: function(t, e, r) { - var n; - t.exports = (n = r(9021), r(7165), n.pad.NoPadding = { - pad: function() {}, - unpad: function() {} - }, n.pad.NoPadding) - }, - 2155: function(t, e, r) { - var n; - t.exports = (n = r(9021), r(7165), n.pad.ZeroPadding = { - pad: function(t, e) { - var r = 4 * e; - t.clamp(), t.sigBytes += r - (t.sigBytes % r || r) - }, - unpad: function(t) { - for (var e = t.words, r = t.sigBytes - 1; !(e[r >>> 2] >>> 24 - r % 4 * 8 & 255);) r--; - t.sigBytes = r + 1 - } - }, n.pad.ZeroPadding) - }, - 19: function(t, e, r) { - var n, i, o, s, a, f, u, c, h; - t.exports = (h = r(9021), r(5471), r(1025), o = (i = (n = h).lib).Base, s = i.WordArray, f = (a = n.algo).SHA1, u = a.HMAC, c = a.PBKDF2 = o.extend({ - cfg: o.extend({ - keySize: 4, - hasher: f, - iterations: 1 - }), - init: function(t) { - this.cfg = this.cfg.extend(t) - }, - compute: function(t, e) { - for (var r = this.cfg, n = u.create(r.hasher, t), i = s.create(), o = s.create([1]), a = i.words, f = o.words, c = r.keySize, h = r.iterations; a.length < c;) { - var p = n.update(e).finalize(o); - n.reset(); - for (var l = p.words, y = l.length, g = p, d = 1; d < h; d++) { - g = n.finalize(g), n.reset(); - for (var v = g.words, m = 0; m < y; m++) l[m] ^= v[m] - } - i.concat(p), f[0]++ - } - return i.sigBytes = 4 * c, i - } - }), n.PBKDF2 = function(t, e, r) { - return c.create(r).compute(t, e) - }, h.PBKDF2) - }, - 2696: function(t, e, r) { - var n; - t.exports = (n = r(9021), r(754), r(4636), r(9506), r(7165), function() { - var t = n, - e = t.lib.StreamCipher, - r = t.algo, - i = [], - o = [], - s = [], - a = r.RabbitLegacy = e.extend({ + }(), n.lib.WordArray) + }, + 4636: function(t, e, r) { + var n; + t.exports = (n = r(9021), function(t) { + var e = n, + r = e.lib, + i = r.WordArray, + o = r.Hasher, + s = e.algo, + a = []; + ! function() { + for (var e = 0; e < 64; e++) a[e] = 4294967296 * t.abs(t.sin(e + 1)) | 0 + }(); + var f = s.MD5 = o.extend({ _doReset: function() { - var t = this._key.words, - e = this.cfg.iv, - r = this._X = [t[0], t[3] << 16 | t[2] >>> 16, t[1], t[0] << 16 | t[3] >>> 16, t[2], t[1] << 16 | t[0] >>> 16, t[3], t[2] << 16 | t[1] >>> 16], - n = this._C = [t[2] << 16 | t[2] >>> 16, 4294901760 & t[0] | 65535 & t[1], t[3] << 16 | t[3] >>> 16, 4294901760 & t[1] | 65535 & t[2], t[0] << 16 | t[0] >>> 16, 4294901760 & t[2] | 65535 & t[3], t[1] << 16 | t[1] >>> 16, 4294901760 & t[3] | 65535 & t[0]]; - this._b = 0; - for (var i = 0; i < 4; i++) f.call(this); - for (i = 0; i < 8; i++) n[i] ^= r[i + 4 & 7]; - if (e) { - var o = e.words, - s = o[0], - a = o[1], - u = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), - c = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8), - h = u >>> 16 | 4294901760 & c, - p = c << 16 | 65535 & u; - for (n[0] ^= u, n[1] ^= h, n[2] ^= c, n[3] ^= p, n[4] ^= u, n[5] ^= h, n[6] ^= c, n[7] ^= p, i = 0; i < 4; i++) f.call(this) - } - }, - _doProcessBlock: function(t, e) { - var r = this._X; - f.call(this), i[0] = r[0] ^ r[5] >>> 16 ^ r[3] << 16, i[1] = r[2] ^ r[7] >>> 16 ^ r[5] << 16, i[2] = r[4] ^ r[1] >>> 16 ^ r[7] << 16, i[3] = r[6] ^ r[3] >>> 16 ^ r[1] << 16; - for (var n = 0; n < 4; n++) i[n] = 16711935 & (i[n] << 8 | i[n] >>> 24) | 4278255360 & (i[n] << 24 | i[n] >>> 8), t[e + n] ^= i[n] - }, - blockSize: 4, - ivSize: 2 - }); - - function f() { - for (var t = this._X, e = this._C, r = 0; r < 8; r++) o[r] = e[r]; - for (e[0] = e[0] + 1295307597 + this._b | 0, e[1] = e[1] + 3545052371 + (e[0] >>> 0 < o[0] >>> 0 ? 1 : 0) | 0, e[2] = e[2] + 886263092 + (e[1] >>> 0 < o[1] >>> 0 ? 1 : 0) | 0, e[3] = e[3] + 1295307597 + (e[2] >>> 0 < o[2] >>> 0 ? 1 : 0) | 0, e[4] = e[4] + 3545052371 + (e[3] >>> 0 < o[3] >>> 0 ? 1 : 0) | 0, e[5] = e[5] + 886263092 + (e[4] >>> 0 < o[4] >>> 0 ? 1 : 0) | 0, e[6] = e[6] + 1295307597 + (e[5] >>> 0 < o[5] >>> 0 ? 1 : 0) | 0, e[7] = e[7] + 3545052371 + (e[6] >>> 0 < o[6] >>> 0 ? 1 : 0) | 0, this._b = e[7] >>> 0 < o[7] >>> 0 ? 1 : 0, r = 0; r < 8; r++) { - var n = t[r] + e[r], - i = 65535 & n, - a = n >>> 16, - f = ((i * i >>> 17) + i * a >>> 15) + a * a, - u = ((4294901760 & n) * n | 0) + ((65535 & n) * n | 0); - s[r] = f ^ u - } - t[0] = s[0] + (s[7] << 16 | s[7] >>> 16) + (s[6] << 16 | s[6] >>> 16) | 0, t[1] = s[1] + (s[0] << 8 | s[0] >>> 24) + s[7] | 0, t[2] = s[2] + (s[1] << 16 | s[1] >>> 16) + (s[0] << 16 | s[0] >>> 16) | 0, t[3] = s[3] + (s[2] << 8 | s[2] >>> 24) + s[1] | 0, t[4] = s[4] + (s[3] << 16 | s[3] >>> 16) + (s[2] << 16 | s[2] >>> 16) | 0, t[5] = s[5] + (s[4] << 8 | s[4] >>> 24) + s[3] | 0, t[6] = s[6] + (s[5] << 16 | s[5] >>> 16) + (s[4] << 16 | s[4] >>> 16) | 0, t[7] = s[7] + (s[6] << 8 | s[6] >>> 24) + s[5] | 0 - } - t.RabbitLegacy = e._createHelper(a) - }(), n.RabbitLegacy) - }, - 6298: function(t, e, r) { - var n; - t.exports = (n = r(9021), r(754), r(4636), r(9506), r(7165), function() { - var t = n, - e = t.lib.StreamCipher, - r = t.algo, - i = [], - o = [], - s = [], - a = r.Rabbit = e.extend({ - _doReset: function() { - for (var t = this._key.words, e = this.cfg.iv, r = 0; r < 4; r++) t[r] = 16711935 & (t[r] << 8 | t[r] >>> 24) | 4278255360 & (t[r] << 24 | t[r] >>> 8); - var n = this._X = [t[0], t[3] << 16 | t[2] >>> 16, t[1], t[0] << 16 | t[3] >>> 16, t[2], t[1] << 16 | t[0] >>> 16, t[3], t[2] << 16 | t[1] >>> 16], - i = this._C = [t[2] << 16 | t[2] >>> 16, 4294901760 & t[0] | 65535 & t[1], t[3] << 16 | t[3] >>> 16, 4294901760 & t[1] | 65535 & t[2], t[0] << 16 | t[0] >>> 16, 4294901760 & t[2] | 65535 & t[3], t[1] << 16 | t[1] >>> 16, 4294901760 & t[3] | 65535 & t[0]]; - for (this._b = 0, r = 0; r < 4; r++) f.call(this); - for (r = 0; r < 8; r++) i[r] ^= n[r + 4 & 7]; - if (e) { - var o = e.words, - s = o[0], - a = o[1], - u = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), - c = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8), - h = u >>> 16 | 4294901760 & c, - p = c << 16 | 65535 & u; - for (i[0] ^= u, i[1] ^= h, i[2] ^= c, i[3] ^= p, i[4] ^= u, i[5] ^= h, i[6] ^= c, i[7] ^= p, r = 0; r < 4; r++) f.call(this) - } - }, - _doProcessBlock: function(t, e) { - var r = this._X; - f.call(this), i[0] = r[0] ^ r[5] >>> 16 ^ r[3] << 16, i[1] = r[2] ^ r[7] >>> 16 ^ r[5] << 16, i[2] = r[4] ^ r[1] >>> 16 ^ r[7] << 16, i[3] = r[6] ^ r[3] >>> 16 ^ r[1] << 16; - for (var n = 0; n < 4; n++) i[n] = 16711935 & (i[n] << 8 | i[n] >>> 24) | 4278255360 & (i[n] << 24 | i[n] >>> 8), t[e + n] ^= i[n] - }, - blockSize: 4, - ivSize: 2 - }); - - function f() { - for (var t = this._X, e = this._C, r = 0; r < 8; r++) o[r] = e[r]; - for (e[0] = e[0] + 1295307597 + this._b | 0, e[1] = e[1] + 3545052371 + (e[0] >>> 0 < o[0] >>> 0 ? 1 : 0) | 0, e[2] = e[2] + 886263092 + (e[1] >>> 0 < o[1] >>> 0 ? 1 : 0) | 0, e[3] = e[3] + 1295307597 + (e[2] >>> 0 < o[2] >>> 0 ? 1 : 0) | 0, e[4] = e[4] + 3545052371 + (e[3] >>> 0 < o[3] >>> 0 ? 1 : 0) | 0, e[5] = e[5] + 886263092 + (e[4] >>> 0 < o[4] >>> 0 ? 1 : 0) | 0, e[6] = e[6] + 1295307597 + (e[5] >>> 0 < o[5] >>> 0 ? 1 : 0) | 0, e[7] = e[7] + 3545052371 + (e[6] >>> 0 < o[6] >>> 0 ? 1 : 0) | 0, this._b = e[7] >>> 0 < o[7] >>> 0 ? 1 : 0, r = 0; r < 8; r++) { - var n = t[r] + e[r], - i = 65535 & n, - a = n >>> 16, - f = ((i * i >>> 17) + i * a >>> 15) + a * a, - u = ((4294901760 & n) * n | 0) + ((65535 & n) * n | 0); - s[r] = f ^ u - } - t[0] = s[0] + (s[7] << 16 | s[7] >>> 16) + (s[6] << 16 | s[6] >>> 16) | 0, t[1] = s[1] + (s[0] << 8 | s[0] >>> 24) + s[7] | 0, t[2] = s[2] + (s[1] << 16 | s[1] >>> 16) + (s[0] << 16 | s[0] >>> 16) | 0, t[3] = s[3] + (s[2] << 8 | s[2] >>> 24) + s[1] | 0, t[4] = s[4] + (s[3] << 16 | s[3] >>> 16) + (s[2] << 16 | s[2] >>> 16) | 0, t[5] = s[5] + (s[4] << 8 | s[4] >>> 24) + s[3] | 0, t[6] = s[6] + (s[5] << 16 | s[5] >>> 16) + (s[4] << 16 | s[4] >>> 16) | 0, t[7] = s[7] + (s[6] << 8 | s[6] >>> 24) + s[5] | 0 - } - t.Rabbit = e._createHelper(a) - }(), n.Rabbit) - }, - 7193: function(t, e, r) { - var n; - t.exports = (n = r(9021), r(754), r(4636), r(9506), r(7165), function() { - var t = n, - e = t.lib.StreamCipher, - r = t.algo, - i = r.RC4 = e.extend({ - _doReset: function() { - for (var t = this._key, e = t.words, r = t.sigBytes, n = this._S = [], i = 0; i < 256; i++) n[i] = i; - i = 0; - for (var o = 0; i < 256; i++) { - var s = i % r, - a = e[s >>> 2] >>> 24 - s % 4 * 8 & 255; - o = (o + n[i] + a) % 256; - var f = n[i]; - n[i] = n[o], n[o] = f - } - this._i = this._j = 0 - }, - _doProcessBlock: function(t, e) { - t[e] ^= o.call(this) - }, - keySize: 8, - ivSize: 0 - }); - - function o() { - for (var t = this._S, e = this._i, r = this._j, n = 0, i = 0; i < 4; i++) { - r = (r + t[e = (e + 1) % 256]) % 256; - var o = t[e]; - t[e] = t[r], t[r] = o, n |= t[(t[e] + t[r]) % 256] << 24 - 8 * i - } - return this._i = e, this._j = r, n - } - t.RC4 = e._createHelper(i); - var s = r.RC4Drop = i.extend({ - cfg: i.cfg.extend({ - drop: 192 - }), - _doReset: function() { - i._doReset.call(this); - for (var t = this.cfg.drop; t > 0; t--) o.call(this) - } - }); - t.RC4Drop = e._createHelper(s) - }(), n.RC4) - }, - 8056: function(t, e, r) { - var n; - t.exports = (n = r(9021), function(t) { - var e = n, - r = e.lib, - i = r.WordArray, - o = r.Hasher, - s = e.algo, - a = i.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 = i.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]), - u = i.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]), - c = i.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 = i.create([0, 1518500249, 1859775393, 2400959708, 2840853838]), - p = i.create([1352829926, 1548603684, 1836072691, 2053994217, 0]), - l = s.RIPEMD160 = o.extend({ - _doReset: function() { - this._hash = i.create([1732584193, 4023233417, 2562383102, 271733878, 3285377520]) + this._hash = new i.init([1732584193, 4023233417, 2562383102, 271733878]) }, _doProcessBlock: function(t, e) { for (var r = 0; r < 16; r++) { @@ -2406,3260 +2057,3787 @@ i = t[n]; t[n] = 16711935 & (i << 8 | i >>> 24) | 4278255360 & (i << 24 | i >>> 8) } - var o, s, l, _, b, E, w, O, B, A, x, P = this._hash.words, - T = h.words, - I = p.words, - k = a.words, - D = f.words, - R = u.words, - N = c.words; - for (E = o = P[0], w = s = P[1], O = l = P[2], B = _ = P[3], A = b = P[4], r = 0; r < 80; r += 1) x = o + t[e + k[r]] | 0, x += r < 16 ? y(s, l, _) + T[0] : r < 32 ? g(s, l, _) + T[1] : r < 48 ? d(s, l, _) + T[2] : r < 64 ? v(s, l, _) + T[3] : m(s, l, _) + T[4], x = (x = S(x |= 0, R[r])) + b | 0, o = b, b = _, _ = S(l, 10), l = s, s = x, x = E + t[e + D[r]] | 0, x += r < 16 ? m(w, O, B) + I[0] : r < 32 ? v(w, O, B) + I[1] : r < 48 ? d(w, O, B) + I[2] : r < 64 ? g(w, O, B) + I[3] : y(w, O, B) + I[4], x = (x = S(x |= 0, N[r])) + A | 0, E = A, A = B, B = S(O, 10), O = w, w = x; - x = P[1] + l + B | 0, P[1] = P[2] + _ + A | 0, P[2] = P[3] + b + E | 0, P[3] = P[4] + o + w | 0, P[4] = P[0] + s + O | 0, P[0] = x - }, - _doFinalize: function() { - var t = this._data, - e = t.words, - r = 8 * this._nDataBytes, - n = 8 * t.sigBytes; - e[n >>> 5] |= 128 << 24 - n % 32, e[14 + (n + 64 >>> 9 << 4)] = 16711935 & (r << 8 | r >>> 24) | 4278255360 & (r << 24 | r >>> 8), t.sigBytes = 4 * (e.length + 1), this._process(); - for (var i = this._hash, o = i.words, s = 0; s < 5; s++) { - var a = o[s]; - o[s] = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8) - } - return i - }, - clone: function() { - var t = o.clone.call(this); - return t._hash = this._hash.clone(), t - } - }); - - function y(t, e, r) { - return t ^ e ^ r - } - function g(t, e, r) { - return t & e | ~t & r - } - function d(t, e, r) { - return (t | ~e) ^ r - } - function v(t, e, r) { - return t & r | e & ~r - } - function m(t, e, r) { - return t ^ (e | ~r) - } - function S(t, e) { - return t << e | t >>> 32 - e - } - e.RIPEMD160 = o._createHelper(l), e.HmacRIPEMD160 = o._createHmacHelper(l) - }(Math), n.RIPEMD160) - }, - 5471: function(t, e, r) { - var n, i, o, s, a, f, u, c; - t.exports = (i = (n = c = r(9021)).lib, o = i.WordArray, s = i.Hasher, a = n.algo, f = [], u = a.SHA1 = s.extend({ - _doReset: function() { - this._hash = new o.init([1732584193, 4023233417, 2562383102, 271733878, 3285377520]) - }, - _doProcessBlock: function(t, e) { - for (var r = this._hash.words, n = r[0], i = r[1], o = r[2], s = r[3], a = r[4], u = 0; u < 80; u++) { - if (u < 16) f[u] = 0 | t[e + u]; - else { - var c = f[u - 3] ^ f[u - 8] ^ f[u - 14] ^ f[u - 16]; - f[u] = c << 1 | c >>> 31 - } - var h = (n << 5 | n >>> 27) + a + f[u]; - h += u < 20 ? 1518500249 + (i & o | ~i & s) : u < 40 ? 1859775393 + (i ^ o ^ s) : u < 60 ? (i & o | i & s | o & s) - 1894007588 : (i ^ o ^ s) - 899497514, a = s, s = o, o = i << 30 | i >>> 2, i = n, n = h - } - r[0] = r[0] + n | 0, r[1] = r[1] + i | 0, r[2] = r[2] + o | 0, r[3] = r[3] + s | 0, r[4] = r[4] + a | 0 - }, - _doFinalize: function() { - var t = this._data, - e = t.words, - r = 8 * this._nDataBytes, - n = 8 * t.sigBytes; - return e[n >>> 5] |= 128 << 24 - n % 32, e[14 + (n + 64 >>> 9 << 4)] = Math.floor(r / 4294967296), e[15 + (n + 64 >>> 9 << 4)] = r, t.sigBytes = 4 * e.length, this._process(), this._hash - }, - clone: function() { - var t = s.clone.call(this); - return t._hash = this._hash.clone(), t - } - }), n.SHA1 = s._createHelper(u), n.HmacSHA1 = s._createHmacHelper(u), c.SHA1) - }, - 6308: function(t, e, r) { - var n, i, o, s, a, f; - t.exports = (f = r(9021), r(3009), i = (n = f).lib.WordArray, o = n.algo, s = o.SHA256, a = o.SHA224 = s.extend({ - _doReset: function() { - this._hash = new i.init([3238371032, 914150663, 812702999, 4144912697, 4290775857, 1750603025, 1694076839, 3204075428]) - }, - _doFinalize: function() { - var t = s._doFinalize.call(this); - return t.sigBytes -= 4, t - } - }), n.SHA224 = s._createHelper(a), n.HmacSHA224 = s._createHmacHelper(a), f.SHA224) - }, - 3009: function(t, e, r) { - var n; - t.exports = (n = r(9021), function(t) { - var e = n, - r = e.lib, - i = r.WordArray, - o = r.Hasher, - s = e.algo, - a = [], - f = []; - ! function() { - function e(e) { - for (var r = t.sqrt(e), n = 2; n <= r; n++) if (!(e % n)) return !1; - return !0 - } - function r(t) { - return 4294967296 * (t - (0 | t)) | 0 - } - for (var n = 2, i = 0; i < 64;) e(n) && (i < 8 && (a[i] = r(t.pow(n, .5))), f[i] = r(t.pow(n, 1 / 3)), i++), n++ - }(); - var u = [], - c = s.SHA256 = o.extend({ - _doReset: function() { - this._hash = new i.init(a.slice(0)) - }, - _doProcessBlock: function(t, e) { - for (var r = this._hash.words, n = r[0], i = r[1], o = r[2], s = r[3], a = r[4], c = r[5], h = r[6], p = r[7], l = 0; l < 64; l++) { - if (l < 16) u[l] = 0 | t[e + l]; - else { - var y = u[l - 15], - g = (y << 25 | y >>> 7) ^ (y << 14 | y >>> 18) ^ y >>> 3, - d = u[l - 2], - v = (d << 15 | d >>> 17) ^ (d << 13 | d >>> 19) ^ d >>> 10; - u[l] = g + u[l - 7] + v + u[l - 16] - } - var m = n & i ^ n & o ^ i & o, - S = (n << 30 | n >>> 2) ^ (n << 19 | n >>> 13) ^ (n << 10 | n >>> 22), - _ = p + ((a << 26 | a >>> 6) ^ (a << 21 | a >>> 11) ^ (a << 7 | a >>> 25)) + (a & c ^ ~a & h) + f[l] + u[l]; - p = h, h = c, c = a, a = s + _ | 0, s = o, o = i, i = n, n = _ + (S + m) | 0 - } - r[0] = r[0] + n | 0, r[1] = r[1] + i | 0, r[2] = r[2] + o | 0, r[3] = r[3] + s | 0, r[4] = r[4] + a | 0, r[5] = r[5] + c | 0, r[6] = r[6] + h | 0, r[7] = r[7] + p | 0 + var o = this._hash.words, + s = t[e + 0], + f = t[e + 1], + l = t[e + 2], + y = t[e + 3], + g = t[e + 4], + d = t[e + 5], + v = t[e + 6], + m = t[e + 7], + S = t[e + 8], + _ = t[e + 9], + b = t[e + 10], + E = t[e + 11], + w = t[e + 12], + O = t[e + 13], + B = t[e + 14], + A = t[e + 15], + x = o[0], + P = o[1], + T = o[2], + I = o[3]; + x = u(x, P, T, I, s, 7, a[0]), I = u(I, x, P, T, f, 12, a[1]), T = u(T, I, x, P, l, 17, a[2]), P = u(P, T, I, x, y, 22, a[3]), x = u(x, P, T, I, g, 7, a[4]), I = u(I, x, P, T, d, 12, a[5]), T = u(T, I, x, P, v, 17, a[6]), P = u(P, T, I, x, m, 22, a[7]), x = u(x, P, T, I, S, 7, a[8]), I = u(I, x, P, T, _, 12, a[9]), T = u(T, I, x, P, b, 17, a[10]), P = u(P, T, I, x, E, 22, a[11]), x = u(x, P, T, I, w, 7, a[12]), I = u(I, x, P, T, O, 12, a[13]), T = u(T, I, x, P, B, 17, a[14]), x = c(x, P = u(P, T, I, x, A, 22, a[15]), T, I, f, 5, a[16]), I = c(I, x, P, T, v, 9, a[17]), T = c(T, I, x, P, E, 14, a[18]), P = c(P, T, I, x, s, 20, a[19]), x = c(x, P, T, I, d, 5, a[20]), I = c(I, x, P, T, b, 9, a[21]), T = c(T, I, x, P, A, 14, a[22]), P = c(P, T, I, x, g, 20, a[23]), x = c(x, P, T, I, _, 5, a[24]), I = c(I, x, P, T, B, 9, a[25]), T = c(T, I, x, P, y, 14, a[26]), P = c(P, T, I, x, S, 20, a[27]), x = c(x, P, T, I, O, 5, a[28]), I = c(I, x, P, T, l, 9, a[29]), T = c(T, I, x, P, m, 14, a[30]), x = h(x, P = c(P, T, I, x, w, 20, a[31]), T, I, d, 4, a[32]), I = h(I, x, P, T, S, 11, a[33]), T = h(T, I, x, P, E, 16, a[34]), P = h(P, T, I, x, B, 23, a[35]), x = h(x, P, T, I, f, 4, a[36]), I = h(I, x, P, T, g, 11, a[37]), T = h(T, I, x, P, m, 16, a[38]), P = h(P, T, I, x, b, 23, a[39]), x = h(x, P, T, I, O, 4, a[40]), I = h(I, x, P, T, s, 11, a[41]), T = h(T, I, x, P, y, 16, a[42]), P = h(P, T, I, x, v, 23, a[43]), x = h(x, P, T, I, _, 4, a[44]), I = h(I, x, P, T, w, 11, a[45]), T = h(T, I, x, P, A, 16, a[46]), x = p(x, P = h(P, T, I, x, l, 23, a[47]), T, I, s, 6, a[48]), I = p(I, x, P, T, m, 10, a[49]), T = p(T, I, x, P, B, 15, a[50]), P = p(P, T, I, x, d, 21, a[51]), x = p(x, P, T, I, w, 6, a[52]), I = p(I, x, P, T, y, 10, a[53]), T = p(T, I, x, P, b, 15, a[54]), P = p(P, T, I, x, f, 21, a[55]), x = p(x, P, T, I, S, 6, a[56]), I = p(I, x, P, T, A, 10, a[57]), T = p(T, I, x, P, v, 15, a[58]), P = p(P, T, I, x, O, 21, a[59]), x = p(x, P, T, I, g, 6, a[60]), I = p(I, x, P, T, E, 10, a[61]), T = p(T, I, x, P, l, 15, a[62]), P = p(P, T, I, x, _, 21, a[63]), o[0] = o[0] + x | 0, o[1] = o[1] + P | 0, o[2] = o[2] + T | 0, o[3] = o[3] + I | 0 }, _doFinalize: function() { var e = this._data, r = e.words, n = 8 * this._nDataBytes, i = 8 * e.sigBytes; - return r[i >>> 5] |= 128 << 24 - i % 32, r[14 + (i + 64 >>> 9 << 4)] = t.floor(n / 4294967296), r[15 + (i + 64 >>> 9 << 4)] = n, e.sigBytes = 4 * r.length, this._process(), this._hash + r[i >>> 5] |= 128 << 24 - i % 32; + var o = t.floor(n / 4294967296), + s = n; + r[15 + (i + 64 >>> 9 << 4)] = 16711935 & (o << 8 | o >>> 24) | 4278255360 & (o << 24 | o >>> 8), r[14 + (i + 64 >>> 9 << 4)] = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), e.sigBytes = 4 * (r.length + 1), this._process(); + for (var a = this._hash, f = a.words, u = 0; u < 4; u++) { + var c = f[u]; + f[u] = 16711935 & (c << 8 | c >>> 24) | 4278255360 & (c << 24 | c >>> 8) + } + return a }, clone: function() { var t = o.clone.call(this); return t._hash = this._hash.clone(), t } }); - e.SHA256 = o._createHelper(c), e.HmacSHA256 = o._createHmacHelper(c) - }(Math), n.SHA256) - }, - 5953: function(t, e, r) { - var n; - t.exports = (n = r(9021), r(3240), function(t) { - var e = n, - r = e.lib, - i = r.WordArray, - o = r.Hasher, - s = e.x64.Word, - a = e.algo, - f = [], - u = [], - c = []; - ! function() { - for (var t = 1, e = 0, r = 0; r < 24; r++) { - f[t + 5 * e] = (r + 1) * (r + 2) / 2 % 64; - var n = (2 * t + 3 * e) % 5; - t = e % 5, e = n + + function u(t, e, r, n, i, o, s) { + var a = t + (e & r | ~e & n) + i + s; + return (a << o | a >>> 32 - o) + e } - for (t = 0; t < 5; t++) for (e = 0; e < 5; e++) u[t + 5 * e] = e + (2 * t + 3 * e) % 5 * 5; - for (var i = 1, o = 0; o < 24; o++) { - for (var a = 0, h = 0, p = 0; p < 7; p++) { - if (1 & i) { - var l = (1 << p) - 1; - l < 32 ? h ^= 1 << l : a ^= 1 << l - 32 - } - 128 & i ? i = i << 1 ^ 113 : i <<= 1 - } - c[o] = s.create(a, h) + + function c(t, e, r, n, i, o, s) { + var a = t + (e & n | r & ~n) + i + s; + return (a << o | a >>> 32 - o) + e } - }(); - var h = []; - ! function() { - for (var t = 0; t < 25; t++) h[t] = s.create() - }(); - var p = a.SHA3 = o.extend({ - cfg: o.cfg.extend({ - outputLength: 512 - }), - _doReset: function() { - for (var t = this._state = [], e = 0; e < 25; e++) t[e] = new s.init; - this.blockSize = (1600 - 2 * this.cfg.outputLength) / 32 - }, - _doProcessBlock: function(t, e) { - for (var r = this._state, n = this.blockSize / 2, i = 0; i < n; i++) { - var o = t[e + 2 * i], - s = t[e + 2 * i + 1]; - o = 16711935 & (o << 8 | o >>> 24) | 4278255360 & (o << 24 | o >>> 8), s = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), (P = r[i]).high ^= s, P.low ^= o + + function h(t, e, r, n, i, o, s) { + var a = t + (e ^ r ^ n) + i + s; + return (a << o | a >>> 32 - o) + e + } + + function p(t, e, r, n, i, o, s) { + var a = t + (r ^ (e | ~n)) + i + s; + return (a << o | a >>> 32 - o) + e + } + e.MD5 = o._createHelper(f), e.HmacMD5 = o._createHmacHelper(f) + }(Math), n.MD5) + }, + 2169: function(t, e, r) { + var n; + t.exports = (n = r(9021), r(7165), n.mode.CFB = function() { + var t = n.lib.BlockCipherMode.extend(); + + function e(t, e, r, n) { + var i = this._iv; + if (i) { + var o = i.slice(0); + this._iv = void 0 + } else o = this._prevBlock; + n.encryptBlock(o, 0); + for (var s = 0; s < r; s++) t[e + s] ^= o[s] + } + return t.Encryptor = t.extend({ + processBlock: function(t, r) { + var n = this._cipher, + i = n.blockSize; + e.call(this, t, r, i, n), this._prevBlock = t.slice(r, r + i) } - for (var a = 0; a < 24; a++) { - for (var p = 0; p < 5; p++) { - for (var l = 0, y = 0, g = 0; g < 5; g++) l ^= (P = r[p + 5 * g]).high, y ^= P.low; - var d = h[p]; - d.high = l, d.low = y - } - for (p = 0; p < 5; p++) { - var v = h[(p + 4) % 5], - m = h[(p + 1) % 5], - S = m.high, - _ = m.low; - for (l = v.high ^ (S << 1 | _ >>> 31), y = v.low ^ (_ << 1 | S >>> 31), g = 0; g < 5; g++)(P = r[p + 5 * g]).high ^= l, P.low ^= y - } - for (var b = 1; b < 25; b++) { - var E = (P = r[b]).high, - w = P.low, - O = f[b]; - O < 32 ? (l = E << O | w >>> 32 - O, y = w << O | E >>> 32 - O) : (l = w << O - 32 | E >>> 64 - O, y = E << O - 32 | w >>> 64 - O); - var B = h[u[b]]; - B.high = l, B.low = y - } - var A = h[0], - x = r[0]; - for (A.high = x.high, A.low = x.low, p = 0; p < 5; p++) for (g = 0; g < 5; g++) { - var P = r[b = p + 5 * g], - T = h[b], - I = h[(p + 1) % 5 + 5 * g], - k = h[(p + 2) % 5 + 5 * g]; - P.high = T.high ^ ~I.high & k.high, P.low = T.low ^ ~I.low & k.low - } - P = r[0]; - var D = c[a]; - P.high ^= D.high, P.low ^= D.low + }), t.Decryptor = t.extend({ + processBlock: function(t, r) { + var n = this._cipher, + i = n.blockSize, + o = t.slice(r, r + i); + e.call(this, t, r, i, n), this._prevBlock = o } - }, - _doFinalize: function() { - var e = this._data, - r = e.words, - n = (this._nDataBytes, 8 * e.sigBytes), - o = 32 * this.blockSize; - r[n >>> 5] |= 1 << 24 - n % 32, r[(t.ceil((n + 1) / o) * o >>> 5) - 1] |= 128, e.sigBytes = 4 * r.length, this._process(); - for (var s = this._state, a = this.cfg.outputLength / 8, f = a / 8, u = [], c = 0; c < f; c++) { - var h = s[c], - p = h.high, - l = h.low; - p = 16711935 & (p << 8 | p >>> 24) | 4278255360 & (p << 24 | p >>> 8), l = 16711935 & (l << 8 | l >>> 24) | 4278255360 & (l << 24 | l >>> 8), u.push(l), u.push(p) + }), t + }(), n.mode.CFB) + }, + 6372: function(t, e, r) { + var n; + t.exports = (n = r(9021), r(7165), n.mode.CTRGladman = function() { + var t = n.lib.BlockCipherMode.extend(); + + function e(t) { + if (255 & ~(t >> 24)) t += 1 << 24; + else { + var e = t >> 16 & 255, + r = t >> 8 & 255, + n = 255 & t; + 255 === e ? (e = 0, 255 === r ? (r = 0, 255 === n ? n = 0 : ++n) : ++r) : ++e, t = 0, t += e << 16, t += r << 8, t += n } - return new i.init(u, a) - }, - clone: function() { - for (var t = o.clone.call(this), e = t._state = this._state.slice(0), r = 0; r < 25; r++) e[r] = e[r].clone(); return t } - }); - e.SHA3 = o._createHelper(p), e.HmacSHA3 = o._createHmacHelper(p) - }(Math), n.SHA3) - }, - 9557: function(t, e, r) { - var n, i, o, s, a, f, u, c; - t.exports = (c = r(9021), r(3240), r(1380), i = (n = c).x64, o = i.Word, s = i.WordArray, a = n.algo, f = a.SHA512, u = a.SHA384 = f.extend({ - _doReset: function() { - this._hash = new s.init([new o.init(3418070365, 3238371032), new o.init(1654270250, 914150663), new o.init(2438529370, 812702999), new o.init(355462360, 4144912697), new o.init(1731405415, 4290775857), new o.init(2394180231, 1750603025), new o.init(3675008525, 1694076839), new o.init(1203062813, 3204075428)]) - }, - _doFinalize: function() { - var t = f._doFinalize.call(this); - return t.sigBytes -= 16, t - } - }), n.SHA384 = f._createHelper(u), n.HmacSHA384 = f._createHmacHelper(u), c.SHA384) - }, - 1380: function(t, e, r) { - var n; - t.exports = (n = r(9021), r(3240), function() { - var t = n, - e = t.lib.Hasher, - r = t.x64, - i = r.Word, - o = r.WordArray, - s = t.algo; + var r = t.Encryptor = t.extend({ + processBlock: function(t, r) { + var n = this._cipher, + i = n.blockSize, + o = this._iv, + s = this._counter; + o && (s = this._counter = o.slice(0), this._iv = void 0), + function(t) { + 0 === (t[0] = e(t[0])) && (t[1] = e(t[1])) + }(s); + var a = s.slice(0); + n.encryptBlock(a, 0); + for (var f = 0; f < i; f++) t[r + f] ^= a[f] + } + }); + return t.Decryptor = r, t + }(), n.mode.CTRGladman) + }, + 6939: function(t, e, r) { + var n, i, o; + t.exports = (o = r(9021), r(7165), o.mode.CTR = (i = (n = o.lib.BlockCipherMode.extend()).Encryptor = n.extend({ + processBlock: function(t, e) { + var r = this._cipher, + n = r.blockSize, + i = this._iv, + o = this._counter; + i && (o = this._counter = i.slice(0), this._iv = void 0); + var s = o.slice(0); + r.encryptBlock(s, 0), o[n - 1] = o[n - 1] + 1 | 0; + for (var a = 0; a < n; a++) t[e + a] ^= s[a] + } + }), n.Decryptor = i, n), o.mode.CTR) + }, + 8454: function(t, e, r) { + var n, i; + t.exports = (i = r(9021), r(7165), i.mode.ECB = ((n = i.lib.BlockCipherMode.extend()).Encryptor = n.extend({ + processBlock: function(t, e) { + this._cipher.encryptBlock(t, e) + } + }), n.Decryptor = n.extend({ + processBlock: function(t, e) { + this._cipher.decryptBlock(t, e) + } + }), n), i.mode.ECB) + }, + 3797: function(t, e, r) { + var n, i, o; + t.exports = (o = r(9021), r(7165), o.mode.OFB = (i = (n = o.lib.BlockCipherMode.extend()).Encryptor = n.extend({ + processBlock: function(t, e) { + var r = this._cipher, + n = r.blockSize, + i = this._iv, + o = this._keystream; + i && (o = this._keystream = i.slice(0), this._iv = void 0), r.encryptBlock(o, 0); + for (var s = 0; s < n; s++) t[e + s] ^= o[s] + } + }), n.Decryptor = i, n), o.mode.OFB) + }, + 2073: function(t, e, r) { + var n; + t.exports = (n = r(9021), r(7165), n.pad.AnsiX923 = { + pad: function(t, e) { + var r = t.sigBytes, + n = 4 * e, + i = n - r % n, + o = r + i - 1; + t.clamp(), t.words[o >>> 2] |= i << 24 - o % 4 * 8, t.sigBytes += i + }, + unpad: function(t) { + var e = 255 & t.words[t.sigBytes - 1 >>> 2]; + t.sigBytes -= e + } + }, n.pad.Ansix923) + }, + 4905: function(t, e, r) { + var n; + t.exports = (n = r(9021), r(7165), n.pad.Iso10126 = { + pad: function(t, e) { + var r = 4 * e, + i = r - t.sigBytes % r; + t.concat(n.lib.WordArray.random(i - 1)).concat(n.lib.WordArray.create([i << 24], 1)) + }, + unpad: function(t) { + var e = 255 & t.words[t.sigBytes - 1 >>> 2]; + t.sigBytes -= e + } + }, n.pad.Iso10126) + }, + 482: function(t, e, r) { + var n; + t.exports = (n = r(9021), r(7165), n.pad.Iso97971 = { + pad: function(t, e) { + t.concat(n.lib.WordArray.create([2147483648], 1)), n.pad.ZeroPadding.pad(t, e) + }, + unpad: function(t) { + n.pad.ZeroPadding.unpad(t), t.sigBytes-- + } + }, n.pad.Iso97971) + }, + 8124: function(t, e, r) { + var n; + t.exports = (n = r(9021), r(7165), n.pad.NoPadding = { + pad: function() {}, + unpad: function() {} + }, n.pad.NoPadding) + }, + 2155: function(t, e, r) { + var n; + t.exports = (n = r(9021), r(7165), n.pad.ZeroPadding = { + pad: function(t, e) { + var r = 4 * e; + t.clamp(), t.sigBytes += r - (t.sigBytes % r || r) + }, + unpad: function(t) { + for (var e = t.words, r = t.sigBytes - 1; !(e[r >>> 2] >>> 24 - r % 4 * 8 & 255);) r--; + t.sigBytes = r + 1 + } + }, n.pad.ZeroPadding) + }, + 19: function(t, e, r) { + var n, i, o, s, a, f, u, c, h; + t.exports = (h = r(9021), r(5471), r(1025), o = (i = (n = h).lib).Base, s = i.WordArray, f = (a = n.algo).SHA1, u = a.HMAC, c = a.PBKDF2 = o.extend({ + cfg: o.extend({ + keySize: 4, + hasher: f, + iterations: 1 + }), + init: function(t) { + this.cfg = this.cfg.extend(t) + }, + compute: function(t, e) { + for (var r = this.cfg, n = u.create(r.hasher, t), i = s.create(), o = s.create([1]), a = i.words, f = o.words, c = r.keySize, h = r.iterations; a.length < c;) { + var p = n.update(e).finalize(o); + n.reset(); + for (var l = p.words, y = l.length, g = p, d = 1; d < h; d++) { + g = n.finalize(g), n.reset(); + for (var v = g.words, m = 0; m < y; m++) l[m] ^= v[m] + } + i.concat(p), f[0]++ + } + return i.sigBytes = 4 * c, i + } + }), n.PBKDF2 = function(t, e, r) { + return c.create(r).compute(t, e) + }, h.PBKDF2) + }, + 2696: function(t, e, r) { + var n; + t.exports = (n = r(9021), r(754), r(4636), r(9506), r(7165), function() { + var t = n, + e = t.lib.StreamCipher, + r = t.algo, + i = [], + o = [], + s = [], + a = r.RabbitLegacy = e.extend({ + _doReset: function() { + var t = this._key.words, + e = this.cfg.iv, + r = this._X = [t[0], t[3] << 16 | t[2] >>> 16, t[1], t[0] << 16 | t[3] >>> 16, t[2], t[1] << 16 | t[0] >>> 16, t[3], t[2] << 16 | t[1] >>> 16], + n = this._C = [t[2] << 16 | t[2] >>> 16, 4294901760 & t[0] | 65535 & t[1], t[3] << 16 | t[3] >>> 16, 4294901760 & t[1] | 65535 & t[2], t[0] << 16 | t[0] >>> 16, 4294901760 & t[2] | 65535 & t[3], t[1] << 16 | t[1] >>> 16, 4294901760 & t[3] | 65535 & t[0]]; + this._b = 0; + for (var i = 0; i < 4; i++) f.call(this); + for (i = 0; i < 8; i++) n[i] ^= r[i + 4 & 7]; + if (e) { + var o = e.words, + s = o[0], + a = o[1], + u = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), + c = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8), + h = u >>> 16 | 4294901760 & c, + p = c << 16 | 65535 & u; + for (n[0] ^= u, n[1] ^= h, n[2] ^= c, n[3] ^= p, n[4] ^= u, n[5] ^= h, n[6] ^= c, n[7] ^= p, i = 0; i < 4; i++) f.call(this) + } + }, + _doProcessBlock: function(t, e) { + var r = this._X; + f.call(this), i[0] = r[0] ^ r[5] >>> 16 ^ r[3] << 16, i[1] = r[2] ^ r[7] >>> 16 ^ r[5] << 16, i[2] = r[4] ^ r[1] >>> 16 ^ r[7] << 16, i[3] = r[6] ^ r[3] >>> 16 ^ r[1] << 16; + for (var n = 0; n < 4; n++) i[n] = 16711935 & (i[n] << 8 | i[n] >>> 24) | 4278255360 & (i[n] << 24 | i[n] >>> 8), t[e + n] ^= i[n] + }, + blockSize: 4, + ivSize: 2 + }); - function a() { - return i.create.apply(i, arguments) - } - var f = [a(1116352408, 3609767458), a(1899447441, 602891725), a(3049323471, 3964484399), a(3921009573, 2173295548), a(961987163, 4081628472), a(1508970993, 3053834265), a(2453635748, 2937671579), a(2870763221, 3664609560), a(3624381080, 2734883394), a(310598401, 1164996542), a(607225278, 1323610764), a(1426881987, 3590304994), a(1925078388, 4068182383), a(2162078206, 991336113), a(2614888103, 633803317), a(3248222580, 3479774868), a(3835390401, 2666613458), a(4022224774, 944711139), a(264347078, 2341262773), a(604807628, 2007800933), a(770255983, 1495990901), a(1249150122, 1856431235), a(1555081692, 3175218132), a(1996064986, 2198950837), a(2554220882, 3999719339), a(2821834349, 766784016), a(2952996808, 2566594879), a(3210313671, 3203337956), a(3336571891, 1034457026), a(3584528711, 2466948901), a(113926993, 3758326383), a(338241895, 168717936), a(666307205, 1188179964), a(773529912, 1546045734), a(1294757372, 1522805485), a(1396182291, 2643833823), a(1695183700, 2343527390), a(1986661051, 1014477480), a(2177026350, 1206759142), a(2456956037, 344077627), a(2730485921, 1290863460), a(2820302411, 3158454273), a(3259730800, 3505952657), a(3345764771, 106217008), a(3516065817, 3606008344), a(3600352804, 1432725776), a(4094571909, 1467031594), a(275423344, 851169720), a(430227734, 3100823752), a(506948616, 1363258195), a(659060556, 3750685593), a(883997877, 3785050280), a(958139571, 3318307427), a(1322822218, 3812723403), a(1537002063, 2003034995), a(1747873779, 3602036899), a(1955562222, 1575990012), a(2024104815, 1125592928), a(2227730452, 2716904306), a(2361852424, 442776044), a(2428436474, 593698344), a(2756734187, 3733110249), a(3204031479, 2999351573), a(3329325298, 3815920427), a(3391569614, 3928383900), a(3515267271, 566280711), a(3940187606, 3454069534), a(4118630271, 4000239992), a(116418474, 1914138554), a(174292421, 2731055270), a(289380356, 3203993006), a(460393269, 320620315), a(685471733, 587496836), a(852142971, 1086792851), a(1017036298, 365543100), a(1126000580, 2618297676), a(1288033470, 3409855158), a(1501505948, 4234509866), a(1607167915, 987167468), a(1816402316, 1246189591)], - u = []; - ! function() { - for (var t = 0; t < 80; t++) u[t] = a() - }(); - var c = s.SHA512 = e.extend({ + function f() { + for (var t = this._X, e = this._C, r = 0; r < 8; r++) o[r] = e[r]; + for (e[0] = e[0] + 1295307597 + this._b | 0, e[1] = e[1] + 3545052371 + (e[0] >>> 0 < o[0] >>> 0 ? 1 : 0) | 0, e[2] = e[2] + 886263092 + (e[1] >>> 0 < o[1] >>> 0 ? 1 : 0) | 0, e[3] = e[3] + 1295307597 + (e[2] >>> 0 < o[2] >>> 0 ? 1 : 0) | 0, e[4] = e[4] + 3545052371 + (e[3] >>> 0 < o[3] >>> 0 ? 1 : 0) | 0, e[5] = e[5] + 886263092 + (e[4] >>> 0 < o[4] >>> 0 ? 1 : 0) | 0, e[6] = e[6] + 1295307597 + (e[5] >>> 0 < o[5] >>> 0 ? 1 : 0) | 0, e[7] = e[7] + 3545052371 + (e[6] >>> 0 < o[6] >>> 0 ? 1 : 0) | 0, this._b = e[7] >>> 0 < o[7] >>> 0 ? 1 : 0, r = 0; r < 8; r++) { + var n = t[r] + e[r], + i = 65535 & n, + a = n >>> 16, + f = ((i * i >>> 17) + i * a >>> 15) + a * a, + u = ((4294901760 & n) * n | 0) + ((65535 & n) * n | 0); + s[r] = f ^ u + } + t[0] = s[0] + (s[7] << 16 | s[7] >>> 16) + (s[6] << 16 | s[6] >>> 16) | 0, t[1] = s[1] + (s[0] << 8 | s[0] >>> 24) + s[7] | 0, t[2] = s[2] + (s[1] << 16 | s[1] >>> 16) + (s[0] << 16 | s[0] >>> 16) | 0, t[3] = s[3] + (s[2] << 8 | s[2] >>> 24) + s[1] | 0, t[4] = s[4] + (s[3] << 16 | s[3] >>> 16) + (s[2] << 16 | s[2] >>> 16) | 0, t[5] = s[5] + (s[4] << 8 | s[4] >>> 24) + s[3] | 0, t[6] = s[6] + (s[5] << 16 | s[5] >>> 16) + (s[4] << 16 | s[4] >>> 16) | 0, t[7] = s[7] + (s[6] << 8 | s[6] >>> 24) + s[5] | 0 + } + t.RabbitLegacy = e._createHelper(a) + }(), n.RabbitLegacy) + }, + 6298: function(t, e, r) { + var n; + t.exports = (n = r(9021), r(754), r(4636), r(9506), r(7165), function() { + var t = n, + e = t.lib.StreamCipher, + r = t.algo, + i = [], + o = [], + s = [], + a = r.Rabbit = e.extend({ + _doReset: function() { + for (var t = this._key.words, e = this.cfg.iv, r = 0; r < 4; r++) t[r] = 16711935 & (t[r] << 8 | t[r] >>> 24) | 4278255360 & (t[r] << 24 | t[r] >>> 8); + var n = this._X = [t[0], t[3] << 16 | t[2] >>> 16, t[1], t[0] << 16 | t[3] >>> 16, t[2], t[1] << 16 | t[0] >>> 16, t[3], t[2] << 16 | t[1] >>> 16], + i = this._C = [t[2] << 16 | t[2] >>> 16, 4294901760 & t[0] | 65535 & t[1], t[3] << 16 | t[3] >>> 16, 4294901760 & t[1] | 65535 & t[2], t[0] << 16 | t[0] >>> 16, 4294901760 & t[2] | 65535 & t[3], t[1] << 16 | t[1] >>> 16, 4294901760 & t[3] | 65535 & t[0]]; + for (this._b = 0, r = 0; r < 4; r++) f.call(this); + for (r = 0; r < 8; r++) i[r] ^= n[r + 4 & 7]; + if (e) { + var o = e.words, + s = o[0], + a = o[1], + u = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), + c = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8), + h = u >>> 16 | 4294901760 & c, + p = c << 16 | 65535 & u; + for (i[0] ^= u, i[1] ^= h, i[2] ^= c, i[3] ^= p, i[4] ^= u, i[5] ^= h, i[6] ^= c, i[7] ^= p, r = 0; r < 4; r++) f.call(this) + } + }, + _doProcessBlock: function(t, e) { + var r = this._X; + f.call(this), i[0] = r[0] ^ r[5] >>> 16 ^ r[3] << 16, i[1] = r[2] ^ r[7] >>> 16 ^ r[5] << 16, i[2] = r[4] ^ r[1] >>> 16 ^ r[7] << 16, i[3] = r[6] ^ r[3] >>> 16 ^ r[1] << 16; + for (var n = 0; n < 4; n++) i[n] = 16711935 & (i[n] << 8 | i[n] >>> 24) | 4278255360 & (i[n] << 24 | i[n] >>> 8), t[e + n] ^= i[n] + }, + blockSize: 4, + ivSize: 2 + }); + + function f() { + for (var t = this._X, e = this._C, r = 0; r < 8; r++) o[r] = e[r]; + for (e[0] = e[0] + 1295307597 + this._b | 0, e[1] = e[1] + 3545052371 + (e[0] >>> 0 < o[0] >>> 0 ? 1 : 0) | 0, e[2] = e[2] + 886263092 + (e[1] >>> 0 < o[1] >>> 0 ? 1 : 0) | 0, e[3] = e[3] + 1295307597 + (e[2] >>> 0 < o[2] >>> 0 ? 1 : 0) | 0, e[4] = e[4] + 3545052371 + (e[3] >>> 0 < o[3] >>> 0 ? 1 : 0) | 0, e[5] = e[5] + 886263092 + (e[4] >>> 0 < o[4] >>> 0 ? 1 : 0) | 0, e[6] = e[6] + 1295307597 + (e[5] >>> 0 < o[5] >>> 0 ? 1 : 0) | 0, e[7] = e[7] + 3545052371 + (e[6] >>> 0 < o[6] >>> 0 ? 1 : 0) | 0, this._b = e[7] >>> 0 < o[7] >>> 0 ? 1 : 0, r = 0; r < 8; r++) { + var n = t[r] + e[r], + i = 65535 & n, + a = n >>> 16, + f = ((i * i >>> 17) + i * a >>> 15) + a * a, + u = ((4294901760 & n) * n | 0) + ((65535 & n) * n | 0); + s[r] = f ^ u + } + t[0] = s[0] + (s[7] << 16 | s[7] >>> 16) + (s[6] << 16 | s[6] >>> 16) | 0, t[1] = s[1] + (s[0] << 8 | s[0] >>> 24) + s[7] | 0, t[2] = s[2] + (s[1] << 16 | s[1] >>> 16) + (s[0] << 16 | s[0] >>> 16) | 0, t[3] = s[3] + (s[2] << 8 | s[2] >>> 24) + s[1] | 0, t[4] = s[4] + (s[3] << 16 | s[3] >>> 16) + (s[2] << 16 | s[2] >>> 16) | 0, t[5] = s[5] + (s[4] << 8 | s[4] >>> 24) + s[3] | 0, t[6] = s[6] + (s[5] << 16 | s[5] >>> 16) + (s[4] << 16 | s[4] >>> 16) | 0, t[7] = s[7] + (s[6] << 8 | s[6] >>> 24) + s[5] | 0 + } + t.Rabbit = e._createHelper(a) + }(), n.Rabbit) + }, + 7193: function(t, e, r) { + var n; + t.exports = (n = r(9021), r(754), r(4636), r(9506), r(7165), function() { + var t = n, + e = t.lib.StreamCipher, + r = t.algo, + i = r.RC4 = e.extend({ + _doReset: function() { + for (var t = this._key, e = t.words, r = t.sigBytes, n = this._S = [], i = 0; i < 256; i++) n[i] = i; + i = 0; + for (var o = 0; i < 256; i++) { + var s = i % r, + a = e[s >>> 2] >>> 24 - s % 4 * 8 & 255; + o = (o + n[i] + a) % 256; + var f = n[i]; + n[i] = n[o], n[o] = f + } + this._i = this._j = 0 + }, + _doProcessBlock: function(t, e) { + t[e] ^= o.call(this) + }, + keySize: 8, + ivSize: 0 + }); + + function o() { + for (var t = this._S, e = this._i, r = this._j, n = 0, i = 0; i < 4; i++) { + r = (r + t[e = (e + 1) % 256]) % 256; + var o = t[e]; + t[e] = t[r], t[r] = o, n |= t[(t[e] + t[r]) % 256] << 24 - 8 * i + } + return this._i = e, this._j = r, n + } + t.RC4 = e._createHelper(i); + var s = r.RC4Drop = i.extend({ + cfg: i.cfg.extend({ + drop: 192 + }), + _doReset: function() { + i._doReset.call(this); + for (var t = this.cfg.drop; t > 0; t--) o.call(this) + } + }); + t.RC4Drop = e._createHelper(s) + }(), n.RC4) + }, + 8056: function(t, e, r) { + var n; + t.exports = (n = r(9021), function(t) { + var e = n, + r = e.lib, + i = r.WordArray, + o = r.Hasher, + s = e.algo, + a = i.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 = i.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]), + u = i.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]), + c = i.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 = i.create([0, 1518500249, 1859775393, 2400959708, 2840853838]), + p = i.create([1352829926, 1548603684, 1836072691, 2053994217, 0]), + l = s.RIPEMD160 = o.extend({ + _doReset: function() { + this._hash = i.create([1732584193, 4023233417, 2562383102, 271733878, 3285377520]) + }, + _doProcessBlock: function(t, e) { + for (var r = 0; r < 16; r++) { + var n = e + r, + i = t[n]; + t[n] = 16711935 & (i << 8 | i >>> 24) | 4278255360 & (i << 24 | i >>> 8) + } + var o, s, l, _, b, E, w, O, B, A, x, P = this._hash.words, + T = h.words, + I = p.words, + k = a.words, + D = f.words, + R = u.words, + N = c.words; + for (E = o = P[0], w = s = P[1], O = l = P[2], B = _ = P[3], A = b = P[4], r = 0; r < 80; r += 1) x = o + t[e + k[r]] | 0, x += r < 16 ? y(s, l, _) + T[0] : r < 32 ? g(s, l, _) + T[1] : r < 48 ? d(s, l, _) + T[2] : r < 64 ? v(s, l, _) + T[3] : m(s, l, _) + T[4], x = (x = S(x |= 0, R[r])) + b | 0, o = b, b = _, _ = S(l, 10), l = s, s = x, x = E + t[e + D[r]] | 0, x += r < 16 ? m(w, O, B) + I[0] : r < 32 ? v(w, O, B) + I[1] : r < 48 ? d(w, O, B) + I[2] : r < 64 ? g(w, O, B) + I[3] : y(w, O, B) + I[4], x = (x = S(x |= 0, N[r])) + A | 0, E = A, A = B, B = S(O, 10), O = w, w = x; + x = P[1] + l + B | 0, P[1] = P[2] + _ + A | 0, P[2] = P[3] + b + E | 0, P[3] = P[4] + o + w | 0, P[4] = P[0] + s + O | 0, P[0] = x + }, + _doFinalize: function() { + var t = this._data, + e = t.words, + r = 8 * this._nDataBytes, + n = 8 * t.sigBytes; + e[n >>> 5] |= 128 << 24 - n % 32, e[14 + (n + 64 >>> 9 << 4)] = 16711935 & (r << 8 | r >>> 24) | 4278255360 & (r << 24 | r >>> 8), t.sigBytes = 4 * (e.length + 1), this._process(); + for (var i = this._hash, o = i.words, s = 0; s < 5; s++) { + var a = o[s]; + o[s] = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8) + } + return i + }, + clone: function() { + var t = o.clone.call(this); + return t._hash = this._hash.clone(), t + } + }); + + function y(t, e, r) { + return t ^ e ^ r + } + + function g(t, e, r) { + return t & e | ~t & r + } + + function d(t, e, r) { + return (t | ~e) ^ r + } + + function v(t, e, r) { + return t & r | e & ~r + } + + function m(t, e, r) { + return t ^ (e | ~r) + } + + function S(t, e) { + return t << e | t >>> 32 - e + } + e.RIPEMD160 = o._createHelper(l), e.HmacRIPEMD160 = o._createHmacHelper(l) + }(Math), n.RIPEMD160) + }, + 5471: function(t, e, r) { + var n, i, o, s, a, f, u, c; + t.exports = (i = (n = c = r(9021)).lib, o = i.WordArray, s = i.Hasher, a = n.algo, f = [], u = a.SHA1 = s.extend({ _doReset: function() { - this._hash = new o.init([new i.init(1779033703, 4089235720), new i.init(3144134277, 2227873595), new i.init(1013904242, 4271175723), new i.init(2773480762, 1595750129), new i.init(1359893119, 2917565137), new i.init(2600822924, 725511199), new i.init(528734635, 4215389547), new i.init(1541459225, 327033209)]) + this._hash = new o.init([1732584193, 4023233417, 2562383102, 271733878, 3285377520]) }, _doProcessBlock: function(t, e) { - for (var r = this._hash.words, n = r[0], i = r[1], o = r[2], s = r[3], a = r[4], c = r[5], h = r[6], p = r[7], l = n.high, y = n.low, g = i.high, d = i.low, v = o.high, m = o.low, S = s.high, _ = s.low, b = a.high, E = a.low, w = c.high, O = c.low, B = h.high, A = h.low, x = p.high, P = p.low, T = l, I = y, k = g, D = d, R = v, N = m, L = S, C = _, U = b, M = E, j = w, H = O, F = B, z = A, G = x, q = P, $ = 0; $ < 80; $++) { - var K = u[$]; - if ($ < 16) var W = K.high = 0 | t[e + 2 * $], - V = K.low = 0 | t[e + 2 * $ + 1]; + for (var r = this._hash.words, n = r[0], i = r[1], o = r[2], s = r[3], a = r[4], u = 0; u < 80; u++) { + if (u < 16) f[u] = 0 | t[e + u]; else { - var Y = u[$ - 15], - X = Y.high, - Z = Y.low, - J = (X >>> 1 | Z << 31) ^ (X >>> 8 | Z << 24) ^ X >>> 7, - Q = (Z >>> 1 | X << 31) ^ (Z >>> 8 | X << 24) ^ (Z >>> 7 | X << 25), - tt = u[$ - 2], - et = tt.high, - rt = tt.low, - nt = (et >>> 19 | rt << 13) ^ (et << 3 | rt >>> 29) ^ et >>> 6, - it = (rt >>> 19 | et << 13) ^ (rt << 3 | et >>> 29) ^ (rt >>> 6 | et << 26), - ot = u[$ - 7], - st = ot.high, - at = ot.low, - ft = u[$ - 16], - ut = ft.high, - ct = ft.low; - W = (W = (W = J + st + ((V = Q + at) >>> 0 < Q >>> 0 ? 1 : 0)) + nt + ((V += it) >>> 0 < it >>> 0 ? 1 : 0)) + ut + ((V += ct) >>> 0 < ct >>> 0 ? 1 : 0), K.high = W, K.low = V + var c = f[u - 3] ^ f[u - 8] ^ f[u - 14] ^ f[u - 16]; + f[u] = c << 1 | c >>> 31 } - var ht, pt = U & j ^ ~U & F, - lt = M & H ^ ~M & z, - yt = T & k ^ T & R ^ k & R, - gt = I & D ^ I & N ^ D & N, - dt = (T >>> 28 | I << 4) ^ (T << 30 | I >>> 2) ^ (T << 25 | I >>> 7), - vt = (I >>> 28 | T << 4) ^ (I << 30 | T >>> 2) ^ (I << 25 | T >>> 7), - mt = (U >>> 14 | M << 18) ^ (U >>> 18 | M << 14) ^ (U << 23 | M >>> 9), - St = (M >>> 14 | U << 18) ^ (M >>> 18 | U << 14) ^ (M << 23 | U >>> 9), - _t = f[$], - bt = _t.high, - Et = _t.low, - wt = G + mt + ((ht = q + St) >>> 0 < q >>> 0 ? 1 : 0), - Ot = vt + gt; - G = F, q = z, F = j, z = H, j = U, H = M, U = L + (wt = (wt = (wt = wt + pt + ((ht += lt) >>> 0 < lt >>> 0 ? 1 : 0)) + bt + ((ht += Et) >>> 0 < Et >>> 0 ? 1 : 0)) + W + ((ht += V) >>> 0 < V >>> 0 ? 1 : 0)) + ((M = C + ht | 0) >>> 0 < C >>> 0 ? 1 : 0) | 0, L = R, C = N, R = k, N = D, k = T, D = I, T = wt + (dt + yt + (Ot >>> 0 < vt >>> 0 ? 1 : 0)) + ((I = ht + Ot | 0) >>> 0 < ht >>> 0 ? 1 : 0) | 0 + var h = (n << 5 | n >>> 27) + a + f[u]; + h += u < 20 ? 1518500249 + (i & o | ~i & s) : u < 40 ? 1859775393 + (i ^ o ^ s) : u < 60 ? (i & o | i & s | o & s) - 1894007588 : (i ^ o ^ s) - 899497514, a = s, s = o, o = i << 30 | i >>> 2, i = n, n = h } - y = n.low = y + I, n.high = l + T + (y >>> 0 < I >>> 0 ? 1 : 0), d = i.low = d + D, i.high = g + k + (d >>> 0 < D >>> 0 ? 1 : 0), m = o.low = m + N, o.high = v + R + (m >>> 0 < N >>> 0 ? 1 : 0), _ = s.low = _ + C, s.high = S + L + (_ >>> 0 < C >>> 0 ? 1 : 0), E = a.low = E + M, a.high = b + U + (E >>> 0 < M >>> 0 ? 1 : 0), O = c.low = O + H, c.high = w + j + (O >>> 0 < H >>> 0 ? 1 : 0), A = h.low = A + z, h.high = B + F + (A >>> 0 < z >>> 0 ? 1 : 0), P = p.low = P + q, p.high = x + G + (P >>> 0 < q >>> 0 ? 1 : 0) + r[0] = r[0] + n | 0, r[1] = r[1] + i | 0, r[2] = r[2] + o | 0, r[3] = r[3] + s | 0, r[4] = r[4] + a | 0 }, _doFinalize: function() { var t = this._data, e = t.words, r = 8 * this._nDataBytes, n = 8 * t.sigBytes; - return e[n >>> 5] |= 128 << 24 - n % 32, e[30 + (n + 128 >>> 10 << 5)] = Math.floor(r / 4294967296), e[31 + (n + 128 >>> 10 << 5)] = r, t.sigBytes = 4 * e.length, this._process(), this._hash.toX32() + return e[n >>> 5] |= 128 << 24 - n % 32, e[14 + (n + 64 >>> 9 << 4)] = Math.floor(r / 4294967296), e[15 + (n + 64 >>> 9 << 4)] = r, t.sigBytes = 4 * e.length, this._process(), this._hash }, clone: function() { - var t = e.clone.call(this); + var t = s.clone.call(this); return t._hash = this._hash.clone(), t + } + }), n.SHA1 = s._createHelper(u), n.HmacSHA1 = s._createHmacHelper(u), c.SHA1) + }, + 6308: function(t, e, r) { + var n, i, o, s, a, f; + t.exports = (f = r(9021), r(3009), i = (n = f).lib.WordArray, o = n.algo, s = o.SHA256, a = o.SHA224 = s.extend({ + _doReset: function() { + this._hash = new i.init([3238371032, 914150663, 812702999, 4144912697, 4290775857, 1750603025, 1694076839, 3204075428]) }, - blockSize: 32 - }); - t.SHA512 = e._createHelper(c), t.HmacSHA512 = e._createHmacHelper(c) - }(), n.SHA512) - }, - 7628: function(t, e, r) { - var n; - t.exports = (n = r(9021), r(754), r(4636), r(9506), r(7165), function() { - var t = n, - e = t.lib, - r = e.WordArray, - i = e.BlockCipher, - o = t.algo, - s = [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], - a = [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], - f = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28], - u = [{ - 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 - }], - c = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679], - h = o.DES = i.extend({ + _doFinalize: function() { + var t = s._doFinalize.call(this); + return t.sigBytes -= 4, t + } + }), n.SHA224 = s._createHelper(a), n.HmacSHA224 = s._createHmacHelper(a), f.SHA224) + }, + 3009: function(t, e, r) { + var n; + t.exports = (n = r(9021), function(t) { + var e = n, + r = e.lib, + i = r.WordArray, + o = r.Hasher, + s = e.algo, + a = [], + f = []; + ! function() { + function e(e) { + for (var r = t.sqrt(e), n = 2; n <= r; n++) + if (!(e % n)) return !1; + return !0 + } + + function r(t) { + return 4294967296 * (t - (0 | t)) | 0 + } + for (var n = 2, i = 0; i < 64;) e(n) && (i < 8 && (a[i] = r(t.pow(n, .5))), f[i] = r(t.pow(n, 1 / 3)), i++), n++ + }(); + var u = [], + c = s.SHA256 = o.extend({ + _doReset: function() { + this._hash = new i.init(a.slice(0)) + }, + _doProcessBlock: function(t, e) { + for (var r = this._hash.words, n = r[0], i = r[1], o = r[2], s = r[3], a = r[4], c = r[5], h = r[6], p = r[7], l = 0; l < 64; l++) { + if (l < 16) u[l] = 0 | t[e + l]; + else { + var y = u[l - 15], + g = (y << 25 | y >>> 7) ^ (y << 14 | y >>> 18) ^ y >>> 3, + d = u[l - 2], + v = (d << 15 | d >>> 17) ^ (d << 13 | d >>> 19) ^ d >>> 10; + u[l] = g + u[l - 7] + v + u[l - 16] + } + var m = n & i ^ n & o ^ i & o, + S = (n << 30 | n >>> 2) ^ (n << 19 | n >>> 13) ^ (n << 10 | n >>> 22), + _ = p + ((a << 26 | a >>> 6) ^ (a << 21 | a >>> 11) ^ (a << 7 | a >>> 25)) + (a & c ^ ~a & h) + f[l] + u[l]; + p = h, h = c, c = a, a = s + _ | 0, s = o, o = i, i = n, n = _ + (S + m) | 0 + } + r[0] = r[0] + n | 0, r[1] = r[1] + i | 0, r[2] = r[2] + o | 0, r[3] = r[3] + s | 0, r[4] = r[4] + a | 0, r[5] = r[5] + c | 0, r[6] = r[6] + h | 0, r[7] = r[7] + p | 0 + }, + _doFinalize: function() { + var e = this._data, + r = e.words, + n = 8 * this._nDataBytes, + i = 8 * e.sigBytes; + return r[i >>> 5] |= 128 << 24 - i % 32, r[14 + (i + 64 >>> 9 << 4)] = t.floor(n / 4294967296), r[15 + (i + 64 >>> 9 << 4)] = n, e.sigBytes = 4 * r.length, this._process(), this._hash + }, + clone: function() { + var t = o.clone.call(this); + return t._hash = this._hash.clone(), t + } + }); + e.SHA256 = o._createHelper(c), e.HmacSHA256 = o._createHmacHelper(c) + }(Math), n.SHA256) + }, + 5953: function(t, e, r) { + var n; + t.exports = (n = r(9021), r(3240), function(t) { + var e = n, + r = e.lib, + i = r.WordArray, + o = r.Hasher, + s = e.x64.Word, + a = e.algo, + f = [], + u = [], + c = []; + ! function() { + for (var t = 1, e = 0, r = 0; r < 24; r++) { + f[t + 5 * e] = (r + 1) * (r + 2) / 2 % 64; + var n = (2 * t + 3 * e) % 5; + t = e % 5, e = n + } + for (t = 0; t < 5; t++) + for (e = 0; e < 5; e++) u[t + 5 * e] = e + (2 * t + 3 * e) % 5 * 5; + for (var i = 1, o = 0; o < 24; o++) { + for (var a = 0, h = 0, p = 0; p < 7; p++) { + if (1 & i) { + var l = (1 << p) - 1; + l < 32 ? h ^= 1 << l : a ^= 1 << l - 32 + } + 128 & i ? i = i << 1 ^ 113 : i <<= 1 + } + c[o] = s.create(a, h) + } + }(); + var h = []; + ! function() { + for (var t = 0; t < 25; t++) h[t] = s.create() + }(); + var p = a.SHA3 = o.extend({ + cfg: o.cfg.extend({ + outputLength: 512 + }), _doReset: function() { - for (var t = this._key.words, e = [], r = 0; r < 56; r++) { - var n = s[r] - 1; - e[r] = t[n >>> 5] >>> 31 - n % 32 & 1 + for (var t = this._state = [], e = 0; e < 25; e++) t[e] = new s.init; + this.blockSize = (1600 - 2 * this.cfg.outputLength) / 32 + }, + _doProcessBlock: function(t, e) { + for (var r = this._state, n = this.blockSize / 2, i = 0; i < n; i++) { + var o = t[e + 2 * i], + s = t[e + 2 * i + 1]; + o = 16711935 & (o << 8 | o >>> 24) | 4278255360 & (o << 24 | o >>> 8), s = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8), (P = r[i]).high ^= s, P.low ^= o } - for (var i = this._subKeys = [], o = 0; o < 16; o++) { - var u = i[o] = [], - c = f[o]; - for (r = 0; r < 24; r++) u[r / 6 | 0] |= e[(a[r] - 1 + c) % 28] << 31 - r % 6, u[4 + (r / 6 | 0)] |= e[28 + (a[r + 24] - 1 + c) % 28] << 31 - r % 6; - for (u[0] = u[0] << 1 | u[0] >>> 31, r = 1; r < 7; r++) u[r] = u[r] >>> 4 * (r - 1) + 3; - u[7] = u[7] << 5 | u[7] >>> 27 + for (var a = 0; a < 24; a++) { + for (var p = 0; p < 5; p++) { + for (var l = 0, y = 0, g = 0; g < 5; g++) l ^= (P = r[p + 5 * g]).high, y ^= P.low; + var d = h[p]; + d.high = l, d.low = y + } + for (p = 0; p < 5; p++) { + var v = h[(p + 4) % 5], + m = h[(p + 1) % 5], + S = m.high, + _ = m.low; + for (l = v.high ^ (S << 1 | _ >>> 31), y = v.low ^ (_ << 1 | S >>> 31), g = 0; g < 5; g++)(P = r[p + 5 * g]).high ^= l, P.low ^= y + } + for (var b = 1; b < 25; b++) { + var E = (P = r[b]).high, + w = P.low, + O = f[b]; + O < 32 ? (l = E << O | w >>> 32 - O, y = w << O | E >>> 32 - O) : (l = w << O - 32 | E >>> 64 - O, y = E << O - 32 | w >>> 64 - O); + var B = h[u[b]]; + B.high = l, B.low = y + } + var A = h[0], + x = r[0]; + for (A.high = x.high, A.low = x.low, p = 0; p < 5; p++) + for (g = 0; g < 5; g++) { + var P = r[b = p + 5 * g], + T = h[b], + I = h[(p + 1) % 5 + 5 * g], + k = h[(p + 2) % 5 + 5 * g]; + P.high = T.high ^ ~I.high & k.high, P.low = T.low ^ ~I.low & k.low + } + P = r[0]; + var D = c[a]; + P.high ^= D.high, P.low ^= D.low } - var h = this._invSubKeys = []; - for (r = 0; r < 16; r++) h[r] = i[15 - r] + }, + _doFinalize: function() { + var e = this._data, + r = e.words, + n = (this._nDataBytes, 8 * e.sigBytes), + o = 32 * this.blockSize; + r[n >>> 5] |= 1 << 24 - n % 32, r[(t.ceil((n + 1) / o) * o >>> 5) - 1] |= 128, e.sigBytes = 4 * r.length, this._process(); + for (var s = this._state, a = this.cfg.outputLength / 8, f = a / 8, u = [], c = 0; c < f; c++) { + var h = s[c], + p = h.high, + l = h.low; + p = 16711935 & (p << 8 | p >>> 24) | 4278255360 & (p << 24 | p >>> 8), l = 16711935 & (l << 8 | l >>> 24) | 4278255360 & (l << 24 | l >>> 8), u.push(l), u.push(p) + } + return new i.init(u, a) + }, + clone: function() { + for (var t = o.clone.call(this), e = t._state = this._state.slice(0), r = 0; r < 25; r++) e[r] = e[r].clone(); + return t + } + }); + e.SHA3 = o._createHelper(p), e.HmacSHA3 = o._createHmacHelper(p) + }(Math), n.SHA3) + }, + 9557: function(t, e, r) { + var n, i, o, s, a, f, u, c; + t.exports = (c = r(9021), r(3240), r(1380), i = (n = c).x64, o = i.Word, s = i.WordArray, a = n.algo, f = a.SHA512, u = a.SHA384 = f.extend({ + _doReset: function() { + this._hash = new s.init([new o.init(3418070365, 3238371032), new o.init(1654270250, 914150663), new o.init(2438529370, 812702999), new o.init(355462360, 4144912697), new o.init(1731405415, 4290775857), new o.init(2394180231, 1750603025), new o.init(3675008525, 1694076839), new o.init(1203062813, 3204075428)]) + }, + _doFinalize: function() { + var t = f._doFinalize.call(this); + return t.sigBytes -= 16, t + } + }), n.SHA384 = f._createHelper(u), n.HmacSHA384 = f._createHmacHelper(u), c.SHA384) + }, + 1380: function(t, e, r) { + var n; + t.exports = (n = r(9021), r(3240), function() { + var t = n, + e = t.lib.Hasher, + r = t.x64, + i = r.Word, + o = r.WordArray, + s = t.algo; + + function a() { + return i.create.apply(i, arguments) + } + var f = [a(1116352408, 3609767458), a(1899447441, 602891725), a(3049323471, 3964484399), a(3921009573, 2173295548), a(961987163, 4081628472), a(1508970993, 3053834265), a(2453635748, 2937671579), a(2870763221, 3664609560), a(3624381080, 2734883394), a(310598401, 1164996542), a(607225278, 1323610764), a(1426881987, 3590304994), a(1925078388, 4068182383), a(2162078206, 991336113), a(2614888103, 633803317), a(3248222580, 3479774868), a(3835390401, 2666613458), a(4022224774, 944711139), a(264347078, 2341262773), a(604807628, 2007800933), a(770255983, 1495990901), a(1249150122, 1856431235), a(1555081692, 3175218132), a(1996064986, 2198950837), a(2554220882, 3999719339), a(2821834349, 766784016), a(2952996808, 2566594879), a(3210313671, 3203337956), a(3336571891, 1034457026), a(3584528711, 2466948901), a(113926993, 3758326383), a(338241895, 168717936), a(666307205, 1188179964), a(773529912, 1546045734), a(1294757372, 1522805485), a(1396182291, 2643833823), a(1695183700, 2343527390), a(1986661051, 1014477480), a(2177026350, 1206759142), a(2456956037, 344077627), a(2730485921, 1290863460), a(2820302411, 3158454273), a(3259730800, 3505952657), a(3345764771, 106217008), a(3516065817, 3606008344), a(3600352804, 1432725776), a(4094571909, 1467031594), a(275423344, 851169720), a(430227734, 3100823752), a(506948616, 1363258195), a(659060556, 3750685593), a(883997877, 3785050280), a(958139571, 3318307427), a(1322822218, 3812723403), a(1537002063, 2003034995), a(1747873779, 3602036899), a(1955562222, 1575990012), a(2024104815, 1125592928), a(2227730452, 2716904306), a(2361852424, 442776044), a(2428436474, 593698344), a(2756734187, 3733110249), a(3204031479, 2999351573), a(3329325298, 3815920427), a(3391569614, 3928383900), a(3515267271, 566280711), a(3940187606, 3454069534), a(4118630271, 4000239992), a(116418474, 1914138554), a(174292421, 2731055270), a(289380356, 3203993006), a(460393269, 320620315), a(685471733, 587496836), a(852142971, 1086792851), a(1017036298, 365543100), a(1126000580, 2618297676), a(1288033470, 3409855158), a(1501505948, 4234509866), a(1607167915, 987167468), a(1816402316, 1246189591)], + u = []; + ! function() { + for (var t = 0; t < 80; t++) u[t] = a() + }(); + var c = s.SHA512 = e.extend({ + _doReset: function() { + this._hash = new o.init([new i.init(1779033703, 4089235720), new i.init(3144134277, 2227873595), new i.init(1013904242, 4271175723), new i.init(2773480762, 1595750129), new i.init(1359893119, 2917565137), new i.init(2600822924, 725511199), new i.init(528734635, 4215389547), new i.init(1541459225, 327033209)]) + }, + _doProcessBlock: function(t, e) { + for (var r = this._hash.words, n = r[0], i = r[1], o = r[2], s = r[3], a = r[4], c = r[5], h = r[6], p = r[7], l = n.high, y = n.low, g = i.high, d = i.low, v = o.high, m = o.low, S = s.high, _ = s.low, b = a.high, E = a.low, w = c.high, O = c.low, B = h.high, A = h.low, x = p.high, P = p.low, T = l, I = y, k = g, D = d, R = v, N = m, L = S, C = _, U = b, M = E, j = w, H = O, F = B, z = A, G = x, q = P, $ = 0; $ < 80; $++) { + var K = u[$]; + if ($ < 16) var W = K.high = 0 | t[e + 2 * $], + V = K.low = 0 | t[e + 2 * $ + 1]; + else { + var Y = u[$ - 15], + X = Y.high, + Z = Y.low, + J = (X >>> 1 | Z << 31) ^ (X >>> 8 | Z << 24) ^ X >>> 7, + Q = (Z >>> 1 | X << 31) ^ (Z >>> 8 | X << 24) ^ (Z >>> 7 | X << 25), + tt = u[$ - 2], + et = tt.high, + rt = tt.low, + nt = (et >>> 19 | rt << 13) ^ (et << 3 | rt >>> 29) ^ et >>> 6, + it = (rt >>> 19 | et << 13) ^ (rt << 3 | et >>> 29) ^ (rt >>> 6 | et << 26), + ot = u[$ - 7], + st = ot.high, + at = ot.low, + ft = u[$ - 16], + ut = ft.high, + ct = ft.low; + W = (W = (W = J + st + ((V = Q + at) >>> 0 < Q >>> 0 ? 1 : 0)) + nt + ((V += it) >>> 0 < it >>> 0 ? 1 : 0)) + ut + ((V += ct) >>> 0 < ct >>> 0 ? 1 : 0), K.high = W, K.low = V + } + var ht, pt = U & j ^ ~U & F, + lt = M & H ^ ~M & z, + yt = T & k ^ T & R ^ k & R, + gt = I & D ^ I & N ^ D & N, + dt = (T >>> 28 | I << 4) ^ (T << 30 | I >>> 2) ^ (T << 25 | I >>> 7), + vt = (I >>> 28 | T << 4) ^ (I << 30 | T >>> 2) ^ (I << 25 | T >>> 7), + mt = (U >>> 14 | M << 18) ^ (U >>> 18 | M << 14) ^ (U << 23 | M >>> 9), + St = (M >>> 14 | U << 18) ^ (M >>> 18 | U << 14) ^ (M << 23 | U >>> 9), + _t = f[$], + bt = _t.high, + Et = _t.low, + wt = G + mt + ((ht = q + St) >>> 0 < q >>> 0 ? 1 : 0), + Ot = vt + gt; + G = F, q = z, F = j, z = H, j = U, H = M, U = L + (wt = (wt = (wt = wt + pt + ((ht += lt) >>> 0 < lt >>> 0 ? 1 : 0)) + bt + ((ht += Et) >>> 0 < Et >>> 0 ? 1 : 0)) + W + ((ht += V) >>> 0 < V >>> 0 ? 1 : 0)) + ((M = C + ht | 0) >>> 0 < C >>> 0 ? 1 : 0) | 0, L = R, C = N, R = k, N = D, k = T, D = I, T = wt + (dt + yt + (Ot >>> 0 < vt >>> 0 ? 1 : 0)) + ((I = ht + Ot | 0) >>> 0 < ht >>> 0 ? 1 : 0) | 0 + } + y = n.low = y + I, n.high = l + T + (y >>> 0 < I >>> 0 ? 1 : 0), d = i.low = d + D, i.high = g + k + (d >>> 0 < D >>> 0 ? 1 : 0), m = o.low = m + N, o.high = v + R + (m >>> 0 < N >>> 0 ? 1 : 0), _ = s.low = _ + C, s.high = S + L + (_ >>> 0 < C >>> 0 ? 1 : 0), E = a.low = E + M, a.high = b + U + (E >>> 0 < M >>> 0 ? 1 : 0), O = c.low = O + H, c.high = w + j + (O >>> 0 < H >>> 0 ? 1 : 0), A = h.low = A + z, h.high = B + F + (A >>> 0 < z >>> 0 ? 1 : 0), P = p.low = P + q, p.high = x + G + (P >>> 0 < q >>> 0 ? 1 : 0) + }, + _doFinalize: function() { + var t = this._data, + e = t.words, + r = 8 * this._nDataBytes, + n = 8 * t.sigBytes; + return e[n >>> 5] |= 128 << 24 - n % 32, e[30 + (n + 128 >>> 10 << 5)] = Math.floor(r / 4294967296), e[31 + (n + 128 >>> 10 << 5)] = r, t.sigBytes = 4 * e.length, this._process(), this._hash.toX32() + }, + clone: function() { + var t = e.clone.call(this); + return t._hash = this._hash.clone(), t + }, + blockSize: 32 + }); + t.SHA512 = e._createHelper(c), t.HmacSHA512 = e._createHmacHelper(c) + }(), n.SHA512) + }, + 7628: function(t, e, r) { + var n; + t.exports = (n = r(9021), r(754), r(4636), r(9506), r(7165), function() { + var t = n, + e = t.lib, + r = e.WordArray, + i = e.BlockCipher, + o = t.algo, + s = [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], + a = [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], + f = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28], + u = [{ + 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 + }], + c = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679], + h = o.DES = i.extend({ + _doReset: function() { + for (var t = this._key.words, e = [], r = 0; r < 56; r++) { + var n = s[r] - 1; + e[r] = t[n >>> 5] >>> 31 - n % 32 & 1 + } + for (var i = this._subKeys = [], o = 0; o < 16; o++) { + var u = i[o] = [], + c = f[o]; + for (r = 0; r < 24; r++) u[r / 6 | 0] |= e[(a[r] - 1 + c) % 28] << 31 - r % 6, u[4 + (r / 6 | 0)] |= e[28 + (a[r + 24] - 1 + c) % 28] << 31 - r % 6; + for (u[0] = u[0] << 1 | u[0] >>> 31, r = 1; r < 7; r++) u[r] = u[r] >>> 4 * (r - 1) + 3; + u[7] = u[7] << 5 | u[7] >>> 27 + } + var h = this._invSubKeys = []; + for (r = 0; r < 16; r++) h[r] = i[15 - r] + }, + encryptBlock: function(t, e) { + this._doCryptBlock(t, e, this._subKeys) + }, + decryptBlock: function(t, e) { + this._doCryptBlock(t, e, this._invSubKeys) + }, + _doCryptBlock: function(t, e, r) { + this._lBlock = t[e], this._rBlock = t[e + 1], p.call(this, 4, 252645135), p.call(this, 16, 65535), l.call(this, 2, 858993459), l.call(this, 8, 16711935), p.call(this, 1, 1431655765); + for (var n = 0; n < 16; n++) { + for (var i = r[n], o = this._lBlock, s = this._rBlock, a = 0, f = 0; f < 8; f++) a |= u[f][((s ^ i[f]) & c[f]) >>> 0]; + this._lBlock = s, this._rBlock = o ^ a + } + var h = this._lBlock; + this._lBlock = this._rBlock, this._rBlock = h, p.call(this, 1, 1431655765), l.call(this, 8, 16711935), l.call(this, 2, 858993459), p.call(this, 16, 65535), p.call(this, 4, 252645135), t[e] = this._lBlock, t[e + 1] = this._rBlock + }, + keySize: 2, + ivSize: 2, + blockSize: 2 + }); + + function p(t, e) { + var r = (this._lBlock >>> t ^ this._rBlock) & e; + this._rBlock ^= r, this._lBlock ^= r << t + } + + function l(t, e) { + var r = (this._rBlock >>> t ^ this._lBlock) & e; + this._lBlock ^= r, this._rBlock ^= r << t + } + t.DES = i._createHelper(h); + var y = o.TripleDES = i.extend({ + _doReset: function() { + var t = this._key.words; + this._des1 = h.createEncryptor(r.create(t.slice(0, 2))), this._des2 = h.createEncryptor(r.create(t.slice(2, 4))), this._des3 = h.createEncryptor(r.create(t.slice(4, 6))) }, encryptBlock: function(t, e) { - this._doCryptBlock(t, e, this._subKeys) + this._des1.encryptBlock(t, e), this._des2.decryptBlock(t, e), this._des3.encryptBlock(t, e) }, decryptBlock: function(t, e) { - this._doCryptBlock(t, e, this._invSubKeys) + this._des3.decryptBlock(t, e), this._des2.encryptBlock(t, e), this._des1.decryptBlock(t, e) }, - _doCryptBlock: function(t, e, r) { - this._lBlock = t[e], this._rBlock = t[e + 1], p.call(this, 4, 252645135), p.call(this, 16, 65535), l.call(this, 2, 858993459), l.call(this, 8, 16711935), p.call(this, 1, 1431655765); - for (var n = 0; n < 16; n++) { - for (var i = r[n], o = this._lBlock, s = this._rBlock, a = 0, f = 0; f < 8; f++) a |= u[f][((s ^ i[f]) & c[f]) >>> 0]; - this._lBlock = s, this._rBlock = o ^ a - } - var h = this._lBlock; - this._lBlock = this._rBlock, this._rBlock = h, p.call(this, 1, 1431655765), l.call(this, 8, 16711935), l.call(this, 2, 858993459), p.call(this, 16, 65535), p.call(this, 4, 252645135), t[e] = this._lBlock, t[e + 1] = this._rBlock - }, - keySize: 2, + keySize: 6, ivSize: 2, blockSize: 2 }); - - function p(t, e) { - var r = (this._lBlock >>> t ^ this._rBlock) & e; - this._rBlock ^= r, this._lBlock ^= r << t - } - function l(t, e) { - var r = (this._rBlock >>> t ^ this._lBlock) & e; - this._lBlock ^= r, this._rBlock ^= r << t - } - t.DES = i._createHelper(h); - var y = o.TripleDES = i.extend({ - _doReset: function() { - var t = this._key.words; - this._des1 = h.createEncryptor(r.create(t.slice(0, 2))), this._des2 = h.createEncryptor(r.create(t.slice(2, 4))), this._des3 = h.createEncryptor(r.create(t.slice(4, 6))) + t.TripleDES = i._createHelper(y) + }(), n.TripleDES) + }, + 3240: function(t, e, r) { + var n, i, o, s, a, f; + t.exports = (n = r(9021), o = (i = n).lib, s = o.Base, a = o.WordArray, (f = i.x64 = {}).Word = s.extend({ + init: function(t, e) { + this.high = t, this.low = e + } + }), f.WordArray = s.extend({ + init: function(t, e) { + t = this.words = t || [], this.sigBytes = null != e ? e : 8 * t.length }, - encryptBlock: function(t, e) { - this._des1.encryptBlock(t, e), this._des2.decryptBlock(t, e), this._des3.encryptBlock(t, e) + toX32: function() { + for (var t = this.words, e = t.length, r = [], n = 0; n < e; n++) { + var i = t[n]; + r.push(i.high), r.push(i.low) + } + return a.create(r, this.sigBytes) }, - decryptBlock: function(t, e) { - this._des3.decryptBlock(t, e), this._des2.encryptBlock(t, e), this._des1.decryptBlock(t, e) - }, - keySize: 6, - ivSize: 2, - blockSize: 2 - }); - t.TripleDES = i._createHelper(y) - }(), n.TripleDES) - }, - 3240: function(t, e, r) { - var n, i, o, s, a, f; - t.exports = (n = r(9021), o = (i = n).lib, s = o.Base, a = o.WordArray, (f = i.x64 = {}).Word = s.extend({ - init: function(t, e) { - this.high = t, this.low = e - } - }), f.WordArray = s.extend({ - init: function(t, e) { - t = this.words = t || [], this.sigBytes = null != e ? e : 8 * t.length - }, - toX32: function() { - for (var t = this.words, e = t.length, r = [], n = 0; n < e; n++) { - var i = t[n]; - r.push(i.high), r.push(i.low) + clone: function() { + for (var t = s.clone.call(this), e = t.words = this.words.slice(0), r = e.length, n = 0; n < r; n++) e[n] = e[n].clone(); + return t } - return a.create(r, this.sigBytes) - }, - clone: function() { - for (var t = s.clone.call(this), e = t.words = this.words.slice(0), r = e.length, n = 0; n < r; n++) e[n] = e[n].clone(); - return t - } - }), n) - }, - 41: (t, e, r) => { - "use strict"; - var n = r(655), - i = r(8068), - o = r(9675), - s = r(5795); - t.exports = function(t, e, r) { - if (!t || "object" != typeof t && "function" != typeof t) throw new o("`obj` must be an object or a function`"); - if ("string" != typeof e && "symbol" != typeof e) throw new o("`property` must be a string or a symbol`"); - if (arguments.length > 3 && "boolean" != typeof arguments[3] && null !== arguments[3]) throw new o("`nonEnumerable`, if provided, must be a boolean or null"); - if (arguments.length > 4 && "boolean" != typeof arguments[4] && null !== arguments[4]) throw new o("`nonWritable`, if provided, must be a boolean or null"); - if (arguments.length > 5 && "boolean" != typeof arguments[5] && null !== arguments[5]) throw new o("`nonConfigurable`, if provided, must be a boolean or null"); - if (arguments.length > 6 && "boolean" != typeof arguments[6]) throw new o("`loose`, if provided, must be a boolean"); - var a = arguments.length > 3 ? arguments[3] : null, - f = arguments.length > 4 ? arguments[4] : null, - u = arguments.length > 5 ? arguments[5] : null, - c = arguments.length > 6 && arguments[6], - h = !! s && s(t, e); - if (n) n(t, e, { - configurable: null === u && h ? h.configurable : !u, - enumerable: null === a && h ? h.enumerable : !a, - value: r, - writable: null === f && h ? h.writable : !f - }); - else { - if (!c && (a || f || u)) throw new i("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable."); - t[e] = r - } - } - }, - 655: (t, e, r) => { - "use strict"; - var n = r(453)("%Object.defineProperty%", !0) || !1; - if (n) try { - n({}, "a", { - value: 1 - }) - } catch (t) { - n = !1 - } - t.exports = n - }, - 1237: t => { - "use strict"; - t.exports = EvalError - }, - 9383: t => { - "use strict"; - t.exports = Error - }, - 9290: t => { - "use strict"; - t.exports = RangeError - }, - 9538: t => { - "use strict"; - t.exports = ReferenceError - }, - 8068: t => { - "use strict"; - t.exports = SyntaxError - }, - 9675: t => { - "use strict"; - t.exports = TypeError - }, - 5345: t => { - "use strict"; - t.exports = URIError - }, - 9353: t => { - "use strict"; - var e = Object.prototype.toString, - r = Math.max, - n = function(t, e) { - for (var r = [], n = 0; n < t.length; n += 1) r[n] = t[n]; - for (var i = 0; i < e.length; i += 1) r[i + t.length] = e[i]; - return r - }; - t.exports = function(t) { - var i = this; - if ("function" != typeof i || "[object Function]" !== e.apply(i)) throw new TypeError("Function.prototype.bind called on incompatible " + i); - for (var o, s = function(t, e) { - for (var r = [], n = 1, i = 0; n < t.length; n += 1, i += 1) r[i] = t[n]; - return r - }(arguments), a = r(0, i.length - s.length), f = [], u = 0; u < a; u++) f[u] = "$" + u; - if (o = Function("binder", "return function (" + function(t, e) { - for (var r = "", n = 0; n < t.length; n += 1) r += t[n], n + 1 < t.length && (r += ","); - return r - }(f) + "){ return binder.apply(this,arguments); }")((function() { - if (this instanceof o) { - var e = i.apply(this, n(s, arguments)); - return Object(e) === e ? e : this - } - return i.apply(t, n(s, arguments)) - })), i.prototype) { - var c = function() {}; - c.prototype = i.prototype, o.prototype = new c, c.prototype = null - } - return o - } - }, - 6743: (t, e, r) => { - "use strict"; - var n = r(9353); - t.exports = Function.prototype.bind || n - }, - 453: (t, e, r) => { - "use strict"; - var n, i = r(9383), - o = r(1237), - s = r(9290), - a = r(9538), - f = r(8068), - u = r(9675), - c = r(5345), - h = Function, - p = function(t) { - try { - return h('"use strict"; return (' + t + ").constructor;")() - } catch (t) {} - }, l = Object.getOwnPropertyDescriptor; - if (l) try { - l({}, "") - } catch (t) { - l = null - } - var y = function() { - throw new u - }, g = l ? function() { - try { - return y - } catch (t) { - try { - return l(arguments, "callee").get - } catch (t) { - return y - } - } - }() : y, - d = r(4039)(), - v = r(24)(), - m = Object.getPrototypeOf || (v ? function(t) { - return t.__proto__ - } : null), - S = {}, _ = "undefined" != typeof Uint8Array && m ? m(Uint8Array) : n, - b = { - __proto__: null, - "%AggregateError%": "undefined" == typeof AggregateError ? n : AggregateError, - "%Array%": Array, - "%ArrayBuffer%": "undefined" == typeof ArrayBuffer ? n : ArrayBuffer, - "%ArrayIteratorPrototype%": d && m ? m([][Symbol.iterator]()) : n, - "%AsyncFromSyncIteratorPrototype%": n, - "%AsyncFunction%": S, - "%AsyncGenerator%": S, - "%AsyncGeneratorFunction%": S, - "%AsyncIteratorPrototype%": S, - "%Atomics%": "undefined" == typeof Atomics ? n : Atomics, - "%BigInt%": "undefined" == typeof BigInt ? n : BigInt, - "%BigInt64Array%": "undefined" == typeof BigInt64Array ? n : BigInt64Array, - "%BigUint64Array%": "undefined" == typeof BigUint64Array ? n : BigUint64Array, - "%Boolean%": Boolean, - "%DataView%": "undefined" == typeof DataView ? n : DataView, - "%Date%": Date, - "%decodeURI%": decodeURI, - "%decodeURIComponent%": decodeURIComponent, - "%encodeURI%": encodeURI, - "%encodeURIComponent%": encodeURIComponent, - "%Error%": i, - "%eval%": eval, - "%EvalError%": o, - "%Float32Array%": "undefined" == typeof Float32Array ? n : Float32Array, - "%Float64Array%": "undefined" == typeof Float64Array ? n : Float64Array, - "%FinalizationRegistry%": "undefined" == typeof FinalizationRegistry ? n : FinalizationRegistry, - "%Function%": h, - "%GeneratorFunction%": S, - "%Int8Array%": "undefined" == typeof Int8Array ? n : Int8Array, - "%Int16Array%": "undefined" == typeof Int16Array ? n : Int16Array, - "%Int32Array%": "undefined" == typeof Int32Array ? n : Int32Array, - "%isFinite%": isFinite, - "%isNaN%": isNaN, - "%IteratorPrototype%": d && m ? m(m([][Symbol.iterator]())) : n, - "%JSON%": "object" == typeof JSON ? JSON : n, - "%Map%": "undefined" == typeof Map ? n : Map, - "%MapIteratorPrototype%": "undefined" != typeof Map && d && m ? m((new Map)[Symbol.iterator]()) : n, - "%Math%": Math, - "%Number%": Number, - "%Object%": Object, - "%parseFloat%": parseFloat, - "%parseInt%": parseInt, - "%Promise%": "undefined" == typeof Promise ? n : Promise, - "%Proxy%": "undefined" == typeof Proxy ? n : Proxy, - "%RangeError%": s, - "%ReferenceError%": a, - "%Reflect%": "undefined" == typeof Reflect ? n : Reflect, - "%RegExp%": RegExp, - "%Set%": "undefined" == typeof Set ? n : Set, - "%SetIteratorPrototype%": "undefined" != typeof Set && d && m ? m((new Set)[Symbol.iterator]()) : n, - "%SharedArrayBuffer%": "undefined" == typeof SharedArrayBuffer ? n : SharedArrayBuffer, - "%String%": String, - "%StringIteratorPrototype%": d && m ? m("" [Symbol.iterator]()) : n, - "%Symbol%": d ? Symbol : n, - "%SyntaxError%": f, - "%ThrowTypeError%": g, - "%TypedArray%": _, - "%TypeError%": u, - "%Uint8Array%": "undefined" == typeof Uint8Array ? n : Uint8Array, - "%Uint8ClampedArray%": "undefined" == typeof Uint8ClampedArray ? n : Uint8ClampedArray, - "%Uint16Array%": "undefined" == typeof Uint16Array ? n : Uint16Array, - "%Uint32Array%": "undefined" == typeof Uint32Array ? n : Uint32Array, - "%URIError%": c, - "%WeakMap%": "undefined" == typeof WeakMap ? n : WeakMap, - "%WeakRef%": "undefined" == typeof WeakRef ? n : WeakRef, - "%WeakSet%": "undefined" == typeof WeakSet ? n : WeakSet - }; - if (m) try { - null.error - } catch (t) { - var E = m(m(t)); - b["%Error.prototype%"] = E - } - var w = function t(e) { - var r; - if ("%AsyncFunction%" === e) r = p("async function () {}"); - else if ("%GeneratorFunction%" === e) r = p("function* () {}"); - else if ("%AsyncGeneratorFunction%" === e) r = p("async function* () {}"); - else if ("%AsyncGenerator%" === e) { - var n = t("%AsyncGeneratorFunction%"); - n && (r = n.prototype) - } else if ("%AsyncIteratorPrototype%" === e) { - var i = t("%AsyncGenerator%"); - i && m && (r = m(i.prototype)) - } - return b[e] = r, r - }, O = { - __proto__: null, - "%ArrayBufferPrototype%": ["ArrayBuffer", "prototype"], - "%ArrayPrototype%": ["Array", "prototype"], - "%ArrayProto_entries%": ["Array", "prototype", "entries"], - "%ArrayProto_forEach%": ["Array", "prototype", "forEach"], - "%ArrayProto_keys%": ["Array", "prototype", "keys"], - "%ArrayProto_values%": ["Array", "prototype", "values"], - "%AsyncFunctionPrototype%": ["AsyncFunction", "prototype"], - "%AsyncGenerator%": ["AsyncGeneratorFunction", "prototype"], - "%AsyncGeneratorPrototype%": ["AsyncGeneratorFunction", "prototype", "prototype"], - "%BooleanPrototype%": ["Boolean", "prototype"], - "%DataViewPrototype%": ["DataView", "prototype"], - "%DatePrototype%": ["Date", "prototype"], - "%ErrorPrototype%": ["Error", "prototype"], - "%EvalErrorPrototype%": ["EvalError", "prototype"], - "%Float32ArrayPrototype%": ["Float32Array", "prototype"], - "%Float64ArrayPrototype%": ["Float64Array", "prototype"], - "%FunctionPrototype%": ["Function", "prototype"], - "%Generator%": ["GeneratorFunction", "prototype"], - "%GeneratorPrototype%": ["GeneratorFunction", "prototype", "prototype"], - "%Int8ArrayPrototype%": ["Int8Array", "prototype"], - "%Int16ArrayPrototype%": ["Int16Array", "prototype"], - "%Int32ArrayPrototype%": ["Int32Array", "prototype"], - "%JSONParse%": ["JSON", "parse"], - "%JSONStringify%": ["JSON", "stringify"], - "%MapPrototype%": ["Map", "prototype"], - "%NumberPrototype%": ["Number", "prototype"], - "%ObjectPrototype%": ["Object", "prototype"], - "%ObjProto_toString%": ["Object", "prototype", "toString"], - "%ObjProto_valueOf%": ["Object", "prototype", "valueOf"], - "%PromisePrototype%": ["Promise", "prototype"], - "%PromiseProto_then%": ["Promise", "prototype", "then"], - "%Promise_all%": ["Promise", "all"], - "%Promise_reject%": ["Promise", "reject"], - "%Promise_resolve%": ["Promise", "resolve"], - "%RangeErrorPrototype%": ["RangeError", "prototype"], - "%ReferenceErrorPrototype%": ["ReferenceError", "prototype"], - "%RegExpPrototype%": ["RegExp", "prototype"], - "%SetPrototype%": ["Set", "prototype"], - "%SharedArrayBufferPrototype%": ["SharedArrayBuffer", "prototype"], - "%StringPrototype%": ["String", "prototype"], - "%SymbolPrototype%": ["Symbol", "prototype"], - "%SyntaxErrorPrototype%": ["SyntaxError", "prototype"], - "%TypedArrayPrototype%": ["TypedArray", "prototype"], - "%TypeErrorPrototype%": ["TypeError", "prototype"], - "%Uint8ArrayPrototype%": ["Uint8Array", "prototype"], - "%Uint8ClampedArrayPrototype%": ["Uint8ClampedArray", "prototype"], - "%Uint16ArrayPrototype%": ["Uint16Array", "prototype"], - "%Uint32ArrayPrototype%": ["Uint32Array", "prototype"], - "%URIErrorPrototype%": ["URIError", "prototype"], - "%WeakMapPrototype%": ["WeakMap", "prototype"], - "%WeakSetPrototype%": ["WeakSet", "prototype"] - }, B = r(6743), - A = r(9957), - x = B.call(Function.call, Array.prototype.concat), - P = B.call(Function.apply, Array.prototype.splice), - T = B.call(Function.call, String.prototype.replace), - I = B.call(Function.call, String.prototype.slice), - k = B.call(Function.call, RegExp.prototype.exec), - D = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g, - R = /\\(\\)?/g, - N = function(t, e) { - var r, n = t; - if (A(O, n) && (n = "%" + (r = O[n])[0] + "%"), A(b, n)) { - var i = b[n]; - if (i === S && (i = w(n)), void 0 === i && !e) throw new u("intrinsic " + t + " exists, but is not available. Please file an issue!"); - return { - alias: r, - name: n, - value: i - } - } - throw new f("intrinsic " + t + " does not exist!") - }; - t.exports = function(t, e) { - if ("string" != typeof t || 0 === t.length) throw new u("intrinsic name must be a non-empty string"); - if (arguments.length > 1 && "boolean" != typeof e) throw new u('"allowMissing" argument must be a boolean'); - if (null === k(/^%?[^%]*%?$/, t)) throw new f("`%` may not be present anywhere but at the beginning and end of the intrinsic name"); - var r = function(t) { - var e = I(t, 0, 1), - r = I(t, -1); - if ("%" === e && "%" !== r) throw new f("invalid intrinsic syntax, expected closing `%`"); - if ("%" === r && "%" !== e) throw new f("invalid intrinsic syntax, expected opening `%`"); - var n = []; - return T(t, D, (function(t, e, r, i) { - n[n.length] = r ? T(i, R, "$1") : e || t - })), n - }(t), - n = r.length > 0 ? r[0] : "", - i = N("%" + n + "%", e), - o = i.name, - s = i.value, - a = !1, - c = i.alias; - c && (n = c[0], P(r, x([0, 1], c))); - for (var h = 1, p = !0; h < r.length; h += 1) { - var y = r[h], - g = I(y, 0, 1), - d = I(y, -1); - if (('"' === g || "'" === g || "`" === g || '"' === d || "'" === d || "`" === d) && g !== d) throw new f("property names with quotes must have matching quotes"); - if ("constructor" !== y && p || (a = !0), A(b, o = "%" + (n += "." + y) + "%")) s = b[o]; - else if (null != s) { - if (!(y in s)) { - if (!e) throw new u("base intrinsic for " + t + " exists, but the property is not available."); - return - } - if (l && h + 1 >= r.length) { - var v = l(s, y); - s = (p = !! v) && "get" in v && !("originalValue" in v.get) ? v.get : s[y] - } else p = A(s, y), s = s[y]; - p && !a && (b[o] = s) + }), n) + }, + 41: (t, e, r) => { + "use strict"; + var n = r(655), + i = r(8068), + o = r(9675), + s = r(5795); + t.exports = function(t, e, r) { + if (!t || "object" != typeof t && "function" != typeof t) throw new o("`obj` must be an object or a function`"); + if ("string" != typeof e && "symbol" != typeof e) throw new o("`property` must be a string or a symbol`"); + if (arguments.length > 3 && "boolean" != typeof arguments[3] && null !== arguments[3]) throw new o("`nonEnumerable`, if provided, must be a boolean or null"); + if (arguments.length > 4 && "boolean" != typeof arguments[4] && null !== arguments[4]) throw new o("`nonWritable`, if provided, must be a boolean or null"); + if (arguments.length > 5 && "boolean" != typeof arguments[5] && null !== arguments[5]) throw new o("`nonConfigurable`, if provided, must be a boolean or null"); + if (arguments.length > 6 && "boolean" != typeof arguments[6]) throw new o("`loose`, if provided, must be a boolean"); + var a = arguments.length > 3 ? arguments[3] : null, + f = arguments.length > 4 ? arguments[4] : null, + u = arguments.length > 5 ? arguments[5] : null, + c = arguments.length > 6 && arguments[6], + h = !!s && s(t, e); + if (n) n(t, e, { + configurable: null === u && h ? h.configurable : !u, + enumerable: null === a && h ? h.enumerable : !a, + value: r, + writable: null === f && h ? h.writable : !f + }); + else { + if (!c && (a || f || u)) throw new i("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable."); + t[e] = r } } - return s - } - }, - 5795: (t, e, r) => { - "use strict"; - var n = r(453)("%Object.getOwnPropertyDescriptor%", !0); - if (n) try { - n([], "length") - } catch (t) { - n = null - } - t.exports = n - }, - 592: (t, e, r) => { - "use strict"; - var n = r(655), - i = function() { - return !!n - }; - i.hasArrayLengthDefineBug = function() { - if (!n) return null; - try { - return 1 !== n([], "length", { + }, + 655: (t, e, r) => { + "use strict"; + var n = r(453)("%Object.defineProperty%", !0) || !1; + if (n) try { + n({}, "a", { value: 1 - }).length + }) } catch (t) { + n = !1 + } + t.exports = n + }, + 1237: t => { + "use strict"; + t.exports = EvalError + }, + 9383: t => { + "use strict"; + t.exports = Error + }, + 9290: t => { + "use strict"; + t.exports = RangeError + }, + 9538: t => { + "use strict"; + t.exports = ReferenceError + }, + 8068: t => { + "use strict"; + t.exports = SyntaxError + }, + 9675: t => { + "use strict"; + t.exports = TypeError + }, + 5345: t => { + "use strict"; + t.exports = URIError + }, + 9353: t => { + "use strict"; + var e = Object.prototype.toString, + r = Math.max, + n = function(t, e) { + for (var r = [], n = 0; n < t.length; n += 1) r[n] = t[n]; + for (var i = 0; i < e.length; i += 1) r[i + t.length] = e[i]; + return r + }; + t.exports = function(t) { + var i = this; + if ("function" != typeof i || "[object Function]" !== e.apply(i)) throw new TypeError("Function.prototype.bind called on incompatible " + i); + for (var o, s = function(t, e) { + for (var r = [], n = 1, i = 0; n < t.length; n += 1, i += 1) r[i] = t[n]; + return r + }(arguments), a = r(0, i.length - s.length), f = [], u = 0; u < a; u++) f[u] = "$" + u; + if (o = Function("binder", "return function (" + function(t, e) { + for (var r = "", n = 0; n < t.length; n += 1) r += t[n], n + 1 < t.length && (r += ","); + return r + }(f) + "){ return binder.apply(this,arguments); }")((function() { + if (this instanceof o) { + var e = i.apply(this, n(s, arguments)); + return Object(e) === e ? e : this + } + return i.apply(t, n(s, arguments)) + })), i.prototype) { + var c = function() {}; + c.prototype = i.prototype, o.prototype = new c, c.prototype = null + } + return o + } + }, + 6743: (t, e, r) => { + "use strict"; + var n = r(9353); + t.exports = Function.prototype.bind || n + }, + 453: (t, e, r) => { + "use strict"; + var n, i = r(9383), + o = r(1237), + s = r(9290), + a = r(9538), + f = r(8068), + u = r(9675), + c = r(5345), + h = Function, + p = function(t) { + try { + return h('"use strict"; return (' + t + ").constructor;")() + } catch (t) {} + }, + l = Object.getOwnPropertyDescriptor; + if (l) try { + l({}, "") + } catch (t) { + l = null + } + var y = function() { + throw new u + }, + g = l ? function() { + try { + return y + } catch (t) { + try { + return l(arguments, "callee").get + } catch (t) { + return y + } + } + }() : y, + d = r(4039)(), + v = r(24)(), + m = Object.getPrototypeOf || (v ? function(t) { + return t.__proto__ + } : null), + S = {}, + _ = "undefined" != typeof Uint8Array && m ? m(Uint8Array) : n, + b = { + __proto__: null, + "%AggregateError%": "undefined" == typeof AggregateError ? n : AggregateError, + "%Array%": Array, + "%ArrayBuffer%": "undefined" == typeof ArrayBuffer ? n : ArrayBuffer, + "%ArrayIteratorPrototype%": d && m ? m([][Symbol.iterator]()) : n, + "%AsyncFromSyncIteratorPrototype%": n, + "%AsyncFunction%": S, + "%AsyncGenerator%": S, + "%AsyncGeneratorFunction%": S, + "%AsyncIteratorPrototype%": S, + "%Atomics%": "undefined" == typeof Atomics ? n : Atomics, + "%BigInt%": "undefined" == typeof BigInt ? n : BigInt, + "%BigInt64Array%": "undefined" == typeof BigInt64Array ? n : BigInt64Array, + "%BigUint64Array%": "undefined" == typeof BigUint64Array ? n : BigUint64Array, + "%Boolean%": Boolean, + "%DataView%": "undefined" == typeof DataView ? n : DataView, + "%Date%": Date, + "%decodeURI%": decodeURI, + "%decodeURIComponent%": decodeURIComponent, + "%encodeURI%": encodeURI, + "%encodeURIComponent%": encodeURIComponent, + "%Error%": i, + "%eval%": eval, + "%EvalError%": o, + "%Float32Array%": "undefined" == typeof Float32Array ? n : Float32Array, + "%Float64Array%": "undefined" == typeof Float64Array ? n : Float64Array, + "%FinalizationRegistry%": "undefined" == typeof FinalizationRegistry ? n : FinalizationRegistry, + "%Function%": h, + "%GeneratorFunction%": S, + "%Int8Array%": "undefined" == typeof Int8Array ? n : Int8Array, + "%Int16Array%": "undefined" == typeof Int16Array ? n : Int16Array, + "%Int32Array%": "undefined" == typeof Int32Array ? n : Int32Array, + "%isFinite%": isFinite, + "%isNaN%": isNaN, + "%IteratorPrototype%": d && m ? m(m([][Symbol.iterator]())) : n, + "%JSON%": "object" == typeof JSON ? JSON : n, + "%Map%": "undefined" == typeof Map ? n : Map, + "%MapIteratorPrototype%": "undefined" != typeof Map && d && m ? m((new Map)[Symbol.iterator]()) : n, + "%Math%": Math, + "%Number%": Number, + "%Object%": Object, + "%parseFloat%": parseFloat, + "%parseInt%": parseInt, + "%Promise%": "undefined" == typeof Promise ? n : Promise, + "%Proxy%": "undefined" == typeof Proxy ? n : Proxy, + "%RangeError%": s, + "%ReferenceError%": a, + "%Reflect%": "undefined" == typeof Reflect ? n : Reflect, + "%RegExp%": RegExp, + "%Set%": "undefined" == typeof Set ? n : Set, + "%SetIteratorPrototype%": "undefined" != typeof Set && d && m ? m((new Set)[Symbol.iterator]()) : n, + "%SharedArrayBuffer%": "undefined" == typeof SharedArrayBuffer ? n : SharedArrayBuffer, + "%String%": String, + "%StringIteratorPrototype%": d && m ? m("" [Symbol.iterator]()) : n, + "%Symbol%": d ? Symbol : n, + "%SyntaxError%": f, + "%ThrowTypeError%": g, + "%TypedArray%": _, + "%TypeError%": u, + "%Uint8Array%": "undefined" == typeof Uint8Array ? n : Uint8Array, + "%Uint8ClampedArray%": "undefined" == typeof Uint8ClampedArray ? n : Uint8ClampedArray, + "%Uint16Array%": "undefined" == typeof Uint16Array ? n : Uint16Array, + "%Uint32Array%": "undefined" == typeof Uint32Array ? n : Uint32Array, + "%URIError%": c, + "%WeakMap%": "undefined" == typeof WeakMap ? n : WeakMap, + "%WeakRef%": "undefined" == typeof WeakRef ? n : WeakRef, + "%WeakSet%": "undefined" == typeof WeakSet ? n : WeakSet + }; + if (m) try { + null.error + } catch (t) { + var E = m(m(t)); + b["%Error.prototype%"] = E + } + var w = function t(e) { + var r; + if ("%AsyncFunction%" === e) r = p("async function () {}"); + else if ("%GeneratorFunction%" === e) r = p("function* () {}"); + else if ("%AsyncGeneratorFunction%" === e) r = p("async function* () {}"); + else if ("%AsyncGenerator%" === e) { + var n = t("%AsyncGeneratorFunction%"); + n && (r = n.prototype) + } else if ("%AsyncIteratorPrototype%" === e) { + var i = t("%AsyncGenerator%"); + i && m && (r = m(i.prototype)) + } + return b[e] = r, r + }, + O = { + __proto__: null, + "%ArrayBufferPrototype%": ["ArrayBuffer", "prototype"], + "%ArrayPrototype%": ["Array", "prototype"], + "%ArrayProto_entries%": ["Array", "prototype", "entries"], + "%ArrayProto_forEach%": ["Array", "prototype", "forEach"], + "%ArrayProto_keys%": ["Array", "prototype", "keys"], + "%ArrayProto_values%": ["Array", "prototype", "values"], + "%AsyncFunctionPrototype%": ["AsyncFunction", "prototype"], + "%AsyncGenerator%": ["AsyncGeneratorFunction", "prototype"], + "%AsyncGeneratorPrototype%": ["AsyncGeneratorFunction", "prototype", "prototype"], + "%BooleanPrototype%": ["Boolean", "prototype"], + "%DataViewPrototype%": ["DataView", "prototype"], + "%DatePrototype%": ["Date", "prototype"], + "%ErrorPrototype%": ["Error", "prototype"], + "%EvalErrorPrototype%": ["EvalError", "prototype"], + "%Float32ArrayPrototype%": ["Float32Array", "prototype"], + "%Float64ArrayPrototype%": ["Float64Array", "prototype"], + "%FunctionPrototype%": ["Function", "prototype"], + "%Generator%": ["GeneratorFunction", "prototype"], + "%GeneratorPrototype%": ["GeneratorFunction", "prototype", "prototype"], + "%Int8ArrayPrototype%": ["Int8Array", "prototype"], + "%Int16ArrayPrototype%": ["Int16Array", "prototype"], + "%Int32ArrayPrototype%": ["Int32Array", "prototype"], + "%JSONParse%": ["JSON", "parse"], + "%JSONStringify%": ["JSON", "stringify"], + "%MapPrototype%": ["Map", "prototype"], + "%NumberPrototype%": ["Number", "prototype"], + "%ObjectPrototype%": ["Object", "prototype"], + "%ObjProto_toString%": ["Object", "prototype", "toString"], + "%ObjProto_valueOf%": ["Object", "prototype", "valueOf"], + "%PromisePrototype%": ["Promise", "prototype"], + "%PromiseProto_then%": ["Promise", "prototype", "then"], + "%Promise_all%": ["Promise", "all"], + "%Promise_reject%": ["Promise", "reject"], + "%Promise_resolve%": ["Promise", "resolve"], + "%RangeErrorPrototype%": ["RangeError", "prototype"], + "%ReferenceErrorPrototype%": ["ReferenceError", "prototype"], + "%RegExpPrototype%": ["RegExp", "prototype"], + "%SetPrototype%": ["Set", "prototype"], + "%SharedArrayBufferPrototype%": ["SharedArrayBuffer", "prototype"], + "%StringPrototype%": ["String", "prototype"], + "%SymbolPrototype%": ["Symbol", "prototype"], + "%SyntaxErrorPrototype%": ["SyntaxError", "prototype"], + "%TypedArrayPrototype%": ["TypedArray", "prototype"], + "%TypeErrorPrototype%": ["TypeError", "prototype"], + "%Uint8ArrayPrototype%": ["Uint8Array", "prototype"], + "%Uint8ClampedArrayPrototype%": ["Uint8ClampedArray", "prototype"], + "%Uint16ArrayPrototype%": ["Uint16Array", "prototype"], + "%Uint32ArrayPrototype%": ["Uint32Array", "prototype"], + "%URIErrorPrototype%": ["URIError", "prototype"], + "%WeakMapPrototype%": ["WeakMap", "prototype"], + "%WeakSetPrototype%": ["WeakSet", "prototype"] + }, + B = r(6743), + A = r(9957), + x = B.call(Function.call, Array.prototype.concat), + P = B.call(Function.apply, Array.prototype.splice), + T = B.call(Function.call, String.prototype.replace), + I = B.call(Function.call, String.prototype.slice), + k = B.call(Function.call, RegExp.prototype.exec), + D = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g, + R = /\\(\\)?/g, + N = function(t, e) { + var r, n = t; + if (A(O, n) && (n = "%" + (r = O[n])[0] + "%"), A(b, n)) { + var i = b[n]; + if (i === S && (i = w(n)), void 0 === i && !e) throw new u("intrinsic " + t + " exists, but is not available. Please file an issue!"); + return { + alias: r, + name: n, + value: i + } + } + throw new f("intrinsic " + t + " does not exist!") + }; + t.exports = function(t, e) { + if ("string" != typeof t || 0 === t.length) throw new u("intrinsic name must be a non-empty string"); + if (arguments.length > 1 && "boolean" != typeof e) throw new u('"allowMissing" argument must be a boolean'); + if (null === k(/^%?[^%]*%?$/, t)) throw new f("`%` may not be present anywhere but at the beginning and end of the intrinsic name"); + var r = function(t) { + var e = I(t, 0, 1), + r = I(t, -1); + if ("%" === e && "%" !== r) throw new f("invalid intrinsic syntax, expected closing `%`"); + if ("%" === r && "%" !== e) throw new f("invalid intrinsic syntax, expected opening `%`"); + var n = []; + return T(t, D, (function(t, e, r, i) { + n[n.length] = r ? T(i, R, "$1") : e || t + })), n + }(t), + n = r.length > 0 ? r[0] : "", + i = N("%" + n + "%", e), + o = i.name, + s = i.value, + a = !1, + c = i.alias; + c && (n = c[0], P(r, x([0, 1], c))); + for (var h = 1, p = !0; h < r.length; h += 1) { + var y = r[h], + g = I(y, 0, 1), + d = I(y, -1); + if (('"' === g || "'" === g || "`" === g || '"' === d || "'" === d || "`" === d) && g !== d) throw new f("property names with quotes must have matching quotes"); + if ("constructor" !== y && p || (a = !0), A(b, o = "%" + (n += "." + y) + "%")) s = b[o]; + else if (null != s) { + if (!(y in s)) { + if (!e) throw new u("base intrinsic for " + t + " exists, but the property is not available."); + return + } + if (l && h + 1 >= r.length) { + var v = l(s, y); + s = (p = !!v) && "get" in v && !("originalValue" in v.get) ? v.get : s[y] + } else p = A(s, y), s = s[y]; + p && !a && (b[o] = s) + } + } + return s + } + }, + 5795: (t, e, r) => { + "use strict"; + var n = r(453)("%Object.getOwnPropertyDescriptor%", !0); + if (n) try { + n([], "length") + } catch (t) { + n = null + } + t.exports = n + }, + 592: (t, e, r) => { + "use strict"; + var n = r(655), + i = function() { + return !!n + }; + i.hasArrayLengthDefineBug = function() { + if (!n) return null; + try { + return 1 !== n([], "length", { + value: 1 + }).length + } catch (t) { + return !0 + } + }, t.exports = i + }, + 24: t => { + "use strict"; + var e = { + __proto__: null, + foo: {} + }, + r = Object; + t.exports = function() { + return { + __proto__: e + }.foo === e.foo && !(e instanceof r) + } + }, + 4039: (t, e, r) => { + "use strict"; + var n = "undefined" != typeof Symbol && Symbol, + i = r(1333); + t.exports = function() { + return "function" == typeof n && "function" == typeof Symbol && "symbol" == typeof n("foo") && "symbol" == typeof Symbol("bar") && i() + } + }, + 1333: t => { + "use strict"; + t.exports = function() { + if ("function" != typeof Symbol || "function" != typeof Object.getOwnPropertySymbols) return !1; + if ("symbol" == typeof Symbol.iterator) return !0; + var t = {}, + e = Symbol("test"), + r = Object(e); + if ("string" == typeof e) return !1; + if ("[object Symbol]" !== Object.prototype.toString.call(e)) return !1; + if ("[object Symbol]" !== Object.prototype.toString.call(r)) return !1; + for (e in t[e] = 42, t) return !1; + if ("function" == typeof Object.keys && 0 !== Object.keys(t).length) return !1; + if ("function" == typeof Object.getOwnPropertyNames && 0 !== Object.getOwnPropertyNames(t).length) return !1; + var n = Object.getOwnPropertySymbols(t); + if (1 !== n.length || n[0] !== e) return !1; + if (!Object.prototype.propertyIsEnumerable.call(t, e)) return !1; + if ("function" == typeof Object.getOwnPropertyDescriptor) { + var i = Object.getOwnPropertyDescriptor(t, e); + if (42 !== i.value || !0 !== i.enumerable) return !1 + } return !0 } - }, t.exports = i - }, - 24: t => { - "use strict"; - var e = { - __proto__: null, - foo: {} - }, r = Object; - t.exports = function() { - return { - __proto__: e - }.foo === e.foo && !(e instanceof r) - } - }, - 4039: (t, e, r) => { - "use strict"; - var n = "undefined" != typeof Symbol && Symbol, - i = r(1333); - t.exports = function() { - return "function" == typeof n && "function" == typeof Symbol && "symbol" == typeof n("foo") && "symbol" == typeof Symbol("bar") && i() - } - }, - 1333: t => { - "use strict"; - t.exports = function() { - if ("function" != typeof Symbol || "function" != typeof Object.getOwnPropertySymbols) return !1; - if ("symbol" == typeof Symbol.iterator) return !0; - var t = {}, e = Symbol("test"), - r = Object(e); - if ("string" == typeof e) return !1; - if ("[object Symbol]" !== Object.prototype.toString.call(e)) return !1; - if ("[object Symbol]" !== Object.prototype.toString.call(r)) return !1; - for (e in t[e] = 42, t) return !1; - if ("function" == typeof Object.keys && 0 !== Object.keys(t).length) return !1; - if ("function" == typeof Object.getOwnPropertyNames && 0 !== Object.getOwnPropertyNames(t).length) return !1; - var n = Object.getOwnPropertySymbols(t); - if (1 !== n.length || n[0] !== e) return !1; - if (!Object.prototype.propertyIsEnumerable.call(t, e)) return !1; - if ("function" == typeof Object.getOwnPropertyDescriptor) { - var i = Object.getOwnPropertyDescriptor(t, e); - if (42 !== i.value || !0 !== i.enumerable) return !1 + }, + 9957: (t, e, r) => { + "use strict"; + var n = Function.prototype.call, + i = Object.prototype.hasOwnProperty, + o = r(6743); + t.exports = o.call(n, i) + }, + 251: (t, e) => { + e.read = function(t, e, r, n, i) { + var o, s, a = 8 * i - n - 1, + f = (1 << a) - 1, + u = f >> 1, + c = -7, + h = r ? i - 1 : 0, + p = r ? -1 : 1, + l = t[e + h]; + for (h += p, o = l & (1 << -c) - 1, l >>= -c, c += a; c > 0; o = 256 * o + t[e + h], h += p, c -= 8); + for (s = o & (1 << -c) - 1, o >>= -c, c += n; c > 0; s = 256 * s + t[e + h], h += p, c -= 8); + if (0 === o) o = 1 - u; + else { + if (o === f) return s ? NaN : 1 / 0 * (l ? -1 : 1); + s += Math.pow(2, n), o -= u + } + return (l ? -1 : 1) * s * Math.pow(2, o - n) + }, e.write = function(t, e, r, n, i, o) { + var s, a, f, u = 8 * o - i - 1, + c = (1 << u) - 1, + h = c >> 1, + p = 23 === i ? Math.pow(2, -24) - Math.pow(2, -77) : 0, + l = n ? 0 : o - 1, + y = n ? 1 : -1, + g = e < 0 || 0 === e && 1 / e < 0 ? 1 : 0; + for (e = Math.abs(e), isNaN(e) || e === 1 / 0 ? (a = isNaN(e) ? 1 : 0, s = c) : (s = Math.floor(Math.log(e) / Math.LN2), e * (f = Math.pow(2, -s)) < 1 && (s--, f *= 2), (e += s + h >= 1 ? p / f : p * Math.pow(2, 1 - h)) * f >= 2 && (s++, f /= 2), s + h >= c ? (a = 0, s = c) : s + h >= 1 ? (a = (e * f - 1) * Math.pow(2, i), s += h) : (a = e * Math.pow(2, h - 1) * Math.pow(2, i), s = 0)); i >= 8; t[r + l] = 255 & a, l += y, a /= 256, i -= 8); + for (s = s << i | a, u += i; u > 0; t[r + l] = 255 & s, l += y, s /= 256, u -= 8); + t[r + l - y] |= 128 * g } - return !0 - } - }, - 9957: (t, e, r) => { - "use strict"; - var n = Function.prototype.call, - i = Object.prototype.hasOwnProperty, - o = r(6743); - t.exports = o.call(n, i) - }, - 251: (t, e) => { - e.read = function(t, e, r, n, i) { - var o, s, a = 8 * i - n - 1, - f = (1 << a) - 1, - u = f >> 1, - c = -7, - h = r ? i - 1 : 0, - p = r ? -1 : 1, - l = t[e + h]; - for (h += p, o = l & (1 << -c) - 1, l >>= -c, c += a; c > 0; o = 256 * o + t[e + h], h += p, c -= 8); - for (s = o & (1 << -c) - 1, o >>= -c, c += n; c > 0; s = 256 * s + t[e + h], h += p, c -= 8); - if (0 === o) o = 1 - u; - else { - if (o === f) return s ? NaN : 1 / 0 * (l ? -1 : 1); - s += Math.pow(2, n), o -= u - } - return (l ? -1 : 1) * s * Math.pow(2, o - n) - }, e.write = function(t, e, r, n, i, o) { - var s, a, f, u = 8 * o - i - 1, - c = (1 << u) - 1, - h = c >> 1, - p = 23 === i ? Math.pow(2, -24) - Math.pow(2, -77) : 0, - l = n ? 0 : o - 1, - y = n ? 1 : -1, - g = e < 0 || 0 === e && 1 / e < 0 ? 1 : 0; - for (e = Math.abs(e), isNaN(e) || e === 1 / 0 ? (a = isNaN(e) ? 1 : 0, s = c) : (s = Math.floor(Math.log(e) / Math.LN2), e * (f = Math.pow(2, -s)) < 1 && (s--, f *= 2), (e += s + h >= 1 ? p / f : p * Math.pow(2, 1 - h)) * f >= 2 && (s++, f /= 2), s + h >= c ? (a = 0, s = c) : s + h >= 1 ? (a = (e * f - 1) * Math.pow(2, i), s += h) : (a = e * Math.pow(2, h - 1) * Math.pow(2, i), s = 0)); i >= 8; t[r + l] = 255 & a, l += y, a /= 256, i -= 8); - for (s = s << i | a, u += i; u > 0; t[r + l] = 255 & s, l += y, s /= 256, u -= 8); - t[r + l - y] |= 128 * g - } - }, - 3229: (t, e, r) => { - var n = r(8287).Buffer, - i = r(7449), - o = r(5682), - s = (r(3200), r(3100).Ber, r(8226)._), - a = r(8226), - f = r(1768), - u = r(7460); - void 0 === i.RSA_NO_PADDING && (i.RSA_NO_PADDING = 3), t.exports = function() { - var t = { - node10: ["md4", "md5", "ripemd160", "sha1", "sha224", "sha256", "sha384", "sha512"], - node: ["md4", "md5", "ripemd160", "sha1", "sha224", "sha256", "sha384", "sha512"], - iojs: ["md4", "md5", "ripemd160", "sha1", "sha224", "sha256", "sha384", "sha512"], - browser: ["md5", "ripemd160", "sha1", "sha256", "sha512"] - }, e = "pkcs1_oaep", - r = "pkcs1", - i = { - private: "pkcs1-private-pem", - "private-der": "pkcs1-private-der", - public: "pkcs8-public-pem", - "public-der": "pkcs8-public-der" - }; + }, + 3229: (t, e, r) => { + var n = r(8287).Buffer, + i = r(7449), + o = r(5682), + s = (r(3200), r(3100).Ber, r(8226)._), + a = r(8226), + f = r(1768), + u = r(7460); + void 0 === i.RSA_NO_PADDING && (i.RSA_NO_PADDING = 3), t.exports = function() { + var t = { + node10: ["md4", "md5", "ripemd160", "sha1", "sha224", "sha256", "sha384", "sha512"], + node: ["md4", "md5", "ripemd160", "sha1", "sha224", "sha256", "sha384", "sha512"], + iojs: ["md4", "md5", "ripemd160", "sha1", "sha224", "sha256", "sha384", "sha512"], + browser: ["md5", "ripemd160", "sha1", "sha256", "sha512"] + }, + e = "pkcs1_oaep", + r = "pkcs1", + i = { + private: "pkcs1-private-pem", + "private-der": "pkcs1-private-der", + public: "pkcs8-public-pem", + "public-der": "pkcs8-public-der" + }; - function c(t, i, f) { - if (!(this instanceof c)) return new c(t, i, f); - s.isObject(i) && (f = i, i = void 0), this.$options = { - signingScheme: r, - signingSchemeOptions: { - hash: "sha256", - saltLength: null - }, - encryptionScheme: e, - encryptionSchemeOptions: { - hash: "sha1", - label: null - }, - environment: a.detectEnvironment(), - rsaUtils: this - }, this.keyPair = new o.Key, this.$cache = {}, n.isBuffer(t) || s.isString(t) ? this.importKey(t, i) : s.isObject(t) && this.generateKeyPair(t.b, t.e), this.setOptions(f) - } - return c.prototype.setOptions = function(n) { - if ((n = n || {}).environment && (this.$options.environment = n.environment), n.signingScheme) { - if (s.isString(n.signingScheme)) { - var i = n.signingScheme.toLowerCase().split("-"); - 1 == i.length ? t.node.indexOf(i[0]) > -1 ? (this.$options.signingSchemeOptions = { - hash: i[0] - }, this.$options.signingScheme = r) : (this.$options.signingScheme = i[0], this.$options.signingSchemeOptions = { - hash: null - }) : (this.$options.signingSchemeOptions = { - hash: i[1] - }, this.$options.signingScheme = i[0]) - } else s.isObject(n.signingScheme) && (this.$options.signingScheme = n.signingScheme.scheme || r, this.$options.signingSchemeOptions = s.omit(n.signingScheme, "scheme")); - if (!f.isSignature(this.$options.signingScheme)) throw Error("Unsupported signing scheme"); - if (this.$options.signingSchemeOptions.hash && -1 === t[this.$options.environment].indexOf(this.$options.signingSchemeOptions.hash)) throw Error("Unsupported hashing algorithm for " + this.$options.environment + " environment") + function c(t, i, f) { + if (!(this instanceof c)) return new c(t, i, f); + s.isObject(i) && (f = i, i = void 0), this.$options = { + signingScheme: r, + signingSchemeOptions: { + hash: "sha256", + saltLength: null + }, + encryptionScheme: e, + encryptionSchemeOptions: { + hash: "sha1", + label: null + }, + environment: a.detectEnvironment(), + rsaUtils: this + }, this.keyPair = new o.Key, this.$cache = {}, n.isBuffer(t) || s.isString(t) ? this.importKey(t, i) : s.isObject(t) && this.generateKeyPair(t.b, t.e), this.setOptions(f) } - if (n.encryptionScheme) { - if (s.isString(n.encryptionScheme) ? (this.$options.encryptionScheme = n.encryptionScheme.toLowerCase(), this.$options.encryptionSchemeOptions = {}) : s.isObject(n.encryptionScheme) && (this.$options.encryptionScheme = n.encryptionScheme.scheme || e, this.$options.encryptionSchemeOptions = s.omit(n.encryptionScheme, "scheme")), !f.isEncryption(this.$options.encryptionScheme)) throw Error("Unsupported encryption scheme"); - if (this.$options.encryptionSchemeOptions.hash && -1 === t[this.$options.environment].indexOf(this.$options.encryptionSchemeOptions.hash)) throw Error("Unsupported hashing algorithm for " + this.$options.environment + " environment") - } - this.keyPair.setOptions(this.$options) - }, c.prototype.generateKeyPair = function(t, e) { - if (e = e || 65537, (t = t || 2048) % 8 != 0) throw Error("Key size must be a multiple of 8."); - return this.keyPair.generate(t, e.toString(16)), this.$cache = {}, this - }, c.prototype.importKey = function(t, e) { - if (!t) throw Error("Empty key given"); - if (e && (e = i[e] || e), !u.detectAndImport(this.keyPair, t, e) && void 0 === e) throw Error("Key format must be specified"); - return this.$cache = {}, this - }, c.prototype.exportKey = function(t) { - return t = i[t = t || "private"] || t, this.$cache[t] || (this.$cache[t] = u.detectAndExport(this.keyPair, t)), this.$cache[t] - }, c.prototype.isPrivate = function() { - return this.keyPair.isPrivate() - }, c.prototype.isPublic = function(t) { - return this.keyPair.isPublic(t) - }, c.prototype.isEmpty = function(t) { - return !(this.keyPair.n || this.keyPair.e || this.keyPair.d) - }, c.prototype.encrypt = function(t, e, r) { - return this.$$encryptKey(!1, t, e, r) - }, c.prototype.decrypt = function(t, e) { - return this.$$decryptKey(!1, t, e) - }, c.prototype.encryptPrivate = function(t, e, r) { - return this.$$encryptKey(!0, t, e, r) - }, c.prototype.decryptPublic = function(t, e) { - return this.$$decryptKey(!0, t, e) - }, c.prototype.$$encryptKey = function(t, e, r, n) { - try { - var i = this.keyPair.encrypt(this.$getDataForEncrypt(e, n), t); - return "buffer" != r && r ? i.toString(r) : i - } catch (t) { - throw Error("Error during encryption. Original error: " + t) - } - }, c.prototype.$$decryptKey = function(t, e, r) { - try { - e = s.isString(e) ? n.from(e, "base64") : e; - var i = this.keyPair.decrypt(e, t); - if (null === i) throw Error("Key decrypt method returns null."); - return this.$getDecryptedData(i, r) - } catch (t) { - throw Error("Error during decryption (probably incorrect key). Original error: " + t) - } - }, c.prototype.sign = function(t, e, r) { - if (!this.isPrivate()) throw Error("This is not private key"); - var n = this.keyPair.sign(this.$getDataForEncrypt(t, r)); - return e && "buffer" != e && (n = n.toString(e)), n - }, c.prototype.verify = function(t, e, r, n) { - if (!this.isPublic()) throw Error("This is not public key"); - return n = n && "buffer" != n ? n : null, this.keyPair.verify(this.$getDataForEncrypt(t, r), e, n) - }, c.prototype.getKeySize = function() { - return this.keyPair.keySize - }, c.prototype.getMaxMessageSize = function() { - return this.keyPair.maxMessageLength - }, c.prototype.$getDataForEncrypt = function(t, e) { - if (s.isString(t) || s.isNumber(t)) return n.from("" + t, e || "utf8"); - if (n.isBuffer(t)) return t; - if (s.isObject(t)) return n.from(JSON.stringify(t)); - throw Error("Unexpected data type") - }, c.prototype.$getDecryptedData = function(t, e) { - return "buffer" == (e = e || "buffer") ? t : "json" == e ? JSON.parse(t.toString()) : t.toString(e) - }, c - }() - }, - 4538: (t, e, r) => { - var n = r(3200); - t.exports = { - getEngine: function(t, e) { - var i = r(7469); - return "node" === e.environment && "function" == typeof n.publicEncrypt && "function" == typeof n.privateDecrypt && (i = "function" == typeof n.privateEncrypt && "function" == typeof n.publicDecrypt ? r(2418) : r(1957)), i(t, e) - } - } - }, - 2418: (t, e, r) => { - var n = r(3200), - i = r(7449), - o = r(1768); - t.exports = function(t, e) { - var r = o.pkcs1.makeScheme(t, e); - return { - encrypt: function(t, o) { - var s; - if (o) return s = i.RSA_PKCS1_PADDING, e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (s = e.encryptionSchemeOptions.padding), n.privateEncrypt({ - key: e.rsaUtils.exportKey("private"), - padding: s - }, t); - s = i.RSA_PKCS1_OAEP_PADDING, "pkcs1" === e.encryptionScheme && (s = i.RSA_PKCS1_PADDING), e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (s = e.encryptionSchemeOptions.padding); - var a = t; - return s === i.RSA_NO_PADDING && (a = r.pkcs0pad(t)), n.publicEncrypt({ - key: e.rsaUtils.exportKey("public"), - padding: s - }, a) - }, - decrypt: function(t, o) { - var s; - if (o) return s = i.RSA_PKCS1_PADDING, e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (s = e.encryptionSchemeOptions.padding), n.publicDecrypt({ - key: e.rsaUtils.exportKey("public"), - padding: s - }, t); - s = i.RSA_PKCS1_OAEP_PADDING, "pkcs1" === e.encryptionScheme && (s = i.RSA_PKCS1_PADDING), e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (s = e.encryptionSchemeOptions.padding); - var a = n.privateDecrypt({ - key: e.rsaUtils.exportKey("private"), - padding: s - }, t); - return s === i.RSA_NO_PADDING ? r.pkcs0unpad(a) : a + return c.prototype.setOptions = function(n) { + if ((n = n || {}).environment && (this.$options.environment = n.environment), n.signingScheme) { + if (s.isString(n.signingScheme)) { + var i = n.signingScheme.toLowerCase().split("-"); + 1 == i.length ? t.node.indexOf(i[0]) > -1 ? (this.$options.signingSchemeOptions = { + hash: i[0] + }, this.$options.signingScheme = r) : (this.$options.signingScheme = i[0], this.$options.signingSchemeOptions = { + hash: null + }) : (this.$options.signingSchemeOptions = { + hash: i[1] + }, this.$options.signingScheme = i[0]) + } else s.isObject(n.signingScheme) && (this.$options.signingScheme = n.signingScheme.scheme || r, this.$options.signingSchemeOptions = s.omit(n.signingScheme, "scheme")); + if (!f.isSignature(this.$options.signingScheme)) throw Error("Unsupported signing scheme"); + if (this.$options.signingSchemeOptions.hash && -1 === t[this.$options.environment].indexOf(this.$options.signingSchemeOptions.hash)) throw Error("Unsupported hashing algorithm for " + this.$options.environment + " environment") + } + if (n.encryptionScheme) { + if (s.isString(n.encryptionScheme) ? (this.$options.encryptionScheme = n.encryptionScheme.toLowerCase(), this.$options.encryptionSchemeOptions = {}) : s.isObject(n.encryptionScheme) && (this.$options.encryptionScheme = n.encryptionScheme.scheme || e, this.$options.encryptionSchemeOptions = s.omit(n.encryptionScheme, "scheme")), !f.isEncryption(this.$options.encryptionScheme)) throw Error("Unsupported encryption scheme"); + if (this.$options.encryptionSchemeOptions.hash && -1 === t[this.$options.environment].indexOf(this.$options.encryptionSchemeOptions.hash)) throw Error("Unsupported hashing algorithm for " + this.$options.environment + " environment") + } + this.keyPair.setOptions(this.$options) + }, c.prototype.generateKeyPair = function(t, e) { + if (e = e || 65537, (t = t || 2048) % 8 != 0) throw Error("Key size must be a multiple of 8."); + return this.keyPair.generate(t, e.toString(16)), this.$cache = {}, this + }, c.prototype.importKey = function(t, e) { + if (!t) throw Error("Empty key given"); + if (e && (e = i[e] || e), !u.detectAndImport(this.keyPair, t, e) && void 0 === e) throw Error("Key format must be specified"); + return this.$cache = {}, this + }, c.prototype.exportKey = function(t) { + return t = i[t = t || "private"] || t, this.$cache[t] || (this.$cache[t] = u.detectAndExport(this.keyPair, t)), this.$cache[t] + }, c.prototype.isPrivate = function() { + return this.keyPair.isPrivate() + }, c.prototype.isPublic = function(t) { + return this.keyPair.isPublic(t) + }, c.prototype.isEmpty = function(t) { + return !(this.keyPair.n || this.keyPair.e || this.keyPair.d) + }, c.prototype.encrypt = function(t, e, r) { + return this.$$encryptKey(!1, t, e, r) + }, c.prototype.decrypt = function(t, e) { + return this.$$decryptKey(!1, t, e) + }, c.prototype.encryptPrivate = function(t, e, r) { + return this.$$encryptKey(!0, t, e, r) + }, c.prototype.decryptPublic = function(t, e) { + return this.$$decryptKey(!0, t, e) + }, c.prototype.$$encryptKey = function(t, e, r, n) { + try { + var i = this.keyPair.encrypt(this.$getDataForEncrypt(e, n), t); + return "buffer" != r && r ? i.toString(r) : i + } catch (t) { + throw Error("Error during encryption. Original error: " + t) + } + }, c.prototype.$$decryptKey = function(t, e, r) { + try { + e = s.isString(e) ? n.from(e, "base64") : e; + var i = this.keyPair.decrypt(e, t); + if (null === i) throw Error("Key decrypt method returns null."); + return this.$getDecryptedData(i, r) + } catch (t) { + throw Error("Error during decryption (probably incorrect key). Original error: " + t) + } + }, c.prototype.sign = function(t, e, r) { + if (!this.isPrivate()) throw Error("This is not private key"); + var n = this.keyPair.sign(this.$getDataForEncrypt(t, r)); + return e && "buffer" != e && (n = n.toString(e)), n + }, c.prototype.verify = function(t, e, r, n) { + if (!this.isPublic()) throw Error("This is not public key"); + return n = n && "buffer" != n ? n : null, this.keyPair.verify(this.$getDataForEncrypt(t, r), e, n) + }, c.prototype.getKeySize = function() { + return this.keyPair.keySize + }, c.prototype.getMaxMessageSize = function() { + return this.keyPair.maxMessageLength + }, c.prototype.$getDataForEncrypt = function(t, e) { + if (s.isString(t) || s.isNumber(t)) return n.from("" + t, e || "utf8"); + if (n.isBuffer(t)) return t; + if (s.isObject(t)) return n.from(JSON.stringify(t)); + throw Error("Unexpected data type") + }, c.prototype.$getDecryptedData = function(t, e) { + return "buffer" == (e = e || "buffer") ? t : "json" == e ? JSON.parse(t.toString()) : t.toString(e) + }, c + }() + }, + 4538: (t, e, r) => { + var n = r(3200); + t.exports = { + getEngine: function(t, e) { + var i = r(7469); + return "node" === e.environment && "function" == typeof n.publicEncrypt && "function" == typeof n.privateDecrypt && (i = "function" == typeof n.privateEncrypt && "function" == typeof n.publicDecrypt ? r(2418) : r(1957)), i(t, e) } } - } - }, - 7469: (t, e, r) => { - var n = r(1973), - i = r(1768); - t.exports = function(t, e) { - var r = i.pkcs1.makeScheme(t, e); - return { - encrypt: function(e, i) { - var o, s; - return i ? (o = new n(r.encPad(e, { - type: 1 - })), s = t.$doPrivate(o)) : (o = new n(t.encryptionScheme.encPad(e)), s = t.$doPublic(o)), s.toBuffer(t.encryptedDataLength) - }, - decrypt: function(e, i) { - var o, s = new n(e); - return i ? (o = t.$doPublic(s), r.encUnPad(o.toBuffer(t.encryptedDataLength), { - type: 1 - })) : (o = t.$doPrivate(s), t.encryptionScheme.encUnPad(o.toBuffer(t.encryptedDataLength))) - } - } - } - }, - 1957: (t, e, r) => { - var n = r(3200), - i = r(7449), - o = r(1768); - t.exports = function(t, e) { - var s = r(7469)(t, e), - a = o.pkcs1.makeScheme(t, e); - return { - encrypt: function(t, r) { - if (r) return s.encrypt(t, r); - var o = i.RSA_PKCS1_OAEP_PADDING; - "pkcs1" === e.encryptionScheme && (o = i.RSA_PKCS1_PADDING), e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (o = e.encryptionSchemeOptions.padding); - var f = t; - return o === i.RSA_NO_PADDING && (f = a.pkcs0pad(t)), n.publicEncrypt({ - key: e.rsaUtils.exportKey("public"), - padding: o - }, f) - }, - decrypt: function(t, r) { - if (r) return s.decrypt(t, r); - var o = i.RSA_PKCS1_OAEP_PADDING; - "pkcs1" === e.encryptionScheme && (o = i.RSA_PKCS1_PADDING), e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (o = e.encryptionSchemeOptions.padding); - var f = n.privateDecrypt({ - key: e.rsaUtils.exportKey("private"), - padding: o - }, t); - return o === i.RSA_NO_PADDING ? a.pkcs0unpad(f) : f - } - } - } - }, - 3374: (t, e, r) => { - r(8226)._, r(8226), t.exports = { - privateExport: function(t, e) { + }, + 2418: (t, e, r) => { + var n = r(3200), + i = r(7449), + o = r(1768); + t.exports = function(t, e) { + var r = o.pkcs1.makeScheme(t, e); return { - n: t.n.toBuffer(), - e: t.e, - d: t.d.toBuffer(), - p: t.p.toBuffer(), - q: t.q.toBuffer(), - dmp1: t.dmp1.toBuffer(), - dmq1: t.dmq1.toBuffer(), - coeff: t.coeff.toBuffer() + encrypt: function(t, o) { + var s; + if (o) return s = i.RSA_PKCS1_PADDING, e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (s = e.encryptionSchemeOptions.padding), n.privateEncrypt({ + key: e.rsaUtils.exportKey("private"), + padding: s + }, t); + s = i.RSA_PKCS1_OAEP_PADDING, "pkcs1" === e.encryptionScheme && (s = i.RSA_PKCS1_PADDING), e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (s = e.encryptionSchemeOptions.padding); + var a = t; + return s === i.RSA_NO_PADDING && (a = r.pkcs0pad(t)), n.publicEncrypt({ + key: e.rsaUtils.exportKey("public"), + padding: s + }, a) + }, + decrypt: function(t, o) { + var s; + if (o) return s = i.RSA_PKCS1_PADDING, e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (s = e.encryptionSchemeOptions.padding), n.publicDecrypt({ + key: e.rsaUtils.exportKey("public"), + padding: s + }, t); + s = i.RSA_PKCS1_OAEP_PADDING, "pkcs1" === e.encryptionScheme && (s = i.RSA_PKCS1_PADDING), e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (s = e.encryptionSchemeOptions.padding); + var a = n.privateDecrypt({ + key: e.rsaUtils.exportKey("private"), + padding: s + }, t); + return s === i.RSA_NO_PADDING ? r.pkcs0unpad(a) : a + } } - }, - privateImport: function(t, e, r) { - if (!(e.n && e.e && e.d && e.p && e.q && e.dmp1 && e.dmq1 && e.coeff)) throw Error("Invalid key data"); - t.setPrivate(e.n, e.e, e.d, e.p, e.q, e.dmp1, e.dmq1, e.coeff) - }, - publicExport: function(t, e) { + } + }, + 7469: (t, e, r) => { + var n = r(1973), + i = r(1768); + t.exports = function(t, e) { + var r = i.pkcs1.makeScheme(t, e); return { - n: t.n.toBuffer(), - e: t.e + encrypt: function(e, i) { + var o, s; + return i ? (o = new n(r.encPad(e, { + type: 1 + })), s = t.$doPrivate(o)) : (o = new n(t.encryptionScheme.encPad(e)), s = t.$doPublic(o)), s.toBuffer(t.encryptedDataLength) + }, + decrypt: function(e, i) { + var o, s = new n(e); + return i ? (o = t.$doPublic(s), r.encUnPad(o.toBuffer(t.encryptedDataLength), { + type: 1 + })) : (o = t.$doPrivate(s), t.encryptionScheme.encUnPad(o.toBuffer(t.encryptedDataLength))) + } } - }, - publicImport: function(t, e, r) { - if (!e.n || !e.e) throw Error("Invalid key data"); - t.setPublic(e.n, e.e) - }, - autoImport: function(e, r) { - return !(!r.n || !r.e || (r.d && r.p && r.q && r.dmp1 && r.dmq1 && r.coeff ? (t.exports.privateImport(e, r), 0) : (t.exports.publicImport(e, r), 0))) } - } - }, - 7460: (t, e, r) => { - function n(t) { - t = t.split("-"); - for (var e = "private", r = { - type: "default" - }, n = 1; n < t.length; n++) if (t[n]) switch (t[n]) { - case "public": - case "private": - e = t[n]; - break; - case "pem": - case "der": - r.type = t[n] - } - return { - scheme: t[0], - keyType: e, - keyOpt: r - } - } - r(8226)._, t.exports = { - pkcs1: r(6566), - pkcs8: r(8573), - components: r(3374), - openssh: r(3194), - isPrivateExport: function(e) { - return t.exports[e] && "function" == typeof t.exports[e].privateExport - }, - isPrivateImport: function(e) { - return t.exports[e] && "function" == typeof t.exports[e].privateImport - }, - isPublicExport: function(e) { - return t.exports[e] && "function" == typeof t.exports[e].publicExport - }, - isPublicImport: function(e) { - return t.exports[e] && "function" == typeof t.exports[e].publicImport - }, - detectAndImport: function(e, r, i) { - if (void 0 === i) { - for (var o in t.exports) if ("function" == typeof t.exports[o].autoImport && t.exports[o].autoImport(e, r)) return !0 - } else if (i) { - var s = n(i); - if (!t.exports[s.scheme]) throw Error("Unsupported key format"); - "private" === s.keyType ? t.exports[s.scheme].privateImport(e, r, s.keyOpt) : t.exports[s.scheme].publicImport(e, r, s.keyOpt) + }, + 1957: (t, e, r) => { + var n = r(3200), + i = r(7449), + o = r(1768); + t.exports = function(t, e) { + var s = r(7469)(t, e), + a = o.pkcs1.makeScheme(t, e); + return { + encrypt: function(t, r) { + if (r) return s.encrypt(t, r); + var o = i.RSA_PKCS1_OAEP_PADDING; + "pkcs1" === e.encryptionScheme && (o = i.RSA_PKCS1_PADDING), e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (o = e.encryptionSchemeOptions.padding); + var f = t; + return o === i.RSA_NO_PADDING && (f = a.pkcs0pad(t)), n.publicEncrypt({ + key: e.rsaUtils.exportKey("public"), + padding: o + }, f) + }, + decrypt: function(t, r) { + if (r) return s.decrypt(t, r); + var o = i.RSA_PKCS1_OAEP_PADDING; + "pkcs1" === e.encryptionScheme && (o = i.RSA_PKCS1_PADDING), e.encryptionSchemeOptions && e.encryptionSchemeOptions.padding && (o = e.encryptionSchemeOptions.padding); + var f = n.privateDecrypt({ + key: e.rsaUtils.exportKey("private"), + padding: o + }, t); + return o === i.RSA_NO_PADDING ? a.pkcs0unpad(f) : f + } } - return !1 - }, - detectAndExport: function(e, r) { - if (r) { - var i = n(r); - if (t.exports[i.scheme]) { - if ("private" === i.keyType) { - if (!e.isPrivate()) throw Error("This is not private key"); - return t.exports[i.scheme].privateExport(e, i.keyOpt) + } + }, + 3374: (t, e, r) => { + r(8226)._, r(8226), t.exports = { + privateExport: function(t, e) { + return { + n: t.n.toBuffer(), + e: t.e, + d: t.d.toBuffer(), + p: t.p.toBuffer(), + q: t.q.toBuffer(), + dmp1: t.dmp1.toBuffer(), + dmq1: t.dmq1.toBuffer(), + coeff: t.coeff.toBuffer() + } + }, + privateImport: function(t, e, r) { + if (!(e.n && e.e && e.d && e.p && e.q && e.dmp1 && e.dmq1 && e.coeff)) throw Error("Invalid key data"); + t.setPrivate(e.n, e.e, e.d, e.p, e.q, e.dmp1, e.dmq1, e.coeff) + }, + publicExport: function(t, e) { + return { + n: t.n.toBuffer(), + e: t.e + } + }, + publicImport: function(t, e, r) { + if (!e.n || !e.e) throw Error("Invalid key data"); + t.setPublic(e.n, e.e) + }, + autoImport: function(e, r) { + return !(!r.n || !r.e || (r.d && r.p && r.q && r.dmp1 && r.dmq1 && r.coeff ? (t.exports.privateImport(e, r), 0) : (t.exports.publicImport(e, r), 0))) + } + } + }, + 7460: (t, e, r) => { + function n(t) { + t = t.split("-"); + for (var e = "private", r = { + type: "default" + }, n = 1; n < t.length; n++) + if (t[n]) switch (t[n]) { + case "public": + case "private": + e = t[n]; + break; + case "pem": + case "der": + r.type = t[n] + } + return { + scheme: t[0], + keyType: e, + keyOpt: r + } + } + r(8226)._, t.exports = { + pkcs1: r(6566), + pkcs8: r(8573), + components: r(3374), + openssh: r(3194), + isPrivateExport: function(e) { + return t.exports[e] && "function" == typeof t.exports[e].privateExport + }, + isPrivateImport: function(e) { + return t.exports[e] && "function" == typeof t.exports[e].privateImport + }, + isPublicExport: function(e) { + return t.exports[e] && "function" == typeof t.exports[e].publicExport + }, + isPublicImport: function(e) { + return t.exports[e] && "function" == typeof t.exports[e].publicImport + }, + detectAndImport: function(e, r, i) { + if (void 0 === i) { + for (var o in t.exports) + if ("function" == typeof t.exports[o].autoImport && t.exports[o].autoImport(e, r)) return !0 + } else if (i) { + var s = n(i); + if (!t.exports[s.scheme]) throw Error("Unsupported key format"); + "private" === s.keyType ? t.exports[s.scheme].privateImport(e, r, s.keyOpt) : t.exports[s.scheme].publicImport(e, r, s.keyOpt) + } + return !1 + }, + detectAndExport: function(e, r) { + if (r) { + var i = n(r); + if (t.exports[i.scheme]) { + if ("private" === i.keyType) { + if (!e.isPrivate()) throw Error("This is not private key"); + return t.exports[i.scheme].privateExport(e, i.keyOpt) + } + if (!e.isPublic()) throw Error("This is not public key"); + return t.exports[i.scheme].publicExport(e, i.keyOpt) } - if (!e.isPublic()) throw Error("This is not public key"); - return t.exports[i.scheme].publicExport(e, i.keyOpt) + throw Error("Unsupported key format") } - throw Error("Unsupported key format") } } - } - }, - 3194: (t, e, r) => { - var n = r(8287).Buffer, - i = r(8226)._, - o = r(8226), - s = r(1973); - const a = "-----BEGIN OPENSSH PRIVATE KEY-----", f = "-----END OPENSSH PRIVATE KEY-----"; + }, + 3194: (t, e, r) => { + var n = r(8287).Buffer, + i = r(8226)._, + o = r(8226), + s = r(1973); + const a = "-----BEGIN OPENSSH PRIVATE KEY-----", + f = "-----END OPENSSH PRIVATE KEY-----"; - function u(t) { - const e = t.buf.readInt32BE(t.off); - t.off += 4; - const r = t.buf.slice(t.off, t.off + e); - return t.off += e, r - } - function c(t, e) { - t.buf.writeInt32BE(e.byteLength, t.off), t.off += 4, t.off += e.copy(t.buf, t.off) - } - t.exports = { - privateExport: function(t, e) { - const r = t.n.toBuffer(); - let i = n.alloc(4); - for (i.writeUInt32BE(t.e, 0); 0 === i[0];) i = i.slice(1); - const s = t.d.toBuffer(), u = t.coeff.toBuffer(), h = t.p.toBuffer(), p = t.q.toBuffer(); - let l; - l = void 0 !== t.sshcomment ? n.from(t.sshcomment) : n.from([]); - const y = 15 + i.byteLength + 4 + r.byteLength, g = 23 + r.byteLength + 4 + i.byteLength + 4 + s.byteLength + 4 + u.byteLength + 4 + h.byteLength + 4 + p.byteLength + 4 + l.byteLength; - let d = 43 + y + 4 + g; - d += 8 * Math.ceil(g / 8) - g; - const v = n.alloc(d), m = { - buf: v, - off: 0 - }; - v.write("openssh-key-v1", "utf8"), v.writeUInt8(0, 14), m.off += 15, c(m, n.from("none")), c(m, n.from("none")), c(m, n.from("")), m.off = m.buf.writeUInt32BE(1, m.off), m.off = m.buf.writeUInt32BE(y, m.off), c(m, n.from("ssh-rsa")), c(m, i), c(m, r), m.off = m.buf.writeUInt32BE(d - 47 - y, m.off), m.off += 8, c(m, n.from("ssh-rsa")), c(m, r), c(m, i), c(m, s), c(m, u), c(m, h), c(m, p), c(m, l); - let S = 1; - for (; m.off < d;) m.off = m.buf.writeUInt8(S++, m.off); - return "der" === e.type ? m.buf : a + "\n" + o.linebrk(v.toString("base64"), 70) + "\n" + f + "\n" - }, - privateImport: function(t, e, r) { - var c; - if ("der" !== (r = r || {}).type) { - if (n.isBuffer(e) && (e = e.toString("utf8")), !i.isString(e)) throw Error("Unsupported key format"); - var h = o.trimSurroundingText(e, a, f).replace(/\s+|\n\r|\n|\r$/gm, ""); - c = n.from(h, "base64") - } else { - if (!n.isBuffer(e)) throw Error("Unsupported key format"); - c = e - } - const p = { - buf: c, - off: 0 - }; - if ("openssh-key-v1" !== c.slice(0, 14).toString("ascii")) throw "Invalid file format."; - if (p.off += 15, "none" !== u(p).toString("ascii")) throw Error("Unsupported key type"); - if ("none" !== u(p).toString("ascii")) throw Error("Unsupported key type"); - if ("" !== u(p).toString("ascii")) throw Error("Unsupported key type"); - if (p.off += 4, p.off += 4, "ssh-rsa" !== u(p).toString("ascii")) throw Error("Unsupported key type"); - if (u(p), u(p), p.off += 12, "ssh-rsa" !== u(p).toString("ascii")) throw Error("Unsupported key type"); - const l = u(p), y = u(p), g = u(p), d = u(p), v = u(p), m = u(p), S = new s(g), _ = new s(m), b = new s(v), E = S.mod(b.subtract(s.ONE)), w = S.mod(_.subtract(s.ONE)); - t.setPrivate(l, y, g, v, m, E.toBuffer(), w.toBuffer(), d), t.sshcomment = u(p).toString("ascii") - }, - publicExport: function(t, e) { - let r = n.alloc(4); - for (r.writeUInt32BE(t.e, 0); 0 === r[0];) r = r.slice(1); - const i = t.n.toBuffer(), o = n.alloc(r.byteLength + 4 + i.byteLength + 4 + 7 + 4), s = { - buf: o, - off: 0 - }; - c(s, n.from("ssh-rsa")), c(s, r), c(s, i); - let a = t.sshcomment || ""; - return "der" === e.type ? s.buf : "ssh-rsa " + o.toString("base64") + " " + a + "\n" - }, - publicImport: function(t, e, r) { - var o; - if ("der" !== (r = r || {}).type) { - if (n.isBuffer(e) && (e = e.toString("utf8")), !i.isString(e)) throw Error("Unsupported key format"); { - if ("ssh-rsa " !== e.substring(0, 8)) throw Error("Unsupported key format"); - let r = e.indexOf(" ", 8); - 1 === r ? r = e.length : t.sshcomment = e.substring(r + 1).replace(/\s+|\n\r|\n|\r$/gm, ""); - const i = e.substring(8, r).replace(/\s+|\n\r|\n|\r$/gm, ""); - o = n.from(i, "base64") - } - } else { - if (!n.isBuffer(e)) throw Error("Unsupported key format"); - o = e - } - const s = { - buf: o, - off: 0 - }, a = u(s).toString("ascii"); - if ("ssh-rsa" !== a) throw Error("Invalid key type: " + a); - const f = u(s), c = u(s); - t.setPublic(c, f) - }, - autoImport: function(e, r) { - return /^[\S\s]*-----BEGIN OPENSSH PRIVATE KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END OPENSSH PRIVATE KEY-----[\S\s]*$/g.test(r) ? (t.exports.privateImport(e, r), !0) : !! /^[\S\s]*ssh-rsa \s*(?=(([A-Za-z0-9+/=]+\s*)+))\1[\S\s]*$/g.test(r) && (t.exports.publicImport(e, r), !0) + function u(t) { + const e = t.buf.readInt32BE(t.off); + t.off += 4; + const r = t.buf.slice(t.off, t.off + e); + return t.off += e, r } - } - }, - 6566: (t, e, r) => { - var n = r(8287).Buffer, - i = r(3100).Ber, - o = r(8226)._, - s = r(8226); - const a = "-----BEGIN RSA PRIVATE KEY-----", f = "-----END RSA PRIVATE KEY-----", u = "-----BEGIN RSA PUBLIC KEY-----", c = "-----END RSA PUBLIC KEY-----"; - t.exports = { - privateExport: function(t, e) { - e = e || {}; - var r = t.n.toBuffer(), - n = t.d.toBuffer(), - o = t.p.toBuffer(), - u = t.q.toBuffer(), - c = t.dmp1.toBuffer(), - h = t.dmq1.toBuffer(), - p = t.coeff.toBuffer(), - l = r.length + n.length + o.length + u.length + c.length + h.length + p.length + 512, - y = new i.Writer({ - size: l - }); - return y.startSequence(), y.writeInt(0), y.writeBuffer(r, 2), y.writeInt(t.e), y.writeBuffer(n, 2), y.writeBuffer(o, 2), y.writeBuffer(u, 2), y.writeBuffer(c, 2), y.writeBuffer(h, 2), y.writeBuffer(p, 2), y.endSequence(), "der" === e.type ? y.buffer : a + "\n" + s.linebrk(y.buffer.toString("base64"), 64) + "\n" + f - }, - privateImport: function(t, e, r) { - var u; - if ("der" !== (r = r || {}).type) { - if (n.isBuffer(e) && (e = e.toString("utf8")), !o.isString(e)) throw Error("Unsupported key format"); - var c = s.trimSurroundingText(e, a, f).replace(/\s+|\n\r|\n|\r$/gm, ""); - u = n.from(c, "base64") - } else { - if (!n.isBuffer(e)) throw Error("Unsupported key format"); - u = e - } - var h = new i.Reader(u); - h.readSequence(), h.readString(2, !0), t.setPrivate(h.readString(2, !0), h.readString(2, !0), h.readString(2, !0), h.readString(2, !0), h.readString(2, !0), h.readString(2, !0), h.readString(2, !0), h.readString(2, !0)) - }, - publicExport: function(t, e) { - e = e || {}; - var r = t.n.toBuffer(), - n = r.length + 512, - o = new i.Writer({ - size: n - }); - return o.startSequence(), o.writeBuffer(r, 2), o.writeInt(t.e), o.endSequence(), "der" === e.type ? o.buffer : u + "\n" + s.linebrk(o.buffer.toString("base64"), 64) + "\n" + c - }, - publicImport: function(t, e, r) { - var a; - if ("der" !== (r = r || {}).type) { - if (n.isBuffer(e) && (e = e.toString("utf8")), o.isString(e)) { - var f = s.trimSurroundingText(e, u, c).replace(/\s+|\n\r|\n|\r$/gm, ""); - a = n.from(f, "base64") - } - } else { - if (!n.isBuffer(e)) throw Error("Unsupported key format"); - a = e - } - var h = new i.Reader(a); - h.readSequence(), t.setPublic(h.readString(2, !0), h.readString(2, !0)) - }, - autoImport: function(e, r) { - return /^[\S\s]*-----BEGIN RSA PRIVATE KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END RSA PRIVATE KEY-----[\S\s]*$/g.test(r) ? (t.exports.privateImport(e, r), !0) : !! /^[\S\s]*-----BEGIN RSA PUBLIC KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END RSA PUBLIC KEY-----[\S\s]*$/g.test(r) && (t.exports.publicImport(e, r), !0) + + function c(t, e) { + t.buf.writeInt32BE(e.byteLength, t.off), t.off += 4, t.off += e.copy(t.buf, t.off) } - } - }, - 8573: (t, e, r) => { - var n = r(8287).Buffer, - i = r(3100).Ber, - o = r(8226)._, - s = "1.2.840.113549.1.1.1", - a = r(8226); - const f = "-----BEGIN PRIVATE KEY-----", u = "-----END PRIVATE KEY-----", c = "-----BEGIN PUBLIC KEY-----", h = "-----END PUBLIC KEY-----"; - t.exports = { - privateExport: function(t, e) { - e = e || {}; - var r = t.n.toBuffer(), - n = t.d.toBuffer(), - o = t.p.toBuffer(), - c = t.q.toBuffer(), - h = t.dmp1.toBuffer(), - p = t.dmq1.toBuffer(), - l = t.coeff.toBuffer(), - y = r.length + n.length + o.length + c.length + h.length + p.length + l.length + 512, - g = new i.Writer({ + t.exports = { + privateExport: function(t, e) { + const r = t.n.toBuffer(); + let i = n.alloc(4); + for (i.writeUInt32BE(t.e, 0); 0 === i[0];) i = i.slice(1); + const s = t.d.toBuffer(), + u = t.coeff.toBuffer(), + h = t.p.toBuffer(), + p = t.q.toBuffer(); + let l; + l = void 0 !== t.sshcomment ? n.from(t.sshcomment) : n.from([]); + const y = 15 + i.byteLength + 4 + r.byteLength, + g = 23 + r.byteLength + 4 + i.byteLength + 4 + s.byteLength + 4 + u.byteLength + 4 + h.byteLength + 4 + p.byteLength + 4 + l.byteLength; + let d = 43 + y + 4 + g; + d += 8 * Math.ceil(g / 8) - g; + const v = n.alloc(d), + m = { + buf: v, + off: 0 + }; + v.write("openssh-key-v1", "utf8"), v.writeUInt8(0, 14), m.off += 15, c(m, n.from("none")), c(m, n.from("none")), c(m, n.from("")), m.off = m.buf.writeUInt32BE(1, m.off), m.off = m.buf.writeUInt32BE(y, m.off), c(m, n.from("ssh-rsa")), c(m, i), c(m, r), m.off = m.buf.writeUInt32BE(d - 47 - y, m.off), m.off += 8, c(m, n.from("ssh-rsa")), c(m, r), c(m, i), c(m, s), c(m, u), c(m, h), c(m, p), c(m, l); + let S = 1; + for (; m.off < d;) m.off = m.buf.writeUInt8(S++, m.off); + return "der" === e.type ? m.buf : a + "\n" + o.linebrk(v.toString("base64"), 70) + "\n" + f + "\n" + }, + privateImport: function(t, e, r) { + var c; + if ("der" !== (r = r || {}).type) { + if (n.isBuffer(e) && (e = e.toString("utf8")), !i.isString(e)) throw Error("Unsupported key format"); + var h = o.trimSurroundingText(e, a, f).replace(/\s+|\n\r|\n|\r$/gm, ""); + c = n.from(h, "base64") + } else { + if (!n.isBuffer(e)) throw Error("Unsupported key format"); + c = e + } + const p = { + buf: c, + off: 0 + }; + if ("openssh-key-v1" !== c.slice(0, 14).toString("ascii")) throw "Invalid file format."; + if (p.off += 15, "none" !== u(p).toString("ascii")) throw Error("Unsupported key type"); + if ("none" !== u(p).toString("ascii")) throw Error("Unsupported key type"); + if ("" !== u(p).toString("ascii")) throw Error("Unsupported key type"); + if (p.off += 4, p.off += 4, "ssh-rsa" !== u(p).toString("ascii")) throw Error("Unsupported key type"); + if (u(p), u(p), p.off += 12, "ssh-rsa" !== u(p).toString("ascii")) throw Error("Unsupported key type"); + const l = u(p), + y = u(p), + g = u(p), + d = u(p), + v = u(p), + m = u(p), + S = new s(g), + _ = new s(m), + b = new s(v), + E = S.mod(b.subtract(s.ONE)), + w = S.mod(_.subtract(s.ONE)); + t.setPrivate(l, y, g, v, m, E.toBuffer(), w.toBuffer(), d), t.sshcomment = u(p).toString("ascii") + }, + publicExport: function(t, e) { + let r = n.alloc(4); + for (r.writeUInt32BE(t.e, 0); 0 === r[0];) r = r.slice(1); + const i = t.n.toBuffer(), + o = n.alloc(r.byteLength + 4 + i.byteLength + 4 + 7 + 4), + s = { + buf: o, + off: 0 + }; + c(s, n.from("ssh-rsa")), c(s, r), c(s, i); + let a = t.sshcomment || ""; + return "der" === e.type ? s.buf : "ssh-rsa " + o.toString("base64") + " " + a + "\n" + }, + publicImport: function(t, e, r) { + var o; + if ("der" !== (r = r || {}).type) { + if (n.isBuffer(e) && (e = e.toString("utf8")), !i.isString(e)) throw Error("Unsupported key format"); + { + if ("ssh-rsa " !== e.substring(0, 8)) throw Error("Unsupported key format"); + let r = e.indexOf(" ", 8); - 1 === r ? r = e.length : t.sshcomment = e.substring(r + 1).replace(/\s+|\n\r|\n|\r$/gm, ""); + const i = e.substring(8, r).replace(/\s+|\n\r|\n|\r$/gm, ""); + o = n.from(i, "base64") + } + } else { + if (!n.isBuffer(e)) throw Error("Unsupported key format"); + o = e + } + const s = { + buf: o, + off: 0 + }, + a = u(s).toString("ascii"); + if ("ssh-rsa" !== a) throw Error("Invalid key type: " + a); + const f = u(s), + c = u(s); + t.setPublic(c, f) + }, + autoImport: function(e, r) { + return /^[\S\s]*-----BEGIN OPENSSH PRIVATE KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END OPENSSH PRIVATE KEY-----[\S\s]*$/g.test(r) ? (t.exports.privateImport(e, r), !0) : !!/^[\S\s]*ssh-rsa \s*(?=(([A-Za-z0-9+/=]+\s*)+))\1[\S\s]*$/g.test(r) && (t.exports.publicImport(e, r), !0) + } + } + }, + 6566: (t, e, r) => { + var n = r(8287).Buffer, + i = r(3100).Ber, + o = r(8226)._, + s = r(8226); + const a = "-----BEGIN RSA PRIVATE KEY-----", + f = "-----END RSA PRIVATE KEY-----", + u = "-----BEGIN RSA PUBLIC KEY-----", + c = "-----END RSA PUBLIC KEY-----"; + t.exports = { + privateExport: function(t, e) { + e = e || {}; + var r = t.n.toBuffer(), + n = t.d.toBuffer(), + o = t.p.toBuffer(), + u = t.q.toBuffer(), + c = t.dmp1.toBuffer(), + h = t.dmq1.toBuffer(), + p = t.coeff.toBuffer(), + l = r.length + n.length + o.length + u.length + c.length + h.length + p.length + 512, + y = new i.Writer({ + size: l + }); + return y.startSequence(), y.writeInt(0), y.writeBuffer(r, 2), y.writeInt(t.e), y.writeBuffer(n, 2), y.writeBuffer(o, 2), y.writeBuffer(u, 2), y.writeBuffer(c, 2), y.writeBuffer(h, 2), y.writeBuffer(p, 2), y.endSequence(), "der" === e.type ? y.buffer : a + "\n" + s.linebrk(y.buffer.toString("base64"), 64) + "\n" + f + }, + privateImport: function(t, e, r) { + var u; + if ("der" !== (r = r || {}).type) { + if (n.isBuffer(e) && (e = e.toString("utf8")), !o.isString(e)) throw Error("Unsupported key format"); + var c = s.trimSurroundingText(e, a, f).replace(/\s+|\n\r|\n|\r$/gm, ""); + u = n.from(c, "base64") + } else { + if (!n.isBuffer(e)) throw Error("Unsupported key format"); + u = e + } + var h = new i.Reader(u); + h.readSequence(), h.readString(2, !0), t.setPrivate(h.readString(2, !0), h.readString(2, !0), h.readString(2, !0), h.readString(2, !0), h.readString(2, !0), h.readString(2, !0), h.readString(2, !0), h.readString(2, !0)) + }, + publicExport: function(t, e) { + e = e || {}; + var r = t.n.toBuffer(), + n = r.length + 512, + o = new i.Writer({ + size: n + }); + return o.startSequence(), o.writeBuffer(r, 2), o.writeInt(t.e), o.endSequence(), "der" === e.type ? o.buffer : u + "\n" + s.linebrk(o.buffer.toString("base64"), 64) + "\n" + c + }, + publicImport: function(t, e, r) { + var a; + if ("der" !== (r = r || {}).type) { + if (n.isBuffer(e) && (e = e.toString("utf8")), o.isString(e)) { + var f = s.trimSurroundingText(e, u, c).replace(/\s+|\n\r|\n|\r$/gm, ""); + a = n.from(f, "base64") + } + } else { + if (!n.isBuffer(e)) throw Error("Unsupported key format"); + a = e + } + var h = new i.Reader(a); + h.readSequence(), t.setPublic(h.readString(2, !0), h.readString(2, !0)) + }, + autoImport: function(e, r) { + return /^[\S\s]*-----BEGIN RSA PRIVATE KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END RSA PRIVATE KEY-----[\S\s]*$/g.test(r) ? (t.exports.privateImport(e, r), !0) : !!/^[\S\s]*-----BEGIN RSA PUBLIC KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END RSA PUBLIC KEY-----[\S\s]*$/g.test(r) && (t.exports.publicImport(e, r), !0) + } + } + }, + 8573: (t, e, r) => { + var n = r(8287).Buffer, + i = r(3100).Ber, + o = r(8226)._, + s = "1.2.840.113549.1.1.1", + a = r(8226); + const f = "-----BEGIN PRIVATE KEY-----", + u = "-----END PRIVATE KEY-----", + c = "-----BEGIN PUBLIC KEY-----", + h = "-----END PUBLIC KEY-----"; + t.exports = { + privateExport: function(t, e) { + e = e || {}; + var r = t.n.toBuffer(), + n = t.d.toBuffer(), + o = t.p.toBuffer(), + c = t.q.toBuffer(), + h = t.dmp1.toBuffer(), + p = t.dmq1.toBuffer(), + l = t.coeff.toBuffer(), + y = r.length + n.length + o.length + c.length + h.length + p.length + l.length + 512, + g = new i.Writer({ + size: y + }); + g.startSequence(), g.writeInt(0), g.writeBuffer(r, 2), g.writeInt(t.e), g.writeBuffer(n, 2), g.writeBuffer(o, 2), g.writeBuffer(c, 2), g.writeBuffer(h, 2), g.writeBuffer(p, 2), g.writeBuffer(l, 2), g.endSequence(); + var d = new i.Writer({ size: y }); - g.startSequence(), g.writeInt(0), g.writeBuffer(r, 2), g.writeInt(t.e), g.writeBuffer(n, 2), g.writeBuffer(o, 2), g.writeBuffer(c, 2), g.writeBuffer(h, 2), g.writeBuffer(p, 2), g.writeBuffer(l, 2), g.endSequence(); - var d = new i.Writer({ - size: y - }); - return d.startSequence(), d.writeInt(0), d.startSequence(), d.writeOID(s), d.writeNull(), d.endSequence(), d.writeBuffer(g.buffer, 4), d.endSequence(), "der" === e.type ? d.buffer : f + "\n" + a.linebrk(d.buffer.toString("base64"), 64) + "\n" + u - }, - privateImport: function(t, e, r) { - var c; - if ("der" !== (r = r || {}).type) { - if (n.isBuffer(e) && (e = e.toString("utf8")), !o.isString(e)) throw Error("Unsupported key format"); - var h = a.trimSurroundingText(e, f, u).replace("-----END PRIVATE KEY-----", "").replace(/\s+|\n\r|\n|\r$/gm, ""); - c = n.from(h, "base64") - } else { - if (!n.isBuffer(e)) throw Error("Unsupported key format"); - c = e - } - var p = new i.Reader(c); - if (p.readSequence(), p.readInt(0), new i.Reader(p.readString(48, !0)).readOID(6, !0) !== s) throw Error("Invalid Public key format"); - var l = new i.Reader(p.readString(4, !0)); - l.readSequence(), l.readString(2, !0), t.setPrivate(l.readString(2, !0), l.readString(2, !0), l.readString(2, !0), l.readString(2, !0), l.readString(2, !0), l.readString(2, !0), l.readString(2, !0), l.readString(2, !0)) - }, - publicExport: function(t, e) { - e = e || {}; - var r = t.n.toBuffer(), - n = r.length + 512, - o = new i.Writer({ + return d.startSequence(), d.writeInt(0), d.startSequence(), d.writeOID(s), d.writeNull(), d.endSequence(), d.writeBuffer(g.buffer, 4), d.endSequence(), "der" === e.type ? d.buffer : f + "\n" + a.linebrk(d.buffer.toString("base64"), 64) + "\n" + u + }, + privateImport: function(t, e, r) { + var c; + if ("der" !== (r = r || {}).type) { + if (n.isBuffer(e) && (e = e.toString("utf8")), !o.isString(e)) throw Error("Unsupported key format"); + var h = a.trimSurroundingText(e, f, u).replace("-----END PRIVATE KEY-----", "").replace(/\s+|\n\r|\n|\r$/gm, ""); + c = n.from(h, "base64") + } else { + if (!n.isBuffer(e)) throw Error("Unsupported key format"); + c = e + } + var p = new i.Reader(c); + if (p.readSequence(), p.readInt(0), new i.Reader(p.readString(48, !0)).readOID(6, !0) !== s) throw Error("Invalid Public key format"); + var l = new i.Reader(p.readString(4, !0)); + l.readSequence(), l.readString(2, !0), t.setPrivate(l.readString(2, !0), l.readString(2, !0), l.readString(2, !0), l.readString(2, !0), l.readString(2, !0), l.readString(2, !0), l.readString(2, !0), l.readString(2, !0)) + }, + publicExport: function(t, e) { + e = e || {}; + var r = t.n.toBuffer(), + n = r.length + 512, + o = new i.Writer({ + size: n + }); + o.writeByte(0), o.startSequence(), o.writeBuffer(r, 2), o.writeInt(t.e), o.endSequence(); + var f = new i.Writer({ size: n }); - o.writeByte(0), o.startSequence(), o.writeBuffer(r, 2), o.writeInt(t.e), o.endSequence(); - var f = new i.Writer({ - size: n - }); - return f.startSequence(), f.startSequence(), f.writeOID(s), f.writeNull(), f.endSequence(), f.writeBuffer(o.buffer, 3), f.endSequence(), "der" === e.type ? f.buffer : c + "\n" + a.linebrk(f.buffer.toString("base64"), 64) + "\n" + h - }, - publicImport: function(t, e, r) { - var f; - if ("der" !== (r = r || {}).type) { - if (n.isBuffer(e) && (e = e.toString("utf8")), o.isString(e)) { - var u = a.trimSurroundingText(e, c, h).replace(/\s+|\n\r|\n|\r$/gm, ""); - f = n.from(u, "base64") + return f.startSequence(), f.startSequence(), f.writeOID(s), f.writeNull(), f.endSequence(), f.writeBuffer(o.buffer, 3), f.endSequence(), "der" === e.type ? f.buffer : c + "\n" + a.linebrk(f.buffer.toString("base64"), 64) + "\n" + h + }, + publicImport: function(t, e, r) { + var f; + if ("der" !== (r = r || {}).type) { + if (n.isBuffer(e) && (e = e.toString("utf8")), o.isString(e)) { + var u = a.trimSurroundingText(e, c, h).replace(/\s+|\n\r|\n|\r$/gm, ""); + f = n.from(u, "base64") + } + } else { + if (!n.isBuffer(e)) throw Error("Unsupported key format"); + f = e } - } else { - if (!n.isBuffer(e)) throw Error("Unsupported key format"); - f = e + var p = new i.Reader(f); + if (p.readSequence(), new i.Reader(p.readString(48, !0)).readOID(6, !0) !== s) throw Error("Invalid Public key format"); + var l = new i.Reader(p.readString(3, !0)); + l.readByte(), l.readSequence(), t.setPublic(l.readString(2, !0), l.readString(2, !0)) + }, + autoImport: function(e, r) { + return /^[\S\s]*-----BEGIN PRIVATE KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END PRIVATE KEY-----[\S\s]*$/g.test(r) ? (t.exports.privateImport(e, r), !0) : !!/^[\S\s]*-----BEGIN PUBLIC KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END PUBLIC KEY-----[\S\s]*$/g.test(r) && (t.exports.publicImport(e, r), !0) } - var p = new i.Reader(f); - if (p.readSequence(), new i.Reader(p.readString(48, !0)).readOID(6, !0) !== s) throw Error("Invalid Public key format"); - var l = new i.Reader(p.readString(3, !0)); - l.readByte(), l.readSequence(), t.setPublic(l.readString(2, !0), l.readString(2, !0)) - }, - autoImport: function(e, r) { - return /^[\S\s]*-----BEGIN PRIVATE KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END PRIVATE KEY-----[\S\s]*$/g.test(r) ? (t.exports.privateImport(e, r), !0) : !! /^[\S\s]*-----BEGIN PUBLIC KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END PUBLIC KEY-----[\S\s]*$/g.test(r) && (t.exports.publicImport(e, r), !0) } - } - }, - 1973: (t, e, r) => { - var n = r(8287).Buffer, - i = r(3200), - o = r(8226)._; + }, + 1973: (t, e, r) => { + var n = r(8287).Buffer, + i = r(3200), + o = r(8226)._; - function s(t, e) { - null != t && ("number" == typeof t ? this.fromNumber(t, e) : n.isBuffer(t) ? this.fromBuffer(t) : null == e && "string" != typeof t ? this.fromByteArray(t) : this.fromString(t, e)) - } - function a() { - return new s(null) - } - s.prototype.am = function(t, e, r, n, i, o) { - for (var s = 16383 & e, a = e >> 14; --o >= 0;) { - var f = 16383 & this[t], - u = this[t++] >> 14, - c = a * f + u * s; - i = ((f = s * f + ((16383 & c) << 14) + r[n] + i) >> 28) + (c >> 14) + a * u, r[n++] = 268435455 & f - } - return i - }, s.prototype.DB = 28, s.prototype.DM = 268435455, s.prototype.DV = 1 << 28, s.prototype.FV = Math.pow(2, 52), s.prototype.F1 = 24, s.prototype.F2 = 4; - var f, u, c = new Array; - for (f = "0".charCodeAt(0), u = 0; u <= 9; ++u) c[f++] = u; - for (f = "a".charCodeAt(0), u = 10; u < 36; ++u) c[f++] = u; - for (f = "A".charCodeAt(0), u = 10; u < 36; ++u) c[f++] = u; - - function h(t) { - return "0123456789abcdefghijklmnopqrstuvwxyz".charAt(t) - } - function p(t, e) { - var r = c[t.charCodeAt(e)]; - return null == r ? -1 : r - } - function l(t) { - var e = a(); - return e.fromInt(t), e - } - function y(t) { - var e, r = 1; - return 0 != (e = t >>> 16) && (t = e, r += 16), 0 != (e = t >> 8) && (t = e, r += 8), 0 != (e = t >> 4) && (t = e, r += 4), 0 != (e = t >> 2) && (t = e, r += 2), 0 != (e = t >> 1) && (t = e, r += 1), r - } - function g(t) { - this.m = t - } - function d(t) { - this.m = t, this.mp = t.invDigit(), this.mpl = 32767 & this.mp, this.mph = this.mp >> 15, this.um = (1 << t.DB - 15) - 1, this.mt2 = 2 * t.t - } - function v(t, e) { - return t & e - } - function m(t, e) { - return t | e - } - function S(t, e) { - return t ^ e - } - function _(t, e) { - return t & ~e - } - function b(t) { - if (0 === t) return -1; - var e = 0; - return 65535 & t || (t >>= 16, e += 16), 255 & t || (t >>= 8, e += 8), 15 & t || (t >>= 4, e += 4), 3 & t || (t >>= 2, e += 2), 1 & t || ++e, e - } - function E(t) { - for (var e = 0; 0 != t;) t &= t - 1, ++e; - return e - } - function w() {} - function O(t) { - return t - } - function B(t) { - this.r2 = a(), this.q3 = a(), s.ONE.dlShiftTo(2 * t.t, this.r2), this.mu = this.r2.divide(t), this.m = t - } - g.prototype.convert = function(t) { - return t.s < 0 || t.compareTo(this.m) >= 0 ? t.mod(this.m) : t - }, g.prototype.revert = function(t) { - return t - }, g.prototype.reduce = function(t) { - t.divRemTo(this.m, null, t) - }, g.prototype.mulTo = function(t, e, r) { - t.multiplyTo(e, r), this.reduce(r) - }, g.prototype.sqrTo = function(t, e) { - t.squareTo(e), this.reduce(e) - }, d.prototype.convert = function(t) { - var e = a(); - return t.abs().dlShiftTo(this.m.t, e), e.divRemTo(this.m, null, e), t.s < 0 && e.compareTo(s.ZERO) > 0 && this.m.subTo(e, e), e - }, d.prototype.revert = function(t) { - var e = a(); - return t.copyTo(e), this.reduce(e), e - }, d.prototype.reduce = function(t) { - for (; t.t <= this.mt2;) t[t.t++] = 0; - for (var e = 0; e < this.m.t; ++e) { - var r = 32767 & t[e], - n = r * this.mpl + ((r * this.mph + (t[e] >> 15) * this.mpl & this.um) << 15) & t.DM; - for (t[r = e + this.m.t] += this.m.am(0, n, t, e, 0, this.m.t); t[r] >= t.DV;) t[r] -= t.DV, t[++r]++ - } - t.clamp(), t.drShiftTo(this.m.t, t), t.compareTo(this.m) >= 0 && t.subTo(this.m, t) - }, d.prototype.mulTo = function(t, e, r) { - t.multiplyTo(e, r), this.reduce(r) - }, d.prototype.sqrTo = function(t, e) { - t.squareTo(e), this.reduce(e) - }, w.prototype.convert = O, w.prototype.revert = O, w.prototype.mulTo = function(t, e, r) { - t.multiplyTo(e, r) - }, w.prototype.sqrTo = function(t, e) { - t.squareTo(e) - }, B.prototype.convert = function(t) { - if (t.s < 0 || t.t > 2 * this.m.t) return t.mod(this.m); - if (t.compareTo(this.m) < 0) return t; - var e = a(); - return t.copyTo(e), this.reduce(e), e - }, B.prototype.revert = function(t) { - return t - }, B.prototype.reduce = function(t) { - for (t.drShiftTo(this.m.t - 1, this.r2), t.t > this.m.t + 1 && (t.t = this.m.t + 1, t.clamp()), this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3), this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2); t.compareTo(this.r2) < 0;) t.dAddOffset(1, this.m.t + 1); - for (t.subTo(this.r2, t); t.compareTo(this.m) >= 0;) t.subTo(this.m, t) - }, B.prototype.mulTo = function(t, e, r) { - t.multiplyTo(e, r), this.reduce(r) - }, B.prototype.sqrTo = function(t, e) { - t.squareTo(e), this.reduce(e) - }; - var A = [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], - x = (1 << 26) / A[A.length - 1]; - s.prototype.copyTo = function(t) { - for (var e = this.t - 1; e >= 0; --e) t[e] = this[e]; - t.t = this.t, t.s = this.s - }, s.prototype.fromInt = function(t) { - this.t = 1, this.s = t < 0 ? -1 : 0, t > 0 ? this[0] = t : t < -1 ? this[0] = t + DV : this.t = 0 - }, s.prototype.fromString = function(t, e, r) { - var n; - switch (e) { - case 2: - n = 1; - break; - case 4: - n = 2; - break; - case 8: - n = 3; - break; - case 16: - n = 4; - break; - case 32: - n = 5; - break; - case 256: - n = 8; - break; - default: - return void this.fromRadix(t, e) - } - this.t = 0, this.s = 0; - for (var i = t.length, o = !1, a = 0; --i >= 0;) { - var f = 8 == n ? 255 & t[i] : p(t, i); - f < 0 ? "-" == t.charAt(i) && (o = !0) : (o = !1, 0 === a ? this[this.t++] = f : a + n > this.DB ? (this[this.t - 1] |= (f & (1 << this.DB - a) - 1) << a, this[this.t++] = f >> this.DB - a) : this[this.t - 1] |= f << a, (a += n) >= this.DB && (a -= this.DB)) - }!r && 8 == n && 128 & t[0] && (this.s = -1, a > 0 && (this[this.t - 1] |= (1 << this.DB - a) - 1 << a)), this.clamp(), o && s.ZERO.subTo(this, this) - }, s.prototype.fromByteArray = function(t, e) { - this.fromString(t, 256, e) - }, s.prototype.fromBuffer = function(t) { - this.fromString(t, 256, !0) - }, s.prototype.clamp = function() { - for (var t = this.s & this.DM; this.t > 0 && this[this.t - 1] == t;)--this.t - }, s.prototype.dlShiftTo = function(t, e) { - var r; - for (r = this.t - 1; r >= 0; --r) e[r + t] = this[r]; - for (r = t - 1; r >= 0; --r) e[r] = 0; - e.t = this.t + t, e.s = this.s - }, s.prototype.drShiftTo = function(t, e) { - for (var r = t; r < this.t; ++r) e[r - t] = this[r]; - e.t = Math.max(this.t - t, 0), e.s = this.s - }, s.prototype.lShiftTo = function(t, e) { - var r, n = t % this.DB, - i = this.DB - n, - o = (1 << i) - 1, - s = Math.floor(t / this.DB), - a = this.s << n & this.DM; - for (r = this.t - 1; r >= 0; --r) e[r + s + 1] = this[r] >> i | a, a = (this[r] & o) << n; - for (r = s - 1; r >= 0; --r) e[r] = 0; - e[s] = a, e.t = this.t + s + 1, e.s = this.s, e.clamp() - }, s.prototype.rShiftTo = function(t, e) { - e.s = this.s; - var r = Math.floor(t / this.DB); - if (r >= this.t) e.t = 0; - else { - var n = t % this.DB, - i = this.DB - n, - o = (1 << n) - 1; - e[0] = this[r] >> n; - for (var s = r + 1; s < this.t; ++s) e[s - r - 1] |= (this[s] & o) << i, e[s - r] = this[s] >> n; - n > 0 && (e[this.t - r - 1] |= (this.s & o) << i), e.t = this.t - r, e.clamp() - } - }, s.prototype.subTo = function(t, e) { - for (var r = 0, n = 0, i = Math.min(t.t, this.t); r < i;) n += this[r] - t[r], e[r++] = n & this.DM, n >>= this.DB; - if (t.t < this.t) { - for (n -= t.s; r < this.t;) n += this[r], e[r++] = n & this.DM, n >>= this.DB; - n += this.s - } else { - for (n += this.s; r < t.t;) n -= t[r], e[r++] = n & this.DM, n >>= this.DB; - n -= t.s - } - e.s = n < 0 ? -1 : 0, n < -1 ? e[r++] = this.DV + n : n > 0 && (e[r++] = n), e.t = r, e.clamp() - }, s.prototype.multiplyTo = function(t, e) { - var r = this.abs(), - n = t.abs(), - i = r.t; - for (e.t = i + n.t; --i >= 0;) e[i] = 0; - for (i = 0; i < n.t; ++i) e[i + r.t] = r.am(0, n[i], e, i, 0, r.t); - e.s = 0, e.clamp(), this.s != t.s && s.ZERO.subTo(e, e) - }, s.prototype.squareTo = function(t) { - for (var e = this.abs(), r = t.t = 2 * e.t; --r >= 0;) t[r] = 0; - for (r = 0; r < e.t - 1; ++r) { - var n = e.am(r, e[r], t, 2 * r, 0, 1); - (t[r + e.t] += e.am(r + 1, 2 * e[r], t, 2 * r + 1, n, e.t - r - 1)) >= e.DV && (t[r + e.t] -= e.DV, t[r + e.t + 1] = 1) - } - t.t > 0 && (t[t.t - 1] += e.am(r, e[r], t, 2 * r, 0, 1)), t.s = 0, t.clamp() - }, s.prototype.divRemTo = function(t, e, r) { - var n = t.abs(); - if (!(n.t <= 0)) { - var i = this.abs(); - if (i.t < n.t) return null != e && e.fromInt(0), void(null != r && this.copyTo(r)); - null == r && (r = a()); - var o = a(), - f = this.s, - u = t.s, - c = this.DB - y(n[n.t - 1]); - c > 0 ? (n.lShiftTo(c, o), i.lShiftTo(c, r)) : (n.copyTo(o), i.copyTo(r)); - var h = o.t, - p = o[h - 1]; - if (0 !== p) { - var l = p * (1 << this.F1) + (h > 1 ? o[h - 2] >> this.F2 : 0), - g = this.FV / l, - d = (1 << this.F1) / l, - v = 1 << this.F2, - m = r.t, - S = m - h, - _ = null == e ? a() : e; - for (o.dlShiftTo(S, _), r.compareTo(_) >= 0 && (r[r.t++] = 1, r.subTo(_, r)), s.ONE.dlShiftTo(h, _), _.subTo(o, o); o.t < h;) o[o.t++] = 0; - for (; --S >= 0;) { - var b = r[--m] == p ? this.DM : Math.floor(r[m] * g + (r[m - 1] + v) * d); - if ((r[m] += o.am(0, b, r, S, 0, h)) < b) for (o.dlShiftTo(S, _), r.subTo(_, r); r[m] < --b;) r.subTo(_, r) - } - null != e && (r.drShiftTo(h, e), f != u && s.ZERO.subTo(e, e)), r.t = h, r.clamp(), c > 0 && r.rShiftTo(c, r), f < 0 && s.ZERO.subTo(r, r) - } - } - }, s.prototype.invDigit = function() { - if (this.t < 1) return 0; - var t = this[0]; - if (!(1 & t)) return 0; - var e = 3 & t; - return (e = (e = (e = (e = e * (2 - (15 & t) * e) & 15) * (2 - (255 & t) * e) & 255) * (2 - ((65535 & t) * e & 65535)) & 65535) * (2 - t * e % this.DV) % this.DV) > 0 ? this.DV - e : -e - }, s.prototype.isEven = function() { - return 0 === (this.t > 0 ? 1 & this[0] : this.s) - }, s.prototype.exp = function(t, e) { - if (t > 4294967295 || t < 1) return s.ONE; - var r = a(), - n = a(), - i = e.convert(this), - o = y(t) - 1; - for (i.copyTo(r); --o >= 0;) if (e.sqrTo(r, n), (t & 1 << o) > 0) e.mulTo(n, i, r); - else { - var f = r; - r = n, n = f - } - return e.revert(r) - }, s.prototype.chunkSize = function(t) { - return Math.floor(Math.LN2 * this.DB / Math.log(t)) - }, s.prototype.toRadix = function(t) { - if (null == t && (t = 10), 0 === this.signum() || t < 2 || t > 36) return "0"; - var e = this.chunkSize(t), - r = Math.pow(t, e), - n = l(r), - i = a(), - o = a(), - s = ""; - for (this.divRemTo(n, i, o); i.signum() > 0;) s = (r + o.intValue()).toString(t).substr(1) + s, i.divRemTo(n, i, o); - return o.intValue().toString(t) + s - }, s.prototype.fromRadix = function(t, e) { - this.fromInt(0), null == e && (e = 10); - for (var r = this.chunkSize(e), n = Math.pow(e, r), i = !1, o = 0, a = 0, f = 0; f < t.length; ++f) { - var u = p(t, f); - u < 0 ? "-" == t.charAt(f) && 0 === this.signum() && (i = !0) : (a = e * a + u, ++o >= r && (this.dMultiply(n), this.dAddOffset(a, 0), o = 0, a = 0)) - } - o > 0 && (this.dMultiply(Math.pow(e, o)), this.dAddOffset(a, 0)), i && s.ZERO.subTo(this, this) - }, s.prototype.fromNumber = function(t, e) { - if ("number" == typeof e) if (t < 2) this.fromInt(1); - else for (this.fromNumber(t), this.testBit(t - 1) || this.bitwiseTo(s.ONE.shiftLeft(t - 1), m, this), this.isEven() && this.dAddOffset(1, 0); !this.isProbablePrime(e);) this.dAddOffset(2, 0), this.bitLength() > t && this.subTo(s.ONE.shiftLeft(t - 1), this); - else { - var r = i.randomBytes(1 + (t >> 3)), - n = 7 & t; - n > 0 ? r[0] &= (1 << n) - 1 : r[0] = 0, this.fromByteArray(r) - } - }, s.prototype.bitwiseTo = function(t, e, r) { - var n, i, o = Math.min(t.t, this.t); - for (n = 0; n < o; ++n) r[n] = e(this[n], t[n]); - if (t.t < this.t) { - for (i = t.s & this.DM, n = o; n < this.t; ++n) r[n] = e(this[n], i); - r.t = this.t - } else { - for (i = this.s & this.DM, n = o; n < t.t; ++n) r[n] = e(i, t[n]); - r.t = t.t - } - r.s = e(this.s, t.s), r.clamp() - }, s.prototype.changeBit = function(t, e) { - var r = s.ONE.shiftLeft(t); - return this.bitwiseTo(r, e, r), r - }, s.prototype.addTo = function(t, e) { - for (var r = 0, n = 0, i = Math.min(t.t, this.t); r < i;) n += this[r] + t[r], e[r++] = n & this.DM, n >>= this.DB; - if (t.t < this.t) { - for (n += t.s; r < this.t;) n += this[r], e[r++] = n & this.DM, n >>= this.DB; - n += this.s - } else { - for (n += this.s; r < t.t;) n += t[r], e[r++] = n & this.DM, n >>= this.DB; - n += t.s - } - e.s = n < 0 ? -1 : 0, n > 0 ? e[r++] = n : n < -1 && (e[r++] = this.DV + n), e.t = r, e.clamp() - }, s.prototype.dMultiply = function(t) { - this[this.t] = this.am(0, t - 1, this, 0, 0, this.t), ++this.t, this.clamp() - }, s.prototype.dAddOffset = function(t, e) { - if (0 !== t) { - for (; this.t <= e;) this[this.t++] = 0; - for (this[e] += t; this[e] >= this.DV;) this[e] -= this.DV, ++e >= this.t && (this[this.t++] = 0), ++this[e] - } - }, s.prototype.multiplyLowerTo = function(t, e, r) { - var n, i = Math.min(this.t + t.t, e); - for (r.s = 0, r.t = i; i > 0;) r[--i] = 0; - for (n = r.t - this.t; i < n; ++i) r[i + this.t] = this.am(0, t[i], r, i, 0, this.t); - for (n = Math.min(t.t, e); i < n; ++i) this.am(0, t[i], r, i, 0, e - i); - r.clamp() - }, s.prototype.multiplyUpperTo = function(t, e, r) { - --e; - var n = r.t = this.t + t.t - e; - for (r.s = 0; --n >= 0;) r[n] = 0; - for (n = Math.max(e - this.t, 0); n < t.t; ++n) r[this.t + n - e] = this.am(e - n, t[n], r, 0, 0, this.t + n - e); - r.clamp(), r.drShiftTo(1, r) - }, s.prototype.modInt = function(t) { - if (t <= 0) return 0; - var e = this.DV % t, - r = this.s < 0 ? t - 1 : 0; - if (this.t > 0) if (0 === e) r = this[0] % t; - else for (var n = this.t - 1; n >= 0; --n) r = (e * r + this[n]) % t; - return r - }, s.prototype.millerRabin = function(t) { - var e = this.subtract(s.ONE), - r = e.getLowestSetBit(); - if (r <= 0) return !1; - var n = e.shiftRight(r); - (t = t + 1 >> 1) > A.length && (t = A.length); - for (var i = a(), o = 0; o < t; ++o) { - i.fromInt(A[Math.floor(Math.random() * A.length)]); - var f = i.modPow(n, this); - if (0 != f.compareTo(s.ONE) && 0 != f.compareTo(e)) { - for (var u = 1; u++ < r && 0 != f.compareTo(e);) if (0 === (f = f.modPowInt(2, this)).compareTo(s.ONE)) return !1; - if (0 != f.compareTo(e)) return !1 - } - } - return !0 - }, s.prototype.toString = function(t) { - if (this.s < 0) return "-" + this.negate().toString(t); - var e; - if (16 == t) e = 4; - else if (8 == t) e = 3; - else if (2 == t) e = 1; - else if (32 == t) e = 5; - else { - if (4 != t) return this.toRadix(t); - e = 2 - } - var r, n = (1 << e) - 1, - i = !1, - o = "", - s = this.t, - a = this.DB - s * this.DB % e; - if (s-- > 0) for (a < this.DB && (r = this[s] >> a) > 0 && (i = !0, o = h(r)); s >= 0;) a < e ? (r = (this[s] & (1 << a) - 1) << e - a, r |= this[--s] >> (a += this.DB - e)) : (r = this[s] >> (a -= e) & n, a <= 0 && (a += this.DB, --s)), r > 0 && (i = !0), i && (o += h(r)); - return i ? o : "0" - }, s.prototype.negate = function() { - var t = a(); - return s.ZERO.subTo(this, t), t - }, s.prototype.abs = function() { - return this.s < 0 ? this.negate() : this - }, s.prototype.compareTo = function(t) { - var e = this.s - t.s; - if (0 != e) return e; - var r = this.t; - if (0 != (e = r - t.t)) return this.s < 0 ? -e : e; - for (; --r >= 0;) if (0 != (e = this[r] - t[r])) return e; - return 0 - }, s.prototype.bitLength = function() { - return this.t <= 0 ? 0 : this.DB * (this.t - 1) + y(this[this.t - 1] ^ this.s & this.DM) - }, s.prototype.mod = function(t) { - var e = a(); - return this.abs().divRemTo(t, null, e), this.s < 0 && e.compareTo(s.ZERO) > 0 && t.subTo(e, e), e - }, s.prototype.modPowInt = function(t, e) { - var r; - return r = t < 256 || e.isEven() ? new g(e) : new d(e), this.exp(t, r) - }, s.prototype.clone = function() { - var t = a(); - return this.copyTo(t), t - }, s.prototype.intValue = function() { - if (this.s < 0) { - if (1 == this.t) return this[0] - this.DV; - if (0 === this.t) return -1 - } else { - if (1 == this.t) return this[0]; - if (0 === this.t) return 0 - } - return (this[1] & (1 << 32 - this.DB) - 1) << this.DB | this[0] - }, s.prototype.byteValue = function() { - return 0 == this.t ? this.s : this[0] << 24 >> 24 - }, s.prototype.shortValue = function() { - return 0 == this.t ? this.s : this[0] << 16 >> 16 - }, s.prototype.signum = function() { - return this.s < 0 ? -1 : this.t <= 0 || 1 == this.t && this[0] <= 0 ? 0 : 1 - }, s.prototype.toByteArray = function() { - var t = this.t, - e = new Array; - e[0] = this.s; - var r, n = this.DB - t * this.DB % 8, - i = 0; - if (t-- > 0) for (n < this.DB && (r = this[t] >> n) != (this.s & this.DM) >> n && (e[i++] = r | this.s << this.DB - n); t >= 0;) n < 8 ? (r = (this[t] & (1 << n) - 1) << 8 - n, r |= this[--t] >> (n += this.DB - 8)) : (r = this[t] >> (n -= 8) & 255, n <= 0 && (n += this.DB, --t)), 128 & r && (r |= -256), 0 === i && (128 & this.s) != (128 & r) && ++i, (i > 0 || r != this.s) && (e[i++] = r); - return e - }, s.prototype.toBuffer = function(t) { - var e = n.from(this.toByteArray()); - if (!0 === t && 0 === e[0]) e = e.slice(1); - else if (o.isNumber(t)) { - if (e.length > t) { - for (var r = 0; r < e.length - t; r++) if (0 !== e[r]) return null; - return e.slice(e.length - t) - } - if (e.length < t) { - var i = n.alloc(t); - return i.fill(0, 0, t - e.length), e.copy(i, t - e.length), i - } - } - return e - }, s.prototype.equals = function(t) { - return 0 == this.compareTo(t) - }, s.prototype.min = function(t) { - return this.compareTo(t) < 0 ? this : t - }, s.prototype.max = function(t) { - return this.compareTo(t) > 0 ? this : t - }, s.prototype.and = function(t) { - var e = a(); - return this.bitwiseTo(t, v, e), e - }, s.prototype.or = function(t) { - var e = a(); - return this.bitwiseTo(t, m, e), e - }, s.prototype.xor = function(t) { - var e = a(); - return this.bitwiseTo(t, S, e), e - }, s.prototype.andNot = function(t) { - var e = a(); - return this.bitwiseTo(t, _, e), e - }, s.prototype.not = function() { - for (var t = a(), e = 0; e < this.t; ++e) t[e] = this.DM & ~this[e]; - return t.t = this.t, t.s = ~this.s, t - }, s.prototype.shiftLeft = function(t) { - var e = a(); - return t < 0 ? this.rShiftTo(-t, e) : this.lShiftTo(t, e), e - }, s.prototype.shiftRight = function(t) { - var e = a(); - return t < 0 ? this.lShiftTo(-t, e) : this.rShiftTo(t, e), e - }, s.prototype.getLowestSetBit = function() { - for (var t = 0; t < this.t; ++t) if (0 != this[t]) return t * this.DB + b(this[t]); - return this.s < 0 ? this.t * this.DB : -1 - }, s.prototype.bitCount = function() { - for (var t = 0, e = this.s & this.DM, r = 0; r < this.t; ++r) t += E(this[r] ^ e); - return t - }, s.prototype.testBit = function(t) { - var e = Math.floor(t / this.DB); - return e >= this.t ? 0 != this.s : !! (this[e] & 1 << t % this.DB) - }, s.prototype.setBit = function(t) { - return this.changeBit(t, m) - }, s.prototype.clearBit = function(t) { - return this.changeBit(t, _) - }, s.prototype.flipBit = function(t) { - return this.changeBit(t, S) - }, s.prototype.add = function(t) { - var e = a(); - return this.addTo(t, e), e - }, s.prototype.subtract = function(t) { - var e = a(); - return this.subTo(t, e), e - }, s.prototype.multiply = function(t) { - var e = a(); - return this.multiplyTo(t, e), e - }, s.prototype.divide = function(t) { - var e = a(); - return this.divRemTo(t, e, null), e - }, s.prototype.remainder = function(t) { - var e = a(); - return this.divRemTo(t, null, e), e - }, s.prototype.divideAndRemainder = function(t) { - var e = a(), - r = a(); - return this.divRemTo(t, e, r), new Array(e, r) - }, s.prototype.modPow = function(t, e) { - var r, n, i = t.bitLength(), - o = l(1); - if (i <= 0) return o; - r = i < 18 ? 1 : i < 48 ? 3 : i < 144 ? 4 : i < 768 ? 5 : 6, n = i < 8 ? new g(e) : e.isEven() ? new B(e) : new d(e); - var s = new Array, - f = 3, - u = r - 1, - c = (1 << r) - 1; - if (s[1] = n.convert(this), r > 1) { - var h = a(); - for (n.sqrTo(s[1], h); f <= c;) s[f] = a(), n.mulTo(h, s[f - 2], s[f]), f += 2 - } - var p, v, m = t.t - 1, - S = !0, - _ = a(); - for (i = y(t[m]) - 1; m >= 0;) { - for (i >= u ? p = t[m] >> i - u & c : (p = (t[m] & (1 << i + 1) - 1) << u - i, m > 0 && (p |= t[m - 1] >> this.DB + i - u)), f = r; !(1 & p);) p >>= 1, --f; - if ((i -= f) < 0 && (i += this.DB, --m), S) s[p].copyTo(o), S = !1; - else { - for (; f > 1;) n.sqrTo(o, _), n.sqrTo(_, o), f -= 2; - f > 0 ? n.sqrTo(o, _) : (v = o, o = _, _ = v), n.mulTo(_, s[p], o) - } - for (; m >= 0 && !(t[m] & 1 << i);) n.sqrTo(o, _), v = o, o = _, _ = v, --i < 0 && (i = this.DB - 1, --m) - } - return n.revert(o) - }, s.prototype.modInverse = function(t) { - var e = t.isEven(); - if (this.isEven() && e || 0 === t.signum()) return s.ZERO; - for (var r = t.clone(), n = this.clone(), i = l(1), o = l(0), a = l(0), f = l(1); 0 != r.signum();) { - for (; r.isEven();) r.rShiftTo(1, r), e ? (i.isEven() && o.isEven() || (i.addTo(this, i), o.subTo(t, o)), i.rShiftTo(1, i)) : o.isEven() || o.subTo(t, o), o.rShiftTo(1, o); - for (; n.isEven();) n.rShiftTo(1, n), e ? (a.isEven() && f.isEven() || (a.addTo(this, a), f.subTo(t, f)), a.rShiftTo(1, a)) : f.isEven() || f.subTo(t, f), f.rShiftTo(1, f); - r.compareTo(n) >= 0 ? (r.subTo(n, r), e && i.subTo(a, i), o.subTo(f, o)) : (n.subTo(r, n), e && a.subTo(i, a), f.subTo(o, f)) - } - return 0 != n.compareTo(s.ONE) ? s.ZERO : f.compareTo(t) >= 0 ? f.subtract(t) : f.signum() < 0 ? (f.addTo(t, f), f.signum() < 0 ? f.add(t) : f) : f - }, s.prototype.pow = function(t) { - return this.exp(t, new w) - }, s.prototype.gcd = function(t) { - var e = this.s < 0 ? this.negate() : this.clone(), - r = t.s < 0 ? t.negate() : t.clone(); - if (e.compareTo(r) < 0) { - var n = e; - e = r, r = n - } - var i = e.getLowestSetBit(), - o = r.getLowestSetBit(); - if (o < 0) return e; - for (i < o && (o = i), o > 0 && (e.rShiftTo(o, e), r.rShiftTo(o, r)); e.signum() > 0;)(i = e.getLowestSetBit()) > 0 && e.rShiftTo(i, e), (i = r.getLowestSetBit()) > 0 && r.rShiftTo(i, r), e.compareTo(r) >= 0 ? (e.subTo(r, e), e.rShiftTo(1, e)) : (r.subTo(e, r), r.rShiftTo(1, r)); - return o > 0 && r.lShiftTo(o, r), r - }, s.prototype.isProbablePrime = function(t) { - var e, r = this.abs(); - if (1 == r.t && r[0] <= A[A.length - 1]) { - for (e = 0; e < A.length; ++e) if (r[0] == A[e]) return !0; - return !1 - } - if (r.isEven()) return !1; - for (e = 1; e < A.length;) { - for (var n = A[e], i = e + 1; i < A.length && n < x;) n *= A[i++]; - for (n = r.modInt(n); e < i;) if (n % A[e++] == 0) return !1 - } - return r.millerRabin(t) - }, s.int2char = h, s.ZERO = l(0), s.ONE = l(1), s.prototype.square = function() { - var t = a(); - return this.squareTo(t), t - }, t.exports = s - }, - 5682: (t, e, r) => { - var n = r(8287).Buffer, - i = r(8226)._, - o = (r(3200), r(1973)), - s = r(8226), - a = r(1768), - f = r(4538); - e.BigInteger = o, t.exports.Key = function() { - function t() { - this.n = null, this.e = 0, this.d = null, this.p = null, this.q = null, this.dmp1 = null, this.dmq1 = null, this.coeff = null - } - return t.prototype.setOptions = function(t) { - var e = a[t.signingScheme], - r = a[t.encryptionScheme]; - e === r ? this.signingScheme = this.encryptionScheme = r.makeScheme(this, t) : (this.encryptionScheme = r.makeScheme(this, t), this.signingScheme = e.makeScheme(this, t)), this.encryptEngine = f.getEngine(this, t) - }, t.prototype.generate = function(t, e) { - var r = t >> 1; - this.e = parseInt(e, 16); - for (var n = new o(e, 16);;) { - for (; this.p = new o(t - r, 1), 0 !== this.p.subtract(o.ONE).gcd(n).compareTo(o.ONE) || !this.p.isProbablePrime(10);); - for (; this.q = new o(r, 1), 0 !== this.q.subtract(o.ONE).gcd(n).compareTo(o.ONE) || !this.q.isProbablePrime(10);); - if (this.p.compareTo(this.q) <= 0) { - var i = this.p; - this.p = this.q, this.q = i - } - var s = this.p.subtract(o.ONE), - a = this.q.subtract(o.ONE), - f = s.multiply(a); - if (0 === f.gcd(n).compareTo(o.ONE)) { - if (this.n = this.p.multiply(this.q), this.n.bitLength() < t) continue; - this.d = n.modInverse(f), this.dmp1 = this.d.mod(s), this.dmq1 = this.d.mod(a), this.coeff = this.q.modInverse(this.p); - break - } - } - this.$$recalculateCache() - }, t.prototype.setPrivate = function(t, e, r, n, a, f, u, c) { - if (!(t && e && r && t.length > 0 && (i.isNumber(e) || e.length > 0) && r.length > 0)) throw Error("Invalid RSA private key"); - this.n = new o(t), this.e = i.isNumber(e) ? e : s.get32IntFromBuffer(e, 0), this.d = new o(r), n && a && f && u && c && (this.p = new o(n), this.q = new o(a), this.dmp1 = new o(f), this.dmq1 = new o(u), this.coeff = new o(c)), this.$$recalculateCache() - }, t.prototype.setPublic = function(t, e) { - if (!(t && e && t.length > 0 && (i.isNumber(e) || e.length > 0))) throw Error("Invalid RSA public key"); - this.n = new o(t), this.e = i.isNumber(e) ? e : s.get32IntFromBuffer(e, 0), this.$$recalculateCache() - }, t.prototype.$doPrivate = function(t) { - if (this.p || this.q) return t.modPow(this.d, this.n); - for (var e = t.mod(this.p).modPow(this.dmp1, this.p), r = t.mod(this.q).modPow(this.dmq1, this.q); e.compareTo(r) < 0;) e = e.add(this.p); - return e.subtract(r).multiply(this.coeff).mod(this.p).multiply(this.q).add(r) - }, t.prototype.$doPublic = function(t) { - return t.modPowInt(this.e, this.n) - }, t.prototype.encrypt = function(t, e) { - var r = [], - i = [], - o = t.length, - s = Math.ceil(o / this.maxMessageLength) || 1, - a = Math.ceil(o / s || 1); - if (1 == s) r.push(t); - else for (var f = 0; f < s; f++) r.push(t.slice(f * a, (f + 1) * a)); - for (var u = 0; u < r.length; u++) i.push(this.encryptEngine.encrypt(r[u], e)); - return n.concat(i) - }, t.prototype.decrypt = function(t, e) { - if (t.length % this.encryptedDataLength > 0) throw Error("Incorrect data or key"); - for (var r = [], i = 0, o = 0, s = t.length / this.encryptedDataLength, a = 0; a < s; a++) o = (i = a * this.encryptedDataLength) + this.encryptedDataLength, r.push(this.encryptEngine.decrypt(t.slice(i, Math.min(o, t.length)), e)); - return n.concat(r) - }, t.prototype.sign = function(t) { - return this.signingScheme.sign.apply(this.signingScheme, arguments) - }, t.prototype.verify = function(t, e, r) { - return this.signingScheme.verify.apply(this.signingScheme, arguments) - }, t.prototype.isPrivate = function() { - return !!(this.n && this.e && this.d) - }, t.prototype.isPublic = function(t) { - return this.n && this.e && !(t && this.d) || !1 - }, Object.defineProperty(t.prototype, "keySize", { - get: function() { - return this.cache.keyBitLength - } - }), Object.defineProperty(t.prototype, "encryptedDataLength", { - get: function() { - return this.cache.keyByteLength - } - }), Object.defineProperty(t.prototype, "maxMessageLength", { - get: function() { - return this.encryptionScheme.maxMessageLength() - } - }), t.prototype.$$recalculateCache = function() { - this.cache = this.cache || {}, this.cache.keyBitLength = this.n.bitLength(), this.cache.keyByteLength = this.cache.keyBitLength + 6 >> 3 - }, t - }() - }, - 2487: (t, e, r) => { - var n = r(8287).Buffer, - i = (r(1973), r(3200)); - t.exports = { - isEncryption: !0, - isSignature: !1 - }, t.exports.digestLength = { - md4: 16, - md5: 16, - ripemd160: 20, - rmd160: 20, - sha1: 20, - sha224: 28, - sha256: 32, - sha384: 48, - sha512: 64 - }; - var o = "sha1"; - t.exports.eme_oaep_mgf1 = function(e, r, s) { - s = s || o; - for (var a = t.exports.digestLength[s], f = Math.ceil(r / a), u = n.alloc(a * f), c = n.alloc(4), h = 0; h < f; ++h) { - var p = i.createHash(s); - p.update(e), c.writeUInt32BE(h, 0), p.update(c), p.digest().copy(u, h * a) - } - return u.slice(0, r) - }, t.exports.makeScheme = function(e, r) { function s(t, e) { - this.key = t, this.options = e + null != t && ("number" == typeof t ? this.fromNumber(t, e) : n.isBuffer(t) ? this.fromBuffer(t) : null == e && "string" != typeof t ? this.fromByteArray(t) : this.fromString(t, e)) } - return s.prototype.maxMessageLength = function() { - return this.key.encryptedDataLength - 2 * t.exports.digestLength[this.options.encryptionSchemeOptions.hash || o] - 2 - }, s.prototype.encPad = function(e) { - var r = this.options.encryptionSchemeOptions.hash || o, - s = this.options.encryptionSchemeOptions.mgf || t.exports.eme_oaep_mgf1, - a = this.options.encryptionSchemeOptions.label || n.alloc(0), - f = this.key.encryptedDataLength, - u = t.exports.digestLength[r]; - if (e.length > f - 2 * u - 2) throw new Error("Message is too long to encode into an encoded message with a length of " + f + " bytes, increaseemLen to fix this error (minimum value for given parameters and options: " + (f - 2 * u - 2) + ")"); - var c = i.createHash(r); - c.update(a), c = c.digest(); - var h = n.alloc(f - e.length - 2 * u - 1); - h.fill(0), h[h.length - 1] = 1; - for (var p = n.concat([c, h, e]), l = i.randomBytes(u), y = s(l, p.length, r), g = 0; g < p.length; g++) p[g] ^= y[g]; - for (y = s(p, u, r), g = 0; g < l.length; g++) l[g] ^= y[g]; - var d = n.alloc(1 + l.length + p.length); - return d[0] = 0, l.copy(d, 1), p.copy(d, 1 + l.length), d - }, s.prototype.encUnPad = function(e) { - var r = this.options.encryptionSchemeOptions.hash || o, - s = this.options.encryptionSchemeOptions.mgf || t.exports.eme_oaep_mgf1, - a = this.options.encryptionSchemeOptions.label || n.alloc(0), - f = t.exports.digestLength[r]; - if (e.length < 2 * f + 2) throw new Error("Error decoding message, the supplied message is not long enough to be a valid OAEP encoded message"); - for (var u = e.slice(1, f + 1), c = e.slice(1 + f), h = s(c, f, r), p = 0; p < u.length; p++) u[p] ^= h[p]; - for (h = s(u, c.length, r), p = 0; p < c.length; p++) c[p] ^= h[p]; - var l = i.createHash(r); - if (l.update(a), l = l.digest(), c.slice(0, f).toString("hex") != l.toString("hex")) throw new Error("Error decoding message, the lHash calculated from the label provided and the lHash in the encrypted data do not match."); - for (p = f; 0 === c[p++] && p < c.length;); - if (1 != c[p - 1]) throw new Error("Error decoding message, there is no padding message separator byte"); - return c.slice(p) - }, new s(e, r) - } - }, - 8290: (t, e, r) => { - var n = r(8287).Buffer, - i = r(1973), - o = r(3200), - s = r(7449), - a = { - md2: n.from("3020300c06082a864886f70d020205000410", "hex"), - md5: n.from("3020300c06082a864886f70d020505000410", "hex"), - sha1: n.from("3021300906052b0e03021a05000414", "hex"), - sha224: n.from("302d300d06096086480165030402040500041c", "hex"), - sha256: n.from("3031300d060960864801650304020105000420", "hex"), - sha384: n.from("3041300d060960864801650304020205000430", "hex"), - sha512: n.from("3051300d060960864801650304020305000440", "hex"), - ripemd160: n.from("3021300906052b2403020105000414", "hex"), - rmd160: n.from("3021300906052b2403020105000414", "hex") - }, f = { - ripemd160: "rmd160" - }, u = "sha256"; - t.exports = { - isEncryption: !0, - isSignature: !0 - }, t.exports.makeScheme = function(t, e) { - function r(t, e) { - this.key = t, this.options = e - } - return r.prototype.maxMessageLength = function() { - return this.options.encryptionSchemeOptions && this.options.encryptionSchemeOptions.padding == s.RSA_NO_PADDING ? this.key.encryptedDataLength : this.key.encryptedDataLength - 11 - }, r.prototype.encPad = function(t, e) { - var r; - if (e = e || {}, t.length > this.key.maxMessageLength) throw new Error("Message too long for RSA (n=" + this.key.encryptedDataLength + ", l=" + t.length + ")"); - if (this.options.encryptionSchemeOptions && this.options.encryptionSchemeOptions.padding == s.RSA_NO_PADDING) return (r = n.alloc(this.key.maxMessageLength - t.length)).fill(0), n.concat([r, t]); - if (1 === e.type) return (r = n.alloc(this.key.encryptedDataLength - t.length - 1)).fill(255, 0, r.length - 1), r[0] = 1, r[r.length - 1] = 0, n.concat([r, t]); - (r = n.alloc(this.key.encryptedDataLength - t.length))[0] = 0, r[1] = 2; - for (var i = o.randomBytes(r.length - 3), a = 0; a < i.length; a++) { - for (var f = i[a]; 0 === f;) f = o.randomBytes(1)[0]; - r[a + 2] = f - } - return r[r.length - 1] = 0, n.concat([r, t]) - }, r.prototype.encUnPad = function(t, e) { - e = e || {}; - var r = 0; - if (this.options.encryptionSchemeOptions && this.options.encryptionSchemeOptions.padding == s.RSA_NO_PADDING) return "function" == typeof t.lastIndexOf ? t.slice(t.lastIndexOf("\0") + 1, t.length) : t.slice(String.prototype.lastIndexOf.call(t, "\0") + 1, t.length); - if (t.length < 4) return null; - if (1 === e.type) { - if (0 !== t[0] || 1 !== t[1]) return null; - for (r = 3; 0 !== t[r];) if (255 != t[r] || ++r >= t.length) return null - } else { - if (0 !== t[0] || 2 !== t[1]) return null; - for (r = 3; 0 !== t[r];) if (++r >= t.length) return null - } - return t.slice(r + 1, t.length) - }, r.prototype.sign = function(t) { - var e = this.options.signingSchemeOptions.hash || u; - if ("browser" === this.options.environment) { - e = f[e] || e; - var r = o.createHash(e); - r.update(t); - var n = this.pkcs1pad(r.digest(), e); - return this.key.$doPrivate(new i(n)).toBuffer(this.key.encryptedDataLength) - } - var s = o.createSign("RSA-" + e.toUpperCase()); - return s.update(t), s.sign(this.options.rsaUtils.exportKey("private")) - }, r.prototype.verify = function(t, e, r) { - if (this.options.encryptionSchemeOptions && this.options.encryptionSchemeOptions.padding == s.RSA_NO_PADDING) return !1; - var a = this.options.signingSchemeOptions.hash || u; - if ("browser" === this.options.environment) { - a = f[a] || a, r && (e = n.from(e, r)); - var c = o.createHash(a); - c.update(t); - var h = this.pkcs1pad(c.digest(), a); - return this.key.$doPublic(new i(e)).toBuffer().toString("hex") == h.toString("hex") - } - var p = o.createVerify("RSA-" + a.toUpperCase()); - return p.update(t), p.verify(this.options.rsaUtils.exportKey("public"), e, r) - }, r.prototype.pkcs0pad = function(t) { - var e = n.alloc(this.key.maxMessageLength - t.length); - return e.fill(0), n.concat([e, t]) - }, r.prototype.pkcs0unpad = function(t) { - return "function" == typeof t.lastIndexOf ? t.slice(t.lastIndexOf("\0") + 1, t.length) : t.slice(String.prototype.lastIndexOf.call(t, "\0") + 1, t.length) - }, r.prototype.pkcs1pad = function(t, e) { - var r = a[e]; - if (!r) throw Error("Unsupported hash algorithm"); - var i = n.concat([r, t]); - if (i.length + 10 > this.key.encryptedDataLength) throw Error("Key is too short for signing algorithm (" + e + ")"); - var o = n.alloc(this.key.encryptedDataLength - i.length - 1); - return o.fill(255, 0, o.length - 1), o[0] = 1, o[o.length - 1] = 0, n.concat([o, i]) - }, new r(t, e) - } - }, - 4414: (t, e, r) => { - var n = r(8287).Buffer, - i = r(1973), - o = r(3200); - t.exports = { - isEncryption: !1, - isSignature: !0 - }; - var s = "sha1"; - t.exports.makeScheme = function(t, e) { - var a = r(1768).pkcs1_oaep; - function f(t, e) { - this.key = t, this.options = e + function a() { + return new s(null) } - return f.prototype.sign = function(t) { - var e = o.createHash(this.options.signingSchemeOptions.hash || s); - e.update(t); - var r = this.emsa_pss_encode(e.digest(), this.key.keySize - 1); - return this.key.$doPrivate(new i(r)).toBuffer(this.key.encryptedDataLength) - }, f.prototype.verify = function(t, e, r) { - r && (e = n.from(e, r)), e = new i(e); - var a = Math.ceil((this.key.keySize - 1) / 8), - f = this.key.$doPublic(e).toBuffer(a), - u = o.createHash(this.options.signingSchemeOptions.hash || s); - return u.update(t), this.emsa_pss_verify(u.digest(), f, this.key.keySize - 1) - }, f.prototype.emsa_pss_encode = function(t, e) { - var r = this.options.signingSchemeOptions.hash || s, - i = this.options.signingSchemeOptions.mgf || a.eme_oaep_mgf1, - f = this.options.signingSchemeOptions.saltLength || 20, - u = a.digestLength[r], - c = Math.ceil(e / 8); - if (c < u + f + 2) throw new Error("Output length passed to emBits(" + e + ") is too small for the options specified(" + r + ", " + f + "). To fix this issue increase the value of emBits. (minimum size: " + (8 * u + 8 * f + 9) + ")"); - var h = o.randomBytes(f), - p = n.alloc(8 + u + f); - p.fill(0, 0, 8), t.copy(p, 8), h.copy(p, 8 + t.length); - var l = o.createHash(r); - l.update(p), l = l.digest(); - var y = n.alloc(c - h.length - u - 2); - y.fill(0); - var g = n.alloc(y.length + 1 + h.length); - y.copy(g), g[y.length] = 1, h.copy(g, y.length + 1); - for (var d = i(l, g.length, r), v = n.alloc(g.length), m = 0; m < d.length; m++) v[m] = g[m] ^ d[m]; - var S = 8 * c - e, - _ = 255 ^ 255 >> 8 - S << 8 - S; - v[0] = v[0] & _; - var b = n.alloc(v.length + l.length + 1); - return v.copy(b, 0), l.copy(b, v.length), b[b.length - 1] = 188, b - }, f.prototype.emsa_pss_verify = function(t, e, r) { - var i = this.options.signingSchemeOptions.hash || s, - f = this.options.signingSchemeOptions.mgf || a.eme_oaep_mgf1, - u = this.options.signingSchemeOptions.saltLength || 20, - c = a.digestLength[i], - h = Math.ceil(r / 8); - if (h < c + u + 2 || 188 != e[e.length - 1]) return !1; - var p = n.alloc(h - c - 1); - e.copy(p, 0, 0, h - c - 1); - for (var l = 0, y = 0, g = 8 * h - r; y < g; y++) l |= 1 << 7 - y; - if (p[0] & l) return !1; - var d = e.slice(h - c - 1, h - 1), - v = f(d, p.length, i); - for (y = 0; y < p.length; y++) p[y] ^= v[y]; - for (l = 255 ^ 255 >> 8 - (g = 8 * h - r) << 8 - g, p[0] = p[0] & l, y = 0; 0 === p[y] && y < p.length; y++); - if (1 != p[y]) return !1; - var m = p.slice(p.length - u), - S = n.alloc(8 + c + u); - S.fill(0, 0, 8), t.copy(S, 8), m.copy(S, 8 + t.length); - var _ = o.createHash(i); - return _.update(S), _ = _.digest(), d.toString("hex") === _.toString("hex") - }, new f(t, e) - } - }, - 1768: (t, e, r) => { - t.exports = { - pkcs1: r(8290), - pkcs1_oaep: r(2487), - pss: r(4414), - isEncryption: function(e) { - return t.exports[e] && t.exports[e].isEncryption - }, - isSignature: function(e) { - return t.exports[e] && t.exports[e].isSignature + s.prototype.am = function(t, e, r, n, i, o) { + for (var s = 16383 & e, a = e >> 14; --o >= 0;) { + var f = 16383 & this[t], + u = this[t++] >> 14, + c = a * f + u * s; + i = ((f = s * f + ((16383 & c) << 14) + r[n] + i) >> 28) + (c >> 14) + a * u, r[n++] = 268435455 & f + } + return i + }, s.prototype.DB = 28, s.prototype.DM = 268435455, s.prototype.DV = 1 << 28, s.prototype.FV = Math.pow(2, 52), s.prototype.F1 = 24, s.prototype.F2 = 4; + var f, u, c = new Array; + for (f = "0".charCodeAt(0), u = 0; u <= 9; ++u) c[f++] = u; + for (f = "a".charCodeAt(0), u = 10; u < 36; ++u) c[f++] = u; + for (f = "A".charCodeAt(0), u = 10; u < 36; ++u) c[f++] = u; + + function h(t) { + return "0123456789abcdefghijklmnopqrstuvwxyz".charAt(t) } - } - }, - 8226: (t, e, r) => { - var n = r(5606); - r(3200), t.exports.linebrk = function(t, e) { - for (var r = "", n = 0; n + e < t.length;) r += t.substring(n, n + e) + "\n", n += e; - return r + t.substring(n, t.length) - }, t.exports.detectEnvironment = function() { - return "browser"; - "undefined" == typeof window || !window || n && "node" === n.title ? "node" : "browser" - }, t.exports.get32IntFromBuffer = function(t, e) { - var r; - if (e = e || 0, (r = t.length - e) > 0) { - if (r >= 4) return t.readUIntBE(e, r); - for (var n = 0, i = e + r, o = 0; i > e; i--, o += 2) n += t[i - 1] * Math.pow(16, o); - return n + + function p(t, e) { + var r = c[t.charCodeAt(e)]; + return null == r ? -1 : r } - return NaN - }, t.exports._ = { - isObject: function(t) { - var e = typeof t; - return !!t && ("object" == e || "function" == e) - }, - isString: function(t) { - return "string" == typeof t || t instanceof String - }, - isNumber: function(t) { - return "number" == typeof t || !isNaN(parseFloat(t)) && isFinite(t) - }, - omit: function(t, e) { - var r = {}; - for (var n in t) t.hasOwnProperty(n) && n !== e && (r[n] = t[n]); + + function l(t) { + var e = a(); + return e.fromInt(t), e + } + + function y(t) { + var e, r = 1; + return 0 != (e = t >>> 16) && (t = e, r += 16), 0 != (e = t >> 8) && (t = e, r += 8), 0 != (e = t >> 4) && (t = e, r += 4), 0 != (e = t >> 2) && (t = e, r += 2), 0 != (e = t >> 1) && (t = e, r += 1), r + } + + function g(t) { + this.m = t + } + + function d(t) { + this.m = t, this.mp = t.invDigit(), this.mpl = 32767 & this.mp, this.mph = this.mp >> 15, this.um = (1 << t.DB - 15) - 1, this.mt2 = 2 * t.t + } + + function v(t, e) { + return t & e + } + + function m(t, e) { + return t | e + } + + function S(t, e) { + return t ^ e + } + + function _(t, e) { + return t & ~e + } + + function b(t) { + if (0 === t) return -1; + var e = 0; + return 65535 & t || (t >>= 16, e += 16), 255 & t || (t >>= 8, e += 8), 15 & t || (t >>= 4, e += 4), 3 & t || (t >>= 2, e += 2), 1 & t || ++e, e + } + + function E(t) { + for (var e = 0; 0 != t;) t &= t - 1, ++e; + return e + } + + function w() {} + + function O(t) { + return t + } + + function B(t) { + this.r2 = a(), this.q3 = a(), s.ONE.dlShiftTo(2 * t.t, this.r2), this.mu = this.r2.divide(t), this.m = t + } + g.prototype.convert = function(t) { + return t.s < 0 || t.compareTo(this.m) >= 0 ? t.mod(this.m) : t + }, g.prototype.revert = function(t) { + return t + }, g.prototype.reduce = function(t) { + t.divRemTo(this.m, null, t) + }, g.prototype.mulTo = function(t, e, r) { + t.multiplyTo(e, r), this.reduce(r) + }, g.prototype.sqrTo = function(t, e) { + t.squareTo(e), this.reduce(e) + }, d.prototype.convert = function(t) { + var e = a(); + return t.abs().dlShiftTo(this.m.t, e), e.divRemTo(this.m, null, e), t.s < 0 && e.compareTo(s.ZERO) > 0 && this.m.subTo(e, e), e + }, d.prototype.revert = function(t) { + var e = a(); + return t.copyTo(e), this.reduce(e), e + }, d.prototype.reduce = function(t) { + for (; t.t <= this.mt2;) t[t.t++] = 0; + for (var e = 0; e < this.m.t; ++e) { + var r = 32767 & t[e], + n = r * this.mpl + ((r * this.mph + (t[e] >> 15) * this.mpl & this.um) << 15) & t.DM; + for (t[r = e + this.m.t] += this.m.am(0, n, t, e, 0, this.m.t); t[r] >= t.DV;) t[r] -= t.DV, t[++r]++ + } + t.clamp(), t.drShiftTo(this.m.t, t), t.compareTo(this.m) >= 0 && t.subTo(this.m, t) + }, d.prototype.mulTo = function(t, e, r) { + t.multiplyTo(e, r), this.reduce(r) + }, d.prototype.sqrTo = function(t, e) { + t.squareTo(e), this.reduce(e) + }, w.prototype.convert = O, w.prototype.revert = O, w.prototype.mulTo = function(t, e, r) { + t.multiplyTo(e, r) + }, w.prototype.sqrTo = function(t, e) { + t.squareTo(e) + }, B.prototype.convert = function(t) { + if (t.s < 0 || t.t > 2 * this.m.t) return t.mod(this.m); + if (t.compareTo(this.m) < 0) return t; + var e = a(); + return t.copyTo(e), this.reduce(e), e + }, B.prototype.revert = function(t) { + return t + }, B.prototype.reduce = function(t) { + for (t.drShiftTo(this.m.t - 1, this.r2), t.t > this.m.t + 1 && (t.t = this.m.t + 1, t.clamp()), this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3), this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2); t.compareTo(this.r2) < 0;) t.dAddOffset(1, this.m.t + 1); + for (t.subTo(this.r2, t); t.compareTo(this.m) >= 0;) t.subTo(this.m, t) + }, B.prototype.mulTo = function(t, e, r) { + t.multiplyTo(e, r), this.reduce(r) + }, B.prototype.sqrTo = function(t, e) { + t.squareTo(e), this.reduce(e) + }; + var A = [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], + x = (1 << 26) / A[A.length - 1]; + s.prototype.copyTo = function(t) { + for (var e = this.t - 1; e >= 0; --e) t[e] = this[e]; + t.t = this.t, t.s = this.s + }, s.prototype.fromInt = function(t) { + this.t = 1, this.s = t < 0 ? -1 : 0, t > 0 ? this[0] = t : t < -1 ? this[0] = t + DV : this.t = 0 + }, s.prototype.fromString = function(t, e, r) { + var n; + switch (e) { + case 2: + n = 1; + break; + case 4: + n = 2; + break; + case 8: + n = 3; + break; + case 16: + n = 4; + break; + case 32: + n = 5; + break; + case 256: + n = 8; + break; + default: + return void this.fromRadix(t, e) + } + this.t = 0, this.s = 0; + for (var i = t.length, o = !1, a = 0; --i >= 0;) { + var f = 8 == n ? 255 & t[i] : p(t, i); + f < 0 ? "-" == t.charAt(i) && (o = !0) : (o = !1, 0 === a ? this[this.t++] = f : a + n > this.DB ? (this[this.t - 1] |= (f & (1 << this.DB - a) - 1) << a, this[this.t++] = f >> this.DB - a) : this[this.t - 1] |= f << a, (a += n) >= this.DB && (a -= this.DB)) + }!r && 8 == n && 128 & t[0] && (this.s = -1, a > 0 && (this[this.t - 1] |= (1 << this.DB - a) - 1 << a)), this.clamp(), o && s.ZERO.subTo(this, this) + }, s.prototype.fromByteArray = function(t, e) { + this.fromString(t, 256, e) + }, s.prototype.fromBuffer = function(t) { + this.fromString(t, 256, !0) + }, s.prototype.clamp = function() { + for (var t = this.s & this.DM; this.t > 0 && this[this.t - 1] == t;) --this.t + }, s.prototype.dlShiftTo = function(t, e) { + var r; + for (r = this.t - 1; r >= 0; --r) e[r + t] = this[r]; + for (r = t - 1; r >= 0; --r) e[r] = 0; + e.t = this.t + t, e.s = this.s + }, s.prototype.drShiftTo = function(t, e) { + for (var r = t; r < this.t; ++r) e[r - t] = this[r]; + e.t = Math.max(this.t - t, 0), e.s = this.s + }, s.prototype.lShiftTo = function(t, e) { + var r, n = t % this.DB, + i = this.DB - n, + o = (1 << i) - 1, + s = Math.floor(t / this.DB), + a = this.s << n & this.DM; + for (r = this.t - 1; r >= 0; --r) e[r + s + 1] = this[r] >> i | a, a = (this[r] & o) << n; + for (r = s - 1; r >= 0; --r) e[r] = 0; + e[s] = a, e.t = this.t + s + 1, e.s = this.s, e.clamp() + }, s.prototype.rShiftTo = function(t, e) { + e.s = this.s; + var r = Math.floor(t / this.DB); + if (r >= this.t) e.t = 0; + else { + var n = t % this.DB, + i = this.DB - n, + o = (1 << n) - 1; + e[0] = this[r] >> n; + for (var s = r + 1; s < this.t; ++s) e[s - r - 1] |= (this[s] & o) << i, e[s - r] = this[s] >> n; + n > 0 && (e[this.t - r - 1] |= (this.s & o) << i), e.t = this.t - r, e.clamp() + } + }, s.prototype.subTo = function(t, e) { + for (var r = 0, n = 0, i = Math.min(t.t, this.t); r < i;) n += this[r] - t[r], e[r++] = n & this.DM, n >>= this.DB; + if (t.t < this.t) { + for (n -= t.s; r < this.t;) n += this[r], e[r++] = n & this.DM, n >>= this.DB; + n += this.s + } else { + for (n += this.s; r < t.t;) n -= t[r], e[r++] = n & this.DM, n >>= this.DB; + n -= t.s + } + e.s = n < 0 ? -1 : 0, n < -1 ? e[r++] = this.DV + n : n > 0 && (e[r++] = n), e.t = r, e.clamp() + }, s.prototype.multiplyTo = function(t, e) { + var r = this.abs(), + n = t.abs(), + i = r.t; + for (e.t = i + n.t; --i >= 0;) e[i] = 0; + for (i = 0; i < n.t; ++i) e[i + r.t] = r.am(0, n[i], e, i, 0, r.t); + e.s = 0, e.clamp(), this.s != t.s && s.ZERO.subTo(e, e) + }, s.prototype.squareTo = function(t) { + for (var e = this.abs(), r = t.t = 2 * e.t; --r >= 0;) t[r] = 0; + for (r = 0; r < e.t - 1; ++r) { + var n = e.am(r, e[r], t, 2 * r, 0, 1); + (t[r + e.t] += e.am(r + 1, 2 * e[r], t, 2 * r + 1, n, e.t - r - 1)) >= e.DV && (t[r + e.t] -= e.DV, t[r + e.t + 1] = 1) + } + t.t > 0 && (t[t.t - 1] += e.am(r, e[r], t, 2 * r, 0, 1)), t.s = 0, t.clamp() + }, s.prototype.divRemTo = function(t, e, r) { + var n = t.abs(); + if (!(n.t <= 0)) { + var i = this.abs(); + if (i.t < n.t) return null != e && e.fromInt(0), void(null != r && this.copyTo(r)); + null == r && (r = a()); + var o = a(), + f = this.s, + u = t.s, + c = this.DB - y(n[n.t - 1]); + c > 0 ? (n.lShiftTo(c, o), i.lShiftTo(c, r)) : (n.copyTo(o), i.copyTo(r)); + var h = o.t, + p = o[h - 1]; + if (0 !== p) { + var l = p * (1 << this.F1) + (h > 1 ? o[h - 2] >> this.F2 : 0), + g = this.FV / l, + d = (1 << this.F1) / l, + v = 1 << this.F2, + m = r.t, + S = m - h, + _ = null == e ? a() : e; + for (o.dlShiftTo(S, _), r.compareTo(_) >= 0 && (r[r.t++] = 1, r.subTo(_, r)), s.ONE.dlShiftTo(h, _), _.subTo(o, o); o.t < h;) o[o.t++] = 0; + for (; --S >= 0;) { + var b = r[--m] == p ? this.DM : Math.floor(r[m] * g + (r[m - 1] + v) * d); + if ((r[m] += o.am(0, b, r, S, 0, h)) < b) + for (o.dlShiftTo(S, _), r.subTo(_, r); r[m] < --b;) r.subTo(_, r) + } + null != e && (r.drShiftTo(h, e), f != u && s.ZERO.subTo(e, e)), r.t = h, r.clamp(), c > 0 && r.rShiftTo(c, r), f < 0 && s.ZERO.subTo(r, r) + } + } + }, s.prototype.invDigit = function() { + if (this.t < 1) return 0; + var t = this[0]; + if (!(1 & t)) return 0; + var e = 3 & t; + return (e = (e = (e = (e = e * (2 - (15 & t) * e) & 15) * (2 - (255 & t) * e) & 255) * (2 - ((65535 & t) * e & 65535)) & 65535) * (2 - t * e % this.DV) % this.DV) > 0 ? this.DV - e : -e + }, s.prototype.isEven = function() { + return 0 === (this.t > 0 ? 1 & this[0] : this.s) + }, s.prototype.exp = function(t, e) { + if (t > 4294967295 || t < 1) return s.ONE; + var r = a(), + n = a(), + i = e.convert(this), + o = y(t) - 1; + for (i.copyTo(r); --o >= 0;) + if (e.sqrTo(r, n), (t & 1 << o) > 0) e.mulTo(n, i, r); + else { + var f = r; + r = n, n = f + } return e.revert(r) + }, s.prototype.chunkSize = function(t) { + return Math.floor(Math.LN2 * this.DB / Math.log(t)) + }, s.prototype.toRadix = function(t) { + if (null == t && (t = 10), 0 === this.signum() || t < 2 || t > 36) return "0"; + var e = this.chunkSize(t), + r = Math.pow(t, e), + n = l(r), + i = a(), + o = a(), + s = ""; + for (this.divRemTo(n, i, o); i.signum() > 0;) s = (r + o.intValue()).toString(t).substr(1) + s, i.divRemTo(n, i, o); + return o.intValue().toString(t) + s + }, s.prototype.fromRadix = function(t, e) { + this.fromInt(0), null == e && (e = 10); + for (var r = this.chunkSize(e), n = Math.pow(e, r), i = !1, o = 0, a = 0, f = 0; f < t.length; ++f) { + var u = p(t, f); + u < 0 ? "-" == t.charAt(f) && 0 === this.signum() && (i = !0) : (a = e * a + u, ++o >= r && (this.dMultiply(n), this.dAddOffset(a, 0), o = 0, a = 0)) + } + o > 0 && (this.dMultiply(Math.pow(e, o)), this.dAddOffset(a, 0)), i && s.ZERO.subTo(this, this) + }, s.prototype.fromNumber = function(t, e) { + if ("number" == typeof e) + if (t < 2) this.fromInt(1); + else + for (this.fromNumber(t), this.testBit(t - 1) || this.bitwiseTo(s.ONE.shiftLeft(t - 1), m, this), this.isEven() && this.dAddOffset(1, 0); !this.isProbablePrime(e);) this.dAddOffset(2, 0), this.bitLength() > t && this.subTo(s.ONE.shiftLeft(t - 1), this); + else { + var r = i.randomBytes(1 + (t >> 3)), + n = 7 & t; + n > 0 ? r[0] &= (1 << n) - 1 : r[0] = 0, this.fromByteArray(r) + } + }, s.prototype.bitwiseTo = function(t, e, r) { + var n, i, o = Math.min(t.t, this.t); + for (n = 0; n < o; ++n) r[n] = e(this[n], t[n]); + if (t.t < this.t) { + for (i = t.s & this.DM, n = o; n < this.t; ++n) r[n] = e(this[n], i); + r.t = this.t + } else { + for (i = this.s & this.DM, n = o; n < t.t; ++n) r[n] = e(i, t[n]); + r.t = t.t + } + r.s = e(this.s, t.s), r.clamp() + }, s.prototype.changeBit = function(t, e) { + var r = s.ONE.shiftLeft(t); + return this.bitwiseTo(r, e, r), r + }, s.prototype.addTo = function(t, e) { + for (var r = 0, n = 0, i = Math.min(t.t, this.t); r < i;) n += this[r] + t[r], e[r++] = n & this.DM, n >>= this.DB; + if (t.t < this.t) { + for (n += t.s; r < this.t;) n += this[r], e[r++] = n & this.DM, n >>= this.DB; + n += this.s + } else { + for (n += this.s; r < t.t;) n += t[r], e[r++] = n & this.DM, n >>= this.DB; + n += t.s + } + e.s = n < 0 ? -1 : 0, n > 0 ? e[r++] = n : n < -1 && (e[r++] = this.DV + n), e.t = r, e.clamp() + }, s.prototype.dMultiply = function(t) { + this[this.t] = this.am(0, t - 1, this, 0, 0, this.t), ++this.t, this.clamp() + }, s.prototype.dAddOffset = function(t, e) { + if (0 !== t) { + for (; this.t <= e;) this[this.t++] = 0; + for (this[e] += t; this[e] >= this.DV;) this[e] -= this.DV, ++e >= this.t && (this[this.t++] = 0), ++this[e] + } + }, s.prototype.multiplyLowerTo = function(t, e, r) { + var n, i = Math.min(this.t + t.t, e); + for (r.s = 0, r.t = i; i > 0;) r[--i] = 0; + for (n = r.t - this.t; i < n; ++i) r[i + this.t] = this.am(0, t[i], r, i, 0, this.t); + for (n = Math.min(t.t, e); i < n; ++i) this.am(0, t[i], r, i, 0, e - i); + r.clamp() + }, s.prototype.multiplyUpperTo = function(t, e, r) { + --e; + var n = r.t = this.t + t.t - e; + for (r.s = 0; --n >= 0;) r[n] = 0; + for (n = Math.max(e - this.t, 0); n < t.t; ++n) r[this.t + n - e] = this.am(e - n, t[n], r, 0, 0, this.t + n - e); + r.clamp(), r.drShiftTo(1, r) + }, s.prototype.modInt = function(t) { + if (t <= 0) return 0; + var e = this.DV % t, + r = this.s < 0 ? t - 1 : 0; + if (this.t > 0) + if (0 === e) r = this[0] % t; + else + for (var n = this.t - 1; n >= 0; --n) r = (e * r + this[n]) % t; return r + }, s.prototype.millerRabin = function(t) { + var e = this.subtract(s.ONE), + r = e.getLowestSetBit(); + if (r <= 0) return !1; + var n = e.shiftRight(r); + (t = t + 1 >> 1) > A.length && (t = A.length); + for (var i = a(), o = 0; o < t; ++o) { + i.fromInt(A[Math.floor(Math.random() * A.length)]); + var f = i.modPow(n, this); + if (0 != f.compareTo(s.ONE) && 0 != f.compareTo(e)) { + for (var u = 1; u++ < r && 0 != f.compareTo(e);) + if (0 === (f = f.modPowInt(2, this)).compareTo(s.ONE)) return !1; + if (0 != f.compareTo(e)) return !1 + } + } + return !0 + }, s.prototype.toString = function(t) { + if (this.s < 0) return "-" + this.negate().toString(t); + var e; + if (16 == t) e = 4; + else if (8 == t) e = 3; + else if (2 == t) e = 1; + else if (32 == t) e = 5; + else { + if (4 != t) return this.toRadix(t); + e = 2 + } + var r, n = (1 << e) - 1, + i = !1, + o = "", + s = this.t, + a = this.DB - s * this.DB % e; + if (s-- > 0) + for (a < this.DB && (r = this[s] >> a) > 0 && (i = !0, o = h(r)); s >= 0;) a < e ? (r = (this[s] & (1 << a) - 1) << e - a, r |= this[--s] >> (a += this.DB - e)) : (r = this[s] >> (a -= e) & n, a <= 0 && (a += this.DB, --s)), r > 0 && (i = !0), i && (o += h(r)); + return i ? o : "0" + }, s.prototype.negate = function() { + var t = a(); + return s.ZERO.subTo(this, t), t + }, s.prototype.abs = function() { + return this.s < 0 ? this.negate() : this + }, s.prototype.compareTo = function(t) { + var e = this.s - t.s; + if (0 != e) return e; + var r = this.t; + if (0 != (e = r - t.t)) return this.s < 0 ? -e : e; + for (; --r >= 0;) + if (0 != (e = this[r] - t[r])) return e; + return 0 + }, s.prototype.bitLength = function() { + return this.t <= 0 ? 0 : this.DB * (this.t - 1) + y(this[this.t - 1] ^ this.s & this.DM) + }, s.prototype.mod = function(t) { + var e = a(); + return this.abs().divRemTo(t, null, e), this.s < 0 && e.compareTo(s.ZERO) > 0 && t.subTo(e, e), e + }, s.prototype.modPowInt = function(t, e) { + var r; + return r = t < 256 || e.isEven() ? new g(e) : new d(e), this.exp(t, r) + }, s.prototype.clone = function() { + var t = a(); + return this.copyTo(t), t + }, s.prototype.intValue = function() { + if (this.s < 0) { + if (1 == this.t) return this[0] - this.DV; + if (0 === this.t) return -1 + } else { + if (1 == this.t) return this[0]; + if (0 === this.t) return 0 + } + return (this[1] & (1 << 32 - this.DB) - 1) << this.DB | this[0] + }, s.prototype.byteValue = function() { + return 0 == this.t ? this.s : this[0] << 24 >> 24 + }, s.prototype.shortValue = function() { + return 0 == this.t ? this.s : this[0] << 16 >> 16 + }, s.prototype.signum = function() { + return this.s < 0 ? -1 : this.t <= 0 || 1 == this.t && this[0] <= 0 ? 0 : 1 + }, s.prototype.toByteArray = function() { + var t = this.t, + e = new Array; + e[0] = this.s; + var r, n = this.DB - t * this.DB % 8, + i = 0; + if (t-- > 0) + for (n < this.DB && (r = this[t] >> n) != (this.s & this.DM) >> n && (e[i++] = r | this.s << this.DB - n); t >= 0;) n < 8 ? (r = (this[t] & (1 << n) - 1) << 8 - n, r |= this[--t] >> (n += this.DB - 8)) : (r = this[t] >> (n -= 8) & 255, n <= 0 && (n += this.DB, --t)), 128 & r && (r |= -256), 0 === i && (128 & this.s) != (128 & r) && ++i, (i > 0 || r != this.s) && (e[i++] = r); + return e + }, s.prototype.toBuffer = function(t) { + var e = n.from(this.toByteArray()); + if (!0 === t && 0 === e[0]) e = e.slice(1); + else if (o.isNumber(t)) { + if (e.length > t) { + for (var r = 0; r < e.length - t; r++) + if (0 !== e[r]) return null; + return e.slice(e.length - t) + } + if (e.length < t) { + var i = n.alloc(t); + return i.fill(0, 0, t - e.length), e.copy(i, t - e.length), i + } + } + return e + }, s.prototype.equals = function(t) { + return 0 == this.compareTo(t) + }, s.prototype.min = function(t) { + return this.compareTo(t) < 0 ? this : t + }, s.prototype.max = function(t) { + return this.compareTo(t) > 0 ? this : t + }, s.prototype.and = function(t) { + var e = a(); + return this.bitwiseTo(t, v, e), e + }, s.prototype.or = function(t) { + var e = a(); + return this.bitwiseTo(t, m, e), e + }, s.prototype.xor = function(t) { + var e = a(); + return this.bitwiseTo(t, S, e), e + }, s.prototype.andNot = function(t) { + var e = a(); + return this.bitwiseTo(t, _, e), e + }, s.prototype.not = function() { + for (var t = a(), e = 0; e < this.t; ++e) t[e] = this.DM & ~this[e]; + return t.t = this.t, t.s = ~this.s, t + }, s.prototype.shiftLeft = function(t) { + var e = a(); + return t < 0 ? this.rShiftTo(-t, e) : this.lShiftTo(t, e), e + }, s.prototype.shiftRight = function(t) { + var e = a(); + return t < 0 ? this.lShiftTo(-t, e) : this.rShiftTo(t, e), e + }, s.prototype.getLowestSetBit = function() { + for (var t = 0; t < this.t; ++t) + if (0 != this[t]) return t * this.DB + b(this[t]); + return this.s < 0 ? this.t * this.DB : -1 + }, s.prototype.bitCount = function() { + for (var t = 0, e = this.s & this.DM, r = 0; r < this.t; ++r) t += E(this[r] ^ e); + return t + }, s.prototype.testBit = function(t) { + var e = Math.floor(t / this.DB); + return e >= this.t ? 0 != this.s : !!(this[e] & 1 << t % this.DB) + }, s.prototype.setBit = function(t) { + return this.changeBit(t, m) + }, s.prototype.clearBit = function(t) { + return this.changeBit(t, _) + }, s.prototype.flipBit = function(t) { + return this.changeBit(t, S) + }, s.prototype.add = function(t) { + var e = a(); + return this.addTo(t, e), e + }, s.prototype.subtract = function(t) { + var e = a(); + return this.subTo(t, e), e + }, s.prototype.multiply = function(t) { + var e = a(); + return this.multiplyTo(t, e), e + }, s.prototype.divide = function(t) { + var e = a(); + return this.divRemTo(t, e, null), e + }, s.prototype.remainder = function(t) { + var e = a(); + return this.divRemTo(t, null, e), e + }, s.prototype.divideAndRemainder = function(t) { + var e = a(), + r = a(); + return this.divRemTo(t, e, r), new Array(e, r) + }, s.prototype.modPow = function(t, e) { + var r, n, i = t.bitLength(), + o = l(1); + if (i <= 0) return o; + r = i < 18 ? 1 : i < 48 ? 3 : i < 144 ? 4 : i < 768 ? 5 : 6, n = i < 8 ? new g(e) : e.isEven() ? new B(e) : new d(e); + var s = new Array, + f = 3, + u = r - 1, + c = (1 << r) - 1; + if (s[1] = n.convert(this), r > 1) { + var h = a(); + for (n.sqrTo(s[1], h); f <= c;) s[f] = a(), n.mulTo(h, s[f - 2], s[f]), f += 2 + } + var p, v, m = t.t - 1, + S = !0, + _ = a(); + for (i = y(t[m]) - 1; m >= 0;) { + for (i >= u ? p = t[m] >> i - u & c : (p = (t[m] & (1 << i + 1) - 1) << u - i, m > 0 && (p |= t[m - 1] >> this.DB + i - u)), f = r; !(1 & p);) p >>= 1, --f; + if ((i -= f) < 0 && (i += this.DB, --m), S) s[p].copyTo(o), S = !1; + else { + for (; f > 1;) n.sqrTo(o, _), n.sqrTo(_, o), f -= 2; + f > 0 ? n.sqrTo(o, _) : (v = o, o = _, _ = v), n.mulTo(_, s[p], o) + } + for (; m >= 0 && !(t[m] & 1 << i);) n.sqrTo(o, _), v = o, o = _, _ = v, --i < 0 && (i = this.DB - 1, --m) + } + return n.revert(o) + }, s.prototype.modInverse = function(t) { + var e = t.isEven(); + if (this.isEven() && e || 0 === t.signum()) return s.ZERO; + for (var r = t.clone(), n = this.clone(), i = l(1), o = l(0), a = l(0), f = l(1); 0 != r.signum();) { + for (; r.isEven();) r.rShiftTo(1, r), e ? (i.isEven() && o.isEven() || (i.addTo(this, i), o.subTo(t, o)), i.rShiftTo(1, i)) : o.isEven() || o.subTo(t, o), o.rShiftTo(1, o); + for (; n.isEven();) n.rShiftTo(1, n), e ? (a.isEven() && f.isEven() || (a.addTo(this, a), f.subTo(t, f)), a.rShiftTo(1, a)) : f.isEven() || f.subTo(t, f), f.rShiftTo(1, f); + r.compareTo(n) >= 0 ? (r.subTo(n, r), e && i.subTo(a, i), o.subTo(f, o)) : (n.subTo(r, n), e && a.subTo(i, a), f.subTo(o, f)) + } + return 0 != n.compareTo(s.ONE) ? s.ZERO : f.compareTo(t) >= 0 ? f.subtract(t) : f.signum() < 0 ? (f.addTo(t, f), f.signum() < 0 ? f.add(t) : f) : f + }, s.prototype.pow = function(t) { + return this.exp(t, new w) + }, s.prototype.gcd = function(t) { + var e = this.s < 0 ? this.negate() : this.clone(), + r = t.s < 0 ? t.negate() : t.clone(); + if (e.compareTo(r) < 0) { + var n = e; + e = r, r = n + } + var i = e.getLowestSetBit(), + o = r.getLowestSetBit(); + if (o < 0) return e; + for (i < o && (o = i), o > 0 && (e.rShiftTo(o, e), r.rShiftTo(o, r)); e.signum() > 0;)(i = e.getLowestSetBit()) > 0 && e.rShiftTo(i, e), (i = r.getLowestSetBit()) > 0 && r.rShiftTo(i, r), e.compareTo(r) >= 0 ? (e.subTo(r, e), e.rShiftTo(1, e)) : (r.subTo(e, r), r.rShiftTo(1, r)); + return o > 0 && r.lShiftTo(o, r), r + }, s.prototype.isProbablePrime = function(t) { + var e, r = this.abs(); + if (1 == r.t && r[0] <= A[A.length - 1]) { + for (e = 0; e < A.length; ++e) + if (r[0] == A[e]) return !0; + return !1 + } + if (r.isEven()) return !1; + for (e = 1; e < A.length;) { + for (var n = A[e], i = e + 1; i < A.length && n < x;) n *= A[i++]; + for (n = r.modInt(n); e < i;) + if (n % A[e++] == 0) return !1 + } + return r.millerRabin(t) + }, s.int2char = h, s.ZERO = l(0), s.ONE = l(1), s.prototype.square = function() { + var t = a(); + return this.squareTo(t), t + }, t.exports = s + }, + 5682: (t, e, r) => { + var n = r(8287).Buffer, + i = r(8226)._, + o = (r(3200), r(1973)), + s = r(8226), + a = r(1768), + f = r(4538); + e.BigInteger = o, t.exports.Key = function() { + function t() { + this.n = null, this.e = 0, this.d = null, this.p = null, this.q = null, this.dmp1 = null, this.dmq1 = null, this.coeff = null + } + return t.prototype.setOptions = function(t) { + var e = a[t.signingScheme], + r = a[t.encryptionScheme]; + e === r ? this.signingScheme = this.encryptionScheme = r.makeScheme(this, t) : (this.encryptionScheme = r.makeScheme(this, t), this.signingScheme = e.makeScheme(this, t)), this.encryptEngine = f.getEngine(this, t) + }, t.prototype.generate = function(t, e) { + var r = t >> 1; + this.e = parseInt(e, 16); + for (var n = new o(e, 16);;) { + for (; this.p = new o(t - r, 1), 0 !== this.p.subtract(o.ONE).gcd(n).compareTo(o.ONE) || !this.p.isProbablePrime(10);); + for (; this.q = new o(r, 1), 0 !== this.q.subtract(o.ONE).gcd(n).compareTo(o.ONE) || !this.q.isProbablePrime(10);); + if (this.p.compareTo(this.q) <= 0) { + var i = this.p; + this.p = this.q, this.q = i + } + var s = this.p.subtract(o.ONE), + a = this.q.subtract(o.ONE), + f = s.multiply(a); + if (0 === f.gcd(n).compareTo(o.ONE)) { + if (this.n = this.p.multiply(this.q), this.n.bitLength() < t) continue; + this.d = n.modInverse(f), this.dmp1 = this.d.mod(s), this.dmq1 = this.d.mod(a), this.coeff = this.q.modInverse(this.p); + break + } + } + this.$$recalculateCache() + }, t.prototype.setPrivate = function(t, e, r, n, a, f, u, c) { + if (!(t && e && r && t.length > 0 && (i.isNumber(e) || e.length > 0) && r.length > 0)) throw Error("Invalid RSA private key"); + this.n = new o(t), this.e = i.isNumber(e) ? e : s.get32IntFromBuffer(e, 0), this.d = new o(r), n && a && f && u && c && (this.p = new o(n), this.q = new o(a), this.dmp1 = new o(f), this.dmq1 = new o(u), this.coeff = new o(c)), this.$$recalculateCache() + }, t.prototype.setPublic = function(t, e) { + if (!(t && e && t.length > 0 && (i.isNumber(e) || e.length > 0))) throw Error("Invalid RSA public key"); + this.n = new o(t), this.e = i.isNumber(e) ? e : s.get32IntFromBuffer(e, 0), this.$$recalculateCache() + }, t.prototype.$doPrivate = function(t) { + if (this.p || this.q) return t.modPow(this.d, this.n); + for (var e = t.mod(this.p).modPow(this.dmp1, this.p), r = t.mod(this.q).modPow(this.dmq1, this.q); e.compareTo(r) < 0;) e = e.add(this.p); + return e.subtract(r).multiply(this.coeff).mod(this.p).multiply(this.q).add(r) + }, t.prototype.$doPublic = function(t) { + return t.modPowInt(this.e, this.n) + }, t.prototype.encrypt = function(t, e) { + var r = [], + i = [], + o = t.length, + s = Math.ceil(o / this.maxMessageLength) || 1, + a = Math.ceil(o / s || 1); + if (1 == s) r.push(t); + else + for (var f = 0; f < s; f++) r.push(t.slice(f * a, (f + 1) * a)); + for (var u = 0; u < r.length; u++) i.push(this.encryptEngine.encrypt(r[u], e)); + return n.concat(i) + }, t.prototype.decrypt = function(t, e) { + if (t.length % this.encryptedDataLength > 0) throw Error("Incorrect data or key"); + for (var r = [], i = 0, o = 0, s = t.length / this.encryptedDataLength, a = 0; a < s; a++) o = (i = a * this.encryptedDataLength) + this.encryptedDataLength, r.push(this.encryptEngine.decrypt(t.slice(i, Math.min(o, t.length)), e)); + return n.concat(r) + }, t.prototype.sign = function(t) { + return this.signingScheme.sign.apply(this.signingScheme, arguments) + }, t.prototype.verify = function(t, e, r) { + return this.signingScheme.verify.apply(this.signingScheme, arguments) + }, t.prototype.isPrivate = function() { + return !!(this.n && this.e && this.d) + }, t.prototype.isPublic = function(t) { + return this.n && this.e && !(t && this.d) || !1 + }, Object.defineProperty(t.prototype, "keySize", { + get: function() { + return this.cache.keyBitLength + } + }), Object.defineProperty(t.prototype, "encryptedDataLength", { + get: function() { + return this.cache.keyByteLength + } + }), Object.defineProperty(t.prototype, "maxMessageLength", { + get: function() { + return this.encryptionScheme.maxMessageLength() + } + }), t.prototype.$$recalculateCache = function() { + this.cache = this.cache || {}, this.cache.keyBitLength = this.n.bitLength(), this.cache.keyByteLength = this.cache.keyBitLength + 6 >> 3 + }, t + }() + }, + 2487: (t, e, r) => { + var n = r(8287).Buffer, + i = (r(1973), r(3200)); + t.exports = { + isEncryption: !0, + isSignature: !1 + }, t.exports.digestLength = { + md4: 16, + md5: 16, + ripemd160: 20, + rmd160: 20, + sha1: 20, + sha224: 28, + sha256: 32, + sha384: 48, + sha512: 64 + }; + var o = "sha1"; + t.exports.eme_oaep_mgf1 = function(e, r, s) { + s = s || o; + for (var a = t.exports.digestLength[s], f = Math.ceil(r / a), u = n.alloc(a * f), c = n.alloc(4), h = 0; h < f; ++h) { + var p = i.createHash(s); + p.update(e), c.writeUInt32BE(h, 0), p.update(c), p.digest().copy(u, h * a) + } + return u.slice(0, r) + }, t.exports.makeScheme = function(e, r) { + function s(t, e) { + this.key = t, this.options = e + } + return s.prototype.maxMessageLength = function() { + return this.key.encryptedDataLength - 2 * t.exports.digestLength[this.options.encryptionSchemeOptions.hash || o] - 2 + }, s.prototype.encPad = function(e) { + var r = this.options.encryptionSchemeOptions.hash || o, + s = this.options.encryptionSchemeOptions.mgf || t.exports.eme_oaep_mgf1, + a = this.options.encryptionSchemeOptions.label || n.alloc(0), + f = this.key.encryptedDataLength, + u = t.exports.digestLength[r]; + if (e.length > f - 2 * u - 2) throw new Error("Message is too long to encode into an encoded message with a length of " + f + " bytes, increaseemLen to fix this error (minimum value for given parameters and options: " + (f - 2 * u - 2) + ")"); + var c = i.createHash(r); + c.update(a), c = c.digest(); + var h = n.alloc(f - e.length - 2 * u - 1); + h.fill(0), h[h.length - 1] = 1; + for (var p = n.concat([c, h, e]), l = i.randomBytes(u), y = s(l, p.length, r), g = 0; g < p.length; g++) p[g] ^= y[g]; + for (y = s(p, u, r), g = 0; g < l.length; g++) l[g] ^= y[g]; + var d = n.alloc(1 + l.length + p.length); + return d[0] = 0, l.copy(d, 1), p.copy(d, 1 + l.length), d + }, s.prototype.encUnPad = function(e) { + var r = this.options.encryptionSchemeOptions.hash || o, + s = this.options.encryptionSchemeOptions.mgf || t.exports.eme_oaep_mgf1, + a = this.options.encryptionSchemeOptions.label || n.alloc(0), + f = t.exports.digestLength[r]; + if (e.length < 2 * f + 2) throw new Error("Error decoding message, the supplied message is not long enough to be a valid OAEP encoded message"); + for (var u = e.slice(1, f + 1), c = e.slice(1 + f), h = s(c, f, r), p = 0; p < u.length; p++) u[p] ^= h[p]; + for (h = s(u, c.length, r), p = 0; p < c.length; p++) c[p] ^= h[p]; + var l = i.createHash(r); + if (l.update(a), l = l.digest(), c.slice(0, f).toString("hex") != l.toString("hex")) throw new Error("Error decoding message, the lHash calculated from the label provided and the lHash in the encrypted data do not match."); + for (p = f; 0 === c[p++] && p < c.length;); + if (1 != c[p - 1]) throw new Error("Error decoding message, there is no padding message separator byte"); + return c.slice(p) + }, new s(e, r) } - }, t.exports.trimSurroundingText = function(t, e, r) { - var n = 0, - i = t.length, - o = t.indexOf(e); - o >= 0 && (n = o + e.length); - var s = t.indexOf(r, o); - return s >= 0 && (i = s), t.substring(n, i) - } - }, - 8875: (t, e, r) => { - "use strict"; - var n; - if (!Object.keys) { - var i = Object.prototype.hasOwnProperty, - o = Object.prototype.toString, - s = r(1093), - a = Object.prototype.propertyIsEnumerable, - f = !a.call({ - toString: null - }, "toString"), - u = a.call((function() {}), "prototype"), - c = ["toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "constructor"], - h = function(t) { - var e = t.constructor; - return e && e.prototype === t - }, p = { - $applicationCache: !0, - $console: !0, - $external: !0, - $frame: !0, - $frameElement: !0, - $frames: !0, - $innerHeight: !0, - $innerWidth: !0, - $onmozfullscreenchange: !0, - $onmozfullscreenerror: !0, - $outerHeight: !0, - $outerWidth: !0, - $pageXOffset: !0, - $pageYOffset: !0, - $parent: !0, - $scrollLeft: !0, - $scrollTop: !0, - $scrollX: !0, - $scrollY: !0, - $self: !0, - $webkitIndexedDB: !0, - $webkitStorageInfo: !0, - $window: !0 - }, l = function() { - if ("undefined" == typeof window) return !1; - for (var t in window) try { - if (!p["$" + t] && i.call(window, t) && null !== window[t] && "object" == typeof window[t]) try { - h(window[t]) + }, + 8290: (t, e, r) => { + var n = r(8287).Buffer, + i = r(1973), + o = r(3200), + s = r(7449), + a = { + md2: n.from("3020300c06082a864886f70d020205000410", "hex"), + md5: n.from("3020300c06082a864886f70d020505000410", "hex"), + sha1: n.from("3021300906052b0e03021a05000414", "hex"), + sha224: n.from("302d300d06096086480165030402040500041c", "hex"), + sha256: n.from("3031300d060960864801650304020105000420", "hex"), + sha384: n.from("3041300d060960864801650304020205000430", "hex"), + sha512: n.from("3051300d060960864801650304020305000440", "hex"), + ripemd160: n.from("3021300906052b2403020105000414", "hex"), + rmd160: n.from("3021300906052b2403020105000414", "hex") + }, + f = { + ripemd160: "rmd160" + }, + u = "sha256"; + t.exports = { + isEncryption: !0, + isSignature: !0 + }, t.exports.makeScheme = function(t, e) { + function r(t, e) { + this.key = t, this.options = e + } + return r.prototype.maxMessageLength = function() { + return this.options.encryptionSchemeOptions && this.options.encryptionSchemeOptions.padding == s.RSA_NO_PADDING ? this.key.encryptedDataLength : this.key.encryptedDataLength - 11 + }, r.prototype.encPad = function(t, e) { + var r; + if (e = e || {}, t.length > this.key.maxMessageLength) throw new Error("Message too long for RSA (n=" + this.key.encryptedDataLength + ", l=" + t.length + ")"); + if (this.options.encryptionSchemeOptions && this.options.encryptionSchemeOptions.padding == s.RSA_NO_PADDING) return (r = n.alloc(this.key.maxMessageLength - t.length)).fill(0), n.concat([r, t]); + if (1 === e.type) return (r = n.alloc(this.key.encryptedDataLength - t.length - 1)).fill(255, 0, r.length - 1), r[0] = 1, r[r.length - 1] = 0, n.concat([r, t]); + (r = n.alloc(this.key.encryptedDataLength - t.length))[0] = 0, r[1] = 2; + for (var i = o.randomBytes(r.length - 3), a = 0; a < i.length; a++) { + for (var f = i[a]; 0 === f;) f = o.randomBytes(1)[0]; + r[a + 2] = f + } + return r[r.length - 1] = 0, n.concat([r, t]) + }, r.prototype.encUnPad = function(t, e) { + e = e || {}; + var r = 0; + if (this.options.encryptionSchemeOptions && this.options.encryptionSchemeOptions.padding == s.RSA_NO_PADDING) return "function" == typeof t.lastIndexOf ? t.slice(t.lastIndexOf("\0") + 1, t.length) : t.slice(String.prototype.lastIndexOf.call(t, "\0") + 1, t.length); + if (t.length < 4) return null; + if (1 === e.type) { + if (0 !== t[0] || 1 !== t[1]) return null; + for (r = 3; 0 !== t[r];) + if (255 != t[r] || ++r >= t.length) return null + } else { + if (0 !== t[0] || 2 !== t[1]) return null; + for (r = 3; 0 !== t[r];) + if (++r >= t.length) return null + } + return t.slice(r + 1, t.length) + }, r.prototype.sign = function(t) { + var e = this.options.signingSchemeOptions.hash || u; + if ("browser" === this.options.environment) { + e = f[e] || e; + var r = o.createHash(e); + r.update(t); + var n = this.pkcs1pad(r.digest(), e); + return this.key.$doPrivate(new i(n)).toBuffer(this.key.encryptedDataLength) + } + var s = o.createSign("RSA-" + e.toUpperCase()); + return s.update(t), s.sign(this.options.rsaUtils.exportKey("private")) + }, r.prototype.verify = function(t, e, r) { + if (this.options.encryptionSchemeOptions && this.options.encryptionSchemeOptions.padding == s.RSA_NO_PADDING) return !1; + var a = this.options.signingSchemeOptions.hash || u; + if ("browser" === this.options.environment) { + a = f[a] || a, r && (e = n.from(e, r)); + var c = o.createHash(a); + c.update(t); + var h = this.pkcs1pad(c.digest(), a); + return this.key.$doPublic(new i(e)).toBuffer().toString("hex") == h.toString("hex") + } + var p = o.createVerify("RSA-" + a.toUpperCase()); + return p.update(t), p.verify(this.options.rsaUtils.exportKey("public"), e, r) + }, r.prototype.pkcs0pad = function(t) { + var e = n.alloc(this.key.maxMessageLength - t.length); + return e.fill(0), n.concat([e, t]) + }, r.prototype.pkcs0unpad = function(t) { + return "function" == typeof t.lastIndexOf ? t.slice(t.lastIndexOf("\0") + 1, t.length) : t.slice(String.prototype.lastIndexOf.call(t, "\0") + 1, t.length) + }, r.prototype.pkcs1pad = function(t, e) { + var r = a[e]; + if (!r) throw Error("Unsupported hash algorithm"); + var i = n.concat([r, t]); + if (i.length + 10 > this.key.encryptedDataLength) throw Error("Key is too short for signing algorithm (" + e + ")"); + var o = n.alloc(this.key.encryptedDataLength - i.length - 1); + return o.fill(255, 0, o.length - 1), o[0] = 1, o[o.length - 1] = 0, n.concat([o, i]) + }, new r(t, e) + } + }, + 4414: (t, e, r) => { + var n = r(8287).Buffer, + i = r(1973), + o = r(3200); + t.exports = { + isEncryption: !1, + isSignature: !0 + }; + var s = "sha1"; + t.exports.makeScheme = function(t, e) { + var a = r(1768).pkcs1_oaep; + + function f(t, e) { + this.key = t, this.options = e + } + return f.prototype.sign = function(t) { + var e = o.createHash(this.options.signingSchemeOptions.hash || s); + e.update(t); + var r = this.emsa_pss_encode(e.digest(), this.key.keySize - 1); + return this.key.$doPrivate(new i(r)).toBuffer(this.key.encryptedDataLength) + }, f.prototype.verify = function(t, e, r) { + r && (e = n.from(e, r)), e = new i(e); + var a = Math.ceil((this.key.keySize - 1) / 8), + f = this.key.$doPublic(e).toBuffer(a), + u = o.createHash(this.options.signingSchemeOptions.hash || s); + return u.update(t), this.emsa_pss_verify(u.digest(), f, this.key.keySize - 1) + }, f.prototype.emsa_pss_encode = function(t, e) { + var r = this.options.signingSchemeOptions.hash || s, + i = this.options.signingSchemeOptions.mgf || a.eme_oaep_mgf1, + f = this.options.signingSchemeOptions.saltLength || 20, + u = a.digestLength[r], + c = Math.ceil(e / 8); + if (c < u + f + 2) throw new Error("Output length passed to emBits(" + e + ") is too small for the options specified(" + r + ", " + f + "). To fix this issue increase the value of emBits. (minimum size: " + (8 * u + 8 * f + 9) + ")"); + var h = o.randomBytes(f), + p = n.alloc(8 + u + f); + p.fill(0, 0, 8), t.copy(p, 8), h.copy(p, 8 + t.length); + var l = o.createHash(r); + l.update(p), l = l.digest(); + var y = n.alloc(c - h.length - u - 2); + y.fill(0); + var g = n.alloc(y.length + 1 + h.length); + y.copy(g), g[y.length] = 1, h.copy(g, y.length + 1); + for (var d = i(l, g.length, r), v = n.alloc(g.length), m = 0; m < d.length; m++) v[m] = g[m] ^ d[m]; + var S = 8 * c - e, + _ = 255 ^ 255 >> 8 - S << 8 - S; + v[0] = v[0] & _; + var b = n.alloc(v.length + l.length + 1); + return v.copy(b, 0), l.copy(b, v.length), b[b.length - 1] = 188, b + }, f.prototype.emsa_pss_verify = function(t, e, r) { + var i = this.options.signingSchemeOptions.hash || s, + f = this.options.signingSchemeOptions.mgf || a.eme_oaep_mgf1, + u = this.options.signingSchemeOptions.saltLength || 20, + c = a.digestLength[i], + h = Math.ceil(r / 8); + if (h < c + u + 2 || 188 != e[e.length - 1]) return !1; + var p = n.alloc(h - c - 1); + e.copy(p, 0, 0, h - c - 1); + for (var l = 0, y = 0, g = 8 * h - r; y < g; y++) l |= 1 << 7 - y; + if (p[0] & l) return !1; + var d = e.slice(h - c - 1, h - 1), + v = f(d, p.length, i); + for (y = 0; y < p.length; y++) p[y] ^= v[y]; + for (l = 255 ^ 255 >> 8 - (g = 8 * h - r) << 8 - g, p[0] = p[0] & l, y = 0; 0 === p[y] && y < p.length; y++); + if (1 != p[y]) return !1; + var m = p.slice(p.length - u), + S = n.alloc(8 + c + u); + S.fill(0, 0, 8), t.copy(S, 8), m.copy(S, 8 + t.length); + var _ = o.createHash(i); + return _.update(S), _ = _.digest(), d.toString("hex") === _.toString("hex") + }, new f(t, e) + } + }, + 1768: (t, e, r) => { + t.exports = { + pkcs1: r(8290), + pkcs1_oaep: r(2487), + pss: r(4414), + isEncryption: function(e) { + return t.exports[e] && t.exports[e].isEncryption + }, + isSignature: function(e) { + return t.exports[e] && t.exports[e].isSignature + } + } + }, + 8226: (t, e, r) => { + var n = r(5606); + r(3200), t.exports.linebrk = function(t, e) { + for (var r = "", n = 0; n + e < t.length;) r += t.substring(n, n + e) + "\n", n += e; + return r + t.substring(n, t.length) + }, t.exports.detectEnvironment = function() { + return "browser"; + "undefined" == typeof window || !window || n && "node" === n.title ? "node" : "browser" + }, t.exports.get32IntFromBuffer = function(t, e) { + var r; + if (e = e || 0, (r = t.length - e) > 0) { + if (r >= 4) return t.readUIntBE(e, r); + for (var n = 0, i = e + r, o = 0; i > e; i--, o += 2) n += t[i - 1] * Math.pow(16, o); + return n + } + return NaN + }, t.exports._ = { + isObject: function(t) { + var e = typeof t; + return !!t && ("object" == e || "function" == e) + }, + isString: function(t) { + return "string" == typeof t || t instanceof String + }, + isNumber: function(t) { + return "number" == typeof t || !isNaN(parseFloat(t)) && isFinite(t) + }, + omit: function(t, e) { + var r = {}; + for (var n in t) t.hasOwnProperty(n) && n !== e && (r[n] = t[n]); + return r + } + }, t.exports.trimSurroundingText = function(t, e, r) { + var n = 0, + i = t.length, + o = t.indexOf(e); + o >= 0 && (n = o + e.length); + var s = t.indexOf(r, o); + return s >= 0 && (i = s), t.substring(n, i) + } + }, + 8875: (t, e, r) => { + "use strict"; + var n; + if (!Object.keys) { + var i = Object.prototype.hasOwnProperty, + o = Object.prototype.toString, + s = r(1093), + a = Object.prototype.propertyIsEnumerable, + f = !a.call({ + toString: null + }, "toString"), + u = a.call((function() {}), "prototype"), + c = ["toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "constructor"], + h = function(t) { + var e = t.constructor; + return e && e.prototype === t + }, + p = { + $applicationCache: !0, + $console: !0, + $external: !0, + $frame: !0, + $frameElement: !0, + $frames: !0, + $innerHeight: !0, + $innerWidth: !0, + $onmozfullscreenchange: !0, + $onmozfullscreenerror: !0, + $outerHeight: !0, + $outerWidth: !0, + $pageXOffset: !0, + $pageYOffset: !0, + $parent: !0, + $scrollLeft: !0, + $scrollTop: !0, + $scrollX: !0, + $scrollY: !0, + $self: !0, + $webkitIndexedDB: !0, + $webkitStorageInfo: !0, + $window: !0 + }, + l = function() { + if ("undefined" == typeof window) return !1; + for (var t in window) try { + if (!p["$" + t] && i.call(window, t) && null !== window[t] && "object" == typeof window[t]) try { + h(window[t]) + } catch (t) { + return !0 + } } catch (t) { return !0 } - } catch (t) { - return !0 + return !1 + }(); + n = function(t) { + var e = null !== t && "object" == typeof t, + r = "[object Function]" === o.call(t), + n = s(t), + a = e && "[object String]" === o.call(t), + p = []; + if (!e && !r && !n) throw new TypeError("Object.keys called on a non-object"); + var y = u && r; + if (a && t.length > 0 && !i.call(t, 0)) + for (var g = 0; g < t.length; ++g) p.push(String(g)); + if (n && t.length > 0) + for (var d = 0; d < t.length; ++d) p.push(String(d)); + else + for (var v in t) y && "prototype" === v || !i.call(t, v) || p.push(String(v)); + if (f) + for (var m = function(t) { + if ("undefined" == typeof window || !l) return h(t); + try { + return h(t) + } catch (t) { + return !1 + } + }(t), S = 0; S < c.length; ++S) m && "constructor" === c[S] || !i.call(t, c[S]) || p.push(c[S]); + return p + } + } + t.exports = n + }, + 1189: (t, e, r) => { + "use strict"; + var n = Array.prototype.slice, + i = r(1093), + o = Object.keys, + s = o ? function(t) { + return o(t) + } : r(8875), + a = Object.keys; + s.shim = function() { + if (Object.keys) { + var t = function() { + var t = Object.keys(arguments); + return t && t.length === arguments.length + }(1, 2); + t || (Object.keys = function(t) { + return i(t) ? a(n.call(t)) : a(t) + }) + } else Object.keys = s; + return Object.keys || s + }, t.exports = s + }, + 1093: t => { + "use strict"; + var e = Object.prototype.toString; + t.exports = function(t) { + var r = e.call(t), + n = "[object Arguments]" === r; + return n || (n = "[object Array]" !== r && null !== t && "object" == typeof t && "number" == typeof t.length && t.length >= 0 && "[object Function]" === e.call(t.callee)), n + } + }, + 8403: (t, e, r) => { + "use strict"; + var n = r(1189), + i = r(1333)(), + o = r(8075), + s = Object, + a = o("Array.prototype.push"), + f = o("Object.prototype.propertyIsEnumerable"), + u = i ? Object.getOwnPropertySymbols : null; + t.exports = function(t, e) { + if (null == t) throw new TypeError("target must be an object"); + var r = s(t); + if (1 === arguments.length) return r; + for (var o = 1; o < arguments.length; ++o) { + var c = s(arguments[o]), + h = n(c), + p = i && (Object.getOwnPropertySymbols || u); + if (p) + for (var l = p(c), y = 0; y < l.length; ++y) { + var g = l[y]; + f(c, g) && a(h, g) + } + for (var d = 0; d < h.length; ++d) { + var v = h[d]; + if (f(c, v)) { + var m = c[v]; + r[v] = m + } + } + } + return r + } + }, + 1514: (t, e, r) => { + "use strict"; + var n = r(8403); + t.exports = function() { + return Object.assign ? function() { + if (!Object.assign) return !1; + for (var t = "abcdefghijklmnopqrst", e = t.split(""), r = {}, n = 0; n < e.length; ++n) r[e[n]] = e[n]; + var i = Object.assign({}, r), + o = ""; + for (var s in i) o += s; + return t !== o + }() || function() { + if (!Object.assign || !Object.preventExtensions) return !1; + var t = Object.preventExtensions({ + 1: 2 + }); + try { + Object.assign(t, "xy") + } catch (e) { + return "y" === t[1] } return !1 - }(); - n = function(t) { - var e = null !== t && "object" == typeof t, - r = "[object Function]" === o.call(t), - n = s(t), - a = e && "[object String]" === o.call(t), - p = []; - if (!e && !r && !n) throw new TypeError("Object.keys called on a non-object"); - var y = u && r; - if (a && t.length > 0 && !i.call(t, 0)) for (var g = 0; g < t.length; ++g) p.push(String(g)); - if (n && t.length > 0) for (var d = 0; d < t.length; ++d) p.push(String(d)); - else for (var v in t) y && "prototype" === v || !i.call(t, v) || p.push(String(v)); - if (f) for (var m = function(t) { - if ("undefined" == typeof window || !l) return h(t); - try { - return h(t) - } catch (t) { - return !1 - } - }(t), S = 0; S < c.length; ++S) m && "constructor" === c[S] || !i.call(t, c[S]) || p.push(c[S]); - return p + }() ? n : Object.assign : n } - } - t.exports = n - }, - 1189: (t, e, r) => { - "use strict"; - var n = Array.prototype.slice, - i = r(1093), - o = Object.keys, - s = o ? function(t) { - return o(t) - } : r(8875), - a = Object.keys; - s.shim = function() { - if (Object.keys) { - var t = function() { - var t = Object.keys(arguments); - return t && t.length === arguments.length - }(1, 2); - t || (Object.keys = function(t) { - return i(t) ? a(n.call(t)) : a(t) - }) - } else Object.keys = s; - return Object.keys || s - }, t.exports = s - }, - 1093: t => { - "use strict"; - var e = Object.prototype.toString; - t.exports = function(t) { - var r = e.call(t), - n = "[object Arguments]" === r; - return n || (n = "[object Array]" !== r && null !== t && "object" == typeof t && "number" == typeof t.length && t.length >= 0 && "[object Function]" === e.call(t.callee)), n - } - }, - 8403: (t, e, r) => { - "use strict"; - var n = r(1189), - i = r(1333)(), - o = r(8075), - s = Object, - a = o("Array.prototype.push"), - f = o("Object.prototype.propertyIsEnumerable"), - u = i ? Object.getOwnPropertySymbols : null; - t.exports = function(t, e) { - if (null == t) throw new TypeError("target must be an object"); - var r = s(t); - if (1 === arguments.length) return r; - for (var o = 1; o < arguments.length; ++o) { - var c = s(arguments[o]), - h = n(c), - p = i && (Object.getOwnPropertySymbols || u); - if (p) for (var l = p(c), y = 0; y < l.length; ++y) { - var g = l[y]; - f(c, g) && a(h, g) - } - for (var d = 0; d < h.length; ++d) { - var v = h[d]; - if (f(c, v)) { - var m = c[v]; - r[v] = m - } - } - } - return r - } - }, - 1514: (t, e, r) => { - "use strict"; - var n = r(8403); - t.exports = function() { - return Object.assign ? function() { - if (!Object.assign) return !1; - for (var t = "abcdefghijklmnopqrst", e = t.split(""), r = {}, n = 0; n < e.length; ++n) r[e[n]] = e[n]; - var i = Object.assign({}, r), - o = ""; - for (var s in i) o += s; - return t !== o - }() || function() { - if (!Object.assign || !Object.preventExtensions) return !1; - var t = Object.preventExtensions({ - 1: 2 - }); - try { - Object.assign(t, "xy") - } catch (e) { - return "y" === t[1] - } - return !1 - }() ? n : Object.assign : n - } - }, - 5606: t => { - var e, r, n = t.exports = {}; + }, + 5606: t => { + var e, r, n = t.exports = {}; - function i() { - throw new Error("setTimeout has not been defined") - } - function o() { - throw new Error("clearTimeout has not been defined") - } - function s(t) { - if (e === setTimeout) return setTimeout(t, 0); - if ((e === i || !e) && setTimeout) return e = setTimeout, setTimeout(t, 0); - try { - return e(t, 0) - } catch (r) { + function i() { + throw new Error("setTimeout has not been defined") + } + + function o() { + throw new Error("clearTimeout has not been defined") + } + + function s(t) { + if (e === setTimeout) return setTimeout(t, 0); + if ((e === i || !e) && setTimeout) return e = setTimeout, setTimeout(t, 0); try { - return e.call(null, t, 0) + return e(t, 0) } catch (r) { - return e.call(this, t, 0) - } - } - }! function() { - try { - e = "function" == typeof setTimeout ? setTimeout : i - } catch (t) { - e = i - } - try { - r = "function" == typeof clearTimeout ? clearTimeout : o - } catch (t) { - r = o - } - }(); - var a, f = [], - u = !1, - c = -1; - - function h() { - u && a && (u = !1, a.length ? f = a.concat(f) : c = -1, f.length && p()) - } - function p() { - if (!u) { - var t = s(h); - u = !0; - for (var e = f.length; e;) { - for (a = f, f = []; ++c < e;) a && a[c].run(); - c = -1, e = f.length - } - a = null, u = !1, - function(t) { - if (r === clearTimeout) return clearTimeout(t); - if ((r === o || !r) && clearTimeout) return r = clearTimeout, clearTimeout(t); try { - return r(t) - } catch (e) { - try { - return r.call(null, t) - } catch (e) { - return r.call(this, t) - } - } - }(t) - } - } - function l(t, e) { - this.fun = t, this.array = e - } - function y() {} - n.nextTick = function(t) { - var e = new Array(arguments.length - 1); - if (arguments.length > 1) for (var r = 1; r < arguments.length; r++) e[r - 1] = arguments[r]; - f.push(new l(t, e)), 1 !== f.length || u || s(p) - }, l.prototype.run = function() { - this.fun.apply(null, this.array) - }, n.title = "browser", n.browser = !0, n.env = {}, n.argv = [], n.version = "", n.versions = {}, n.on = y, n.addListener = y, n.once = y, n.off = y, n.removeListener = y, n.removeAllListeners = y, n.emit = y, n.prependListener = y, n.prependOnceListener = y, n.listeners = function(t) { - return [] - }, n.binding = function(t) { - throw new Error("process.binding is not supported") - }, n.cwd = function() { - return "/" - }, n.chdir = function(t) { - throw new Error("process.chdir is not supported") - }, n.umask = function() { - return 0 - } - }, - 4774: (t, e, r) => { - "use strict"; - var n, i = r(5606), - o = r(8287), - s = o.Buffer, - a = {}; - for (n in o) o.hasOwnProperty(n) && "SlowBuffer" !== n && "Buffer" !== n && (a[n] = o[n]); - var f = a.Buffer = {}; - for (n in s) s.hasOwnProperty(n) && "allocUnsafe" !== n && "allocUnsafeSlow" !== n && (f[n] = s[n]); - if (a.Buffer.prototype = s.prototype, f.from && f.from !== Uint8Array.from || (f.from = function(t, e, r) { - if ("number" == typeof t) throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof t); - if (t && void 0 === t.length) throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof t); - return s(t, e, r) - }), f.alloc || (f.alloc = function(t, e, r) { - if ("number" != typeof t) throw new TypeError('The "size" argument must be of type number. Received type ' + typeof t); - if (t < 0 || t >= 2 * (1 << 30)) throw new RangeError('The value "' + t + '" is invalid for option "size"'); - var n = s(t); - return e && 0 !== e.length ? "string" == typeof r ? n.fill(e, r) : n.fill(e) : n.fill(0), n - }), !a.kStringMaxLength) try { - a.kStringMaxLength = i.binding("buffer").kStringMaxLength - } catch (t) {} - a.constants || (a.constants = { - MAX_LENGTH: a.kMaxLength - }, a.kStringMaxLength && (a.constants.MAX_STRING_LENGTH = a.kStringMaxLength)), t.exports = a - }, - 6897: (t, e, r) => { - "use strict"; - var n = r(453), - i = r(41), - o = r(592)(), - s = r(5795), - a = r(9675), - f = n("%Math.floor%"); - t.exports = function(t, e) { - if ("function" != typeof t) throw new a("`fn` is not a function"); - if ("number" != typeof e || e < 0 || e > 4294967295 || f(e) !== e) throw new a("`length` must be a positive 32-bit integer"); - var r = arguments.length > 2 && !! arguments[2], - n = !0, - u = !0; - if ("length" in t && s) { - var c = s(t, "length"); - c && !c.configurable && (n = !1), c && !c.writable && (u = !1) - } - return (n || u || !r) && (o ? i(t, "length", e, !0, !0) : i(t, "length", e)), t - } - }, - 3200: (t, e, r) => { - var n = r(8287).Buffer, - i = r(1396), - o = { - randomBytes: function(t) { - for (var e = [], r = 0; r < t; r++) e.push(Math.floor(256 * Math.random())); - return n.from(e) - }, - createHash(t) { - let e = n.from([]); - return { - update: function(t) { - return e = n.concat([e, t]), this - }, - digest: function() { - let r = i[t.toUpperCase()](i.lib.WordArray.create(new Uint8Array(e))).toString(); - return n.from(r, "hex") + return e.call(null, t, 0) + } catch (r) { + return e.call(this, t, 0) + } + } + }! function() { + try { + e = "function" == typeof setTimeout ? setTimeout : i + } catch (t) { + e = i + } + try { + r = "function" == typeof clearTimeout ? clearTimeout : o + } catch (t) { + r = o + } + }(); + var a, f = [], + u = !1, + c = -1; + + function h() { + u && a && (u = !1, a.length ? f = a.concat(f) : c = -1, f.length && p()) + } + + function p() { + if (!u) { + var t = s(h); + u = !0; + for (var e = f.length; e;) { + for (a = f, f = []; ++c < e;) a && a[c].run(); + c = -1, e = f.length + } + a = null, u = !1, + function(t) { + if (r === clearTimeout) return clearTimeout(t); + if ((r === o || !r) && clearTimeout) return r = clearTimeout, clearTimeout(t); + try { + return r(t) + } catch (e) { + try { + return r.call(null, t) + } catch (e) { + return r.call(this, t) + } + } + }(t) + } + } + + function l(t, e) { + this.fun = t, this.array = e + } + + function y() {} + n.nextTick = function(t) { + var e = new Array(arguments.length - 1); + if (arguments.length > 1) + for (var r = 1; r < arguments.length; r++) e[r - 1] = arguments[r]; + f.push(new l(t, e)), 1 !== f.length || u || s(p) + }, l.prototype.run = function() { + this.fun.apply(null, this.array) + }, n.title = "browser", n.browser = !0, n.env = {}, n.argv = [], n.version = "", n.versions = {}, n.on = y, n.addListener = y, n.once = y, n.off = y, n.removeListener = y, n.removeAllListeners = y, n.emit = y, n.prependListener = y, n.prependOnceListener = y, n.listeners = function(t) { + return [] + }, n.binding = function(t) { + throw new Error("process.binding is not supported") + }, n.cwd = function() { + return "/" + }, n.chdir = function(t) { + throw new Error("process.chdir is not supported") + }, n.umask = function() { + return 0 + } + }, + 4774: (t, e, r) => { + "use strict"; + var n, i = r(5606), + o = r(8287), + s = o.Buffer, + a = {}; + for (n in o) o.hasOwnProperty(n) && "SlowBuffer" !== n && "Buffer" !== n && (a[n] = o[n]); + var f = a.Buffer = {}; + for (n in s) s.hasOwnProperty(n) && "allocUnsafe" !== n && "allocUnsafeSlow" !== n && (f[n] = s[n]); + if (a.Buffer.prototype = s.prototype, f.from && f.from !== Uint8Array.from || (f.from = function(t, e, r) { + if ("number" == typeof t) throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof t); + if (t && void 0 === t.length) throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof t); + return s(t, e, r) + }), f.alloc || (f.alloc = function(t, e, r) { + if ("number" != typeof t) throw new TypeError('The "size" argument must be of type number. Received type ' + typeof t); + if (t < 0 || t >= 2 * (1 << 30)) throw new RangeError('The value "' + t + '" is invalid for option "size"'); + var n = s(t); + return e && 0 !== e.length ? "string" == typeof r ? n.fill(e, r) : n.fill(e) : n.fill(0), n + }), !a.kStringMaxLength) try { + a.kStringMaxLength = i.binding("buffer").kStringMaxLength + } catch (t) {} + a.constants || (a.constants = { + MAX_LENGTH: a.kMaxLength + }, a.kStringMaxLength && (a.constants.MAX_STRING_LENGTH = a.kStringMaxLength)), t.exports = a + }, + 6897: (t, e, r) => { + "use strict"; + var n = r(453), + i = r(41), + o = r(592)(), + s = r(5795), + a = r(9675), + f = n("%Math.floor%"); + t.exports = function(t, e) { + if ("function" != typeof t) throw new a("`fn` is not a function"); + if ("number" != typeof e || e < 0 || e > 4294967295 || f(e) !== e) throw new a("`length` must be a positive 32-bit integer"); + var r = arguments.length > 2 && !!arguments[2], + n = !0, + u = !0; + if ("length" in t && s) { + var c = s(t, "length"); + c && !c.configurable && (n = !1), c && !c.writable && (u = !1) + } + return (n || u || !r) && (o ? i(t, "length", e, !0, !0) : i(t, "length", e)), t + } + }, + 3200: (t, e, r) => { + var n = r(8287).Buffer, + i = r(1396), + o = { + randomBytes: function(t) { + for (var e = [], r = 0; r < t; r++) e.push(Math.floor(256 * Math.random())); + return n.from(e) + }, + createHash(t) { + let e = n.from([]); + return { + update: function(t) { + return e = n.concat([e, t]), this + }, + digest: function() { + let r = i[t.toUpperCase()](i.lib.WordArray.create(new Uint8Array(e))).toString(); + return n.from(r, "hex") + } } } + }; + t.exports = o + }, + 7033: (t, e, r) => { + var n = r(8287).Buffer; + const i = r(3229); + let o = { + outputEncoding: "", + PublicFormat: "pkcs1-public", + PrivateFormat: "pkcs1-private", + options: { + environment: "browser", + encryptionScheme: "pkcs1" } }; - t.exports = o - }, - 7033: (t, e, r) => { - var n = r(8287).Buffer; - const i = r(3229); - let o = { - outputEncoding: "", - PublicFormat: "pkcs1-public", - PrivateFormat: "pkcs1-private", - options: { - environment: "browser", - encryptionScheme: "pkcs1" - } - }; - t.exports = { - NodeRSA: i, - encryptRSAWithPublicKey: function(t, e, r = {}) { - return r = Object.assign({}, o, r), new i(e, r.PublicFormat, r.options).encrypt(t, r.outEncoding || "base64") - }, - encryptRSAWithPrivateKey: function(t, e, r = {}) { - return r = Object.assign({}, o, r), new i(e, r.PrivateFormat, r.options).encryptPrivate(t, r.outputEncoding || "base64") - }, - decryptRSAWithPublicKey: function(t, e, r = {}) { - return r = Object.assign({}, o, r), new i(e, r.PublicEncoding, r.options).decryptPublic(t, r.outEncoding || "utf8") - }, - decryptRSAWithPrivateKey: function(t, e, r = {}) { - return r = Object.assign({}, o, r), new i(e, r.PrivateEncoding, r.options).decrypt(t, r.outEncoding || "utf8") - }, - sign: function(t, e, r = {}) { - return r = Object.assign({}, o, r), new i(e, r.PrivateEncoding, r.options).sign(t, r.outEncoding || "base64") - }, - verify: function(t, e, r, s = {}) { - return "string" == typeof e && e.match(/^([0-9a-fA-F]{2})*$/) ? e = n.from(e, "hex") : "string" == typeof e && (e = n.from(e, "base64")), s = Object.assign({}, o, s), new i(r, s.PublicEncoding, s.options).verify(t, e) + t.exports = { + NodeRSA: i, + encryptRSAWithPublicKey: function(t, e, r = {}) { + return r = Object.assign({}, o, r), new i(e, r.PublicFormat, r.options).encrypt(t, r.outEncoding || "base64") + }, + encryptRSAWithPrivateKey: function(t, e, r = {}) { + return r = Object.assign({}, o, r), new i(e, r.PrivateFormat, r.options).encryptPrivate(t, r.outputEncoding || "base64") + }, + decryptRSAWithPublicKey: function(t, e, r = {}) { + return r = Object.assign({}, o, r), new i(e, r.PublicEncoding, r.options).decryptPublic(t, r.outEncoding || "utf8") + }, + decryptRSAWithPrivateKey: function(t, e, r = {}) { + return r = Object.assign({}, o, r), new i(e, r.PrivateEncoding, r.options).decrypt(t, r.outEncoding || "utf8") + }, + sign: function(t, e, r = {}) { + return r = Object.assign({}, o, r), new i(e, r.PrivateEncoding, r.options).sign(t, r.outEncoding || "base64") + }, + verify: function(t, e, r, s = {}) { + return "string" == typeof e && e.match(/^([0-9a-fA-F]{2})*$/) ? e = n.from(e, "hex") : "string" == typeof e && (e = n.from(e, "base64")), s = Object.assign({}, o, s), new i(r, s.PublicEncoding, s.options).verify(t, e) + } } + }, + 7449: t => { + "use strict"; + t.exports = JSON.parse('{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":512,"O_EXCL":2048,"O_NOCTTY":131072,"O_TRUNC":1024,"O_APPEND":8,"O_DIRECTORY":1048576,"O_NOFOLLOW":256,"O_SYNC":128,"O_SYMLINK":2097152,"O_NONBLOCK":4,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"E2BIG":7,"EACCES":13,"EADDRINUSE":48,"EADDRNOTAVAIL":49,"EAFNOSUPPORT":47,"EAGAIN":35,"EALREADY":37,"EBADF":9,"EBADMSG":94,"EBUSY":16,"ECANCELED":89,"ECHILD":10,"ECONNABORTED":53,"ECONNREFUSED":61,"ECONNRESET":54,"EDEADLK":11,"EDESTADDRREQ":39,"EDOM":33,"EDQUOT":69,"EEXIST":17,"EFAULT":14,"EFBIG":27,"EHOSTUNREACH":65,"EIDRM":90,"EILSEQ":92,"EINPROGRESS":36,"EINTR":4,"EINVAL":22,"EIO":5,"EISCONN":56,"EISDIR":21,"ELOOP":62,"EMFILE":24,"EMLINK":31,"EMSGSIZE":40,"EMULTIHOP":95,"ENAMETOOLONG":63,"ENETDOWN":50,"ENETRESET":52,"ENETUNREACH":51,"ENFILE":23,"ENOBUFS":55,"ENODATA":96,"ENODEV":19,"ENOENT":2,"ENOEXEC":8,"ENOLCK":77,"ENOLINK":97,"ENOMEM":12,"ENOMSG":91,"ENOPROTOOPT":42,"ENOSPC":28,"ENOSR":98,"ENOSTR":99,"ENOSYS":78,"ENOTCONN":57,"ENOTDIR":20,"ENOTEMPTY":66,"ENOTSOCK":38,"ENOTSUP":45,"ENOTTY":25,"ENXIO":6,"EOPNOTSUPP":102,"EOVERFLOW":84,"EPERM":1,"EPIPE":32,"EPROTO":100,"EPROTONOSUPPORT":43,"EPROTOTYPE":41,"ERANGE":34,"EROFS":30,"ESPIPE":29,"ESRCH":3,"ESTALE":70,"ETIME":101,"ETIMEDOUT":60,"ETXTBSY":26,"EWOULDBLOCK":35,"EXDEV":18,"SIGHUP":1,"SIGINT":2,"SIGQUIT":3,"SIGILL":4,"SIGTRAP":5,"SIGABRT":6,"SIGIOT":6,"SIGBUS":10,"SIGFPE":8,"SIGKILL":9,"SIGUSR1":30,"SIGSEGV":11,"SIGUSR2":31,"SIGPIPE":13,"SIGALRM":14,"SIGTERM":15,"SIGCHLD":20,"SIGCONT":19,"SIGSTOP":17,"SIGTSTP":18,"SIGTTIN":21,"SIGTTOU":22,"SIGURG":16,"SIGXCPU":24,"SIGXFSZ":25,"SIGVTALRM":26,"SIGPROF":27,"SIGWINCH":28,"SIGIO":23,"SIGSYS":12,"SSL_OP_ALL":2147486719,"SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION":262144,"SSL_OP_CIPHER_SERVER_PREFERENCE":4194304,"SSL_OP_CISCO_ANYCONNECT":32768,"SSL_OP_COOKIE_EXCHANGE":8192,"SSL_OP_CRYPTOPRO_TLSEXT_BUG":2147483648,"SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS":2048,"SSL_OP_EPHEMERAL_RSA":0,"SSL_OP_LEGACY_SERVER_CONNECT":4,"SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER":32,"SSL_OP_MICROSOFT_SESS_ID_BUG":1,"SSL_OP_MSIE_SSLV2_RSA_PADDING":0,"SSL_OP_NETSCAPE_CA_DN_BUG":536870912,"SSL_OP_NETSCAPE_CHALLENGE_BUG":2,"SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG":1073741824,"SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG":8,"SSL_OP_NO_COMPRESSION":131072,"SSL_OP_NO_QUERY_MTU":4096,"SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION":65536,"SSL_OP_NO_SSLv2":16777216,"SSL_OP_NO_SSLv3":33554432,"SSL_OP_NO_TICKET":16384,"SSL_OP_NO_TLSv1":67108864,"SSL_OP_NO_TLSv1_1":268435456,"SSL_OP_NO_TLSv1_2":134217728,"SSL_OP_PKCS1_CHECK_1":0,"SSL_OP_PKCS1_CHECK_2":0,"SSL_OP_SINGLE_DH_USE":1048576,"SSL_OP_SINGLE_ECDH_USE":524288,"SSL_OP_SSLEAY_080_CLIENT_DH_BUG":128,"SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG":0,"SSL_OP_TLS_BLOCK_PADDING_BUG":512,"SSL_OP_TLS_D5_BUG":256,"SSL_OP_TLS_ROLLBACK_BUG":8388608,"ENGINE_METHOD_DSA":2,"ENGINE_METHOD_DH":4,"ENGINE_METHOD_RAND":8,"ENGINE_METHOD_ECDH":16,"ENGINE_METHOD_ECDSA":32,"ENGINE_METHOD_CIPHERS":64,"ENGINE_METHOD_DIGESTS":128,"ENGINE_METHOD_STORE":256,"ENGINE_METHOD_PKEY_METHS":512,"ENGINE_METHOD_PKEY_ASN1_METHS":1024,"ENGINE_METHOD_ALL":65535,"ENGINE_METHOD_NONE":0,"DH_CHECK_P_NOT_SAFE_PRIME":2,"DH_CHECK_P_NOT_PRIME":1,"DH_UNABLE_TO_CHECK_GENERATOR":4,"DH_NOT_SUITABLE_GENERATOR":8,"NPN_ENABLED":1,"RSA_PKCS1_PADDING":1,"RSA_SSLV23_PADDING":2,"RSA_NO_PADDING":3,"RSA_PKCS1_OAEP_PADDING":4,"RSA_X931_PADDING":5,"RSA_PKCS1_PSS_PADDING":6,"POINT_CONVERSION_COMPRESSED":2,"POINT_CONVERSION_UNCOMPRESSED":4,"POINT_CONVERSION_HYBRID":6,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1,"UV_UDP_REUSEADDR":4}') } }, - 7449: t => { - "use strict"; - t.exports = JSON.parse('{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":512,"O_EXCL":2048,"O_NOCTTY":131072,"O_TRUNC":1024,"O_APPEND":8,"O_DIRECTORY":1048576,"O_NOFOLLOW":256,"O_SYNC":128,"O_SYMLINK":2097152,"O_NONBLOCK":4,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"E2BIG":7,"EACCES":13,"EADDRINUSE":48,"EADDRNOTAVAIL":49,"EAFNOSUPPORT":47,"EAGAIN":35,"EALREADY":37,"EBADF":9,"EBADMSG":94,"EBUSY":16,"ECANCELED":89,"ECHILD":10,"ECONNABORTED":53,"ECONNREFUSED":61,"ECONNRESET":54,"EDEADLK":11,"EDESTADDRREQ":39,"EDOM":33,"EDQUOT":69,"EEXIST":17,"EFAULT":14,"EFBIG":27,"EHOSTUNREACH":65,"EIDRM":90,"EILSEQ":92,"EINPROGRESS":36,"EINTR":4,"EINVAL":22,"EIO":5,"EISCONN":56,"EISDIR":21,"ELOOP":62,"EMFILE":24,"EMLINK":31,"EMSGSIZE":40,"EMULTIHOP":95,"ENAMETOOLONG":63,"ENETDOWN":50,"ENETRESET":52,"ENETUNREACH":51,"ENFILE":23,"ENOBUFS":55,"ENODATA":96,"ENODEV":19,"ENOENT":2,"ENOEXEC":8,"ENOLCK":77,"ENOLINK":97,"ENOMEM":12,"ENOMSG":91,"ENOPROTOOPT":42,"ENOSPC":28,"ENOSR":98,"ENOSTR":99,"ENOSYS":78,"ENOTCONN":57,"ENOTDIR":20,"ENOTEMPTY":66,"ENOTSOCK":38,"ENOTSUP":45,"ENOTTY":25,"ENXIO":6,"EOPNOTSUPP":102,"EOVERFLOW":84,"EPERM":1,"EPIPE":32,"EPROTO":100,"EPROTONOSUPPORT":43,"EPROTOTYPE":41,"ERANGE":34,"EROFS":30,"ESPIPE":29,"ESRCH":3,"ESTALE":70,"ETIME":101,"ETIMEDOUT":60,"ETXTBSY":26,"EWOULDBLOCK":35,"EXDEV":18,"SIGHUP":1,"SIGINT":2,"SIGQUIT":3,"SIGILL":4,"SIGTRAP":5,"SIGABRT":6,"SIGIOT":6,"SIGBUS":10,"SIGFPE":8,"SIGKILL":9,"SIGUSR1":30,"SIGSEGV":11,"SIGUSR2":31,"SIGPIPE":13,"SIGALRM":14,"SIGTERM":15,"SIGCHLD":20,"SIGCONT":19,"SIGSTOP":17,"SIGTSTP":18,"SIGTTIN":21,"SIGTTOU":22,"SIGURG":16,"SIGXCPU":24,"SIGXFSZ":25,"SIGVTALRM":26,"SIGPROF":27,"SIGWINCH":28,"SIGIO":23,"SIGSYS":12,"SSL_OP_ALL":2147486719,"SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION":262144,"SSL_OP_CIPHER_SERVER_PREFERENCE":4194304,"SSL_OP_CISCO_ANYCONNECT":32768,"SSL_OP_COOKIE_EXCHANGE":8192,"SSL_OP_CRYPTOPRO_TLSEXT_BUG":2147483648,"SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS":2048,"SSL_OP_EPHEMERAL_RSA":0,"SSL_OP_LEGACY_SERVER_CONNECT":4,"SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER":32,"SSL_OP_MICROSOFT_SESS_ID_BUG":1,"SSL_OP_MSIE_SSLV2_RSA_PADDING":0,"SSL_OP_NETSCAPE_CA_DN_BUG":536870912,"SSL_OP_NETSCAPE_CHALLENGE_BUG":2,"SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG":1073741824,"SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG":8,"SSL_OP_NO_COMPRESSION":131072,"SSL_OP_NO_QUERY_MTU":4096,"SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION":65536,"SSL_OP_NO_SSLv2":16777216,"SSL_OP_NO_SSLv3":33554432,"SSL_OP_NO_TICKET":16384,"SSL_OP_NO_TLSv1":67108864,"SSL_OP_NO_TLSv1_1":268435456,"SSL_OP_NO_TLSv1_2":134217728,"SSL_OP_PKCS1_CHECK_1":0,"SSL_OP_PKCS1_CHECK_2":0,"SSL_OP_SINGLE_DH_USE":1048576,"SSL_OP_SINGLE_ECDH_USE":524288,"SSL_OP_SSLEAY_080_CLIENT_DH_BUG":128,"SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG":0,"SSL_OP_TLS_BLOCK_PADDING_BUG":512,"SSL_OP_TLS_D5_BUG":256,"SSL_OP_TLS_ROLLBACK_BUG":8388608,"ENGINE_METHOD_DSA":2,"ENGINE_METHOD_DH":4,"ENGINE_METHOD_RAND":8,"ENGINE_METHOD_ECDH":16,"ENGINE_METHOD_ECDSA":32,"ENGINE_METHOD_CIPHERS":64,"ENGINE_METHOD_DIGESTS":128,"ENGINE_METHOD_STORE":256,"ENGINE_METHOD_PKEY_METHS":512,"ENGINE_METHOD_PKEY_ASN1_METHS":1024,"ENGINE_METHOD_ALL":65535,"ENGINE_METHOD_NONE":0,"DH_CHECK_P_NOT_SAFE_PRIME":2,"DH_CHECK_P_NOT_PRIME":1,"DH_UNABLE_TO_CHECK_GENERATOR":4,"DH_NOT_SUITABLE_GENERATOR":8,"NPN_ENABLED":1,"RSA_PKCS1_PADDING":1,"RSA_SSLV23_PADDING":2,"RSA_NO_PADDING":3,"RSA_PKCS1_OAEP_PADDING":4,"RSA_X931_PADDING":5,"RSA_PKCS1_PSS_PADDING":6,"POINT_CONVERSION_COMPRESSED":2,"POINT_CONVERSION_UNCOMPRESSED":4,"POINT_CONVERSION_HYBRID":6,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1,"UV_UDP_REUSEADDR":4}') - } - }, e = {}; + e = {}; function r(n) { var i = e[n]; diff --git a/JS/pako.min.js b/JS/pako.min.js index fa78d96..e8824a3 100644 --- a/JS/pako.min.js +++ b/JS/pako.min.js @@ -7,7 +7,15 @@ let e = t.length; for (; --e >= 0;) t[e] = 0 } - const a = 256, i = 286, n = 30, s = 15, r = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0]), o = new Uint8Array([0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13]), l = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7]), h = new Uint8Array([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]), d = new Array(576); + const a = 256, + i = 286, + n = 30, + s = 15, + r = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0]), + o = new Uint8Array([0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13]), + l = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7]), + h = new Uint8Array([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]), + d = new Array(576); e(d); const _ = new Array(60); e(_); @@ -28,133 +36,176 @@ this.dyn_tree = t, this.max_code = 0, this.stat_desc = e } e(w); - const v = t => t < 256 ? f[t] : f[256 + (t >>> 7)], y = (t, e) => { - t.pending_buf[t.pending++] = 255 & e, t.pending_buf[t.pending++] = e >>> 8 & 255 - }, x = (t, e, a) => { - t.bi_valid > 16 - a ? (t.bi_buf |= e << t.bi_valid & 65535, y(t, t.bi_buf), t.bi_buf = e >> 16 - t.bi_valid, t.bi_valid += a - 16) : (t.bi_buf |= e << t.bi_valid & 65535, t.bi_valid += a) - }, z = (t, e, a) => { - x(t, a[2 * e], a[2 * e + 1]) - }, A = (t, e) => { - let a = 0; - do { - a |= 1 & t, t >>>= 1, a <<= 1 - } while (--e > 0); - return a >>> 1 - }, E = (t, e, a) => { - const i = new Array(16); - let n, r, o = 0; - for (n = 1; n <= s; n++) o = o + a[n - 1] << 1, i[n] = o; - for (r = 0; r <= e; r++) { - let e = t[2 * r + 1]; - 0 !== e && (t[2 * r] = A(i[e]++, e)) - } - }, R = t => { - let e; - for (e = 0; e < i; e++) t.dyn_ltree[2 * e] = 0; - for (e = 0; e < n; e++) t.dyn_dtree[2 * e] = 0; - for (e = 0; e < 19; e++) t.bl_tree[2 * e] = 0; - t.dyn_ltree[512] = 1, t.opt_len = t.static_len = 0, t.sym_next = t.matches = 0 - }, Z = t => { - t.bi_valid > 8 ? y(t, t.bi_buf) : t.bi_valid > 0 && (t.pending_buf[t.pending++] = t.bi_buf), t.bi_buf = 0, t.bi_valid = 0 - }, U = (t, e, a, i) => { - const n = 2 * e, s = 2 * a; - return t[n] < t[s] || t[n] === t[s] && i[e] <= i[a] - }, S = (t, e, a) => { - const i = t.heap[a]; - let n = a << 1; - for (; n <= t.heap_len && (n < t.heap_len && U(e, t.heap[n + 1], t.heap[n], t.depth) && n++, !U(e, i, t.heap[n], t.depth));) t.heap[a] = t.heap[n], a = n, n <<= 1; - t.heap[a] = i - }, D = (t, e, i) => { - let n, s, l, h, d = 0; - if (0 !== t.sym_next) do { - n = 255 & t.pending_buf[t.sym_buf + d++], n += (255 & t.pending_buf[t.sym_buf + d++]) << 8, s = t.pending_buf[t.sym_buf + d++], 0 === n ? z(t, s, e) : (l = c[s], z(t, l + a + 1, e), h = r[l], 0 !== h && (s -= u[l], x(t, s, h)), n--, l = v(n), z(t, l, i), h = o[l], 0 !== h && (n -= w[l], x(t, n, h))) - } while (d < t.sym_next); - z(t, 256, e) - }, T = (t, e) => { - const a = e.dyn_tree, i = e.stat_desc.static_tree, n = e.stat_desc.has_stree, r = e.stat_desc.elems; - let o, l, h, d = -1; - for (t.heap_len = 0, t.heap_max = 573, o = 0; o < r; o++) 0 !== a[2 * o] ? (t.heap[++t.heap_len] = d = o, t.depth[o] = 0) : a[2 * o + 1] = 0; - for (; t.heap_len < 2;) h = t.heap[++t.heap_len] = d < 2 ? ++d : 0, a[2 * h] = 1, t.depth[h] = 0, t.opt_len--, n && (t.static_len -= i[2 * h + 1]); - for (e.max_code = d, o = t.heap_len >> 1; o >= 1; o--) S(t, a, o); - h = r; - do { - o = t.heap[1], t.heap[1] = t.heap[t.heap_len--], S(t, a, 1), l = t.heap[1], t.heap[--t.heap_max] = o, t.heap[--t.heap_max] = l, a[2 * h] = a[2 * o] + a[2 * l], t.depth[h] = (t.depth[o] >= t.depth[l] ? t.depth[o] : t.depth[l]) + 1, a[2 * o + 1] = a[2 * l + 1] = h, t.heap[1] = h++, S(t, a, 1) - } while (t.heap_len >= 2); - t.heap[--t.heap_max] = t.heap[1], ((t, e) => { - const a = e.dyn_tree, i = e.max_code, n = e.stat_desc.static_tree, r = e.stat_desc.has_stree, o = e.stat_desc.extra_bits, l = e.stat_desc.extra_base, h = e.stat_desc.max_length; - let d, _, f, c, u, w, m = 0; - for (c = 0; c <= s; c++) t.bl_count[c] = 0; - for (a[2 * t.heap[t.heap_max] + 1] = 0, d = t.heap_max + 1; d < 573; d++) _ = t.heap[d], c = a[2 * a[2 * _ + 1] + 1] + 1, c > h && (c = h, m++), a[2 * _ + 1] = c, _ > i || (t.bl_count[c]++, u = 0, _ >= l && (u = o[_ - l]), w = a[2 * _], t.opt_len += w * (c + u), r && (t.static_len += w * (n[2 * _ + 1] + u))); - if (0 !== m) { - do { - for (c = h - 1; 0 === t.bl_count[c];) c--; - t.bl_count[c]--, t.bl_count[c + 1] += 2, t.bl_count[h]--, m -= 2 - } while (m > 0); - for (c = h; 0 !== c; c--) for (_ = t.bl_count[c]; 0 !== _;) f = t.heap[--d], f > i || (a[2 * f + 1] !== c && (t.opt_len += (c - a[2 * f + 1]) * a[2 * f], a[2 * f + 1] = c), _--) + const v = t => t < 256 ? f[t] : f[256 + (t >>> 7)], + y = (t, e) => { + t.pending_buf[t.pending++] = 255 & e, t.pending_buf[t.pending++] = e >>> 8 & 255 + }, + x = (t, e, a) => { + t.bi_valid > 16 - a ? (t.bi_buf |= e << t.bi_valid & 65535, y(t, t.bi_buf), t.bi_buf = e >> 16 - t.bi_valid, t.bi_valid += a - 16) : (t.bi_buf |= e << t.bi_valid & 65535, t.bi_valid += a) + }, + z = (t, e, a) => { + x(t, a[2 * e], a[2 * e + 1]) + }, + A = (t, e) => { + let a = 0; + do { + a |= 1 & t, t >>>= 1, a <<= 1 + } while (--e > 0); + return a >>> 1 + }, + E = (t, e, a) => { + const i = new Array(16); + let n, r, o = 0; + for (n = 1; n <= s; n++) o = o + a[n - 1] << 1, i[n] = o; + for (r = 0; r <= e; r++) { + let e = t[2 * r + 1]; + 0 !== e && (t[2 * r] = A(i[e]++, e)) } - })(t, e), E(a, d, t.bl_count) - }, O = (t, e, a) => { - let i, n, s = -1, r = e[1], o = 0, l = 7, h = 4; - for (0 === r && (l = 138, h = 3), e[2 * (a + 1) + 1] = 65535, i = 0; i <= a; i++) n = r, r = e[2 * (i + 1) + 1], ++o < l && n === r || (o < h ? t.bl_tree[2 * n] += o : 0 !== n ? (n !== s && t.bl_tree[2 * n]++, t.bl_tree[32]++) : o <= 10 ? t.bl_tree[34]++ : t.bl_tree[36]++, o = 0, s = n, 0 === r ? (l = 138, h = 3) : n === r ? (l = 6, h = 3) : (l = 7, h = 4)) - }, I = (t, e, a) => { - let i, n, s = -1, r = e[1], o = 0, l = 7, h = 4; - for (0 === r && (l = 138, h = 3), i = 0; i <= a; i++) if (n = r, r = e[2 * (i + 1) + 1], !(++o < l && n === r)) { - if (o < h) do { - z(t, n, t.bl_tree) - } while (0 != --o); - else 0 !== n ? (n !== s && (z(t, n, t.bl_tree), o--), z(t, 16, t.bl_tree), x(t, o - 3, 2)) : o <= 10 ? (z(t, 17, t.bl_tree), x(t, o - 3, 3)) : (z(t, 18, t.bl_tree), x(t, o - 11, 7)); - o = 0, s = n, 0 === r ? (l = 138, h = 3) : n === r ? (l = 6, h = 3) : (l = 7, h = 4) - } - }; + }, + R = t => { + let e; + for (e = 0; e < i; e++) t.dyn_ltree[2 * e] = 0; + for (e = 0; e < n; e++) t.dyn_dtree[2 * e] = 0; + for (e = 0; e < 19; e++) t.bl_tree[2 * e] = 0; + t.dyn_ltree[512] = 1, t.opt_len = t.static_len = 0, t.sym_next = t.matches = 0 + }, + Z = t => { + t.bi_valid > 8 ? y(t, t.bi_buf) : t.bi_valid > 0 && (t.pending_buf[t.pending++] = t.bi_buf), t.bi_buf = 0, t.bi_valid = 0 + }, + U = (t, e, a, i) => { + const n = 2 * e, + s = 2 * a; + return t[n] < t[s] || t[n] === t[s] && i[e] <= i[a] + }, + S = (t, e, a) => { + const i = t.heap[a]; + let n = a << 1; + for (; n <= t.heap_len && (n < t.heap_len && U(e, t.heap[n + 1], t.heap[n], t.depth) && n++, !U(e, i, t.heap[n], t.depth));) t.heap[a] = t.heap[n], a = n, n <<= 1; + t.heap[a] = i + }, + D = (t, e, i) => { + let n, s, l, h, d = 0; + if (0 !== t.sym_next) + do { + n = 255 & t.pending_buf[t.sym_buf + d++], n += (255 & t.pending_buf[t.sym_buf + d++]) << 8, s = t.pending_buf[t.sym_buf + d++], 0 === n ? z(t, s, e) : (l = c[s], z(t, l + a + 1, e), h = r[l], 0 !== h && (s -= u[l], x(t, s, h)), n--, l = v(n), z(t, l, i), h = o[l], 0 !== h && (n -= w[l], x(t, n, h))) + } while (d < t.sym_next); + z(t, 256, e) + }, + T = (t, e) => { + const a = e.dyn_tree, + i = e.stat_desc.static_tree, + n = e.stat_desc.has_stree, + r = e.stat_desc.elems; + let o, l, h, d = -1; + for (t.heap_len = 0, t.heap_max = 573, o = 0; o < r; o++) 0 !== a[2 * o] ? (t.heap[++t.heap_len] = d = o, t.depth[o] = 0) : a[2 * o + 1] = 0; + for (; t.heap_len < 2;) h = t.heap[++t.heap_len] = d < 2 ? ++d : 0, a[2 * h] = 1, t.depth[h] = 0, t.opt_len--, n && (t.static_len -= i[2 * h + 1]); + for (e.max_code = d, o = t.heap_len >> 1; o >= 1; o--) S(t, a, o); + h = r; + do { + o = t.heap[1], t.heap[1] = t.heap[t.heap_len--], S(t, a, 1), l = t.heap[1], t.heap[--t.heap_max] = o, t.heap[--t.heap_max] = l, a[2 * h] = a[2 * o] + a[2 * l], t.depth[h] = (t.depth[o] >= t.depth[l] ? t.depth[o] : t.depth[l]) + 1, a[2 * o + 1] = a[2 * l + 1] = h, t.heap[1] = h++, S(t, a, 1) + } while (t.heap_len >= 2); + t.heap[--t.heap_max] = t.heap[1], ((t, e) => { + const a = e.dyn_tree, + i = e.max_code, + n = e.stat_desc.static_tree, + r = e.stat_desc.has_stree, + o = e.stat_desc.extra_bits, + l = e.stat_desc.extra_base, + h = e.stat_desc.max_length; + let d, _, f, c, u, w, m = 0; + for (c = 0; c <= s; c++) t.bl_count[c] = 0; + for (a[2 * t.heap[t.heap_max] + 1] = 0, d = t.heap_max + 1; d < 573; d++) _ = t.heap[d], c = a[2 * a[2 * _ + 1] + 1] + 1, c > h && (c = h, m++), a[2 * _ + 1] = c, _ > i || (t.bl_count[c]++, u = 0, _ >= l && (u = o[_ - l]), w = a[2 * _], t.opt_len += w * (c + u), r && (t.static_len += w * (n[2 * _ + 1] + u))); + if (0 !== m) { + do { + for (c = h - 1; 0 === t.bl_count[c];) c--; + t.bl_count[c]--, t.bl_count[c + 1] += 2, t.bl_count[h]--, m -= 2 + } while (m > 0); + for (c = h; 0 !== c; c--) + for (_ = t.bl_count[c]; 0 !== _;) f = t.heap[--d], f > i || (a[2 * f + 1] !== c && (t.opt_len += (c - a[2 * f + 1]) * a[2 * f], a[2 * f + 1] = c), _--) + } + })(t, e), E(a, d, t.bl_count) + }, + O = (t, e, a) => { + let i, n, s = -1, + r = e[1], + o = 0, + l = 7, + h = 4; + for (0 === r && (l = 138, h = 3), e[2 * (a + 1) + 1] = 65535, i = 0; i <= a; i++) n = r, r = e[2 * (i + 1) + 1], ++o < l && n === r || (o < h ? t.bl_tree[2 * n] += o : 0 !== n ? (n !== s && t.bl_tree[2 * n]++, t.bl_tree[32]++) : o <= 10 ? t.bl_tree[34]++ : t.bl_tree[36]++, o = 0, s = n, 0 === r ? (l = 138, h = 3) : n === r ? (l = 6, h = 3) : (l = 7, h = 4)) + }, + I = (t, e, a) => { + let i, n, s = -1, + r = e[1], + o = 0, + l = 7, + h = 4; + for (0 === r && (l = 138, h = 3), i = 0; i <= a; i++) + if (n = r, r = e[2 * (i + 1) + 1], !(++o < l && n === r)) { + if (o < h) + do { + z(t, n, t.bl_tree) + } while (0 != --o); + else 0 !== n ? (n !== s && (z(t, n, t.bl_tree), o--), z(t, 16, t.bl_tree), x(t, o - 3, 2)) : o <= 10 ? (z(t, 17, t.bl_tree), x(t, o - 3, 3)) : (z(t, 18, t.bl_tree), x(t, o - 11, 7)); + o = 0, s = n, 0 === r ? (l = 138, h = 3) : n === r ? (l = 6, h = 3) : (l = 7, h = 4) + } + }; let F = !1; const L = (t, e, a, i) => { x(t, 0 + (i ? 1 : 0), 3), Z(t), y(t, a), y(t, ~a), a && t.pending_buf.set(t.window.subarray(e, e + a), t.pending), t.pending += a }; var N = (t, e, i, n) => { - let s, r, o = 0; - t.level > 0 ? (2 === t.strm.data_type && (t.strm.data_type = (t => { - let e, i = 4093624447; - for (e = 0; e <= 31; e++, i >>>= 1) if (1 & i && 0 !== t.dyn_ltree[2 * e]) return 0; - if (0 !== t.dyn_ltree[18] || 0 !== t.dyn_ltree[20] || 0 !== t.dyn_ltree[26]) return 1; - for (e = 32; e < a; e++) if (0 !== t.dyn_ltree[2 * e]) return 1; - return 0 - })(t)), T(t, t.l_desc), T(t, t.d_desc), o = (t => { - let e; - for (O(t, t.dyn_ltree, t.l_desc.max_code), O(t, t.dyn_dtree, t.d_desc.max_code), T(t, t.bl_desc), e = 18; e >= 3 && 0 === t.bl_tree[2 * h[e] + 1]; e--); - return t.opt_len += 3 * (e + 1) + 5 + 5 + 4, e - })(t), s = t.opt_len + 3 + 7 >>> 3, r = t.static_len + 3 + 7 >>> 3, r <= s && (s = r)) : s = r = i + 5, i + 4 <= s && -1 !== e ? L(t, e, i, n) : 4 === t.strategy || r === s ? (x(t, 2 + (n ? 1 : 0), 3), D(t, d, _)) : (x(t, 4 + (n ? 1 : 0), 3), ((t, e, a, i) => { - let n; - for (x(t, e - 257, 5), x(t, a - 1, 5), x(t, i - 4, 4), n = 0; n < i; n++) x(t, t.bl_tree[2 * h[n] + 1], 3); - I(t, t.dyn_ltree, e - 1), I(t, t.dyn_dtree, a - 1) - })(t, t.l_desc.max_code + 1, t.d_desc.max_code + 1, o + 1), D(t, t.dyn_ltree, t.dyn_dtree)), R(t), n && Z(t) - }, B = { - _tr_init: t => { - F || ((() => { - let t, e, a, h, k; - const v = new Array(16); - for (a = 0, h = 0; h < 28; h++) for (u[h] = a, t = 0; t < 1 << r[h]; t++) c[a++] = h; - for (c[a - 1] = h, k = 0, h = 0; h < 16; h++) for (w[h] = k, t = 0; t < 1 << o[h]; t++) f[k++] = h; - for (k >>= 7; h < n; h++) for (w[h] = k << 7, t = 0; t < 1 << o[h] - 7; t++) f[256 + k++] = h; - for (e = 0; e <= s; e++) v[e] = 0; - for (t = 0; t <= 143;) d[2 * t + 1] = 8, t++, v[8]++; - for (; t <= 255;) d[2 * t + 1] = 9, t++, v[9]++; - for (; t <= 279;) d[2 * t + 1] = 7, t++, v[7]++; - for (; t <= 287;) d[2 * t + 1] = 8, t++, v[8]++; - for (E(d, 287, v), t = 0; t < n; t++) _[2 * t + 1] = 5, _[2 * t] = A(t, 5); - b = new m(d, r, 257, i, s), g = new m(_, o, 0, n, s), p = new m(new Array(0), l, 0, 19, 7) - })(), F = !0), t.l_desc = new k(t.dyn_ltree, b), t.d_desc = new k(t.dyn_dtree, g), t.bl_desc = new k(t.bl_tree, p), t.bi_buf = 0, t.bi_valid = 0, R(t) + let s, r, o = 0; + t.level > 0 ? (2 === t.strm.data_type && (t.strm.data_type = (t => { + let e, i = 4093624447; + for (e = 0; e <= 31; e++, i >>>= 1) + if (1 & i && 0 !== t.dyn_ltree[2 * e]) return 0; + if (0 !== t.dyn_ltree[18] || 0 !== t.dyn_ltree[20] || 0 !== t.dyn_ltree[26]) return 1; + for (e = 32; e < a; e++) + if (0 !== t.dyn_ltree[2 * e]) return 1; + return 0 + })(t)), T(t, t.l_desc), T(t, t.d_desc), o = (t => { + let e; + for (O(t, t.dyn_ltree, t.l_desc.max_code), O(t, t.dyn_dtree, t.d_desc.max_code), T(t, t.bl_desc), e = 18; e >= 3 && 0 === t.bl_tree[2 * h[e] + 1]; e--); + return t.opt_len += 3 * (e + 1) + 5 + 5 + 4, e + })(t), s = t.opt_len + 3 + 7 >>> 3, r = t.static_len + 3 + 7 >>> 3, r <= s && (s = r)) : s = r = i + 5, i + 4 <= s && -1 !== e ? L(t, e, i, n) : 4 === t.strategy || r === s ? (x(t, 2 + (n ? 1 : 0), 3), D(t, d, _)) : (x(t, 4 + (n ? 1 : 0), 3), ((t, e, a, i) => { + let n; + for (x(t, e - 257, 5), x(t, a - 1, 5), x(t, i - 4, 4), n = 0; n < i; n++) x(t, t.bl_tree[2 * h[n] + 1], 3); + I(t, t.dyn_ltree, e - 1), I(t, t.dyn_dtree, a - 1) + })(t, t.l_desc.max_code + 1, t.d_desc.max_code + 1, o + 1), D(t, t.dyn_ltree, t.dyn_dtree)), R(t), n && Z(t) }, - _tr_stored_block: L, - _tr_flush_block: N, - _tr_tally: (t, e, i) => (t.pending_buf[t.sym_buf + t.sym_next++] = e, t.pending_buf[t.sym_buf + t.sym_next++] = e >> 8, t.pending_buf[t.sym_buf + t.sym_next++] = i, 0 === e ? t.dyn_ltree[2 * i]++ : (t.matches++, e--, t.dyn_ltree[2 * (c[i] + a + 1)]++, t.dyn_dtree[2 * v(e)]++), t.sym_next === t.sym_end), - _tr_align: t => { - x(t, 2, 3), z(t, 256, d), (t => { - 16 === t.bi_valid ? (y(t, t.bi_buf), t.bi_buf = 0, t.bi_valid = 0) : t.bi_valid >= 8 && (t.pending_buf[t.pending++] = 255 & t.bi_buf, t.bi_buf >>= 8, t.bi_valid -= 8) - })(t) - } - }; + B = { + _tr_init: t => { + F || ((() => { + let t, e, a, h, k; + const v = new Array(16); + for (a = 0, h = 0; h < 28; h++) + for (u[h] = a, t = 0; t < 1 << r[h]; t++) c[a++] = h; + for (c[a - 1] = h, k = 0, h = 0; h < 16; h++) + for (w[h] = k, t = 0; t < 1 << o[h]; t++) f[k++] = h; + for (k >>= 7; h < n; h++) + for (w[h] = k << 7, t = 0; t < 1 << o[h] - 7; t++) f[256 + k++] = h; + for (e = 0; e <= s; e++) v[e] = 0; + for (t = 0; t <= 143;) d[2 * t + 1] = 8, t++, v[8]++; + for (; t <= 255;) d[2 * t + 1] = 9, t++, v[9]++; + for (; t <= 279;) d[2 * t + 1] = 7, t++, v[7]++; + for (; t <= 287;) d[2 * t + 1] = 8, t++, v[8]++; + for (E(d, 287, v), t = 0; t < n; t++) _[2 * t + 1] = 5, _[2 * t] = A(t, 5); + b = new m(d, r, 257, i, s), g = new m(_, o, 0, n, s), p = new m(new Array(0), l, 0, 19, 7) + })(), F = !0), t.l_desc = new k(t.dyn_ltree, b), t.d_desc = new k(t.dyn_dtree, g), t.bl_desc = new k(t.bl_tree, p), t.bi_buf = 0, t.bi_valid = 0, R(t) + }, + _tr_stored_block: L, + _tr_flush_block: N, + _tr_tally: (t, e, i) => (t.pending_buf[t.sym_buf + t.sym_next++] = e, t.pending_buf[t.sym_buf + t.sym_next++] = e >> 8, t.pending_buf[t.sym_buf + t.sym_next++] = i, 0 === e ? t.dyn_ltree[2 * i]++ : (t.matches++, e--, t.dyn_ltree[2 * (c[i] + a + 1)]++, t.dyn_dtree[2 * v(e)]++), t.sym_next === t.sym_end), + _tr_align: t => { + x(t, 2, 3), z(t, 256, d), (t => { + 16 === t.bi_valid ? (y(t, t.bi_buf), t.bi_buf = 0, t.bi_valid = 0) : t.bi_valid >= 8 && (t.pending_buf[t.pending++] = 255 & t.bi_buf, t.bi_buf >>= 8, t.bi_valid -= 8) + })(t) + } + }; var C = (t, e, a, i) => { - let n = 65535 & t | 0, s = t >>> 16 & 65535 | 0, r = 0; + let n = 65535 & t | 0, + s = t >>> 16 & 65535 | 0, + r = 0; for (; 0 !== a;) { r = a > 2e3 ? 2e3 : a, a -= r; do { @@ -174,50 +225,53 @@ return e })()); var H = (t, e, a, i) => { - const n = M, s = i + a; - t ^= -1; - for (let a = i; a < s; a++) t = t >>> 8 ^ n[255 & (t ^ e[a])]; - return -1 ^ t - }, j = { - 2: "need dictionary", - 1: "stream end", - 0: "", - "-1": "file error", - "-2": "stream error", - "-3": "data error", - "-4": "insufficient memory", - "-5": "buffer error", - "-6": "incompatible version" - }, K = { - Z_NO_FLUSH: 0, - Z_PARTIAL_FLUSH: 1, - Z_SYNC_FLUSH: 2, - Z_FULL_FLUSH: 3, - Z_FINISH: 4, - Z_BLOCK: 5, - Z_TREES: 6, - Z_OK: 0, - Z_STREAM_END: 1, - Z_NEED_DICT: 2, - Z_ERRNO: -1, - Z_STREAM_ERROR: -2, - Z_DATA_ERROR: -3, - Z_MEM_ERROR: -4, - Z_BUF_ERROR: -5, - Z_NO_COMPRESSION: 0, - Z_BEST_SPEED: 1, - Z_BEST_COMPRESSION: 9, - Z_DEFAULT_COMPRESSION: -1, - Z_FILTERED: 1, - Z_HUFFMAN_ONLY: 2, - Z_RLE: 3, - Z_FIXED: 4, - Z_DEFAULT_STRATEGY: 0, - Z_BINARY: 0, - Z_TEXT: 1, - Z_UNKNOWN: 2, - Z_DEFLATED: 8 - }; + const n = M, + s = i + a; + t ^= -1; + for (let a = i; a < s; a++) t = t >>> 8 ^ n[255 & (t ^ e[a])]; + return -1 ^ t + }, + j = { + 2: "need dictionary", + 1: "stream end", + 0: "", + "-1": "file error", + "-2": "stream error", + "-3": "data error", + "-4": "insufficient memory", + "-5": "buffer error", + "-6": "incompatible version" + }, + K = { + Z_NO_FLUSH: 0, + Z_PARTIAL_FLUSH: 1, + Z_SYNC_FLUSH: 2, + Z_FULL_FLUSH: 3, + Z_FINISH: 4, + Z_BLOCK: 5, + Z_TREES: 6, + Z_OK: 0, + Z_STREAM_END: 1, + Z_NEED_DICT: 2, + Z_ERRNO: -1, + Z_STREAM_ERROR: -2, + Z_DATA_ERROR: -3, + Z_MEM_ERROR: -4, + Z_BUF_ERROR: -5, + Z_NO_COMPRESSION: 0, + Z_BEST_SPEED: 1, + Z_BEST_COMPRESSION: 9, + Z_DEFAULT_COMPRESSION: -1, + Z_FILTERED: 1, + Z_HUFFMAN_ONLY: 2, + Z_RLE: 3, + Z_FIXED: 4, + Z_DEFAULT_STRATEGY: 0, + Z_BINARY: 0, + Z_TEXT: 1, + Z_UNKNOWN: 2, + Z_DEFLATED: 8 + }; const { _tr_init: P, _tr_stored_block: Y, @@ -259,85 +313,107 @@ }; let yt = (t, e, a) => (e << t.hash_shift ^ a) & t.hash_mask; const xt = t => { - const e = t.state; - let a = e.pending; - a > t.avail_out && (a = t.avail_out), 0 !== a && (t.output.set(e.pending_buf.subarray(e.pending_out, e.pending_out + a), t.next_out), t.next_out += a, e.pending_out += a, t.total_out += a, t.avail_out -= a, e.pending -= a, 0 === e.pending && (e.pending_out = 0)) - }, zt = (t, e) => { - G(t, t.block_start >= 0 ? t.block_start : -1, t.strstart - t.block_start, e), t.block_start = t.strstart, xt(t.strm) - }, At = (t, e) => { - t.pending_buf[t.pending++] = e - }, Et = (t, e) => { - t.pending_buf[t.pending++] = e >>> 8 & 255, t.pending_buf[t.pending++] = 255 & e - }, Rt = (t, e, a, i) => { - let n = t.avail_in; - return n > i && (n = i), 0 === n ? 0 : (t.avail_in -= n, e.set(t.input.subarray(t.next_in, t.next_in + n), a), 1 === t.state.wrap ? t.adler = C(t.adler, e, n, a) : 2 === t.state.wrap && (t.adler = H(t.adler, e, n, a)), t.next_in += n, t.total_in += n, n) - }, Zt = (t, e) => { - let a, i, n = t.max_chain_length, s = t.strstart, r = t.prev_length, o = t.nice_match; - const l = t.strstart > t.w_size - ut ? t.strstart - (t.w_size - ut) : 0, h = t.window, d = t.w_mask, _ = t.prev, f = t.strstart + ct; - let c = h[s + r - 1], u = h[s + r]; - t.prev_length >= t.good_match && (n >>= 2), o > t.lookahead && (o = t.lookahead); - do { - if (a = e, h[a + r] === u && h[a + r - 1] === c && h[a] === h[s] && h[++a] === h[s + 1]) { - s += 2, a++; - do {} while (h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && s < f); - if (i = ct - (f - s), s = f - ct, i > r) { - if (t.match_start = e, r = i, i >= o) break; - c = h[s + r - 1], u = h[s + r] + const e = t.state; + let a = e.pending; + a > t.avail_out && (a = t.avail_out), 0 !== a && (t.output.set(e.pending_buf.subarray(e.pending_out, e.pending_out + a), t.next_out), t.next_out += a, e.pending_out += a, t.total_out += a, t.avail_out -= a, e.pending -= a, 0 === e.pending && (e.pending_out = 0)) + }, + zt = (t, e) => { + G(t, t.block_start >= 0 ? t.block_start : -1, t.strstart - t.block_start, e), t.block_start = t.strstart, xt(t.strm) + }, + At = (t, e) => { + t.pending_buf[t.pending++] = e + }, + Et = (t, e) => { + t.pending_buf[t.pending++] = e >>> 8 & 255, t.pending_buf[t.pending++] = 255 & e + }, + Rt = (t, e, a, i) => { + let n = t.avail_in; + return n > i && (n = i), 0 === n ? 0 : (t.avail_in -= n, e.set(t.input.subarray(t.next_in, t.next_in + n), a), 1 === t.state.wrap ? t.adler = C(t.adler, e, n, a) : 2 === t.state.wrap && (t.adler = H(t.adler, e, n, a)), t.next_in += n, t.total_in += n, n) + }, + Zt = (t, e) => { + let a, i, n = t.max_chain_length, + s = t.strstart, + r = t.prev_length, + o = t.nice_match; + const l = t.strstart > t.w_size - ut ? t.strstart - (t.w_size - ut) : 0, + h = t.window, + d = t.w_mask, + _ = t.prev, + f = t.strstart + ct; + let c = h[s + r - 1], + u = h[s + r]; + t.prev_length >= t.good_match && (n >>= 2), o > t.lookahead && (o = t.lookahead); + do { + if (a = e, h[a + r] === u && h[a + r - 1] === c && h[a] === h[s] && h[++a] === h[s + 1]) { + s += 2, a++; + do {} while (h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && h[++s] === h[++a] && s < f); + if (i = ct - (f - s), s = f - ct, i > r) { + if (t.match_start = e, r = i, i >= o) break; + c = h[s + r - 1], u = h[s + r] + } } + } while ((e = _[e & d]) > l && 0 != --n); + return r <= t.lookahead ? r : t.lookahead + }, + Ut = t => { + const e = t.w_size; + let a, i, n; + do { + if (i = t.window_size - t.lookahead - t.strstart, t.strstart >= e + (e - ut) && (t.window.set(t.window.subarray(e, e + e - i), 0), t.match_start -= e, t.strstart -= e, t.block_start -= e, t.insert > t.strstart && (t.insert = t.strstart), vt(t), i += e), 0 === t.strm.avail_in) break; + if (a = Rt(t.strm, t.window, t.strstart + t.lookahead, i), t.lookahead += a, t.lookahead + t.insert >= 3) + for (n = t.strstart - t.insert, t.ins_h = t.window[n], t.ins_h = yt(t, t.ins_h, t.window[n + 1]); t.insert && (t.ins_h = yt(t, t.ins_h, t.window[n + 3 - 1]), t.prev[n & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = n, n++, t.insert--, !(t.lookahead + t.insert < 3));); + } while (t.lookahead < ut && 0 !== t.strm.avail_in) + }, + St = (t, e) => { + let a, i, n, s = t.pending_buf_size - 5 > t.w_size ? t.w_size : t.pending_buf_size - 5, + r = 0, + o = t.strm.avail_in; + do { + if (a = 65535, n = t.bi_valid + 42 >> 3, t.strm.avail_out < n) break; + if (n = t.strm.avail_out - n, i = t.strstart - t.block_start, a > i + t.strm.avail_in && (a = i + t.strm.avail_in), a > n && (a = n), a < s && (0 === a && e !== V || e === q || a !== i + t.strm.avail_in)) break; + r = e === V && a === i + t.strm.avail_in ? 1 : 0, Y(t, 0, 0, r), t.pending_buf[t.pending - 4] = a, t.pending_buf[t.pending - 3] = a >> 8, t.pending_buf[t.pending - 2] = ~a, t.pending_buf[t.pending - 1] = ~a >> 8, xt(t.strm), i && (i > a && (i = a), t.strm.output.set(t.window.subarray(t.block_start, t.block_start + i), t.strm.next_out), t.strm.next_out += i, t.strm.avail_out -= i, t.strm.total_out += i, t.block_start += i, a -= i), a && (Rt(t.strm, t.strm.output, t.strm.next_out, a), t.strm.next_out += a, t.strm.avail_out -= a, t.strm.total_out += a) + } while (0 === r); + return o -= t.strm.avail_in, o && (o >= t.w_size ? (t.matches = 2, t.window.set(t.strm.input.subarray(t.strm.next_in - t.w_size, t.strm.next_in), 0), t.strstart = t.w_size, t.insert = t.strstart) : (t.window_size - t.strstart <= o && (t.strstart -= t.w_size, t.window.set(t.window.subarray(t.w_size, t.w_size + t.strstart), 0), t.matches < 2 && t.matches++, t.insert > t.strstart && (t.insert = t.strstart)), t.window.set(t.strm.input.subarray(t.strm.next_in - o, t.strm.next_in), t.strstart), t.strstart += o, t.insert += o > t.w_size - t.insert ? t.w_size - t.insert : o), t.block_start = t.strstart), t.high_water < t.strstart && (t.high_water = t.strstart), r ? 4 : e !== q && e !== V && 0 === t.strm.avail_in && t.strstart === t.block_start ? 2 : (n = t.window_size - t.strstart, t.strm.avail_in > n && t.block_start >= t.w_size && (t.block_start -= t.w_size, t.strstart -= t.w_size, t.window.set(t.window.subarray(t.w_size, t.w_size + t.strstart), 0), t.matches < 2 && t.matches++, n += t.w_size, t.insert > t.strstart && (t.insert = t.strstart)), n > t.strm.avail_in && (n = t.strm.avail_in), n && (Rt(t.strm, t.window, t.strstart, n), t.strstart += n, t.insert += n > t.w_size - t.insert ? t.w_size - t.insert : n), t.high_water < t.strstart && (t.high_water = t.strstart), n = t.bi_valid + 42 >> 3, n = t.pending_buf_size - n > 65535 ? 65535 : t.pending_buf_size - n, s = n > t.w_size ? t.w_size : n, i = t.strstart - t.block_start, (i >= s || (i || e === V) && e !== q && 0 === t.strm.avail_in && i <= n) && (a = i > n ? n : i, r = e === V && 0 === t.strm.avail_in && a === i ? 1 : 0, Y(t, t.block_start, a, r), t.block_start += a, xt(t.strm)), r ? 3 : 1) + }, + Dt = (t, e) => { + let a, i; + for (;;) { + if (t.lookahead < ut) { + if (Ut(t), t.lookahead < ut && e === q) return 1; + if (0 === t.lookahead) break + } + if (a = 0, t.lookahead >= 3 && (t.ins_h = yt(t, t.ins_h, t.window[t.strstart + 3 - 1]), a = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart), 0 !== a && t.strstart - a <= t.w_size - ut && (t.match_length = Zt(t, a)), t.match_length >= 3) + if (i = X(t, t.strstart - t.match_start, t.match_length - 3), t.lookahead -= t.match_length, t.match_length <= t.max_lazy_match && t.lookahead >= 3) { + t.match_length--; + do { + t.strstart++, t.ins_h = yt(t, t.ins_h, t.window[t.strstart + 3 - 1]), a = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart + } while (0 != --t.match_length); + t.strstart++ + } else t.strstart += t.match_length, t.match_length = 0, t.ins_h = t.window[t.strstart], t.ins_h = yt(t, t.ins_h, t.window[t.strstart + 1]); + else i = X(t, 0, t.window[t.strstart]), t.lookahead--, t.strstart++; + if (i && (zt(t, !1), 0 === t.strm.avail_out)) return 1 } - } while ((e = _[e & d]) > l && 0 != --n); - return r <= t.lookahead ? r : t.lookahead - }, Ut = t => { - const e = t.w_size; - let a, i, n; - do { - if (i = t.window_size - t.lookahead - t.strstart, t.strstart >= e + (e - ut) && (t.window.set(t.window.subarray(e, e + e - i), 0), t.match_start -= e, t.strstart -= e, t.block_start -= e, t.insert > t.strstart && (t.insert = t.strstart), vt(t), i += e), 0 === t.strm.avail_in) break; - if (a = Rt(t.strm, t.window, t.strstart + t.lookahead, i), t.lookahead += a, t.lookahead + t.insert >= 3) for (n = t.strstart - t.insert, t.ins_h = t.window[n], t.ins_h = yt(t, t.ins_h, t.window[n + 1]); t.insert && (t.ins_h = yt(t, t.ins_h, t.window[n + 3 - 1]), t.prev[n & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = n, n++, t.insert--, !(t.lookahead + t.insert < 3));); - } while (t.lookahead < ut && 0 !== t.strm.avail_in) - }, St = (t, e) => { - let a, i, n, s = t.pending_buf_size - 5 > t.w_size ? t.w_size : t.pending_buf_size - 5, r = 0, o = t.strm.avail_in; - do { - if (a = 65535, n = t.bi_valid + 42 >> 3, t.strm.avail_out < n) break; - if (n = t.strm.avail_out - n, i = t.strstart - t.block_start, a > i + t.strm.avail_in && (a = i + t.strm.avail_in), a > n && (a = n), a < s && (0 === a && e !== V || e === q || a !== i + t.strm.avail_in)) break; - r = e === V && a === i + t.strm.avail_in ? 1 : 0, Y(t, 0, 0, r), t.pending_buf[t.pending - 4] = a, t.pending_buf[t.pending - 3] = a >> 8, t.pending_buf[t.pending - 2] = ~a, t.pending_buf[t.pending - 1] = ~a >> 8, xt(t.strm), i && (i > a && (i = a), t.strm.output.set(t.window.subarray(t.block_start, t.block_start + i), t.strm.next_out), t.strm.next_out += i, t.strm.avail_out -= i, t.strm.total_out += i, t.block_start += i, a -= i), a && (Rt(t.strm, t.strm.output, t.strm.next_out, a), t.strm.next_out += a, t.strm.avail_out -= a, t.strm.total_out += a) - } while (0 === r); - return o -= t.strm.avail_in, o && (o >= t.w_size ? (t.matches = 2, t.window.set(t.strm.input.subarray(t.strm.next_in - t.w_size, t.strm.next_in), 0), t.strstart = t.w_size, t.insert = t.strstart) : (t.window_size - t.strstart <= o && (t.strstart -= t.w_size, t.window.set(t.window.subarray(t.w_size, t.w_size + t.strstart), 0), t.matches < 2 && t.matches++, t.insert > t.strstart && (t.insert = t.strstart)), t.window.set(t.strm.input.subarray(t.strm.next_in - o, t.strm.next_in), t.strstart), t.strstart += o, t.insert += o > t.w_size - t.insert ? t.w_size - t.insert : o), t.block_start = t.strstart), t.high_water < t.strstart && (t.high_water = t.strstart), r ? 4 : e !== q && e !== V && 0 === t.strm.avail_in && t.strstart === t.block_start ? 2 : (n = t.window_size - t.strstart, t.strm.avail_in > n && t.block_start >= t.w_size && (t.block_start -= t.w_size, t.strstart -= t.w_size, t.window.set(t.window.subarray(t.w_size, t.w_size + t.strstart), 0), t.matches < 2 && t.matches++, n += t.w_size, t.insert > t.strstart && (t.insert = t.strstart)), n > t.strm.avail_in && (n = t.strm.avail_in), n && (Rt(t.strm, t.window, t.strstart, n), t.strstart += n, t.insert += n > t.w_size - t.insert ? t.w_size - t.insert : n), t.high_water < t.strstart && (t.high_water = t.strstart), n = t.bi_valid + 42 >> 3, n = t.pending_buf_size - n > 65535 ? 65535 : t.pending_buf_size - n, s = n > t.w_size ? t.w_size : n, i = t.strstart - t.block_start, (i >= s || (i || e === V) && e !== q && 0 === t.strm.avail_in && i <= n) && (a = i > n ? n : i, r = e === V && 0 === t.strm.avail_in && a === i ? 1 : 0, Y(t, t.block_start, a, r), t.block_start += a, xt(t.strm)), r ? 3 : 1) - }, Dt = (t, e) => { - let a, i; - for (;;) { - if (t.lookahead < ut) { - if (Ut(t), t.lookahead < ut && e === q) return 1; - if (0 === t.lookahead) break + return t.insert = t.strstart < 2 ? t.strstart : 2, e === V ? (zt(t, !0), 0 === t.strm.avail_out ? 3 : 4) : t.sym_next && (zt(t, !1), 0 === t.strm.avail_out) ? 1 : 2 + }, + Tt = (t, e) => { + let a, i, n; + for (;;) { + if (t.lookahead < ut) { + if (Ut(t), t.lookahead < ut && e === q) return 1; + if (0 === t.lookahead) break + } + if (a = 0, t.lookahead >= 3 && (t.ins_h = yt(t, t.ins_h, t.window[t.strstart + 3 - 1]), a = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart), t.prev_length = t.match_length, t.prev_match = t.match_start, t.match_length = 2, 0 !== a && t.prev_length < t.max_lazy_match && t.strstart - a <= t.w_size - ut && (t.match_length = Zt(t, a), t.match_length <= 5 && (t.strategy === rt || 3 === t.match_length && t.strstart - t.match_start > 4096) && (t.match_length = 2)), t.prev_length >= 3 && t.match_length <= t.prev_length) { + n = t.strstart + t.lookahead - 3, i = X(t, t.strstart - 1 - t.prev_match, t.prev_length - 3), t.lookahead -= t.prev_length - 1, t.prev_length -= 2; + do { + ++t.strstart <= n && (t.ins_h = yt(t, t.ins_h, t.window[t.strstart + 3 - 1]), a = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart) + } while (0 != --t.prev_length); + if (t.match_available = 0, t.match_length = 2, t.strstart++, i && (zt(t, !1), 0 === t.strm.avail_out)) return 1 + } else if (t.match_available) { + if (i = X(t, 0, t.window[t.strstart - 1]), i && zt(t, !1), t.strstart++, t.lookahead--, 0 === t.strm.avail_out) return 1 + } else t.match_available = 1, t.strstart++, t.lookahead-- } - if (a = 0, t.lookahead >= 3 && (t.ins_h = yt(t, t.ins_h, t.window[t.strstart + 3 - 1]), a = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart), 0 !== a && t.strstart - a <= t.w_size - ut && (t.match_length = Zt(t, a)), t.match_length >= 3) if (i = X(t, t.strstart - t.match_start, t.match_length - 3), t.lookahead -= t.match_length, t.match_length <= t.max_lazy_match && t.lookahead >= 3) { - t.match_length--; - do { - t.strstart++, t.ins_h = yt(t, t.ins_h, t.window[t.strstart + 3 - 1]), a = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart - } while (0 != --t.match_length); - t.strstart++ - } else t.strstart += t.match_length, t.match_length = 0, t.ins_h = t.window[t.strstart], t.ins_h = yt(t, t.ins_h, t.window[t.strstart + 1]); - else i = X(t, 0, t.window[t.strstart]), t.lookahead--, t.strstart++; - if (i && (zt(t, !1), 0 === t.strm.avail_out)) return 1 - } - return t.insert = t.strstart < 2 ? t.strstart : 2, e === V ? (zt(t, !0), 0 === t.strm.avail_out ? 3 : 4) : t.sym_next && (zt(t, !1), 0 === t.strm.avail_out) ? 1 : 2 - }, Tt = (t, e) => { - let a, i, n; - for (;;) { - if (t.lookahead < ut) { - if (Ut(t), t.lookahead < ut && e === q) return 1; - if (0 === t.lookahead) break - } - if (a = 0, t.lookahead >= 3 && (t.ins_h = yt(t, t.ins_h, t.window[t.strstart + 3 - 1]), a = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart), t.prev_length = t.match_length, t.prev_match = t.match_start, t.match_length = 2, 0 !== a && t.prev_length < t.max_lazy_match && t.strstart - a <= t.w_size - ut && (t.match_length = Zt(t, a), t.match_length <= 5 && (t.strategy === rt || 3 === t.match_length && t.strstart - t.match_start > 4096) && (t.match_length = 2)), t.prev_length >= 3 && t.match_length <= t.prev_length) { - n = t.strstart + t.lookahead - 3, i = X(t, t.strstart - 1 - t.prev_match, t.prev_length - 3), t.lookahead -= t.prev_length - 1, t.prev_length -= 2; - do {++t.strstart <= n && (t.ins_h = yt(t, t.ins_h, t.window[t.strstart + 3 - 1]), a = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart) - } while (0 != --t.prev_length); - if (t.match_available = 0, t.match_length = 2, t.strstart++, i && (zt(t, !1), 0 === t.strm.avail_out)) return 1 - } else if (t.match_available) { - if (i = X(t, 0, t.window[t.strstart - 1]), i && zt(t, !1), t.strstart++, t.lookahead--, 0 === t.strm.avail_out) return 1 - } else t.match_available = 1, t.strstart++, t.lookahead-- - } - return t.match_available && (i = X(t, 0, t.window[t.strstart - 1]), t.match_available = 0), t.insert = t.strstart < 2 ? t.strstart : 2, e === V ? (zt(t, !0), 0 === t.strm.avail_out ? 3 : 4) : t.sym_next && (zt(t, !1), 0 === t.strm.avail_out) ? 1 : 2 - }; + return t.match_available && (i = X(t, 0, t.window[t.strstart - 1]), t.match_available = 0), t.insert = t.strstart < 2 ? t.strstart : 2, e === V ? (zt(t, !0), 0 === t.strm.avail_out ? 3 : 4) : t.sym_next && (zt(t, !1), 0 === t.strm.avail_out) ? 1 : 2 + }; function Ot(t, e, a, i, n) { this.good_length = t, this.max_lazy = e, this.nice_length = a, this.max_chain = i, this.func = n @@ -348,26 +424,29 @@ this.strm = null, this.status = 0, this.pending_buf = null, this.pending_buf_size = 0, this.pending_out = 0, this.pending = 0, this.wrap = 0, this.gzhead = null, this.gzindex = 0, this.method = ft, this.last_flush = -1, this.w_size = 0, this.w_bits = 0, this.w_mask = 0, this.window = null, this.window_size = 0, this.prev = null, this.head = null, this.ins_h = 0, this.hash_size = 0, this.hash_bits = 0, this.hash_mask = 0, this.hash_shift = 0, this.block_start = 0, this.match_length = 0, this.prev_match = 0, this.match_available = 0, this.strstart = 0, this.match_start = 0, this.lookahead = 0, this.prev_length = 0, this.max_chain_length = 0, this.max_lazy_match = 0, this.level = 0, this.strategy = 0, this.good_match = 0, this.nice_match = 0, this.dyn_ltree = new Uint16Array(1146), this.dyn_dtree = new Uint16Array(122), this.bl_tree = new Uint16Array(78), kt(this.dyn_ltree), kt(this.dyn_dtree), kt(this.bl_tree), this.l_desc = null, this.d_desc = null, this.bl_desc = null, this.bl_count = new Uint16Array(16), this.heap = new Uint16Array(573), kt(this.heap), this.heap_len = 0, this.heap_max = 0, this.depth = new Uint16Array(573), kt(this.depth), this.sym_buf = 0, this.lit_bufsize = 0, this.sym_next = 0, this.sym_end = 0, this.opt_len = 0, this.static_len = 0, this.matches = 0, this.insert = 0, this.bi_buf = 0, this.bi_valid = 0 } const Lt = t => { - if (!t) return 1; - const e = t.state; - return !e || e.strm !== t || e.status !== wt && 57 !== e.status && 69 !== e.status && 73 !== e.status && 91 !== e.status && 103 !== e.status && e.status !== mt && e.status !== bt ? 1 : 0 - }, Nt = t => { - if (Lt(t)) return gt(t, at); - t.total_in = t.total_out = 0, t.data_type = _t; - const e = t.state; - return e.pending = 0, e.pending_out = 0, e.wrap < 0 && (e.wrap = -e.wrap), e.status = 2 === e.wrap ? 57 : e.wrap ? wt : mt, t.adler = 2 === e.wrap ? 0 : 1, e.last_flush = -2, P(e), tt - }, Bt = t => { - const e = Nt(t); - var a; - return e === tt && ((a = t.state).window_size = 2 * a.w_size, kt(a.head), a.max_lazy_match = It[a.level].max_lazy, a.good_match = It[a.level].good_length, a.nice_match = It[a.level].nice_length, a.max_chain_length = It[a.level].max_chain, a.strstart = 0, a.block_start = 0, a.lookahead = 0, a.insert = 0, a.match_length = a.prev_length = 2, a.match_available = 0, a.ins_h = 0), e - }, Ct = (t, e, a, i, n, s) => { - if (!t) return at; - let r = 1; - if (e === st && (e = 6), i < 0 ? (r = 0, i = -i) : i > 15 && (r = 2, i -= 16), n < 1 || n > 9 || a !== ft || i < 8 || i > 15 || e < 0 || e > 9 || s < 0 || s > ht || 8 === i && 1 !== r) return gt(t, at); - 8 === i && (i = 9); - const o = new Ft; - return t.state = o, o.strm = t, o.status = wt, o.wrap = r, o.gzhead = null, o.w_bits = i, o.w_size = 1 << o.w_bits, o.w_mask = o.w_size - 1, o.hash_bits = n + 7, o.hash_size = 1 << o.hash_bits, o.hash_mask = o.hash_size - 1, o.hash_shift = ~~ ((o.hash_bits + 3 - 1) / 3), o.window = new Uint8Array(2 * o.w_size), o.head = new Uint16Array(o.hash_size), o.prev = new Uint16Array(o.w_size), o.lit_bufsize = 1 << n + 6, o.pending_buf_size = 4 * o.lit_bufsize, o.pending_buf = new Uint8Array(o.pending_buf_size), o.sym_buf = o.lit_bufsize, o.sym_end = 3 * (o.lit_bufsize - 1), o.level = e, o.strategy = s, o.method = a, Bt(t) - }; + if (!t) return 1; + const e = t.state; + return !e || e.strm !== t || e.status !== wt && 57 !== e.status && 69 !== e.status && 73 !== e.status && 91 !== e.status && 103 !== e.status && e.status !== mt && e.status !== bt ? 1 : 0 + }, + Nt = t => { + if (Lt(t)) return gt(t, at); + t.total_in = t.total_out = 0, t.data_type = _t; + const e = t.state; + return e.pending = 0, e.pending_out = 0, e.wrap < 0 && (e.wrap = -e.wrap), e.status = 2 === e.wrap ? 57 : e.wrap ? wt : mt, t.adler = 2 === e.wrap ? 0 : 1, e.last_flush = -2, P(e), tt + }, + Bt = t => { + const e = Nt(t); + var a; + return e === tt && ((a = t.state).window_size = 2 * a.w_size, kt(a.head), a.max_lazy_match = It[a.level].max_lazy, a.good_match = It[a.level].good_length, a.nice_match = It[a.level].nice_length, a.max_chain_length = It[a.level].max_chain, a.strstart = 0, a.block_start = 0, a.lookahead = 0, a.insert = 0, a.match_length = a.prev_length = 2, a.match_available = 0, a.ins_h = 0), e + }, + Ct = (t, e, a, i, n, s) => { + if (!t) return at; + let r = 1; + if (e === st && (e = 6), i < 0 ? (r = 0, i = -i) : i > 15 && (r = 2, i -= 16), n < 1 || n > 9 || a !== ft || i < 8 || i > 15 || e < 0 || e > 9 || s < 0 || s > ht || 8 === i && 1 !== r) return gt(t, at); + 8 === i && (i = 9); + const o = new Ft; + return t.state = o, o.strm = t, o.status = wt, o.wrap = r, o.gzhead = null, o.w_bits = i, o.w_size = 1 << o.w_bits, o.w_mask = o.w_size - 1, o.hash_bits = n + 7, o.hash_size = 1 << o.hash_bits, o.hash_mask = o.hash_size - 1, o.hash_shift = ~~((o.hash_bits + 3 - 1) / 3), o.window = new Uint8Array(2 * o.w_size), o.head = new Uint16Array(o.hash_size), o.prev = new Uint16Array(o.w_size), o.lit_bufsize = 1 << n + 6, o.pending_buf_size = 4 * o.lit_bufsize, o.pending_buf = new Uint8Array(o.pending_buf_size), o.sym_buf = o.lit_bufsize, o.sym_end = 3 * (o.lit_bufsize - 1), o.level = e, o.strategy = s, o.method = a, Bt(t) + }; var Mt = { deflateInit: (t, e) => Ct(t, e, ft, 15, 8, dt), deflateInit2: Ct, @@ -384,14 +463,17 @@ } else if (0 === t.avail_in && pt(e) <= pt(i) && e !== V) return gt(t, nt); if (a.status === bt && 0 !== t.avail_in) return gt(t, nt); if (a.status === wt && 0 === a.wrap && (a.status = mt), a.status === wt) { - let e = ft + (a.w_bits - 8 << 4) << 8, i = -1; + let e = ft + (a.w_bits - 8 << 4) << 8, + i = -1; if (i = a.strategy >= ot || a.level < 2 ? 0 : a.level < 6 ? 1 : 6 === a.level ? 2 : 3, e |= i << 6, 0 !== a.strstart && (e |= 32), e += 31 - e % 31, Et(a, e), 0 !== a.strstart && (Et(a, t.adler >>> 16), Et(a, 65535 & t.adler)), t.adler = 1, a.status = mt, xt(t), 0 !== a.pending) return a.last_flush = -1, tt } - if (57 === a.status) if (t.adler = 0, At(a, 31), At(a, 139), At(a, 8), a.gzhead) At(a, (a.gzhead.text ? 1 : 0) + (a.gzhead.hcrc ? 2 : 0) + (a.gzhead.extra ? 4 : 0) + (a.gzhead.name ? 8 : 0) + (a.gzhead.comment ? 16 : 0)), At(a, 255 & a.gzhead.time), At(a, a.gzhead.time >> 8 & 255), At(a, a.gzhead.time >> 16 & 255), At(a, a.gzhead.time >> 24 & 255), At(a, 9 === a.level ? 2 : a.strategy >= ot || a.level < 2 ? 4 : 0), At(a, 255 & a.gzhead.os), a.gzhead.extra && a.gzhead.extra.length && (At(a, 255 & a.gzhead.extra.length), At(a, a.gzhead.extra.length >> 8 & 255)), a.gzhead.hcrc && (t.adler = H(t.adler, a.pending_buf, a.pending, 0)), a.gzindex = 0, a.status = 69; - else if (At(a, 0), At(a, 0), At(a, 0), At(a, 0), At(a, 0), At(a, 9 === a.level ? 2 : a.strategy >= ot || a.level < 2 ? 4 : 0), At(a, 3), a.status = mt, xt(t), 0 !== a.pending) return a.last_flush = -1, tt; + if (57 === a.status) + if (t.adler = 0, At(a, 31), At(a, 139), At(a, 8), a.gzhead) At(a, (a.gzhead.text ? 1 : 0) + (a.gzhead.hcrc ? 2 : 0) + (a.gzhead.extra ? 4 : 0) + (a.gzhead.name ? 8 : 0) + (a.gzhead.comment ? 16 : 0)), At(a, 255 & a.gzhead.time), At(a, a.gzhead.time >> 8 & 255), At(a, a.gzhead.time >> 16 & 255), At(a, a.gzhead.time >> 24 & 255), At(a, 9 === a.level ? 2 : a.strategy >= ot || a.level < 2 ? 4 : 0), At(a, 255 & a.gzhead.os), a.gzhead.extra && a.gzhead.extra.length && (At(a, 255 & a.gzhead.extra.length), At(a, a.gzhead.extra.length >> 8 & 255)), a.gzhead.hcrc && (t.adler = H(t.adler, a.pending_buf, a.pending, 0)), a.gzindex = 0, a.status = 69; + else if (At(a, 0), At(a, 0), At(a, 0), At(a, 0), At(a, 0), At(a, 9 === a.level ? 2 : a.strategy >= ot || a.level < 2 ? 4 : 0), At(a, 3), a.status = mt, xt(t), 0 !== a.pending) return a.last_flush = -1, tt; if (69 === a.status) { if (a.gzhead.extra) { - let e = a.pending, i = (65535 & a.gzhead.extra.length) - a.gzindex; + let e = a.pending, + i = (65535 & a.gzhead.extra.length) - a.gzindex; for (; a.pending + i > a.pending_buf_size;) { let n = a.pending_buf_size - a.pending; if (a.pending_buf.set(a.gzhead.extra.subarray(a.gzindex, a.gzindex + n), a.pending), a.pending = a.pending_buf_size, a.gzhead.hcrc && a.pending > e && (t.adler = H(t.adler, a.pending_buf, a.pending - e, e)), a.gzindex += n, xt(t), 0 !== a.pending) return a.last_flush = -1, tt; @@ -478,16 +560,20 @@ deflateSetDictionary: (t, e) => { let a = e.length; if (Lt(t)) return at; - const i = t.state, n = i.wrap; + const i = t.state, + n = i.wrap; if (2 === n || 1 === n && i.status !== wt || i.lookahead) return at; if (1 === n && (t.adler = C(t.adler, e, a, 0)), i.wrap = 0, a >= i.w_size) { 0 === n && (kt(i.head), i.strstart = 0, i.block_start = 0, i.insert = 0); let t = new Uint8Array(i.w_size); t.set(e.subarray(a - i.w_size, a), 0), e = t, a = i.w_size } - const s = t.avail_in, r = t.next_in, o = t.input; + const s = t.avail_in, + r = t.next_in, + o = t.input; for (t.avail_in = a, t.next_in = 0, t.input = e, Ut(i); i.lookahead >= 3;) { - let t = i.strstart, e = i.lookahead - 2; + let t = i.strstart, + e = i.lookahead - 2; do { i.ins_h = yt(i, i.ins_h, i.window[t + 3 - 1]), i.prev[t & i.w_mask] = i.head[i.ins_h], i.head[i.ins_h] = t, t++ } while (--e); @@ -499,25 +585,26 @@ }; const Ht = (t, e) => Object.prototype.hasOwnProperty.call(t, e); var jt = function(t) { - const e = Array.prototype.slice.call(arguments, 1); - for (; e.length;) { - const a = e.shift(); - if (a) { - if ("object" != typeof a) throw new TypeError(a + "must be non-object"); - for (const e in a) Ht(a, e) && (t[e] = a[e]) + const e = Array.prototype.slice.call(arguments, 1); + for (; e.length;) { + const a = e.shift(); + if (a) { + if ("object" != typeof a) throw new TypeError(a + "must be non-object"); + for (const e in a) Ht(a, e) && (t[e] = a[e]) + } } - } - return t - }, Kt = t => { - let e = 0; - for (let a = 0, i = t.length; a < i; a++) e += t[a].length; - const a = new Uint8Array(e); - for (let e = 0, i = 0, n = t.length; e < n; e++) { - let n = t[e]; - a.set(n, i), i += n.length - } - return a - }; + return t + }, + Kt = t => { + let e = 0; + for (let a = 0, i = t.length; a < i; a++) e += t[a].length; + const a = new Uint8Array(e); + for (let e = 0, i = 0, n = t.length; e < n; e++) { + let n = t[e]; + a.set(n, i), i += n.length + } + return a + }; let Pt = !0; try { String.fromCharCode.apply(null, new Uint8Array(1)) @@ -528,55 +615,59 @@ for (let t = 0; t < 256; t++) Yt[t] = t >= 252 ? 6 : t >= 248 ? 5 : t >= 240 ? 4 : t >= 224 ? 3 : t >= 192 ? 2 : 1; Yt[254] = Yt[254] = 1; var Gt = t => { - if ("function" == typeof TextEncoder && TextEncoder.prototype.encode) return (new TextEncoder).encode(t); - let e, a, i, n, s, r = t.length, o = 0; - for (n = 0; n < r; n++) a = t.charCodeAt(n), 55296 == (64512 & a) && n + 1 < r && (i = t.charCodeAt(n + 1), 56320 == (64512 & i) && (a = 65536 + (a - 55296 << 10) + (i - 56320), n++)), o += a < 128 ? 1 : a < 2048 ? 2 : a < 65536 ? 3 : 4; - for (e = new Uint8Array(o), s = 0, n = 0; s < o; n++) a = t.charCodeAt(n), 55296 == (64512 & a) && n + 1 < r && (i = t.charCodeAt(n + 1), 56320 == (64512 & i) && (a = 65536 + (a - 55296 << 10) + (i - 56320), n++)), a < 128 ? e[s++] = a : a < 2048 ? (e[s++] = 192 | a >>> 6, e[s++] = 128 | 63 & a) : a < 65536 ? (e[s++] = 224 | a >>> 12, e[s++] = 128 | a >>> 6 & 63, e[s++] = 128 | 63 & a) : (e[s++] = 240 | a >>> 18, e[s++] = 128 | a >>> 12 & 63, e[s++] = 128 | a >>> 6 & 63, e[s++] = 128 | 63 & a); - return e - }, Xt = (t, e) => { - const a = e || t.length; - if ("function" == typeof TextDecoder && TextDecoder.prototype.decode) return (new TextDecoder).decode(t.subarray(0, e)); - let i, n; - const s = new Array(2 * a); - for (n = 0, i = 0; i < a;) { - let e = t[i++]; - if (e < 128) { - s[n++] = e; - continue + if ("function" == typeof TextEncoder && TextEncoder.prototype.encode) return (new TextEncoder).encode(t); + let e, a, i, n, s, r = t.length, + o = 0; + for (n = 0; n < r; n++) a = t.charCodeAt(n), 55296 == (64512 & a) && n + 1 < r && (i = t.charCodeAt(n + 1), 56320 == (64512 & i) && (a = 65536 + (a - 55296 << 10) + (i - 56320), n++)), o += a < 128 ? 1 : a < 2048 ? 2 : a < 65536 ? 3 : 4; + for (e = new Uint8Array(o), s = 0, n = 0; s < o; n++) a = t.charCodeAt(n), 55296 == (64512 & a) && n + 1 < r && (i = t.charCodeAt(n + 1), 56320 == (64512 & i) && (a = 65536 + (a - 55296 << 10) + (i - 56320), n++)), a < 128 ? e[s++] = a : a < 2048 ? (e[s++] = 192 | a >>> 6, e[s++] = 128 | 63 & a) : a < 65536 ? (e[s++] = 224 | a >>> 12, e[s++] = 128 | a >>> 6 & 63, e[s++] = 128 | 63 & a) : (e[s++] = 240 | a >>> 18, e[s++] = 128 | a >>> 12 & 63, e[s++] = 128 | a >>> 6 & 63, e[s++] = 128 | 63 & a); + return e + }, + Xt = (t, e) => { + const a = e || t.length; + if ("function" == typeof TextDecoder && TextDecoder.prototype.decode) return (new TextDecoder).decode(t.subarray(0, e)); + let i, n; + const s = new Array(2 * a); + for (n = 0, i = 0; i < a;) { + let e = t[i++]; + if (e < 128) { + s[n++] = e; + continue + } + let r = Yt[e]; + if (r > 4) s[n++] = 65533, i += r - 1; + else { + for (e &= 2 === r ? 31 : 3 === r ? 15 : 7; r > 1 && i < a;) e = e << 6 | 63 & t[i++], r--; + r > 1 ? s[n++] = 65533 : e < 65536 ? s[n++] = e : (e -= 65536, s[n++] = 55296 | e >> 10 & 1023, s[n++] = 56320 | 1023 & e) + } } - let r = Yt[e]; - if (r > 4) s[n++] = 65533, i += r - 1; - else { - for (e &= 2 === r ? 31 : 3 === r ? 15 : 7; r > 1 && i < a;) e = e << 6 | 63 & t[i++], r--; - r > 1 ? s[n++] = 65533 : e < 65536 ? s[n++] = e : (e -= 65536, s[n++] = 55296 | e >> 10 & 1023, s[n++] = 56320 | 1023 & e) - } - } - return ((t, e) => { - if (e < 65534 && t.subarray && Pt) return String.fromCharCode.apply(null, t.length === e ? t : t.subarray(0, e)); - let a = ""; - for (let i = 0; i < e; i++) a += String.fromCharCode(t[i]); - return a - })(s, n) - }, Wt = (t, e) => { - (e = e || t.length) > t.length && (e = t.length); - let a = e - 1; - for (; a >= 0 && 128 == (192 & t[a]);) a--; - return a < 0 || 0 === a ? e : a + Yt[t[a]] > e ? a : e - }; + return ((t, e) => { + if (e < 65534 && t.subarray && Pt) return String.fromCharCode.apply(null, t.length === e ? t : t.subarray(0, e)); + let a = ""; + for (let i = 0; i < e; i++) a += String.fromCharCode(t[i]); + return a + })(s, n) + }, + Wt = (t, e) => { + (e = e || t.length) > t.length && (e = t.length); + let a = e - 1; + for (; a >= 0 && 128 == (192 & t[a]);) a--; + return a < 0 || 0 === a ? e : a + Yt[t[a]] > e ? a : e + }; var qt = function() { this.input = null, this.next_in = 0, this.avail_in = 0, this.total_in = 0, this.output = null, this.next_out = 0, this.avail_out = 0, this.total_out = 0, this.msg = "", this.state = null, this.data_type = 2, this.adler = 0 }; - const Jt = Object.prototype.toString, { - Z_NO_FLUSH: Qt, - Z_SYNC_FLUSH: Vt, - Z_FULL_FLUSH: $t, - Z_FINISH: te, - Z_OK: ee, - Z_STREAM_END: ae, - Z_DEFAULT_COMPRESSION: ie, - Z_DEFAULT_STRATEGY: ne, - Z_DEFLATED: se - } = K; + const Jt = Object.prototype.toString, + { + Z_NO_FLUSH: Qt, + Z_SYNC_FLUSH: Vt, + Z_FULL_FLUSH: $t, + Z_FINISH: te, + Z_OK: ee, + Z_STREAM_END: ae, + Z_DEFAULT_COMPRESSION: ie, + Z_DEFAULT_STRATEGY: ne, + Z_DEFLATED: se + } = K; function re(t) { this.options = jt({ @@ -597,24 +688,26 @@ this._dict_set = !0 } } + function oe(t, e) { const a = new re(e); if (a.push(t, !0), a.err) throw a.msg || j[a.err]; return a.result } re.prototype.push = function(t, e) { - const a = this.strm, i = this.options.chunkSize; + const a = this.strm, + i = this.options.chunkSize; let n, s; if (this.ended) return !1; - for (s = e === ~~e ? e : !0 === e ? te : Qt, "string" == typeof t ? a.input = Gt(t) : "[object ArrayBuffer]" === Jt.call(t) ? a.input = new Uint8Array(t) : a.input = t, a.next_in = 0, a.avail_in = a.input.length;;) if (0 === a.avail_out && (a.output = new Uint8Array(i), a.next_out = 0, a.avail_out = i), (s === Vt || s === $t) && a.avail_out <= 6) this.onData(a.output.subarray(0, a.next_out)), a.avail_out = 0; - else { - if (n = Mt.deflate(a, s), n === ae) return a.next_out > 0 && this.onData(a.output.subarray(0, a.next_out)), n = Mt.deflateEnd(this.strm), this.onEnd(n), this.ended = !0, n === ee; - if (0 !== a.avail_out) { - if (s > 0 && a.next_out > 0) this.onData(a.output.subarray(0, a.next_out)), a.avail_out = 0; - else if (0 === a.avail_in) break - } else this.onData(a.output) - } - return !0 + for (s = e === ~~e ? e : !0 === e ? te : Qt, "string" == typeof t ? a.input = Gt(t) : "[object ArrayBuffer]" === Jt.call(t) ? a.input = new Uint8Array(t) : a.input = t, a.next_in = 0, a.avail_in = a.input.length;;) + if (0 === a.avail_out && (a.output = new Uint8Array(i), a.next_out = 0, a.avail_out = i), (s === Vt || s === $t) && a.avail_out <= 6) this.onData(a.output.subarray(0, a.next_out)), a.avail_out = 0; + else { + if (n = Mt.deflate(a, s), n === ae) return a.next_out > 0 && this.onData(a.output.subarray(0, a.next_out)), n = Mt.deflateEnd(this.strm), this.onEnd(n), this.ended = !0, n === ee; + if (0 !== a.avail_out) { + if (s > 0 && a.next_out > 0) this.onData(a.output.subarray(0, a.next_out)), a.avail_out = 0; + else if (0 === a.avail_in) break + } else this.onData(a.output) + } return !0 }, re.prototype.onData = function(t) { this.chunks.push(t) }, re.prototype.onEnd = function(t) { @@ -718,18 +811,34 @@ } while (a < i && n < r); k = c >> 3, a -= k, c -= k << 3, f &= (1 << c) - 1, t.next_in = a, t.next_out = n, t.avail_in = a < i ? i - a + 5 : 5 - (a - i), t.avail_out = n < r ? r - n + 257 : 257 - (n - r), E.hold = f, E.bits = c }; - const _e = 15, fe = new Uint16Array([3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0]), ce = new Uint8Array([16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78]), ue = new Uint16Array([1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0]), we = new Uint8Array([16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64]); + const _e = 15, + fe = new Uint16Array([3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0]), + ce = new Uint8Array([16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78]), + ue = new Uint16Array([1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0]), + we = new Uint8Array([16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64]); var me = (t, e, a, i, n, s, r, o) => { const l = o.bits; - let h, d, _, f, c, u, w = 0, m = 0, b = 0, g = 0, p = 0, k = 0, v = 0, y = 0, x = 0, z = 0, A = null; - const E = new Uint16Array(16), R = new Uint16Array(16); + let h, d, _, f, c, u, w = 0, + m = 0, + b = 0, + g = 0, + p = 0, + k = 0, + v = 0, + y = 0, + x = 0, + z = 0, + A = null; + const E = new Uint16Array(16), + R = new Uint16Array(16); let Z, U, S, D = null; for (w = 0; w <= _e; w++) E[w] = 0; for (m = 0; m < i; m++) E[e[a + m]]++; for (p = l, g = _e; g >= 1 && 0 === E[g]; g--); if (p > g && (p = g), 0 === g) return n[s++] = 20971520, n[s++] = 20971520, o.bits = 1, 0; for (b = 1; b < g && 0 === E[b]; b++); - for (p < b && (p = b), y = 1, w = 1; w <= _e; w++) if (y <<= 1, y -= E[w], y < 0) return -1; + for (p < b && (p = b), y = 1, w = 1; w <= _e; w++) + if (y <<= 1, y -= E[w], y < 0) return -1; if (y > 0 && (0 === t || 1 !== g)) return -1; for (R[1] = 0, w = 1; w < _e; w++) R[w + 1] = R[w] + E[w]; for (m = 0; m < i; m++) 0 !== e[a + m] && (r[R[e[a + m]]++] = m); @@ -770,51 +879,56 @@ this.strm = null, this.mode = 0, this.last = !1, this.wrap = 0, this.havedict = !1, this.flags = 0, this.dmax = 0, this.check = 0, this.total = 0, this.head = null, this.wbits = 0, this.wsize = 0, this.whave = 0, this.wnext = 0, this.window = null, this.hold = 0, this.bits = 0, this.length = 0, this.offset = 0, this.extra = 0, this.lencode = null, this.distcode = null, this.lenbits = 0, this.distbits = 0, this.ncode = 0, this.nlen = 0, this.ndist = 0, this.have = 0, this.next = null, this.lens = new Uint16Array(320), this.work = new Uint16Array(288), this.lendyn = null, this.distdyn = null, this.sane = 0, this.back = 0, this.was = 0 } const Ce = t => { - if (!t) return 1; - const e = t.state; - return !e || e.strm !== t || e.mode < Ze || e.mode > 16211 ? 1 : 0 - }, Me = t => { - if (Ce(t)) return xe; - const e = t.state; - return t.total_in = t.total_out = e.total = 0, t.msg = "", e.wrap && (t.adler = 1 & e.wrap), e.mode = Ze, e.last = 0, e.havedict = 0, e.flags = -1, e.dmax = 32768, e.head = null, e.hold = 0, e.bits = 0, e.lencode = e.lendyn = new Int32Array(852), e.distcode = e.distdyn = new Int32Array(592), e.sane = 1, e.back = -1, ke - }, He = t => { - if (Ce(t)) return xe; - const e = t.state; - return e.wsize = 0, e.whave = 0, e.wnext = 0, Me(t) - }, je = (t, e) => { - let a; - if (Ce(t)) return xe; - const i = t.state; - return e < 0 ? (a = 0, e = -e) : (a = 5 + (e >> 4), e < 48 && (e &= 15)), e && (e < 8 || e > 15) ? xe : (null !== i.window && i.wbits !== e && (i.window = null), i.wrap = a, i.wbits = e, He(t)) - }, Ke = (t, e) => { - if (!t) return xe; - const a = new Be; - t.state = a, a.strm = t, a.window = null, a.mode = Ze; - const i = je(t, e); - return i !== ke && (t.state = null), i - }; + if (!t) return 1; + const e = t.state; + return !e || e.strm !== t || e.mode < Ze || e.mode > 16211 ? 1 : 0 + }, + Me = t => { + if (Ce(t)) return xe; + const e = t.state; + return t.total_in = t.total_out = e.total = 0, t.msg = "", e.wrap && (t.adler = 1 & e.wrap), e.mode = Ze, e.last = 0, e.havedict = 0, e.flags = -1, e.dmax = 32768, e.head = null, e.hold = 0, e.bits = 0, e.lencode = e.lendyn = new Int32Array(852), e.distcode = e.distdyn = new Int32Array(592), e.sane = 1, e.back = -1, ke + }, + He = t => { + if (Ce(t)) return xe; + const e = t.state; + return e.wsize = 0, e.whave = 0, e.wnext = 0, Me(t) + }, + je = (t, e) => { + let a; + if (Ce(t)) return xe; + const i = t.state; + return e < 0 ? (a = 0, e = -e) : (a = 5 + (e >> 4), e < 48 && (e &= 15)), e && (e < 8 || e > 15) ? xe : (null !== i.window && i.wbits !== e && (i.window = null), i.wrap = a, i.wbits = e, He(t)) + }, + Ke = (t, e) => { + if (!t) return xe; + const a = new Be; + t.state = a, a.strm = t, a.window = null, a.mode = Ze; + const i = je(t, e); + return i !== ke && (t.state = null), i + }; let Pe, Ye, Ge = !0; const Xe = t => { - if (Ge) { - Pe = new Int32Array(512), Ye = new Int32Array(32); - let e = 0; - for (; e < 144;) t.lens[e++] = 8; - for (; e < 256;) t.lens[e++] = 9; - for (; e < 280;) t.lens[e++] = 7; - for (; e < 288;) t.lens[e++] = 8; - for (me(1, t.lens, 0, 288, Pe, 0, t.work, { - bits: 9 - }), e = 0; e < 32;) t.lens[e++] = 5; - me(2, t.lens, 0, 32, Ye, 0, t.work, { - bits: 5 - }), Ge = !1 - } - t.lencode = Pe, t.lenbits = 9, t.distcode = Ye, t.distbits = 5 - }, We = (t, e, a, i) => { - let n; - const s = t.state; - return null === s.window && (s.wsize = 1 << s.wbits, s.wnext = 0, s.whave = 0, s.window = new Uint8Array(s.wsize)), i >= s.wsize ? (s.window.set(e.subarray(a - s.wsize, a), 0), s.wnext = 0, s.whave = s.wsize) : (n = s.wsize - s.wnext, n > i && (n = i), s.window.set(e.subarray(a - i, a - i + n), s.wnext), (i -= n) ? (s.window.set(e.subarray(a - i, a), 0), s.wnext = i, s.whave = s.wsize) : (s.wnext += n, s.wnext === s.wsize && (s.wnext = 0), s.whave < s.wsize && (s.whave += n))), 0 - }; + if (Ge) { + Pe = new Int32Array(512), Ye = new Int32Array(32); + let e = 0; + for (; e < 144;) t.lens[e++] = 8; + for (; e < 256;) t.lens[e++] = 9; + for (; e < 280;) t.lens[e++] = 7; + for (; e < 288;) t.lens[e++] = 8; + for (me(1, t.lens, 0, 288, Pe, 0, t.work, { + bits: 9 + }), e = 0; e < 32;) t.lens[e++] = 5; + me(2, t.lens, 0, 32, Ye, 0, t.work, { + bits: 5 + }), Ge = !1 + } + t.lencode = Pe, t.lenbits = 9, t.distcode = Ye, t.distbits = 5 + }, + We = (t, e, a, i) => { + let n; + const s = t.state; + return null === s.window && (s.wsize = 1 << s.wbits, s.wnext = 0, s.whave = 0, s.window = new Uint8Array(s.wsize)), i >= s.wsize ? (s.window.set(e.subarray(a - s.wsize, a), 0), s.wnext = 0, s.whave = s.wsize) : (n = s.wsize - s.wnext, n > i && (n = i), s.window.set(e.subarray(a - i, a - i + n), s.wnext), (i -= n) ? (s.window.set(e.subarray(a - i, a), 0), s.wnext = i, s.whave = s.wsize) : (s.wnext += n, s.wnext === s.wsize && (s.wnext = 0), s.whave < s.wsize && (s.whave += n))), 0 + }; var qe = { inflateReset: He, inflateReset2: je, @@ -1006,8 +1120,8 @@ } for (; a.have < 19;) a.lens[Z[a.have++]] = 0; if (a.lencode = a.lendyn, a.lenbits = 7, E = { - bits: a.lenbits - }, x = me(0, a.lens, 0, 19, a.lencode, 0, a.work, E), a.lenbits = E.bits, x) { + bits: a.lenbits + }, x = me(0, a.lens, 0, 19, a.lencode, 0, a.work, E), a.lenbits = E.bits, x) { t.msg = "invalid code lengths set", a.mode = Le; break } @@ -1056,14 +1170,14 @@ break } if (a.lenbits = 9, E = { - bits: a.lenbits - }, x = me(1, a.lens, 0, a.nlen, a.lencode, 0, a.work, E), a.lenbits = E.bits, x) { + bits: a.lenbits + }, x = me(1, a.lens, 0, a.nlen, a.lencode, 0, a.work, E), a.lenbits = E.bits, x) { t.msg = "invalid literal/lengths set", a.mode = Le; break } if (a.distbits = 6, a.distcode = a.distdyn, E = { - bits: a.distbits - }, x = me(2, a.lens, a.nlen, a.ndist, a.distcode, 0, a.work, E), a.distbits = E.bits, x) { + bits: a.distbits + }, x = me(2, a.lens, a.nlen, a.ndist, a.distcode, 0, a.work, E), a.distbits = E.bits, x) { t.msg = "invalid distances set", a.mode = Le; break } @@ -1194,22 +1308,7 @@ default: return xe } - return t.next_out = r, - t.avail_out = l, - t.next_in = s, - t.avail_in = o, - a.hold = h, - a.bits = d, - (a.wsize || f !== t.avail_out && a.mode < Le && (a.mode < Fe || e !== be)) && We(t, t.output, t.next_out, f - t.avail_out), - _ -= t.avail_in, - f -= t.avail_out, - t.total_in += _, - t.total_out += f, - a.total += f, - 4 & a.wrap && f && (t.adler = a.check = a.flags ? H(a.check, n, f, t.next_out - f) : C(a.check, n, f, t.next_out - f)), - t.data_type = a.bits + (a.last ? 64 : 0) + (a.mode === Se ? 128 : 0) + (a.mode === Oe || a.mode === Te ? 256 : 0), - (0 === _ && 0 === f || e === be) && x === ke && (x = Ee), - x + return t.next_out = r, t.avail_out = l, t.next_in = s, t.avail_in = o, a.hold = h, a.bits = d, (a.wsize || f !== t.avail_out && a.mode < Le && (a.mode < Fe || e !== be)) && We(t, t.output, t.next_out, f - t.avail_out), _ -= t.avail_in, f -= t.avail_out, t.total_in += _, t.total_out += f, a.total += f, 4 & a.wrap && f && (t.adler = a.check = a.flags ? H(a.check, n, f, t.next_out - f) : C(a.check, n, f, t.next_out - f)), t.data_type = a.bits + (a.last ? 64 : 0) + (a.mode === Se ? 128 : 0) + (a.mode === Oe || a.mode === Te ? 256 : 0), (0 === _ && 0 === f || e === be) && x === ke && (x = Ee), x }, inflateEnd: t => { if (Ce(t)) return xe; @@ -1231,16 +1330,17 @@ var Je = function() { this.text = 0, this.time = 0, this.xflags = 0, this.os = 0, this.extra = null, this.extra_len = 0, this.name = "", this.comment = "", this.hcrc = 0, this.done = !1 }; - const Qe = Object.prototype.toString, { - Z_NO_FLUSH: Ve, - Z_FINISH: $e, - Z_OK: ta, - Z_STREAM_END: ea, - Z_NEED_DICT: aa, - Z_STREAM_ERROR: ia, - Z_DATA_ERROR: na, - Z_MEM_ERROR: sa - } = K; + const Qe = Object.prototype.toString, + { + Z_NO_FLUSH: Ve, + Z_FINISH: $e, + Z_OK: ta, + Z_STREAM_END: ea, + Z_NEED_DICT: aa, + Z_STREAM_ERROR: ia, + Z_DATA_ERROR: na, + Z_MEM_ERROR: sa + } = K; function ra(t) { this.options = jt({ @@ -1254,13 +1354,16 @@ if (a !== ta) throw new Error(j[a]); if (this.header = new Je, qe.inflateGetHeader(this.strm, this.header), e.dictionary && ("string" == typeof e.dictionary ? e.dictionary = Gt(e.dictionary) : "[object ArrayBuffer]" === Qe.call(e.dictionary) && (e.dictionary = new Uint8Array(e.dictionary)), e.raw && (a = qe.inflateSetDictionary(this.strm, e.dictionary), a !== ta))) throw new Error(j[a]) } + function oa(t, e) { const a = new ra(e); if (a.push(t), a.err) throw a.msg || j[a.err]; return a.result } ra.prototype.push = function(t, e) { - const a = this.strm, i = this.options.chunkSize, n = this.options.dictionary; + const a = this.strm, + i = this.options.chunkSize, + n = this.options.dictionary; let s, r, o; if (this.ended) return !1; for (r = e === ~~e ? e : !0 === e ? $e : Ve, "[object ArrayBuffer]" === Qe.call(t) ? a.input = new Uint8Array(t) : a.input = t, a.next_in = 0, a.avail_in = a.input.length;;) { @@ -1272,10 +1375,13 @@ case sa: return this.onEnd(s), this.ended = !0, !1 } - if (o = a.avail_out, a.next_out && (0 === a.avail_out || s === ea)) if ("string" === this.options.to) { - let t = Wt(a.output, a.next_out), e = a.next_out - t, n = Xt(a.output, t); - a.next_out = e, a.avail_out = i - e, e && a.output.set(a.output.subarray(t, t + e), 0), this.onData(n) - } else this.onData(a.output.length === a.next_out ? a.output : a.output.subarray(0, a.next_out)); + if (o = a.avail_out, a.next_out && (0 === a.avail_out || s === ea)) + if ("string" === this.options.to) { + let t = Wt(a.output, a.next_out), + e = a.next_out - t, + n = Xt(a.output, t); + a.next_out = e, a.avail_out = i - e, e && a.output.set(a.output.subarray(t, t + e), 0), this.onData(n) + } else this.onData(a.output.length === a.next_out ? a.output : a.output.subarray(0, a.next_out)); if (s !== ta || 0 !== o) { if (s === ea) return s = qe.inflateEnd(this.strm), this.onEnd(s), this.ended = !0, !0; if (0 === a.avail_in) break @@ -1327,8 +1433,7 @@ ungzip: za, constants: Aa }; - t.Deflate = ba, t.Inflate = va, t.constants = Aa, t. - default = Ea, t.deflate = ga, t.deflateRaw = pa, t.gzip = ka, t.inflate = ya, t.inflateRaw = xa, t.ungzip = za, Object.defineProperty(t, "__esModule", { + t.Deflate = ba, t.Inflate = va, t.constants = Aa, t.default = Ea, t.deflate = ga, t.deflateRaw = pa, t.gzip = ka, t.inflate = ya, t.inflateRaw = xa, t.ungzip = za, Object.defineProperty(t, "__esModule", { value: !0 }) })); \ No newline at end of file diff --git a/JS/模板.js b/JS/模板.js index aaf60b1..5adf2c6 100644 --- a/JS/模板.js +++ b/JS/模板.js @@ -424,5 +424,6 @@ function getMubans() { var mubanDict = getMubans(); var muban = getMubans(); export default { - muban, getMubans + muban, + getMubans }; \ No newline at end of file