UNPKG

lakutata

Version:

An IoC-based universal application framework.

1,509 lines (1,356 loc) 1.67 MB
"use strict"; const tslib_es6 = require("./Package.1.cjs"); const Provider = require("../src/lib/core/Provider.cjs"); const Configurable = require("../src/decorators/di/Configurable.cjs"); const ObjectSchemaValidation = require("./Package.2.cjs"); const _commonjsHelpers = require("./Package.5.cjs"); require("./Package.8.cjs"); const require$$0$9 = require("querystring"); const require$$0 = require("https"); const require$$1$1 = require("http"); require("./Package.11.cjs"); const require$$4$1 = require("url"); const require$$0$6 = require("net"); const require$$4$2 = require("child_process"); require("./Package.15.cjs"); require("./Package.18.cjs"); require("./Package.14.cjs"); const require$$0$1 = require("buffer"); const require$$0$2 = require("assert"); const _commonjsDynamicModules = require("./Package.7.cjs"); const require$$0$3 = require("crypto"); const require$$0$4 = require("path"); const require$$0$5 = require("fs"); const require$$0$7 = require("stream"); const require$$2$1 = require("tls"); const require$$2 = require("dns"); require("./Package.10.cjs"); const require$$4$3 = require("zlib"); const require$$1$2 = require("util"); const require$$0$8 = require("events"); const index$l = require("./Package.62.cjs"); const Logger = require("./Package.17.cjs"); const require$$1$3 = require("os"); require("./Package.20.cjs"); const require$$1$4 = require("constants"); const require$$1$5 = require("string_decoder"); const require$$1$6 = require("process"); const require$$0$a = require("http2"); const Lifetime = require("../src/decorators/di/Lifetime.cjs"); const ContainerTTYConsoleSizeOptions = require("../src/components/docker/options/container/ContainerTTYConsoleSizeOptions.cjs"); const Accept = require("../src/decorators/dto/Accept.cjs"); const As = require("../src/lib/helpers/As.cjs"); const Inject = require("../src/decorators/di/Inject.cjs"); const _interopDefault = e => e && e.__esModule ? e : { default: e }; const require$$0__default$9 = _interopDefault(require$$0$9); const require$$0__default = _interopDefault(require$$0); const require$$1__default = _interopDefault(require$$1$1); const require$$4__default = _interopDefault(require$$4$1); const require$$0__default$6 = _interopDefault(require$$0$6); const require$$4__default$1 = _interopDefault(require$$4$2); const require$$0__default$1 = _interopDefault(require$$0$1); const require$$0__default$2 = _interopDefault(require$$0$2); const require$$0__default$3 = _interopDefault(require$$0$3); const require$$0__default$4 = _interopDefault(require$$0$4); const require$$0__default$5 = _interopDefault(require$$0$5); const require$$0__default$7 = _interopDefault(require$$0$7); const require$$2__default$1 = _interopDefault(require$$2$1); const require$$2__default = _interopDefault(require$$2); const require$$4__default$2 = _interopDefault(require$$4$3); const require$$1__default$1 = _interopDefault(require$$1$2); const require$$0__default$8 = _interopDefault(require$$0$8); const require$$1__default$2 = _interopDefault(require$$1$3); const require$$1__default$3 = _interopDefault(require$$1$4); const require$$1__default$4 = _interopDefault(require$$1$5); const require$$1__default$5 = _interopDefault(require$$1$6); const require$$0__default$a = _interopDefault(require$$0$a); var http$5 = { exports: {} }; var utils$4 = {}; var arr = []; var each = arr.forEach; var slice = arr.slice; var extend$2 = utils$4.extend = function(e) { each.call(slice.call(arguments, 1), (function(t) { if (t) { for (var r in t) { e[r] = t[r]; } } })); return e; }; var parseJSON = utils$4.parseJSON = function(e) { try { return JSON.parse(e); } catch (e) { return null; } }; var http$3 = http$5.exports; (function(e, t) { var r = require$$0__default.default, n = require$$1__default.default, s = require$$4__default.default, o = utils$4; var a = e.exports.maxRedirects = 5; var l = { https: r, http: n }; for (var c in l) { var u = function() {}; u.prototype = l[c]; u = new u; u.request = function(r) { return function(n, a, l) { l = l || {}; var u = typeof n === "object" && "maxRedirects" in n ? n.maxRedirects : t.maxRedirects; var d = o.extend({ count: 0, max: u, clientRequest: null, userCallback: a }, l); if (d.count > d.max) { var h = new Error("Max redirects exceeded. To allow more redirects, pass options.maxRedirects property."); d.clientRequest.emit("error", h); return d.clientRequest; } d.count++; var p; if (typeof n === "string") { p = n; } else { p = s.format(o.extend({ protocol: c }, n)); } var g = Object.getPrototypeOf(r).request(n, m(p, d)); if (!d.clientRequest) d.clientRequest = g; function m(t, r) { return function(n) { if (n.statusCode < 300 || n.statusCode > 399) { return r.userCallback(n); } if (!("location" in n.headers)) { return r.userCallback(n); } var o = s.resolve(t, n.headers.location); var a = s.parse(o).protocol; a = a.substr(0, a.length - 1); return e.exports[a].get(o, m(t, r), r); }; } return g; }; }(u); u.get = function(e) { return function(t, r, n) { var s = e.request(t, r, n); s.end(); return s; }; }(u); e.exports[c] = u; } })(http$5, http$5.exports); var httpExports = http$5.exports; const http$4 = _commonjsHelpers.getDefaultExportFromCjs(httpExports); var ber$1 = { exports: {} }; var errors$3 = { newInvalidAsn1Error: function(e) { var t = new Error; t.name = "InvalidAsn1Error"; t.message = e || ""; return t; } }; const errors$4 = _commonjsHelpers.getDefaultExportFromCjs(errors$3); var types$3 = { 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 }; const types$4 = _commonjsHelpers.getDefaultExportFromCjs(types$3); "use strict"; var buffer = require$$0__default$1.default; var Buffer$4 = buffer.Buffer; var safer = {}; var key; for (key in buffer) { if (!buffer.hasOwnProperty(key)) continue; if (key === "SlowBuffer" || key === "Buffer") continue; safer[key] = buffer[key]; } var Safer = safer.Buffer = {}; for (key in Buffer$4) { if (!Buffer$4.hasOwnProperty(key)) continue; if (key === "allocUnsafe" || key === "allocUnsafeSlow") continue; Safer[key] = Buffer$4[key]; } safer.Buffer.prototype = Buffer$4.prototype; if (!Safer.from || Safer.from === Uint8Array.from) { Safer.from = function(e, t, r) { if (typeof e === "number") { throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof e); } if (e && typeof e.length === "undefined") { throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof e); } return Buffer$4(e, t, r); }; } if (!Safer.alloc) { Safer.alloc = function(e, t, r) { if (typeof e !== "number") { throw new TypeError('The "size" argument must be of type number. Received type ' + typeof e); } if (e < 0 || e >= 2 * (1 << 30)) { throw new RangeError('The value "' + e + '" is invalid for option "size"'); } var n = Buffer$4(e); if (!t || t.length === 0) { n.fill(0); } else if (typeof r === "string") { n.fill(t, r); } else { n.fill(t); } return n; }; } if (!safer.kStringMaxLength) { try { safer.kStringMaxLength = process.binding("buffer").kStringMaxLength; } catch (e) {} } if (!safer.constants) { safer.constants = { MAX_LENGTH: safer.kMaxLength }; if (safer.kStringMaxLength) { safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength; } } var safer_1 = safer; const safer$1 = _commonjsHelpers.getDefaultExportFromCjs(safer_1); var assert$2 = require$$0__default$2.default; var Buffer$3 = safer_1.Buffer; var ASN1$1 = types$3; var errors$2 = errors$3; var newInvalidAsn1Error$1 = errors$2.newInvalidAsn1Error; function Reader$2(e) { if (!e || !Buffer$3.isBuffer(e)) throw new TypeError("data must be a node Buffer"); this._buf = e; this._size = e.length; this._len = 0; this._offset = 0; } Object.defineProperty(Reader$2.prototype, "length", { enumerable: true, get: function() { return this._len; } }); Object.defineProperty(Reader$2.prototype, "offset", { enumerable: true, get: function() { return this._offset; } }); Object.defineProperty(Reader$2.prototype, "remain", { get: function() { return this._size - this._offset; } }); Object.defineProperty(Reader$2.prototype, "buffer", { get: function() { return this._buf.slice(this._offset); } }); Reader$2.prototype.readByte = function(e) { if (this._size - this._offset < 1) return null; var t = this._buf[this._offset] & 255; if (!e) this._offset += 1; return t; }; Reader$2.prototype.peek = function() { return this.readByte(true); }; Reader$2.prototype.readLength = function(e) { if (e === undefined) e = this._offset; if (e >= this._size) return null; var t = this._buf[e++] & 255; if (t === null) return null; if ((t & 128) === 128) { t &= 127; if (t === 0) throw newInvalidAsn1Error$1("Indefinite length not supported"); if (t > 4) throw newInvalidAsn1Error$1("encoding too long"); if (this._size - e < t) return null; this._len = 0; for (var r = 0; r < t; r++) this._len = (this._len << 8) + (this._buf[e++] & 255); } else { this._len = t; } return e; }; Reader$2.prototype.readSequence = function(e) { var t = this.peek(); if (t === null) return null; if (e !== undefined && e !== t) throw newInvalidAsn1Error$1("Expected 0x" + e.toString(16) + ": got 0x" + t.toString(16)); var r = this.readLength(this._offset + 1); if (r === null) return null; this._offset = r; return t; }; Reader$2.prototype.readInt = function() { return this._readTag(ASN1$1.Integer); }; Reader$2.prototype.readBoolean = function() { return this._readTag(ASN1$1.Boolean) === 0 ? false : true; }; Reader$2.prototype.readEnumeration = function() { return this._readTag(ASN1$1.Enumeration); }; Reader$2.prototype.readString = function(e, t) { if (!e) e = ASN1$1.OctetString; var r = this.peek(); if (r === null) return null; if (r !== e) throw newInvalidAsn1Error$1("Expected 0x" + e.toString(16) + ": got 0x" + r.toString(16)); var n = this.readLength(this._offset + 1); if (n === null) return null; if (this.length > this._size - n) return null; this._offset = n; if (this.length === 0) return t ? Buffer$3.alloc(0) : ""; var s = this._buf.slice(this._offset, this._offset + this.length); this._offset += this.length; return t ? s : s.toString("utf8"); }; Reader$2.prototype.readOID = function(e) { if (!e) e = ASN1$1.OID; var t = this.readString(e, true); if (t === null) return null; var r = []; var n = 0; for (var s = 0; s < t.length; s++) { var o = t[s] & 255; n <<= 7; n += o & 127; if ((o & 128) === 0) { r.push(n); n = 0; } } n = r.shift(); r.unshift(n % 40); r.unshift(n / 40 >> 0); return r.join("."); }; Reader$2.prototype._readTag = function(e) { assert$2.ok(e !== undefined); var t = this.peek(); if (t === null) return null; if (t !== e) throw newInvalidAsn1Error$1("Expected 0x" + e.toString(16) + ": got 0x" + t.toString(16)); var r = this.readLength(this._offset + 1); if (r === null) return null; if (this.length > 4) throw newInvalidAsn1Error$1("Integer too long: " + this.length); if (this.length > this._size - r) return null; this._offset = r; var n = this._buf[this._offset]; var s = 0; for (var o = 0; o < this.length; o++) { s <<= 8; s |= this._buf[this._offset++] & 255; } if ((n & 128) === 128 && o !== 4) s -= 1 << o * 8; return s >> 0; }; var reader$2 = Reader$2; const reader$3 = _commonjsHelpers.getDefaultExportFromCjs(reader$2); var assert$1 = require$$0__default$2.default; var Buffer$2 = safer_1.Buffer; var ASN1 = types$3; var errors$1 = errors$3; var newInvalidAsn1Error = errors$1.newInvalidAsn1Error; var DEFAULT_OPTS = { size: 1024, growthFactor: 8 }; function merge(e, t) { assert$1.ok(e); assert$1.equal(typeof e, "object"); assert$1.ok(t); assert$1.equal(typeof t, "object"); var r = Object.getOwnPropertyNames(e); r.forEach((function(r) { if (t[r]) return; var n = Object.getOwnPropertyDescriptor(e, r); Object.defineProperty(t, r, n); })); return t; } function Writer$2(e) { e = merge(DEFAULT_OPTS, e || {}); this._buf = Buffer$2.alloc(e.size || 1024); this._size = this._buf.length; this._offset = 0; this._options = e; this._seq = []; } Object.defineProperty(Writer$2.prototype, "buffer", { get: function() { if (this._seq.length) throw newInvalidAsn1Error(this._seq.length + " unended sequence(s)"); return this._buf.slice(0, this._offset); } }); Writer$2.prototype.writeByte = function(e) { if (typeof e !== "number") throw new TypeError("argument must be a Number"); this._ensure(1); this._buf[this._offset++] = e; }; Writer$2.prototype.writeInt = function(e, t) { if (typeof e !== "number") throw new TypeError("argument must be a Number"); if (typeof t !== "number") t = ASN1.Integer; var r = 4; while (((e & 4286578688) === 0 || (e & 4286578688) === 4286578688 >> 0) && r > 1) { r--; e <<= 8; } if (r > 4) throw newInvalidAsn1Error("BER ints cannot be > 0xffffffff"); this._ensure(2 + r); this._buf[this._offset++] = t; this._buf[this._offset++] = r; while (r-- > 0) { this._buf[this._offset++] = (e & 4278190080) >>> 24; e <<= 8; } }; Writer$2.prototype.writeNull = function() { this.writeByte(ASN1.Null); this.writeByte(0); }; Writer$2.prototype.writeEnumeration = function(e, t) { if (typeof e !== "number") throw new TypeError("argument must be a Number"); if (typeof t !== "number") t = ASN1.Enumeration; return this.writeInt(e, t); }; Writer$2.prototype.writeBoolean = function(e, t) { if (typeof e !== "boolean") throw new TypeError("argument must be a Boolean"); if (typeof t !== "number") t = ASN1.Boolean; this._ensure(3); this._buf[this._offset++] = t; this._buf[this._offset++] = 1; this._buf[this._offset++] = e ? 255 : 0; }; Writer$2.prototype.writeString = function(e, t) { if (typeof e !== "string") throw new TypeError("argument must be a string (was: " + typeof e + ")"); if (typeof t !== "number") t = ASN1.OctetString; var r = Buffer$2.byteLength(e); this.writeByte(t); this.writeLength(r); if (r) { this._ensure(r); this._buf.write(e, this._offset); this._offset += r; } }; Writer$2.prototype.writeBuffer = function(e, t) { if (typeof t !== "number") throw new TypeError("tag must be a number"); if (!Buffer$2.isBuffer(e)) throw new TypeError("argument must be a buffer"); this.writeByte(t); this.writeLength(e.length); this._ensure(e.length); e.copy(this._buf, this._offset, 0, e.length); this._offset += e.length; }; Writer$2.prototype.writeStringArray = function(e) { if (!e instanceof Array) throw new TypeError("argument must be an Array[String]"); var t = this; e.forEach((function(e) { t.writeString(e); })); }; Writer$2.prototype.writeOID = function(e, t) { if (typeof e !== "string") throw new TypeError("argument must be a string"); if (typeof t !== "number") t = ASN1.OID; if (!/^([0-9]+\.){3,}[0-9]+$/.test(e)) throw new Error("argument is not a valid OID string"); function r(e, t) { if (t < 128) { e.push(t); } else if (t < 16384) { e.push(t >>> 7 | 128); e.push(t & 127); } else if (t < 2097152) { e.push(t >>> 14 | 128); e.push((t >>> 7 | 128) & 255); e.push(t & 127); } else if (t < 268435456) { e.push(t >>> 21 | 128); e.push((t >>> 14 | 128) & 255); e.push((t >>> 7 | 128) & 255); e.push(t & 127); } else { e.push((t >>> 28 | 128) & 255); e.push((t >>> 21 | 128) & 255); e.push((t >>> 14 | 128) & 255); e.push((t >>> 7 | 128) & 255); e.push(t & 127); } } var n = e.split("."); var s = []; s.push(parseInt(n[0], 10) * 40 + parseInt(n[1], 10)); n.slice(2).forEach((function(e) { r(s, parseInt(e, 10)); })); var o = this; this._ensure(2 + s.length); this.writeByte(t); this.writeLength(s.length); s.forEach((function(e) { o.writeByte(e); })); }; Writer$2.prototype.writeLength = function(e) { if (typeof e !== "number") throw new TypeError("argument must be a Number"); this._ensure(4); if (e <= 127) { this._buf[this._offset++] = e; } else if (e <= 255) { this._buf[this._offset++] = 129; this._buf[this._offset++] = e; } else if (e <= 65535) { this._buf[this._offset++] = 130; this._buf[this._offset++] = e >> 8; this._buf[this._offset++] = e; } else if (e <= 16777215) { this._buf[this._offset++] = 131; this._buf[this._offset++] = e >> 16; this._buf[this._offset++] = e >> 8; this._buf[this._offset++] = e; } else { throw newInvalidAsn1Error("Length too long (> 4 bytes)"); } }; Writer$2.prototype.startSequence = function(e) { if (typeof e !== "number") e = ASN1.Sequence | ASN1.Constructor; this.writeByte(e); this._seq.push(this._offset); this._ensure(3); this._offset += 3; }; Writer$2.prototype.endSequence = function() { var e = this._seq.pop(); var t = e + 3; var r = this._offset - t; if (r <= 127) { this._shift(t, r, -2); this._buf[e] = r; } else if (r <= 255) { this._shift(t, r, -1); this._buf[e] = 129; this._buf[e + 1] = r; } else if (r <= 65535) { this._buf[e] = 130; this._buf[e + 1] = r >> 8; this._buf[e + 2] = r; } else if (r <= 16777215) { this._shift(t, r, 1); this._buf[e] = 131; this._buf[e + 1] = r >> 16; this._buf[e + 2] = r >> 8; this._buf[e + 3] = r; } else { throw newInvalidAsn1Error("Sequence too long"); } }; Writer$2.prototype._shift = function(e, t, r) { assert$1.ok(e !== undefined); assert$1.ok(t !== undefined); assert$1.ok(r); this._buf.copy(this._buf, e + r, e, e + t); this._offset += r; }; Writer$2.prototype._ensure = function(e) { assert$1.ok(e); if (this._size - this._offset < e) { var t = this._size * this._options.growthFactor; if (t - this._offset < e) t += e; var r = Buffer$2.alloc(t); this._buf.copy(r, 0, 0, this._offset); this._buf = r; this._size = t; } }; var writer$2 = Writer$2; const writer$3 = _commonjsHelpers.getDefaultExportFromCjs(writer$2); var ber = ber$1.exports; (function(e) { var t = errors$3; var r = types$3; var n = reader$2; var s = writer$2; e.exports = { Reader: n, Writer: s }; for (var o in r) { if (r.hasOwnProperty(o)) e.exports[o] = r[o]; } for (var a in t) { if (t.hasOwnProperty(a)) e.exports[a] = t[a]; } })(ber$1); var berExports = ber$1.exports; const index$k = _commonjsHelpers.getDefaultExportFromCjs(berExports); var Ber$2 = berExports; var lib$2 = { Ber: Ber$2, BerReader: Ber$2.Reader, BerWriter: Ber$2.Writer }; const index$j = _commonjsHelpers.getDefaultExportFromCjs(lib$2); var naclFast$2 = { exports: {} }; var naclFast = naclFast$2.exports; (function(e) { (function(e) { "use strict"; var t = function(e) { var t, r = new Float64Array(16); if (e) for (t = 0; t < e.length; t++) r[t] = e[t]; return r; }; var r = function() { throw new Error("no PRNG"); }; var n = new Uint8Array(16); var s = new Uint8Array(32); s[0] = 9; var o = t(), a = t([ 1 ]), l = t([ 56129, 1 ]), c = t([ 30883, 4953, 19914, 30187, 55467, 16705, 2637, 112, 59544, 30585, 16505, 36039, 65139, 11119, 27886, 20995 ]), u = t([ 61785, 9906, 39828, 60374, 45398, 33411, 5274, 224, 53552, 61171, 33010, 6542, 64743, 22239, 55772, 9222 ]), d = t([ 54554, 36645, 11616, 51542, 42930, 38181, 51040, 26924, 56412, 64982, 57905, 49316, 21502, 52590, 14035, 8553 ]), h = t([ 26200, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214 ]), p = t([ 41136, 18958, 6951, 50414, 58488, 44335, 6150, 12099, 55207, 15867, 153, 11085, 57099, 20417, 9344, 11139 ]); function g(e, t, r, n) { e[t] = r >> 24 & 255; e[t + 1] = r >> 16 & 255; e[t + 2] = r >> 8 & 255; e[t + 3] = r & 255; e[t + 4] = n >> 24 & 255; e[t + 5] = n >> 16 & 255; e[t + 6] = n >> 8 & 255; e[t + 7] = n & 255; } function m(e, t, r, n, s) { var o, a = 0; for (o = 0; o < s; o++) a |= e[t + o] ^ r[n + o]; return (1 & a - 1 >>> 8) - 1; } function _(e, t, r, n) { return m(e, t, r, n, 16); } function E(e, t, r, n) { return m(e, t, r, n, 32); } function v(e, t, r, n) { var s = n[0] & 255 | (n[1] & 255) << 8 | (n[2] & 255) << 16 | (n[3] & 255) << 24, o = r[0] & 255 | (r[1] & 255) << 8 | (r[2] & 255) << 16 | (r[3] & 255) << 24, a = r[4] & 255 | (r[5] & 255) << 8 | (r[6] & 255) << 16 | (r[7] & 255) << 24, l = r[8] & 255 | (r[9] & 255) << 8 | (r[10] & 255) << 16 | (r[11] & 255) << 24, c = r[12] & 255 | (r[13] & 255) << 8 | (r[14] & 255) << 16 | (r[15] & 255) << 24, u = n[4] & 255 | (n[5] & 255) << 8 | (n[6] & 255) << 16 | (n[7] & 255) << 24, d = t[0] & 255 | (t[1] & 255) << 8 | (t[2] & 255) << 16 | (t[3] & 255) << 24, h = t[4] & 255 | (t[5] & 255) << 8 | (t[6] & 255) << 16 | (t[7] & 255) << 24, p = t[8] & 255 | (t[9] & 255) << 8 | (t[10] & 255) << 16 | (t[11] & 255) << 24, g = t[12] & 255 | (t[13] & 255) << 8 | (t[14] & 255) << 16 | (t[15] & 255) << 24, m = n[8] & 255 | (n[9] & 255) << 8 | (n[10] & 255) << 16 | (n[11] & 255) << 24, _ = r[16] & 255 | (r[17] & 255) << 8 | (r[18] & 255) << 16 | (r[19] & 255) << 24, E = r[20] & 255 | (r[21] & 255) << 8 | (r[22] & 255) << 16 | (r[23] & 255) << 24, v = r[24] & 255 | (r[25] & 255) << 8 | (r[26] & 255) << 16 | (r[27] & 255) << 24, y = r[28] & 255 | (r[29] & 255) << 8 | (r[30] & 255) << 16 | (r[31] & 255) << 24, S = n[12] & 255 | (n[13] & 255) << 8 | (n[14] & 255) << 16 | (n[15] & 255) << 24; var A = s, b = o, C = a, w = l, I = c, T = u, R = d, k = h, $ = p, P = g, B = m, O = _, N = E, D = v, L = y, U = S, M; for (var x = 0; x < 20; x += 2) { M = A + N | 0; I ^= M << 7 | M >>> 32 - 7; M = I + A | 0; $ ^= M << 9 | M >>> 32 - 9; M = $ + I | 0; N ^= M << 13 | M >>> 32 - 13; M = N + $ | 0; A ^= M << 18 | M >>> 32 - 18; M = T + b | 0; P ^= M << 7 | M >>> 32 - 7; M = P + T | 0; D ^= M << 9 | M >>> 32 - 9; M = D + P | 0; b ^= M << 13 | M >>> 32 - 13; M = b + D | 0; T ^= M << 18 | M >>> 32 - 18; M = B + R | 0; L ^= M << 7 | M >>> 32 - 7; M = L + B | 0; C ^= M << 9 | M >>> 32 - 9; M = C + L | 0; R ^= M << 13 | M >>> 32 - 13; M = R + C | 0; B ^= M << 18 | M >>> 32 - 18; M = U + O | 0; w ^= M << 7 | M >>> 32 - 7; M = w + U | 0; k ^= M << 9 | M >>> 32 - 9; M = k + w | 0; O ^= M << 13 | M >>> 32 - 13; M = O + k | 0; U ^= M << 18 | M >>> 32 - 18; M = A + w | 0; b ^= M << 7 | M >>> 32 - 7; M = b + A | 0; C ^= M << 9 | M >>> 32 - 9; M = C + b | 0; w ^= M << 13 | M >>> 32 - 13; M = w + C | 0; A ^= M << 18 | M >>> 32 - 18; M = T + I | 0; R ^= M << 7 | M >>> 32 - 7; M = R + T | 0; k ^= M << 9 | M >>> 32 - 9; M = k + R | 0; I ^= M << 13 | M >>> 32 - 13; M = I + k | 0; T ^= M << 18 | M >>> 32 - 18; M = B + P | 0; O ^= M << 7 | M >>> 32 - 7; M = O + B | 0; $ ^= M << 9 | M >>> 32 - 9; M = $ + O | 0; P ^= M << 13 | M >>> 32 - 13; M = P + $ | 0; B ^= M << 18 | M >>> 32 - 18; M = U + L | 0; N ^= M << 7 | M >>> 32 - 7; M = N + U | 0; D ^= M << 9 | M >>> 32 - 9; M = D + N | 0; L ^= M << 13 | M >>> 32 - 13; M = L + D | 0; U ^= M << 18 | M >>> 32 - 18; } A = A + s | 0; b = b + o | 0; C = C + a | 0; w = w + l | 0; I = I + c | 0; T = T + u | 0; R = R + d | 0; k = k + h | 0; $ = $ + p | 0; P = P + g | 0; B = B + m | 0; O = O + _ | 0; N = N + E | 0; D = D + v | 0; L = L + y | 0; U = U + S | 0; e[0] = A >>> 0 & 255; e[1] = A >>> 8 & 255; e[2] = A >>> 16 & 255; e[3] = A >>> 24 & 255; e[4] = b >>> 0 & 255; e[5] = b >>> 8 & 255; e[6] = b >>> 16 & 255; e[7] = b >>> 24 & 255; e[8] = C >>> 0 & 255; e[9] = C >>> 8 & 255; e[10] = C >>> 16 & 255; e[11] = C >>> 24 & 255; e[12] = w >>> 0 & 255; e[13] = w >>> 8 & 255; e[14] = w >>> 16 & 255; e[15] = w >>> 24 & 255; e[16] = I >>> 0 & 255; e[17] = I >>> 8 & 255; e[18] = I >>> 16 & 255; e[19] = I >>> 24 & 255; e[20] = T >>> 0 & 255; e[21] = T >>> 8 & 255; e[22] = T >>> 16 & 255; e[23] = T >>> 24 & 255; e[24] = R >>> 0 & 255; e[25] = R >>> 8 & 255; e[26] = R >>> 16 & 255; e[27] = R >>> 24 & 255; e[28] = k >>> 0 & 255; e[29] = k >>> 8 & 255; e[30] = k >>> 16 & 255; e[31] = k >>> 24 & 255; e[32] = $ >>> 0 & 255; e[33] = $ >>> 8 & 255; e[34] = $ >>> 16 & 255; e[35] = $ >>> 24 & 255; e[36] = P >>> 0 & 255; e[37] = P >>> 8 & 255; e[38] = P >>> 16 & 255; e[39] = P >>> 24 & 255; e[40] = B >>> 0 & 255; e[41] = B >>> 8 & 255; e[42] = B >>> 16 & 255; e[43] = B >>> 24 & 255; e[44] = O >>> 0 & 255; e[45] = O >>> 8 & 255; e[46] = O >>> 16 & 255; e[47] = O >>> 24 & 255; e[48] = N >>> 0 & 255; e[49] = N >>> 8 & 255; e[50] = N >>> 16 & 255; e[51] = N >>> 24 & 255; e[52] = D >>> 0 & 255; e[53] = D >>> 8 & 255; e[54] = D >>> 16 & 255; e[55] = D >>> 24 & 255; e[56] = L >>> 0 & 255; e[57] = L >>> 8 & 255; e[58] = L >>> 16 & 255; e[59] = L >>> 24 & 255; e[60] = U >>> 0 & 255; e[61] = U >>> 8 & 255; e[62] = U >>> 16 & 255; e[63] = U >>> 24 & 255; } function y(e, t, r, n) { var s = n[0] & 255 | (n[1] & 255) << 8 | (n[2] & 255) << 16 | (n[3] & 255) << 24, o = r[0] & 255 | (r[1] & 255) << 8 | (r[2] & 255) << 16 | (r[3] & 255) << 24, a = r[4] & 255 | (r[5] & 255) << 8 | (r[6] & 255) << 16 | (r[7] & 255) << 24, l = r[8] & 255 | (r[9] & 255) << 8 | (r[10] & 255) << 16 | (r[11] & 255) << 24, c = r[12] & 255 | (r[13] & 255) << 8 | (r[14] & 255) << 16 | (r[15] & 255) << 24, u = n[4] & 255 | (n[5] & 255) << 8 | (n[6] & 255) << 16 | (n[7] & 255) << 24, d = t[0] & 255 | (t[1] & 255) << 8 | (t[2] & 255) << 16 | (t[3] & 255) << 24, h = t[4] & 255 | (t[5] & 255) << 8 | (t[6] & 255) << 16 | (t[7] & 255) << 24, p = t[8] & 255 | (t[9] & 255) << 8 | (t[10] & 255) << 16 | (t[11] & 255) << 24, g = t[12] & 255 | (t[13] & 255) << 8 | (t[14] & 255) << 16 | (t[15] & 255) << 24, m = n[8] & 255 | (n[9] & 255) << 8 | (n[10] & 255) << 16 | (n[11] & 255) << 24, _ = r[16] & 255 | (r[17] & 255) << 8 | (r[18] & 255) << 16 | (r[19] & 255) << 24, E = r[20] & 255 | (r[21] & 255) << 8 | (r[22] & 255) << 16 | (r[23] & 255) << 24, v = r[24] & 255 | (r[25] & 255) << 8 | (r[26] & 255) << 16 | (r[27] & 255) << 24, y = r[28] & 255 | (r[29] & 255) << 8 | (r[30] & 255) << 16 | (r[31] & 255) << 24, S = n[12] & 255 | (n[13] & 255) << 8 | (n[14] & 255) << 16 | (n[15] & 255) << 24; var A = s, b = o, C = a, w = l, I = c, T = u, R = d, k = h, $ = p, P = g, B = m, O = _, N = E, D = v, L = y, U = S, M; for (var x = 0; x < 20; x += 2) { M = A + N | 0; I ^= M << 7 | M >>> 32 - 7; M = I + A | 0; $ ^= M << 9 | M >>> 32 - 9; M = $ + I | 0; N ^= M << 13 | M >>> 32 - 13; M = N + $ | 0; A ^= M << 18 | M >>> 32 - 18; M = T + b | 0; P ^= M << 7 | M >>> 32 - 7; M = P + T | 0; D ^= M << 9 | M >>> 32 - 9; M = D + P | 0; b ^= M << 13 | M >>> 32 - 13; M = b + D | 0; T ^= M << 18 | M >>> 32 - 18; M = B + R | 0; L ^= M << 7 | M >>> 32 - 7; M = L + B | 0; C ^= M << 9 | M >>> 32 - 9; M = C + L | 0; R ^= M << 13 | M >>> 32 - 13; M = R + C | 0; B ^= M << 18 | M >>> 32 - 18; M = U + O | 0; w ^= M << 7 | M >>> 32 - 7; M = w + U | 0; k ^= M << 9 | M >>> 32 - 9; M = k + w | 0; O ^= M << 13 | M >>> 32 - 13; M = O + k | 0; U ^= M << 18 | M >>> 32 - 18; M = A + w | 0; b ^= M << 7 | M >>> 32 - 7; M = b + A | 0; C ^= M << 9 | M >>> 32 - 9; M = C + b | 0; w ^= M << 13 | M >>> 32 - 13; M = w + C | 0; A ^= M << 18 | M >>> 32 - 18; M = T + I | 0; R ^= M << 7 | M >>> 32 - 7; M = R + T | 0; k ^= M << 9 | M >>> 32 - 9; M = k + R | 0; I ^= M << 13 | M >>> 32 - 13; M = I + k | 0; T ^= M << 18 | M >>> 32 - 18; M = B + P | 0; O ^= M << 7 | M >>> 32 - 7; M = O + B | 0; $ ^= M << 9 | M >>> 32 - 9; M = $ + O | 0; P ^= M << 13 | M >>> 32 - 13; M = P + $ | 0; B ^= M << 18 | M >>> 32 - 18; M = U + L | 0; N ^= M << 7 | M >>> 32 - 7; M = N + U | 0; D ^= M << 9 | M >>> 32 - 9; M = D + N | 0; L ^= M << 13 | M >>> 32 - 13; M = L + D | 0; U ^= M << 18 | M >>> 32 - 18; } e[0] = A >>> 0 & 255; e[1] = A >>> 8 & 255; e[2] = A >>> 16 & 255; e[3] = A >>> 24 & 255; e[4] = T >>> 0 & 255; e[5] = T >>> 8 & 255; e[6] = T >>> 16 & 255; e[7] = T >>> 24 & 255; e[8] = B >>> 0 & 255; e[9] = B >>> 8 & 255; e[10] = B >>> 16 & 255; e[11] = B >>> 24 & 255; e[12] = U >>> 0 & 255; e[13] = U >>> 8 & 255; e[14] = U >>> 16 & 255; e[15] = U >>> 24 & 255; e[16] = R >>> 0 & 255; e[17] = R >>> 8 & 255; e[18] = R >>> 16 & 255; e[19] = R >>> 24 & 255; e[20] = k >>> 0 & 255; e[21] = k >>> 8 & 255; e[22] = k >>> 16 & 255; e[23] = k >>> 24 & 255; e[24] = $ >>> 0 & 255; e[25] = $ >>> 8 & 255; e[26] = $ >>> 16 & 255; e[27] = $ >>> 24 & 255; e[28] = P >>> 0 & 255; e[29] = P >>> 8 & 255; e[30] = P >>> 16 & 255; e[31] = P >>> 24 & 255; } function S(e, t, r, n) { v(e, t, r, n); } function A(e, t, r, n) { y(e, t, r, n); } var b = new Uint8Array([ 101, 120, 112, 97, 110, 100, 32, 51, 50, 45, 98, 121, 116, 101, 32, 107 ]); function C(e, t, r, n, s, o, a) { var l = new Uint8Array(16), c = new Uint8Array(64); var u, d; for (d = 0; d < 16; d++) l[d] = 0; for (d = 0; d < 8; d++) l[d] = o[d]; while (s >= 64) { S(c, l, a, b); for (d = 0; d < 64; d++) e[t + d] = r[n + d] ^ c[d]; u = 1; for (d = 8; d < 16; d++) { u = u + (l[d] & 255) | 0; l[d] = u & 255; u >>>= 8; } s -= 64; t += 64; n += 64; } if (s > 0) { S(c, l, a, b); for (d = 0; d < s; d++) e[t + d] = r[n + d] ^ c[d]; } return 0; } function w(e, t, r, n, s) { var o = new Uint8Array(16), a = new Uint8Array(64); var l, c; for (c = 0; c < 16; c++) o[c] = 0; for (c = 0; c < 8; c++) o[c] = n[c]; while (r >= 64) { S(a, o, s, b); for (c = 0; c < 64; c++) e[t + c] = a[c]; l = 1; for (c = 8; c < 16; c++) { l = l + (o[c] & 255) | 0; o[c] = l & 255; l >>>= 8; } r -= 64; t += 64; } if (r > 0) { S(a, o, s, b); for (c = 0; c < r; c++) e[t + c] = a[c]; } return 0; } function I(e, t, r, n, s) { var o = new Uint8Array(32); A(o, n, s, b); var a = new Uint8Array(8); for (var l = 0; l < 8; l++) a[l] = n[l + 16]; return w(e, t, r, a, o); } function T(e, t, r, n, s, o, a) { var l = new Uint8Array(32); A(l, o, a, b); var c = new Uint8Array(8); for (var u = 0; u < 8; u++) c[u] = o[u + 16]; return C(e, t, r, n, s, c, l); } var R = function(e) { this.buffer = new Uint8Array(16); this.r = new Uint16Array(10); this.h = new Uint16Array(10); this.pad = new Uint16Array(8); this.leftover = 0; this.fin = 0; var t, r, n, s, o, a, l, c; t = e[0] & 255 | (e[1] & 255) << 8; this.r[0] = t & 8191; r = e[2] & 255 | (e[3] & 255) << 8; this.r[1] = (t >>> 13 | r << 3) & 8191; n = e[4] & 255 | (e[5] & 255) << 8; this.r[2] = (r >>> 10 | n << 6) & 7939; s = e[6] & 255 | (e[7] & 255) << 8; this.r[3] = (n >>> 7 | s << 9) & 8191; o = e[8] & 255 | (e[9] & 255) << 8; this.r[4] = (s >>> 4 | o << 12) & 255; this.r[5] = o >>> 1 & 8190; a = e[10] & 255 | (e[11] & 255) << 8; this.r[6] = (o >>> 14 | a << 2) & 8191; l = e[12] & 255 | (e[13] & 255) << 8; this.r[7] = (a >>> 11 | l << 5) & 8065; c = e[14] & 255 | (e[15] & 255) << 8; this.r[8] = (l >>> 8 | c << 8) & 8191; this.r[9] = c >>> 5 & 127; this.pad[0] = e[16] & 255 | (e[17] & 255) << 8; this.pad[1] = e[18] & 255 | (e[19] & 255) << 8; this.pad[2] = e[20] & 255 | (e[21] & 255) << 8; this.pad[3] = e[22] & 255 | (e[23] & 255) << 8; this.pad[4] = e[24] & 255 | (e[25] & 255) << 8; this.pad[5] = e[26] & 255 | (e[27] & 255) << 8; this.pad[6] = e[28] & 255 | (e[29] & 255) << 8; this.pad[7] = e[30] & 255 | (e[31] & 255) << 8; }; R.prototype.blocks = function(e, t, r) { var n = this.fin ? 0 : 1 << 11; var s, o, a, l, c, u, d, h, p; var g, m, _, E, v, y, S, A, b, C; var w = this.h[0], I = this.h[1], T = this.h[2], R = this.h[3], k = this.h[4], $ = this.h[5], P = this.h[6], B = this.h[7], O = this.h[8], N = this.h[9]; var D = this.r[0], L = this.r[1], U = this.r[2], M = this.r[3], x = this.r[4], H = this.r[5], q = this.r[6], j = this.r[7], W = this.r[8], Q = this.r[9]; while (r >= 16) { s = e[t + 0] & 255 | (e[t + 1] & 255) << 8; w += s & 8191; o = e[t + 2] & 255 | (e[t + 3] & 255) << 8; I += (s >>> 13 | o << 3) & 8191; a = e[t + 4] & 255 | (e[t + 5] & 255) << 8; T += (o >>> 10 | a << 6) & 8191; l = e[t + 6] & 255 | (e[t + 7] & 255) << 8; R += (a >>> 7 | l << 9) & 8191; c = e[t + 8] & 255 | (e[t + 9] & 255) << 8; k += (l >>> 4 | c << 12) & 8191; $ += c >>> 1 & 8191; u = e[t + 10] & 255 | (e[t + 11] & 255) << 8; P += (c >>> 14 | u << 2) & 8191; d = e[t + 12] & 255 | (e[t + 13] & 255) << 8; B += (u >>> 11 | d << 5) & 8191; h = e[t + 14] & 255 | (e[t + 15] & 255) << 8; O += (d >>> 8 | h << 8) & 8191; N += h >>> 5 | n; p = 0; g = p; g += w * D; g += I * (5 * Q); g += T * (5 * W); g += R * (5 * j); g += k * (5 * q); p = g >>> 13; g &= 8191; g += $ * (5 * H); g += P * (5 * x); g += B * (5 * M); g += O * (5 * U); g += N * (5 * L); p += g >>> 13; g &= 8191; m = p; m += w * L; m += I * D; m += T * (5 * Q); m += R * (5 * W); m += k * (5 * j); p = m >>> 13; m &= 8191; m += $ * (5 * q); m += P * (5 * H); m += B * (5 * x); m += O * (5 * M); m += N * (5 * U); p += m >>> 13; m &= 8191; _ = p; _ += w * U; _ += I * L; _ += T * D; _ += R * (5 * Q); _ += k * (5 * W); p = _ >>> 13; _ &= 8191; _ += $ * (5 * j); _ += P * (5 * q); _ += B * (5 * H); _ += O * (5 * x); _ += N * (5 * M); p += _ >>> 13; _ &= 8191; E = p; E += w * M; E += I * U; E += T * L; E += R * D; E += k * (5 * Q); p = E >>> 13; E &= 8191; E += $ * (5 * W); E += P * (5 * j); E += B * (5 * q); E += O * (5 * H); E += N * (5 * x); p += E >>> 13; E &= 8191; v = p; v += w * x; v += I * M; v += T * U; v += R * L; v += k * D; p = v >>> 13; v &= 8191; v += $ * (5 * Q); v += P * (5 * W); v += B * (5 * j); v += O * (5 * q); v += N * (5 * H); p += v >>> 13; v &= 8191; y = p; y += w * H; y += I * x; y += T * M; y += R * U; y += k * L; p = y >>> 13; y &= 8191; y += $ * D; y += P * (5 * Q); y += B * (5 * W); y += O * (5 * j); y += N * (5 * q); p += y >>> 13; y &= 8191; S = p; S += w * q; S += I * H; S += T * x; S += R * M; S += k * U; p = S >>> 13; S &= 8191; S += $ * L; S += P * D; S += B * (5 * Q); S += O * (5 * W); S += N * (5 * j); p += S >>> 13; S &= 8191; A = p; A += w * j; A += I * q; A += T * H; A += R * x; A += k * M; p = A >>> 13; A &= 8191; A += $ * U; A += P * L; A += B * D; A += O * (5 * Q); A += N * (5 * W); p += A >>> 13; A &= 8191; b = p; b += w * W; b += I * j; b += T * q; b += R * H; b += k * x; p = b >>> 13; b &= 8191; b += $ * M; b += P * U; b += B * L; b += O * D; b += N * (5 * Q); p += b >>> 13; b &= 8191; C = p; C += w * Q; C += I * W; C += T * j; C += R * q; C += k * H; p = C >>> 13; C &= 8191; C += $ * x; C += P * M; C += B * U; C += O * L; C += N * D; p += C >>> 13; C &= 8191; p = (p << 2) + p | 0; p = p + g | 0; g = p & 8191; p = p >>> 13; m += p; w = g; I = m; T = _; R = E; k = v; $ = y; P = S; B = A; O = b; N = C; t += 16; r -= 16; } this.h[0] = w; this.h[1] = I; this.h[2] = T; this.h[3] = R; this.h[4] = k; this.h[5] = $; this.h[6] = P; this.h[7] = B; this.h[8] = O; this.h[9] = N; }; R.prototype.finish = function(e, t) { var r = new Uint16Array(10); var n, s, o, a; if (this.leftover) { a = this.leftover; this.buffer[a++] = 1; for (;a < 16; a++) this.buffer[a] = 0; this.fin = 1; this.blocks(this.buffer, 0, 16); } n = this.h[1] >>> 13; this.h[1] &= 8191; for (a = 2; a < 10; a++) { this.h[a] += n; n = this.h[a] >>> 13; this.h[a] &= 8191; } this.h[0] += n * 5; n = this.h[0] >>> 13; this.h[0] &= 8191; this.h[1] += n; n = this.h[1] >>> 13; this.h[1] &= 8191; this.h[2] += n; r[0] = this.h[0] + 5; n = r[0] >>> 13; r[0] &= 8191; for (a = 1; a < 10; a++) { r[a] = this.h[a] + n; n = r[a] >>> 13; r[a] &= 8191; } r[9] -= 1 << 13; s = (n ^ 1) - 1; for (a = 0; a < 10; a++) r[a] &= s; s = ~s; for (a = 0; a < 10; a++) this.h[a] = this.h[a] & s | r[a]; this.h[0] = (this.h[0] | this.h[1] << 13) & 65535; this.h[1] = (this.h[1] >>> 3 | this.h[2] << 10) & 65535; this.h[2] = (this.h[2] >>> 6 | this.h[3] << 7) & 65535; this.h[3] = (this.h[3] >>> 9 | this.h[4] << 4) & 65535; this.h[4] = (this.h[4] >>> 12 | this.h[5] << 1 | this.h[6] << 14) & 65535; this.h[5] = (this.h[6] >>> 2 | this.h[7] << 11) & 65535; this.h[6] = (this.h[7] >>> 5 | this.h[8] << 8) & 65535; this.h[7] = (this.h[8] >>> 8 | this.h[9] << 5) & 65535; o = this.h[0] + this.pad[0]; this.h[0] = o & 65535; for (a = 1; a < 8; a++) { o = (this.h[a] + this.pad[a] | 0) + (o >>> 16) | 0; this.h[a] = o & 65535; } e[t + 0] = this.h[0] >>> 0 & 255; e[t + 1] = this.h[0] >>> 8 & 255; e[t + 2] = this.h[1] >>> 0 & 255; e[t + 3] = this.h[1] >>> 8 & 255; e[t + 4] = this.h[2] >>> 0 & 255; e[t + 5] = this.h[2] >>> 8 & 255; e[t + 6] = this.h[3] >>> 0 & 255; e[t + 7] = this.h[3] >>> 8 & 255; e[t + 8] = this.h[4] >>> 0 & 255; e[t + 9] = this.h[4] >>> 8 & 255; e[t + 10] = this.h[5] >>> 0 & 255; e[t + 11] = this.h[5] >>> 8 & 255; e[t + 12] = this.h[6] >>> 0 & 255; e[t + 13] = this.h[6] >>> 8 & 255; e[t + 14] = this.h[7] >>> 0 & 255; e[t + 15] = this.h[7] >>> 8 & 255; }; R.prototype.update = function(e, t, r) { var n, s; if (this.leftover) { s = 16 - this.leftover; if (s > r) s = r; for (n = 0; n < s; n++) this.buffer[this.leftover + n] = e[t + n]; r -= s; t += s; this.leftover += s; if (this.leftover < 16) return; this.blocks(this.buffer, 0, 16); this.leftover = 0; } if (r >= 16) { s = r - r % 16; this.blocks(e, t, s); t += s; r -= s; } if (r) { for (n = 0; n < r; n++) this.buffer[this.leftover + n] = e[t + n]; this.leftover += r; } }; function k(e, t, r, n, s, o) { var a = new R(o); a.update(r, n, s); a.finish(e, t); return 0; } function $(e, t, r, n, s, o) { var a = new Uint8Array(16); k(a, 0, r, n, s, o); return _(e, t, a, 0); } function P(e, t, r, n, s) { var o; if (r < 32) return -1; T(e, 0, t, 0, r, n, s); k(e, 16, e, 32, r - 32, e); for (o = 0; o < 16; o++) e[o] = 0; return 0; } function B(e, t, r, n, s) { var o;