UNPKG

@iden3/js-jsonld-merklization

Version:
1 lines 503 kB
import{poseidon as e}from"@iden3/js-crypto";import{InMemoryDB as t,str2Bytes as r,Merkletree as n}from"@iden3/js-merkletree";const i=Object.freeze({ERRORS:{CONTEXT_NOT_DEFINED:new Error("error: context not defined on the object"),PARSED_CONTEXT_IS_NULL:new Error("error: parsed context is null"),TERM_IS_NOT_DEFINED:new Error("error: term is not defined"),NO_ID_ATTR:new Error("error: no @id attribute is defined"),CTX_TYP_IS_EMPTY:new Error("error: ctx type is empty"),FIELD_PATH_IS_EMPTY:new Error("error: filed path is empty"),UNEXPECTED_ARR_ELEMENT:new Error("error: unexpected array elements"),INVALID_REFERENCE_TYPE:new Error("error: invalid reference type"),MULTIPLE_PARENTS_FOUND:new Error("error: multiple parents found"),PARENT_NOT_FOUND:new Error("error: parent not found"),GRAPH_NOT_FOUND:new Error("error: graph not found"),QUAD_NOT_FOUND:new Error("error: quad not found"),MT_VALUE_INCORRECT_TYPE:new Error("error: incorrect type")},DEFAULT_GRAPH_NODE_NAME:"@default",DEFAULT_GRAPH_TERM_TYPE:"DefaultGraph",QUADS_FORMAT:"application/n-quads",DIGITS_ONLY_REGEX:/^\d+$/,Q:BigInt("21888242871839275222246405745257275088548364400416034343698204186575808495617")});class o{constructor(t=e){this._hasher=t}async hash(e){return this._hasher.hash(e)}async hashBytes(e){return this._hasher.hashBytes(e)}prime(){return i.Q}}const a=new o;var s="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function l(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function u(e){if(e.__esModule)return e;var t=e.default;if("function"==typeof t){var r=function e(){return this instanceof e?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};r.prototype=t.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(e).forEach((function(t){var n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,n.get?n:{enumerable:!0,get:function(){return e[t]}})})),r}var c={exports:{}};c.exports=function(){var e=Math.imul,t=Math.clz32;function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){for(var r,n=0;n<t.length;n++)(r=t[n]).enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}function o(e,t,r){return t&&i(e.prototype,t),r&&i(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&l(e,t)}function s(e){return s=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},s(e)}function l(e,t){return l=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},l(e,t)}function u(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function c(){return c=u()?Reflect.construct:function(e,t,r){var n=[null];n.push.apply(n,t);var i=new(Function.bind.apply(e,n));return r&&l(i,r.prototype),i},c.apply(null,arguments)}function d(e){return-1!==Function.toString.call(e).indexOf("[native code]")}function h(e){var t="function"==typeof Map?new Map:void 0;return h=function(e){function r(){return c(e,arguments,s(this).constructor)}if(null===e||!d(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),l(r,e)},h(e)}function f(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function p(e,t){if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return f(e)}function m(e){var t=u();return function(){var r,n=s(e);if(t){var i=s(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return p(this,r)}}function y(e,t){return g(e)||v(e,t)||w(e,t)||_()}function g(e){if(Array.isArray(e))return e}function v(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,i,o=[],a=!0,s=!1;try{for(r=r.call(e);!(a=(n=r.next()).done)&&(o.push(n.value),!t||o.length!==t);a=!0);}catch(e){s=!0,i=e}finally{try{a||null==r.return||r.return()}finally{if(s)throw i}}return o}}function w(e,t){if(e){if("string"==typeof e)return b(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?b(e,t):void 0}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function _(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function E(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=w(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){s=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(s)throw o}}}}var T=function(e){var t=Math.abs,i=Math.max,s=Math.floor;function l(e,t){var r;if(n(this,l),(r=u.call(this,e)).sign=t,Object.setPrototypeOf(f(r),l.prototype),e>l.__kMaxLength)throw new RangeError("Maximum BigInt size exceeded");return r}a(l,e);var u=m(l);return o(l,[{key:"toDebugString",value:function(){var e,t=["BigInt["],r=E(this);try{for(r.s();!(e=r.n()).done;){var n=e.value;t.push((n?(n>>>0).toString(16):n)+", ")}}catch(e){r.e(e)}finally{r.f()}return t.push("]"),t.join("")}},{key:"toString",value:function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:10;if(2>e||36<e)throw new RangeError("toString() radix argument must be between 2 and 36");return 0===this.length?"0":0==(e&e-1)?l.__toStringBasePowerOfTwo(this,e):l.__toStringGeneric(this,e,!1)}},{key:"valueOf",value:function(){throw new Error("Convert JSBI instances to native numbers using `toNumber`.")}},{key:"__copy",value:function(){for(var e=new l(this.length,this.sign),t=0;t<this.length;t++)e[t]=this[t];return e}},{key:"__trim",value:function(){for(var e=this.length,t=this[e-1];0===t;)t=this[--e-1],this.pop();return 0===e&&(this.sign=!1),this}},{key:"__initializeDigits",value:function(){for(var e=0;e<this.length;e++)this[e]=0}},{key:"__clzmsd",value:function(){return l.__clz30(this.__digit(this.length-1))}},{key:"__inplaceMultiplyAdd",value:function(e,t,r){r>this.length&&(r=this.length);for(var n=32767&e,i=e>>>15,o=0,a=t,s=0;s<r;s++){var u=this.__digit(s),c=32767&u,d=u>>>15,h=l.__imul(c,n),f=l.__imul(c,i),p=l.__imul(d,n),m=a+h+o;o=m>>>30,m&=1073741823,o+=(m+=((32767&f)<<15)+((32767&p)<<15))>>>30,a=l.__imul(d,i)+(f>>>15)+(p>>>15),this.__setDigit(s,1073741823&m)}if(0!==o||0!==a)throw new Error("implementation bug")}},{key:"__inplaceAdd",value:function(e,t,r){for(var n,i=0,o=0;o<r;o++)i=(n=this.__halfDigit(t+o)+e.__halfDigit(o)+i)>>>15,this.__setHalfDigit(t+o,32767&n);return i}},{key:"__inplaceSub",value:function(e,t,r){var n=0;if(1&t){t>>=1;for(var i=this.__digit(t),o=32767&i,a=0;a<r-1>>>1;a++){var s=e.__digit(a),l=(i>>>15)-(32767&s)-n;n=1&l>>>15,this.__setDigit(t+a,(32767&l)<<15|32767&o),n=1&(o=(32767&(i=this.__digit(t+a+1)))-(s>>>15)-n)>>>15}var u=e.__digit(a),c=(i>>>15)-(32767&u)-n;if(n=1&c>>>15,this.__setDigit(t+a,(32767&c)<<15|32767&o),t+a+1>=this.length)throw new RangeError("out of bounds");0==(1&r)&&(n=1&(o=(32767&(i=this.__digit(t+a+1)))-(u>>>15)-n)>>>15,this.__setDigit(t+e.length,1073709056&i|32767&o))}else{t>>=1;for(var d=0;d<e.length-1;d++){var h=this.__digit(t+d),f=e.__digit(d),p=(32767&h)-(32767&f)-n,m=(h>>>15)-(f>>>15)-(n=1&p>>>15);n=1&m>>>15,this.__setDigit(t+d,(32767&m)<<15|32767&p)}var y=this.__digit(t+d),g=e.__digit(d),v=(32767&y)-(32767&g)-n;n=1&v>>>15;var w=0;0==(1&r)&&(n=1&(w=(y>>>15)-(g>>>15)-n)>>>15),this.__setDigit(t+d,(32767&w)<<15|32767&v)}return n}},{key:"__inplaceRightShift",value:function(e){if(0!==e){for(var t,r=this.__digit(0)>>>e,n=this.length-1,i=0;i<n;i++)t=this.__digit(i+1),this.__setDigit(i,1073741823&t<<30-e|r),r=t>>>e;this.__setDigit(n,r)}}},{key:"__digit",value:function(e){return this[e]}},{key:"__unsignedDigit",value:function(e){return this[e]>>>0}},{key:"__setDigit",value:function(e,t){this[e]=0|t}},{key:"__setDigitGrow",value:function(e,t){this[e]=0|t}},{key:"__halfDigitLength",value:function(){var e=this.length;return 32767>=this.__unsignedDigit(e-1)?2*e-1:2*e}},{key:"__halfDigit",value:function(e){return 32767&this[e>>>1]>>>15*(1&e)}},{key:"__setHalfDigit",value:function(e,t){var r=e>>>1,n=this.__digit(r),i=1&e?32767&n|t<<15:1073709056&n|32767&t;this.__setDigit(r,i)}}],[{key:"BigInt",value:function(e){var t=Number.isFinite;if("number"==typeof e){if(0===e)return l.__zero();if(l.__isOneDigitInt(e))return 0>e?l.__oneDigit(-e,!0):l.__oneDigit(e,!1);if(!t(e)||s(e)!==e)throw new RangeError("The number "+e+" cannot be converted to BigInt because it is not an integer");return l.__fromDouble(e)}if("string"==typeof e){var n=l.__fromString(e);if(null===n)throw new SyntaxError("Cannot convert "+e+" to a BigInt");return n}if("boolean"==typeof e)return!0===e?l.__oneDigit(1,!1):l.__zero();if("object"===r(e)){if(e.constructor===l)return e;var i=l.__toPrimitive(e);return l.BigInt(i)}throw new TypeError("Cannot convert "+e+" to a BigInt")}},{key:"toNumber",value:function(e){var t=e.length;if(0===t)return 0;if(1===t){var r=e.__unsignedDigit(0);return e.sign?-r:r}var n=e.__digit(t-1),i=l.__clz30(n),o=30*t-i;if(1024<o)return e.sign?-1/0:1/0;var a=o-1,s=n,u=t-1,c=i+3,d=32===c?0:s<<c;d>>>=12;var h=c-12,f=12<=c?0:s<<20+c,p=20+c;for(0<h&&0<u&&(u--,d|=(s=e.__digit(u))>>>30-h,f=s<<h+2,p=h+2);0<p&&0<u;)u--,s=e.__digit(u),f|=30<=p?s<<p-30:s>>>30-p,p-=30;var m=l.__decideRounding(e,p,u,s);if((1===m||0===m&&1==(1&f))&&0==(f=f+1>>>0)&&0!=++d>>>20&&(d=0,1023<++a))return e.sign?-1/0:1/0;var y=e.sign?-2147483648:0;return a=a+1023<<20,l.__kBitConversionInts[1]=y|a|d,l.__kBitConversionInts[0]=f,l.__kBitConversionDouble[0]}},{key:"unaryMinus",value:function(e){if(0===e.length)return e;var t=e.__copy();return t.sign=!e.sign,t}},{key:"bitwiseNot",value:function(e){return e.sign?l.__absoluteSubOne(e).__trim():l.__absoluteAddOne(e,!0)}},{key:"exponentiate",value:function(e,t){if(t.sign)throw new RangeError("Exponent must be positive");if(0===t.length)return l.__oneDigit(1,!1);if(0===e.length)return e;if(1===e.length&&1===e.__digit(0))return e.sign&&0==(1&t.__digit(0))?l.unaryMinus(e):e;if(1<t.length)throw new RangeError("BigInt too big");var r=t.__unsignedDigit(0);if(1===r)return e;if(r>=l.__kMaxLengthBits)throw new RangeError("BigInt too big");if(1===e.length&&2===e.__digit(0)){var n=1+(0|r/30),i=new l(n,e.sign&&0!=(1&r));i.__initializeDigits();var o=1<<r%30;return i.__setDigit(n-1,o),i}var a=null,s=e;for(0!=(1&r)&&(a=e),r>>=1;0!==r;r>>=1)s=l.multiply(s,s),0!=(1&r)&&(a=null===a?s:l.multiply(a,s));return a}},{key:"multiply",value:function(e,t){if(0===e.length)return e;if(0===t.length)return t;var r=e.length+t.length;30<=e.__clzmsd()+t.__clzmsd()&&r--;var n=new l(r,e.sign!==t.sign);n.__initializeDigits();for(var i=0;i<e.length;i++)l.__multiplyAccumulate(t,e.__digit(i),n,i);return n.__trim()}},{key:"divide",value:function(e,t){if(0===t.length)throw new RangeError("Division by zero");if(0>l.__absoluteCompare(e,t))return l.__zero();var r,n=e.sign!==t.sign,i=t.__unsignedDigit(0);if(1===t.length&&32767>=i){if(1===i)return n===e.sign?e:l.unaryMinus(e);r=l.__absoluteDivSmall(e,i,null)}else r=l.__absoluteDivLarge(e,t,!0,!1);return r.sign=n,r.__trim()}},{key:"remainder",value:function(e,t){if(0===t.length)throw new RangeError("Division by zero");if(0>l.__absoluteCompare(e,t))return e;var r=t.__unsignedDigit(0);if(1===t.length&&32767>=r){if(1===r)return l.__zero();var n=l.__absoluteModSmall(e,r);return 0===n?l.__zero():l.__oneDigit(n,e.sign)}var i=l.__absoluteDivLarge(e,t,!1,!0);return i.sign=e.sign,i.__trim()}},{key:"add",value:function(e,t){var r=e.sign;return r===t.sign?l.__absoluteAdd(e,t,r):0<=l.__absoluteCompare(e,t)?l.__absoluteSub(e,t,r):l.__absoluteSub(t,e,!r)}},{key:"subtract",value:function(e,t){var r=e.sign;return r===t.sign?0<=l.__absoluteCompare(e,t)?l.__absoluteSub(e,t,r):l.__absoluteSub(t,e,!r):l.__absoluteAdd(e,t,r)}},{key:"leftShift",value:function(e,t){return 0===t.length||0===e.length?e:t.sign?l.__rightShiftByAbsolute(e,t):l.__leftShiftByAbsolute(e,t)}},{key:"signedRightShift",value:function(e,t){return 0===t.length||0===e.length?e:t.sign?l.__leftShiftByAbsolute(e,t):l.__rightShiftByAbsolute(e,t)}},{key:"unsignedRightShift",value:function(){throw new TypeError("BigInts have no unsigned right shift; use >> instead")}},{key:"lessThan",value:function(e,t){return 0>l.__compareToBigInt(e,t)}},{key:"lessThanOrEqual",value:function(e,t){return 0>=l.__compareToBigInt(e,t)}},{key:"greaterThan",value:function(e,t){return 0<l.__compareToBigInt(e,t)}},{key:"greaterThanOrEqual",value:function(e,t){return 0<=l.__compareToBigInt(e,t)}},{key:"equal",value:function(e,t){if(e.sign!==t.sign)return!1;if(e.length!==t.length)return!1;for(var r=0;r<e.length;r++)if(e.__digit(r)!==t.__digit(r))return!1;return!0}},{key:"notEqual",value:function(e,t){return!l.equal(e,t)}},{key:"bitwiseAnd",value:function(e,t){if(!e.sign&&!t.sign)return l.__absoluteAnd(e,t).__trim();if(e.sign&&t.sign){var r=i(e.length,t.length)+1,n=l.__absoluteSubOne(e,r),o=l.__absoluteSubOne(t);return n=l.__absoluteOr(n,o,n),l.__absoluteAddOne(n,!0,n).__trim()}if(e.sign){var a=[t,e];e=a[0],t=a[1]}return l.__absoluteAndNot(e,l.__absoluteSubOne(t)).__trim()}},{key:"bitwiseXor",value:function(e,t){if(!e.sign&&!t.sign)return l.__absoluteXor(e,t).__trim();if(e.sign&&t.sign){var r=i(e.length,t.length),n=l.__absoluteSubOne(e,r),o=l.__absoluteSubOne(t);return l.__absoluteXor(n,o,n).__trim()}var a=i(e.length,t.length)+1;if(e.sign){var s=[t,e];e=s[0],t=s[1]}var u=l.__absoluteSubOne(t,a);return u=l.__absoluteXor(u,e,u),l.__absoluteAddOne(u,!0,u).__trim()}},{key:"bitwiseOr",value:function(e,t){var r=i(e.length,t.length);if(!e.sign&&!t.sign)return l.__absoluteOr(e,t).__trim();if(e.sign&&t.sign){var n=l.__absoluteSubOne(e,r),o=l.__absoluteSubOne(t);return n=l.__absoluteAnd(n,o,n),l.__absoluteAddOne(n,!0,n).__trim()}if(e.sign){var a=[t,e];e=a[0],t=a[1]}var s=l.__absoluteSubOne(t,r);return s=l.__absoluteAndNot(s,e,s),l.__absoluteAddOne(s,!0,s).__trim()}},{key:"asIntN",value:function(e,t){if(0===t.length)return t;if(0>(e=s(e)))throw new RangeError("Invalid value: not (convertible to) a safe integer");if(0===e)return l.__zero();if(e>=l.__kMaxLengthBits)return t;var r=0|(e+29)/30;if(t.length<r)return t;var n=t.__unsignedDigit(r-1),i=1<<(e-1)%30;if(t.length===r&&n<i)return t;if((n&i)!==i)return l.__truncateToNBits(e,t);if(!t.sign)return l.__truncateAndSubFromPowerOfTwo(e,t,!0);if(0==(n&i-1)){for(var o=r-2;0<=o;o--)if(0!==t.__digit(o))return l.__truncateAndSubFromPowerOfTwo(e,t,!1);return t.length===r&&n===i?t:l.__truncateToNBits(e,t)}return l.__truncateAndSubFromPowerOfTwo(e,t,!1)}},{key:"asUintN",value:function(e,t){if(0===t.length)return t;if(0>(e=s(e)))throw new RangeError("Invalid value: not (convertible to) a safe integer");if(0===e)return l.__zero();if(t.sign){if(e>l.__kMaxLengthBits)throw new RangeError("BigInt too big");return l.__truncateAndSubFromPowerOfTwo(e,t,!1)}if(e>=l.__kMaxLengthBits)return t;var r=0|(e+29)/30;if(t.length<r)return t;var n=e%30;if(t.length==r){if(0===n)return t;if(0==t.__digit(r-1)>>>n)return t}return l.__truncateToNBits(e,t)}},{key:"ADD",value:function(e,t){if(e=l.__toPrimitive(e),t=l.__toPrimitive(t),"string"==typeof e)return"string"!=typeof t&&(t=t.toString()),e+t;if("string"==typeof t)return e.toString()+t;if(e=l.__toNumeric(e),t=l.__toNumeric(t),l.__isBigInt(e)&&l.__isBigInt(t))return l.add(e,t);if("number"==typeof e&&"number"==typeof t)return e+t;throw new TypeError("Cannot mix BigInt and other types, use explicit conversions")}},{key:"LT",value:function(e,t){return l.__compare(e,t,0)}},{key:"LE",value:function(e,t){return l.__compare(e,t,1)}},{key:"GT",value:function(e,t){return l.__compare(e,t,2)}},{key:"GE",value:function(e,t){return l.__compare(e,t,3)}},{key:"EQ",value:function(e,t){for(;;){if(l.__isBigInt(e))return l.__isBigInt(t)?l.equal(e,t):l.EQ(t,e);if("number"==typeof e){if(l.__isBigInt(t))return l.__equalToNumber(t,e);if("object"!==r(t))return e==t;t=l.__toPrimitive(t)}else if("string"==typeof e){if(l.__isBigInt(t))return null!==(e=l.__fromString(e))&&l.equal(e,t);if("object"!==r(t))return e==t;t=l.__toPrimitive(t)}else if("boolean"==typeof e){if(l.__isBigInt(t))return l.__equalToNumber(t,+e);if("object"!==r(t))return e==t;t=l.__toPrimitive(t)}else if("symbol"===r(e)){if(l.__isBigInt(t))return!1;if("object"!==r(t))return e==t;t=l.__toPrimitive(t)}else{if("object"!==r(e))return e==t;if("object"===r(t)&&t.constructor!==l)return e==t;e=l.__toPrimitive(e)}}}},{key:"NE",value:function(e,t){return!l.EQ(e,t)}},{key:"DataViewGetBigInt64",value:function(e,t){var r=!!(2<arguments.length&&void 0!==arguments[2])&&arguments[2];return l.asIntN(64,l.DataViewGetBigUint64(e,t,r))}},{key:"DataViewGetBigUint64",value:function(e,t){var r=!!(2<arguments.length&&void 0!==arguments[2])&&arguments[2],n=y(r?[4,0]:[0,4],2),i=n[0],o=n[1],a=e.getUint32(t+i,r),s=e.getUint32(t+o,r),u=new l(3,!1);return u.__setDigit(0,1073741823&s),u.__setDigit(1,(268435455&a)<<2|s>>>30),u.__setDigit(2,a>>>28),u.__trim()}},{key:"DataViewSetBigInt64",value:function(e,t,r){var n=!!(3<arguments.length&&void 0!==arguments[3])&&arguments[3];l.DataViewSetBigUint64(e,t,r,n)}},{key:"DataViewSetBigUint64",value:function(e,t,r){var n=!!(3<arguments.length&&void 0!==arguments[3])&&arguments[3],i=0,o=0;if(0<(r=l.asUintN(64,r)).length&&(o=r.__digit(0),1<r.length)){var a=r.__digit(1);o|=a<<30,i=a>>>2,2<r.length&&(i|=r.__digit(2)<<28)}var s=y(n?[4,0]:[0,4],2),u=s[0],c=s[1];e.setUint32(t+u,i,n),e.setUint32(t+c,o,n)}},{key:"__zero",value:function(){return new l(0,!1)}},{key:"__oneDigit",value:function(e,t){var r=new l(1,t);return r.__setDigit(0,e),r}},{key:"__decideRounding",value:function(e,t,r,n){if(0<t)return-1;var i;if(0>t)i=-t-1;else{if(0===r)return-1;r--,n=e.__digit(r),i=29}var o=1<<i;if(0==(n&o))return-1;if(0!=(n&(o-=1)))return 1;for(;0<r;)if(r--,0!==e.__digit(r))return 1;return 0}},{key:"__fromDouble",value:function(e){l.__kBitConversionDouble[0]=e;var t,r=(2047&l.__kBitConversionInts[1]>>>20)-1023,n=1+(0|r/30),i=new l(n,0>e),o=1048575&l.__kBitConversionInts[1]|1048576,a=l.__kBitConversionInts[0],s=20,u=r%30,c=0;if(u<s){var d=s-u;c=d+32,t=o>>>d,o=o<<32-d|a>>>d,a<<=32-d}else if(u===s)c=32,t=o,o=a,a=0;else{var h=u-s;c=32-h,t=o<<h|a>>>32-h,o=a<<h,a=0}i.__setDigit(n-1,t);for(var f=n-2;0<=f;f--)0<c?(c-=30,t=o>>>2,o=o<<30|a>>>2,a<<=30):t=0,i.__setDigit(f,t);return i.__trim()}},{key:"__isWhitespace",value:function(e){return!!(13>=e&&9<=e)||(159>=e?32==e:131071>=e?160==e||5760==e:196607>=e?10>=(e&=131071)||40==e||41==e||47==e||95==e||4096==e:65279==e)}},{key:"__fromString",value:function(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:0,r=0,n=e.length,i=0;if(i===n)return l.__zero();for(var o=e.charCodeAt(i);l.__isWhitespace(o);){if(++i===n)return l.__zero();o=e.charCodeAt(i)}if(43===o){if(++i===n)return null;o=e.charCodeAt(i),r=1}else if(45===o){if(++i===n)return null;o=e.charCodeAt(i),r=-1}if(0===t){if(t=10,48===o){if(++i===n)return l.__zero();if(88===(o=e.charCodeAt(i))||120===o){if(t=16,++i===n)return null;o=e.charCodeAt(i)}else if(79===o||111===o){if(t=8,++i===n)return null;o=e.charCodeAt(i)}else if(66===o||98===o){if(t=2,++i===n)return null;o=e.charCodeAt(i)}}}else if(16===t&&48===o){if(++i===n)return l.__zero();if(88===(o=e.charCodeAt(i))||120===o){if(++i===n)return null;o=e.charCodeAt(i)}}if(0!==r&&10!==t)return null;for(;48===o;){if(++i===n)return l.__zero();o=e.charCodeAt(i)}var a=n-i,s=l.__kMaxBitsPerChar[t],u=l.__kBitsPerCharTableMultiplier-1;if(a>1073741824/s)return null;var c=new l(0|(29+(s*a+u>>>l.__kBitsPerCharTableShift))/30,!1),d=10>t?t:10,h=10<t?t-10:0;if(0==(t&t-1)){s>>=l.__kBitsPerCharTableShift;var f=[],p=[],m=!1;do{for(var y,g=0,v=0;;){if(y=void 0,o-48>>>0<d)y=o-48;else{if(!((32|o)-97>>>0<h)){m=!0;break}y=(32|o)-87}if(v+=s,g=g<<s|y,++i===n){m=!0;break}if(o=e.charCodeAt(i),30<v+s)break}f.push(g),p.push(v)}while(!m);l.__fillFromParts(c,f,p)}else{c.__initializeDigits();var w=!1,b=0;do{for(var _,E=0,T=1;;){if(_=void 0,o-48>>>0<d)_=o-48;else{if(!((32|o)-97>>>0<h)){w=!0;break}_=(32|o)-87}var x=T*t;if(1073741823<x)break;if(T=x,E=E*t+_,b++,++i===n){w=!0;break}o=e.charCodeAt(i)}var I=0|(s*b+(u=30*l.__kBitsPerCharTableMultiplier-1)>>>l.__kBitsPerCharTableShift)/30;c.__inplaceMultiplyAdd(T,E,I)}while(!w)}if(i!==n){if(!l.__isWhitespace(o))return null;for(i++;i<n;i++)if(o=e.charCodeAt(i),!l.__isWhitespace(o))return null}return c.sign=-1===r,c.__trim()}},{key:"__fillFromParts",value:function(e,t,r){for(var n=0,i=0,o=0,a=t.length-1;0<=a;a--){var s=t[a],l=r[a];i|=s<<o,30===(o+=l)?(e.__setDigit(n++,i),o=0,i=0):30<o&&(e.__setDigit(n++,1073741823&i),i=s>>>l-(o-=30))}if(0!==i){if(n>=e.length)throw new Error("implementation bug");e.__setDigit(n++,i)}for(;n<e.length;n++)e.__setDigit(n,0)}},{key:"__toStringBasePowerOfTwo",value:function(e,t){var r=e.length,n=t-1,i=n=(15&(n=(51&(n=(85&n>>>1)+(85&n))>>>2)+(51&n))>>>4)+(15&n),o=t-1,a=e.__digit(r-1),s=0|(30*r-l.__clz30(a)+i-1)/i;if(e.sign&&s++,268435456<s)throw new Error("string too long");for(var u=Array(s),c=s-1,d=0,h=0,f=0;f<r-1;f++){var p=e.__digit(f),m=(d|p<<h)&o;u[c--]=l.__kConversionChars[m];var y=i-h;for(d=p>>>y,h=30-y;h>=i;)u[c--]=l.__kConversionChars[d&o],d>>>=i,h-=i}var g=(d|a<<h)&o;for(u[c--]=l.__kConversionChars[g],d=a>>>i-h;0!==d;)u[c--]=l.__kConversionChars[d&o],d>>>=i;if(e.sign&&(u[c--]="-"),-1!==c)throw new Error("implementation bug");return u.join("")}},{key:"__toStringGeneric",value:function(e,t,r){var n=e.length;if(0===n)return"";if(1===n){var i=e.__unsignedDigit(0).toString(t);return!1===r&&e.sign&&(i="-"+i),i}var o,a,s=30*n-l.__clz30(e.__digit(n-1)),u=l.__kMaxBitsPerChar[t]-1,c=s*l.__kBitsPerCharTableMultiplier,d=1+(c=0|(c+=u-1)/u)>>1,h=l.exponentiate(l.__oneDigit(t,!1),l.__oneDigit(d,!1)),f=h.__unsignedDigit(0);if(1===h.length&&32767>=f){(o=new l(e.length,!1)).__initializeDigits();for(var p,m=0,y=2*e.length-1;0<=y;y--)p=m<<15|e.__halfDigit(y),o.__setHalfDigit(y,0|p/f),m=0|p%f;a=m.toString(t)}else{var g=l.__absoluteDivLarge(e,h,!0,!0);o=g.quotient;var v=g.remainder.__trim();a=l.__toStringGeneric(v,t,!0)}o.__trim();for(var w=l.__toStringGeneric(o,t,!0);a.length<d;)a="0"+a;return!1===r&&e.sign&&(w="-"+w),w+a}},{key:"__unequalSign",value:function(e){return e?-1:1}},{key:"__absoluteGreater",value:function(e){return e?-1:1}},{key:"__absoluteLess",value:function(e){return e?1:-1}},{key:"__compareToBigInt",value:function(e,t){var r=e.sign;if(r!==t.sign)return l.__unequalSign(r);var n=l.__absoluteCompare(e,t);return 0<n?l.__absoluteGreater(r):0>n?l.__absoluteLess(r):0}},{key:"__compareToNumber",value:function(e,r){if(l.__isOneDigitInt(r)){var n=e.sign,i=0>r;if(n!==i)return l.__unequalSign(n);if(0===e.length){if(i)throw new Error("implementation bug");return 0===r?0:-1}if(1<e.length)return l.__absoluteGreater(n);var o=t(r),a=e.__unsignedDigit(0);return a>o?l.__absoluteGreater(n):a<o?l.__absoluteLess(n):0}return l.__compareToDouble(e,r)}},{key:"__compareToDouble",value:function(e,t){if(t!=t)return t;if(t===1/0)return-1;if(t===-1/0)return 1;var r=e.sign;if(r!==0>t)return l.__unequalSign(r);if(0===t)throw new Error("implementation bug: should be handled elsewhere");if(0===e.length)return-1;l.__kBitConversionDouble[0]=t;var n=2047&l.__kBitConversionInts[1]>>>20;if(2047==n)throw new Error("implementation bug: handled elsewhere");var i=n-1023;if(0>i)return l.__absoluteGreater(r);var o=e.length,a=e.__digit(o-1),s=l.__clz30(a),u=30*o-s,c=i+1;if(u<c)return l.__absoluteLess(r);if(u>c)return l.__absoluteGreater(r);var d=1048576|1048575&l.__kBitConversionInts[1],h=l.__kBitConversionInts[0],f=20,p=29-s;if(p!==(0|(u-1)%30))throw new Error("implementation bug");var m,y=0;if(p<f){var g=f-p;y=g+32,m=d>>>g,d=d<<32-g|h>>>g,h<<=32-g}else if(p===f)y=32,m=d,d=h,h=0;else{var v=p-f;y=32-v,m=d<<v|h>>>32-v,d=h<<v,h=0}if((a>>>=0)>(m>>>=0))return l.__absoluteGreater(r);if(a<m)return l.__absoluteLess(r);for(var w=o-2;0<=w;w--){0<y?(y-=30,m=d>>>2,d=d<<30|h>>>2,h<<=30):m=0;var b=e.__unsignedDigit(w);if(b>m)return l.__absoluteGreater(r);if(b<m)return l.__absoluteLess(r)}if(0!==d||0!==h){if(0===y)throw new Error("implementation bug");return l.__absoluteLess(r)}return 0}},{key:"__equalToNumber",value:function(e,r){return l.__isOneDigitInt(r)?0===r?0===e.length:1===e.length&&e.sign===0>r&&e.__unsignedDigit(0)===t(r):0===l.__compareToDouble(e,r)}},{key:"__comparisonResultToBool",value:function(e,t){return 0===t?0>e:1===t?0>=e:2===t?0<e:3===t?0<=e:void 0}},{key:"__compare",value:function(e,t,r){if(e=l.__toPrimitive(e),t=l.__toPrimitive(t),"string"==typeof e&&"string"==typeof t)switch(r){case 0:return e<t;case 1:return e<=t;case 2:return e>t;case 3:return e>=t}if(l.__isBigInt(e)&&"string"==typeof t)return null!==(t=l.__fromString(t))&&l.__comparisonResultToBool(l.__compareToBigInt(e,t),r);if("string"==typeof e&&l.__isBigInt(t))return null!==(e=l.__fromString(e))&&l.__comparisonResultToBool(l.__compareToBigInt(e,t),r);if(e=l.__toNumeric(e),t=l.__toNumeric(t),l.__isBigInt(e)){if(l.__isBigInt(t))return l.__comparisonResultToBool(l.__compareToBigInt(e,t),r);if("number"!=typeof t)throw new Error("implementation bug");return l.__comparisonResultToBool(l.__compareToNumber(e,t),r)}if("number"!=typeof e)throw new Error("implementation bug");if(l.__isBigInt(t))return l.__comparisonResultToBool(l.__compareToNumber(t,e),2^r);if("number"!=typeof t)throw new Error("implementation bug");return 0===r?e<t:1===r?e<=t:2===r?e>t:3===r?e>=t:void 0}},{key:"__absoluteAdd",value:function(e,t,r){if(e.length<t.length)return l.__absoluteAdd(t,e,r);if(0===e.length)return e;if(0===t.length)return e.sign===r?e:l.unaryMinus(e);var n=e.length;(0===e.__clzmsd()||t.length===e.length&&0===t.__clzmsd())&&n++;for(var i,o=new l(n,r),a=0,s=0;s<t.length;s++)a=(i=e.__digit(s)+t.__digit(s)+a)>>>30,o.__setDigit(s,1073741823&i);for(;s<e.length;s++){var u=e.__digit(s)+a;a=u>>>30,o.__setDigit(s,1073741823&u)}return s<o.length&&o.__setDigit(s,a),o.__trim()}},{key:"__absoluteSub",value:function(e,t,r){if(0===e.length)return e;if(0===t.length)return e.sign===r?e:l.unaryMinus(e);for(var n,i=new l(e.length,r),o=0,a=0;a<t.length;a++)o=1&(n=e.__digit(a)-t.__digit(a)-o)>>>30,i.__setDigit(a,1073741823&n);for(;a<e.length;a++){var s=e.__digit(a)-o;o=1&s>>>30,i.__setDigit(a,1073741823&s)}return i.__trim()}},{key:"__absoluteAddOne",value:function(e,t){var r=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null,n=e.length;null===r?r=new l(n,t):r.sign=t;for(var i,o=1,a=0;a<n;a++)o=(i=e.__digit(a)+o)>>>30,r.__setDigit(a,1073741823&i);return 0!==o&&r.__setDigitGrow(n,1),r}},{key:"__absoluteSubOne",value:function(e,t){for(var r,n=e.length,i=new l(t=t||n,!1),o=1,a=0;a<n;a++)o=1&(r=e.__digit(a)-o)>>>30,i.__setDigit(a,1073741823&r);if(0!==o)throw new Error("implementation bug");for(var s=n;s<t;s++)i.__setDigit(s,0);return i}},{key:"__absoluteAnd",value:function(e,t){var r=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null,n=e.length,i=t.length,o=i;if(n<i){o=n;var a=e,s=n;e=t,n=i,t=a,i=s}var u=o;null===r?r=new l(u,!1):u=r.length;for(var c=0;c<o;c++)r.__setDigit(c,e.__digit(c)&t.__digit(c));for(;c<u;c++)r.__setDigit(c,0);return r}},{key:"__absoluteAndNot",value:function(e,t){var r=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null,n=e.length,i=t.length,o=i;n<i&&(o=n);var a=n;null===r?r=new l(a,!1):a=r.length;for(var s=0;s<o;s++)r.__setDigit(s,e.__digit(s)&~t.__digit(s));for(;s<n;s++)r.__setDigit(s,e.__digit(s));for(;s<a;s++)r.__setDigit(s,0);return r}},{key:"__absoluteOr",value:function(e,t){var r=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null,n=e.length,i=t.length,o=i;if(n<i){o=n;var a=e,s=n;e=t,n=i,t=a,i=s}var u=n;null===r?r=new l(u,!1):u=r.length;for(var c=0;c<o;c++)r.__setDigit(c,e.__digit(c)|t.__digit(c));for(;c<n;c++)r.__setDigit(c,e.__digit(c));for(;c<u;c++)r.__setDigit(c,0);return r}},{key:"__absoluteXor",value:function(e,t){var r=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null,n=e.length,i=t.length,o=i;if(n<i){o=n;var a=e,s=n;e=t,n=i,t=a,i=s}var u=n;null===r?r=new l(u,!1):u=r.length;for(var c=0;c<o;c++)r.__setDigit(c,e.__digit(c)^t.__digit(c));for(;c<n;c++)r.__setDigit(c,e.__digit(c));for(;c<u;c++)r.__setDigit(c,0);return r}},{key:"__absoluteCompare",value:function(e,t){var r=e.length-t.length;if(0!=r)return r;for(var n=e.length-1;0<=n&&e.__digit(n)===t.__digit(n);)n--;return 0>n?0:e.__unsignedDigit(n)>t.__unsignedDigit(n)?1:-1}},{key:"__multiplyAccumulate",value:function(e,t,r,n){if(0!==t){for(var i=32767&t,o=t>>>15,a=0,s=0,u=0;u<e.length;u++,n++){var c=r.__digit(n),d=e.__digit(u),h=32767&d,f=d>>>15,p=l.__imul(h,i),m=l.__imul(h,o),y=l.__imul(f,i);a=(c+=s+p+a)>>>30,c&=1073741823,a+=(c+=((32767&m)<<15)+((32767&y)<<15))>>>30,s=l.__imul(f,o)+(m>>>15)+(y>>>15),r.__setDigit(n,1073741823&c)}for(;0!==a||0!==s;n++){var g=r.__digit(n);g+=a+s,s=0,a=g>>>30,r.__setDigit(n,1073741823&g)}}}},{key:"__internalMultiplyAdd",value:function(e,t,r,n,i){for(var o=r,a=0,s=0;s<n;s++){var u=e.__digit(s),c=l.__imul(32767&u,t),d=l.__imul(u>>>15,t),h=c+((32767&d)<<15)+a+o;o=h>>>30,a=d>>>15,i.__setDigit(s,1073741823&h)}if(i.length>n)for(i.__setDigit(n++,o+a);n<i.length;)i.__setDigit(n++,0);else if(0!==o+a)throw new Error("implementation bug")}},{key:"__absoluteDivSmall",value:function(e,t){var r=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;null===r&&(r=new l(e.length,!1));for(var n=0,i=2*e.length-1;0<=i;i-=2){var o=(n<<15|e.__halfDigit(i))>>>0,a=0|o/t,s=0|(o=((n=0|o%t)<<15|e.__halfDigit(i-1))>>>0)/t;n=0|o%t,r.__setDigit(i>>>1,a<<15|s)}return r}},{key:"__absoluteModSmall",value:function(e,t){for(var r=0,n=2*e.length-1;0<=n;n--)r=0|((r<<15|e.__halfDigit(n))>>>0)%t;return r}},{key:"__absoluteDivLarge",value:function(e,t,r,n){var i=t.__halfDigitLength(),o=t.length,a=e.__halfDigitLength()-i,s=null;r&&(s=new l(a+2>>>1,!1)).__initializeDigits();var u=new l(i+2>>>1,!1);u.__initializeDigits();var c=l.__clz15(t.__halfDigit(i-1));0<c&&(t=l.__specialLeftShift(t,c,0));for(var d=l.__specialLeftShift(e,c,1),h=t.__halfDigit(i-1),f=0,p=a;0<=p;p--){var m=32767,y=d.__halfDigit(p+i);if(y!==h){var g=(y<<15|d.__halfDigit(p+i-1))>>>0;m=0|g/h;for(var v=0|g%h,w=t.__halfDigit(i-2),b=d.__halfDigit(p+i-2);l.__imul(m,w)>>>0>(v<<16|b)>>>0&&(m--,!(32767<(v+=h))););}l.__internalMultiplyAdd(t,m,0,o,u);var _=d.__inplaceSub(u,p,i+1);0!==_&&(_=d.__inplaceAdd(t,p,i),d.__setHalfDigit(p+i,32767&d.__halfDigit(p+i)+_),m--),r&&(1&p?f=m<<15:s.__setDigit(p>>>1,f|m))}if(n)return d.__inplaceRightShift(c),r?{quotient:s,remainder:d}:d;if(r)return s;throw new Error("unreachable")}},{key:"__clz15",value:function(e){return l.__clz30(e)-15}},{key:"__specialLeftShift",value:function(e,t,r){var n=e.length,i=new l(n+r,!1);if(0===t){for(var o=0;o<n;o++)i.__setDigit(o,e.__digit(o));return 0<r&&i.__setDigit(n,0),i}for(var a,s=0,u=0;u<n;u++)a=e.__digit(u),i.__setDigit(u,1073741823&a<<t|s),s=a>>>30-t;return 0<r&&i.__setDigit(n,s),i}},{key:"__leftShiftByAbsolute",value:function(e,t){var r=l.__toShiftAmount(t);if(0>r)throw new RangeError("BigInt too big");var n=0|r/30,i=r%30,o=e.length,a=0!==i&&0!=e.__digit(o-1)>>>30-i,s=o+n+(a?1:0),u=new l(s,e.sign);if(0===i){for(var c=0;c<n;c++)u.__setDigit(c,0);for(;c<s;c++)u.__setDigit(c,e.__digit(c-n))}else{for(var d=0,h=0;h<n;h++)u.__setDigit(h,0);for(var f,p=0;p<o;p++)f=e.__digit(p),u.__setDigit(p+n,1073741823&f<<i|d),d=f>>>30-i;if(a)u.__setDigit(o+n,d);else if(0!==d)throw new Error("implementation bug")}return u.__trim()}},{key:"__rightShiftByAbsolute",value:function(e,t){var r=e.length,n=e.sign,i=l.__toShiftAmount(t);if(0>i)return l.__rightShiftByMaximum(n);var o=0|i/30,a=i%30,s=r-o;if(0>=s)return l.__rightShiftByMaximum(n);var u=!1;if(n)if(0!=(e.__digit(o)&(1<<a)-1))u=!0;else for(var c=0;c<o;c++)if(0!==e.__digit(c)){u=!0;break}u&&0===a&&0==~e.__digit(r-1)&&s++;var d=new l(s,n);if(0===a){d.__setDigit(s-1,0);for(var h=o;h<r;h++)d.__setDigit(h-o,e.__digit(h))}else{for(var f,p=e.__digit(o)>>>a,m=r-o-1,y=0;y<m;y++)f=e.__digit(y+o+1),d.__setDigit(y,1073741823&f<<30-a|p),p=f>>>a;d.__setDigit(m,p)}return u&&(d=l.__absoluteAddOne(d,!0,d)),d.__trim()}},{key:"__rightShiftByMaximum",value:function(e){return e?l.__oneDigit(1,!0):l.__zero()}},{key:"__toShiftAmount",value:function(e){if(1<e.length)return-1;var t=e.__unsignedDigit(0);return t>l.__kMaxLengthBits?-1:t}},{key:"__toPrimitive",value:function(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"default";if("object"!==r(e))return e;if(e.constructor===l)return e;if("undefined"!=typeof Symbol&&"symbol"===r(Symbol.toPrimitive)){var n=e[Symbol.toPrimitive];if(n){var i=n(t);if("object"!==r(i))return i;throw new TypeError("Cannot convert object to primitive value")}}var o=e.valueOf;if(o){var a=o.call(e);if("object"!==r(a))return a}var s=e.toString;if(s){var u=s.call(e);if("object"!==r(u))return u}throw new TypeError("Cannot convert object to primitive value")}},{key:"__toNumeric",value:function(e){return l.__isBigInt(e)?e:+e}},{key:"__isBigInt",value:function(e){return"object"===r(e)&&null!==e&&e.constructor===l}},{key:"__truncateToNBits",value:function(e,t){for(var r=0|(e+29)/30,n=new l(r,t.sign),i=r-1,o=0;o<i;o++)n.__setDigit(o,t.__digit(o));var a=t.__digit(i);if(0!=e%30){var s=32-e%30;a=a<<s>>>s}return n.__setDigit(i,a),n.__trim()}},{key:"__truncateAndSubFromPowerOfTwo",value:function(e,t,r){for(var n,i=Math.min,o=0|(e+29)/30,a=new l(o,r),s=0,u=o-1,c=0,d=i(u,t.length);s<d;s++)c=1&(n=0-t.__digit(s)-c)>>>30,a.__setDigit(s,1073741823&n);for(;s<u;s++)a.__setDigit(s,0|1073741823&-c);var h,f=u<t.length?t.__digit(u):0,p=e%30;if(0===p)h=0-f-c,h&=1073741823;else{var m=32-p,y=1<<32-m;h=y-(f=f<<m>>>m)-c,h&=y-1}return a.__setDigit(u,h),a.__trim()}},{key:"__digitPow",value:function(e,t){for(var r=1;0<t;)1&t&&(r*=e),t>>>=1,e*=e;return r}},{key:"__isOneDigitInt",value:function(e){return(1073741823&e)===e}}]),l}(h(Array));return T.__kMaxLength=33554432,T.__kMaxLengthBits=T.__kMaxLength<<5,T.__kMaxBitsPerChar=[0,0,32,51,64,75,83,90,96,102,107,111,115,119,122,126,128,131,134,136,139,141,143,145,147,149,151,153,154,156,158,159,160,162,163,165,166],T.__kBitsPerCharTableShift=5,T.__kBitsPerCharTableMultiplier=1<<T.__kBitsPerCharTableShift,T.__kConversionChars=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"],T.__kBitConversionBuffer=new ArrayBuffer(8),T.__kBitConversionDouble=new Float64Array(T.__kBitConversionBuffer),T.__kBitConversionInts=new Int32Array(T.__kBitConversionBuffer),T.__clz30=t?function(e){return t(e)-2}:function(e){var t=Math.LN2,r=Math.log;return 0===e?30:0|29-(0|r(e>>>0)/t)},T.__imul=e||function(e,t){return 0|e*t},T}();var d=l(c.exports);const h={};function f(e,t){Object.defineProperty(e.prototype,Symbol.toStringTag,{value:t,writable:!1,enumerable:!1,configurable:!0});for(const t of Object.getOwnPropertyNames(e)){const r=Object.getOwnPropertyDescriptor(e,t);r.configurable&&r.enumerable&&(r.enumerable=!1,Object.defineProperty(e,t,r))}for(const t of Object.getOwnPropertyNames(e.prototype)){const r=Object.getOwnPropertyDescriptor(e.prototype,t);r.configurable&&r.enumerable&&(r.enumerable=!1,Object.defineProperty(e.prototype,t,r))}p(t,e),p(`${t}.prototype`,e.prototype)}function p(e,t){const r=`%${e}%`;if(void 0!==h[r])throw new Error(`intrinsic ${e} already exists`);h[r]=t}function m(e){return h[e]}var y,g;const v="slot-epochNanoSeconds",w="slot-timezone-identifier",b="slot-year",_="slot-month",E="slot-day",T="slot-hour",x="slot-minute",I="slot-second",S="slot-millisecond",R="slot-microsecond",k="slot-nanosecond",j="slot-calendar",D="slot-date-brand",N="slot-year-month-brand",O="slot-month-day-brand",C="slot-cached-instant",A="slot-time-zone",M="slot-years",L="slot-months",P="slot-weeks",B="slot-days",$="slot-hours",F="slot-minutes",U="slot-seconds",q="slot-milliseconds",Y="slot-microseconds",W="slot-nanoseconds",z="slot-calendar-identifier",G=new WeakMap,H=Symbol.for("@@Temporal__GetSlots");(y=globalThis)[H]||(y[H]=function(e){return G.get(e)});const J=globalThis[H],V=Symbol.for("@@Temporal__CreateSlots");(g=globalThis)[V]||(g[V]=function(e){G.set(e,Object.create(null))});const Q=globalThis[V];function Z(e,...t){if(!e||"object"!=typeof e)return!1;const r=J(e);return!!r&&t.every((e=>e in r))}function K(e,t){const r=J(e)?.[t];if(void 0===r)throw new TypeError(`Missing internal slot ${t}`);return r}function X(e,t,r){const n=J(e);if(void 0===n)throw new TypeError("Missing slots for the given container");if(n[t])throw new TypeError(`${t} already has set`);n[t]=r}const ee=/\.[-A-Za-z_]|\.\.[-A-Za-z._]{1,12}|\.[-A-Za-z_][-A-Za-z._]{0,12}|[A-Za-z_][-A-Za-z._]{0,13}/,te=new RegExp("(?:"+[`(?:${ee.source})(?:\\/(?:${ee.source}))*`,"Etc/GMT(?:0|[-+]\\d{1,2})","GMT[-+]?0","EST5EDT","CST6CDT","MST7MDT","PST8PDT",/(?:[+\u2212-][0-2][0-9](?::?[0-5][0-9](?::?[0-5][0-9](?:[.,]\d{1,9})?)?)?)/.source].join("|")+")"),re=/(?:[+\u2212-]\d{6}|\d{4})/,ne=/(?:0[1-9]|1[0-2])/,ie=/(?:0[1-9]|[12]\d|3[01])/,oe=new RegExp(`(${re.source})(?:-(${ne.source})-(${ie.source})|(${ne.source})(${ie.source}))`),ae=/(\d{2})(?::(\d{2})(?::(\d{2})(?:[.,](\d{1,9}))?)?|(\d{2})(?:(\d{2})(?:[.,](\d{1,9}))?)?)?/,se=/([+\u2212-])([01][0-9]|2[0-3])(?::?([0-5][0-9])(?::?([0-5][0-9])(?:[.,](\d{1,9}))?)?)?/,le=new RegExp(`([zZ])|${se.source}?`),ue=/\[(!)?([a-z_][a-z0-9_-]*)=([A-Za-z0-9]+(?:-[A-Za-z0-9]+)*)\]/g,ce=new RegExp([`^${oe.source}`,`(?:(?:T|\\s+)${ae.source}(?:${le.source})?)?`,`(?:\\[!?(${te.source})\\])?`,`((?:${ue.source})*)$`].join(""),"i"),de=new RegExp([`^T?${ae.source}`,`(?:${le.source})?`,`(?:\\[!?${te.source}\\])?`,`((?:${ue.source})*)$`].join(""),"i"),he=new RegExp(`^(${re.source})-?(${ne.source})(?:\\[!?${te.source}\\])?((?:${ue.source})*)$`),fe=new RegExp(`^(?:--)?(${ne.source})-?(${ie.source})(?:\\[!?${te.source}\\])?((?:${ue.source})*)$`),pe=/(\d+)(?:[.,](\d{1,9}))?/,me=new RegExp(`(?:${pe.source}H)?(?:${pe.source}M)?(?:${pe.source}S)?`),ye=new RegExp(`^([+−-])?P${/(?:(\d+)Y)?(?:(\d+)M)?(?:(\d+)W)?(?:(\d+)D)?/.source}(?:T(?!$)${me.source})?$`,"i"),ge=Array.prototype.includes,ve=Array.prototype.push,we=globalThis.Intl.DateTimeFormat,be=Math.min,_e=Math.max,Ee=Math.abs,Te=Math.floor,xe=Math.sign,Ie=Math.trunc,Se=Number.isNaN,Re=Number.isFinite,ke=Number,je=String,De=Number.MAX_SAFE_INTEGER,Ne=Object.create,Oe=Object.getOwnPropertyDescriptor,Ce=Reflect.apply,Ae=Reflect.ownKeys,Me=d.BigInt(0),Le=d.BigInt(1),Pe=d.BigInt(60),Be=d.BigInt(24),$e=d.BigInt(1e3),Fe=d.BigInt(1e6),Ue=d.BigInt(1e9),qe=d.BigInt(-1),Ye=d.multiply(d.BigInt(3600),Ue),We=d.multiply(Pe,Ue),ze=d.multiply(Ye,Be),Ge=d.multiply(d.BigInt(-86400),d.BigInt(1e17)),He=d.multiply(d.BigInt(86400),d.BigInt(1e17)),Je=-271821,Ve=275760,Qe=d.multiply(d.BigInt(-388152),d.BigInt(1e13)),Ze=d.multiply(ze,d.BigInt(3660)),Ke=d.multiply(ze,d.BigInt(366)),Xe=d.multiply(ze,d.BigInt(14)),et=["iso8601","hebrew","islamic","islamic-umalqura","islamic-tbla","islamic-civil","islamic-rgsa","islamicc","persian","ethiopic","ethioaa","coptic","chinese","dangi","roc","indian","buddhist","japanese","gregory"];function tt(e){return d.equal(e,Me)}function rt(e,t){const r=e[t];if(void 0!==r)return r}function nt(e,t,r){return Ce(e,t,arguments.length>2?r:[])}function it(e){return"object"==typeof e&&null!==e||"function"==typeof e}function ot(e){if("bigint"==typeof e)throw new TypeError("Cannot convert BigInt to number");return ke(e)}function at(e){const t=ot(e);if(Se(t)||0===t)return 0;if(!Re(t))return t;const r=Te(Ee(t));return 0===r?0:xe(t)*r}function st(e){if("number"!=typeof e||Se(e)||!Re(e))return!1;const t=Ee(e);return Te(t)===t}function lt(e){if("symbol"==typeof e)throw new TypeError("Cannot convert a Symbol value to a String");return je(e)}function ut(e){const t=ot(e);if(0===t)return 0;if(Se(t)||!Re(t))throw new RangeError("invalid number value");const r=Ie(t);return 0===r?0:r}function ct(e,t){const r=ut(e);if(r<=0){if(void 0!==t)throw new RangeError(`property '${t}' cannot be a a number less than one`);throw new RangeError("Cannot convert a number less than one to a positive integer")}return r}function dt(e){const t=ot(e);if(!Re(t))throw new RangeError("infinity is out of range");if(!st(t))throw new RangeError(`unsupported fractional value ${e}`);return 0===t?0:t}function ht(e,t){return{quotient:d.divide(e,t),remainder:d.remainder(e,t)}}function ft(e){return d.lessThan(e,Me)}function pt(e){return tt(e)?0:ft(e)?-1:1}function mt(e){return d.lessThan(e,Me)?d.multiply(e,qe):e}const yt=new Map([["year",ut],["month",ct],["monthCode",lt],["day",ct],["hour",ut],["minute",ut],["second",ut],["millisecond",ut],["microsecond",ut],["nanosecond",ut],["years",dt],["months",dt],["weeks",dt],["days",dt],["hours",dt],["minutes",dt],["seconds",dt],["milliseconds",dt],["microseconds",dt],["nanoseconds",dt],["era",lt],["eraYear",at],["offset",lt]]),gt=new Map([["hour",0],["minute",0],["second",0],["millisecond",0],["microsecond",0],["nanosecond",0]]),vt=[["years","year","date"],["months","month","date"],["weeks","week","date"],["days","day","date"],["hours","hour","time"],["minutes","minute","time"],["seconds","second","time"],["milliseconds","millisecond","time"],["microseconds","microsecond","time"],["nanoseconds","nanosecond","time"]],wt=new Map(vt.map((e=>[e[0],e[1]]))),bt=new Map(vt.map((([e,t])=>[t,e]))),_t=vt.map((([,e])=>e)),Et=Array.from(wt.keys()).sort(),Tt=new Map;function xt(e){let t=Tt.get(e);return void 0===t&&(t=new we("en-us",{timeZone:je(e),hour12:!1,era:"short",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),Tt.set(e,t)),t}function It(e){if(null==e)throw new TypeError(`Expected object not ${e}`);return Object(e)}function St(e,t,r,n){if(null==t)return;const i=Ae(t);for(const o of i)if(!r.some((e=>Object.is(e,o)))&&Object.prototype.propertyIsEnumerable.call(t,o)){const r=t[o];if(n&&n.some((e=>Object.is(e,r))))continue;e[o]=r}}function Rt(e){return Z(e,v)&&!Z(e,A,j)}function kt(e){return Z(e,w)}function jt(e){return Z(e,z)}function Dt(e){return Z(e,M,L,B,$,F,U,q,Y,W)}function Nt(e){return Z(e,D)}function Ot(e){return Z(e,T,x,I,S,R,k)&&!Z(e,b,_,E)}function Ct(e){return Z(e,b,_,E,T,x,I,S,R,k)}function At(e){return Z(e,N)}function Mt(e){return Z(e,O)}function Lt(e){return Z(e,v,A,j)}function Pt(e){if(Z(e,j)||Z(e,A))throw new TypeError("with() does not support a calendar or timeZone property");if(Ot(e))throw new TypeError("with() does not accept Temporal.PlainTime, use withPlainTime() instead");if(void 0!==e.calendar)throw new TypeError("with() does not support a calendar property");if(void 0!==e.timeZone)throw new TypeError("with() does not support a timeZone property")}function Bt(e,t){return"never"===t?"":$t(Vr(e),t)}function $t(e,t){return"never"===t||"auto"===t&&"iso8601"===e?"":`[${"critical"===t?"!":""}u-ca=${e}]`}function Ft(e){const t=ce.exec(e);if(!t)throw new RangeError(`invalid ISO 8601 string: ${e}`);let r=t[1];if("−"===r[0]&&(r=`-${r.slice(1)}`),"-000000"===r)throw new RangeError(`invalid ISO 8601 string: ${e}`);const n=at(r),i=at(t[2]||t[4]),o=at(t[3]||t[5]),a=at(t[6]),s=void 0!==t[6],l=at(t[7]||t[10]);let u=at(t[8]||t[11]);60===u&&(u=59);const c=(t[9]||t[12])+"000000000",d=at(c.slice(0,3)),h=at(c.slice(3,6)),f=at(c.slice(6,9));let p,m=!1;if(t[13])p=void 0,m=!0;else if(t[14]&&t[15]){const e="-"===t[14]||"−"===t[14]?"-":"+",r=t[15]||"00",n=t[16]||"00",i=t[17]||"00";let o=t[18]||"0";if(p=`${e}${r}:${n}`,+o){for(;o.endsWith("0");)o=o.slice(0,-1);p+=`:${i}.${o}`}else+i&&(p+=`:${i}`);"-00:00"===p&&(p="+00:00")}const y=t[19],g=t[20];let v;for(const[,e,t,r]of g.matchAll(ue))if("u-ca"===t)void 0===v&&(v=r);else if("!"===e)throw new RangeError(`Unrecognized annotation: !${t}=${r}`);return li(n,i,o,a,l,u,d,h,f),{year:n,month:i,day:o,hasTime:s,hour:a,minute:l,second:u,millisecond:d,microsecond:h,nanosecond:f,ianaName:y,offset:p,z:m,calendar:v}}function Ut(e){const t=he.exec(e);let r,n,i,o;if(t){let o=t[1];if("−"===o[0]&&(o=`-${o.slice(1)}`),"-000000"===o)throw new RangeError(`invalid ISO 8601 string: ${e}`);r=at(o),n=at(t[2]);const a=t[3];for(const[,e,t,r]of a.matchAll(ue))if("u-ca"===t)void 0===i&&(i=r);else if("!"===e)throw new RangeError(`Unrecognized annotation: !${t}=${r}`);if(void 0!==i&&"iso8601"!==i)throw new RangeError("YYYY-MM format is only valid with iso8601 calendar")}else{let t;if(({year:r,month:n,calendar:i,day:o,z:t}=Ft(e)),t)throw new RangeError("Z designator not supported for PlainYearMonth")}return{year:r,month:n,calendar:i,referenceISODay:o}}function qt(e){const t=fe.exec(e);let r,n,i,o;if(t){r=at(t[1]),n=at(t[2]);const e=t[3];for(const[,t,r,n]of e.matchAll(ue))if("u-ca"===r)void 0===i&&(i=n);else if("!"===t)throw new RangeError(`Unrecognized annotation: !${r}=${n}`);if(void 0!==i&&"iso8601"!==i)throw new RangeError("MM-DD format is only valid with iso8601 calendar")}else{let t;if(({month:r,day:n,calendar:i,year:o,z:t}=Ft(e)),t)throw new RangeError("Z designator not supported for PlainMonthDay")}return{month:r,day:n,calendar:i,referenceISOYear:o}}function Yt(e,t,r,n){let i=e,o=t,a=r;switch(n){case"reject":oi(i,o,a);break;case"constrain":({year:i,month:o,day:a}=ni(i,o,a))}return{year:i,month:o,day:a}}function Wt(e,t,r,n,i,o,a){let s=e,l=t,u=r,c=n,d=i,h=o;switch(a){case"reject":si(s,l,u,c,d,h);break;case"constrain":({hour:s,minute:l,second:u,millisecond:c,microsecond:d,nanosecond:h}=function(e,t,r,n,i,o){return{hour:ri(e,0,23),minute:ri(t,0,59),second:ri(r,0,59),millisecond:ri(n,0,999),microsecond:ri(i,0,999),nanosecond:ri(o,0,999)}}(s,l,u,c,d,h))}return{hour:s,minute:l,second:u,millisecond:c,microsecond:d,nanosecond:h}}function zt(e){if(!it(e))return function(e){const t=ye.exec(e);if(!t)throw new RangeError(`invalid duration: ${e}`);if(t.slice(2).every((e=>void 0===e)))throw new RangeError(`invalid duration: ${e}`);const r="-"===t[1]||"−"===t[1]?-1:1,n=void 0===t[2]?0:ut(t[2])*r,i=void 0===t[3]?0:ut(t[3])*r,o=void 0===t[4]?0:ut(t[4])*r,a=void 0===t[5]?0:ut(t[5])*r,s=void 0===t[6]?0:ut(t[6])*r,l=t[7],u=t[8],c=t[9],d=t[10],h=t[11];let f=0,p=0,m=0;if(void 0!==l){if(u??c??d??h)throw new RangeError("only the smallest unit can be fractional");m=3600*at((l+"000000000").slice(0,9))*r}else if(f=void 0===u?0:ut(u)*r,void 0!==c){if(d??h)throw new RangeError("only the smallest unit can be fractional");m=60*at((c+"000000000").slice(0,9))*r}else p=void 0===d?0:ut(d)*r,void 0!==h&&(m=at((h+"000000000").slice(0,9))*r);const y=m%1e3,g=Ie(m/1e3)%1e3,v=Ie(m/1e6)%1e3;return p+=Ie(m/1e9)%60,f+=Ie(m/6e10),di(n,i,o,a,s,f,p,v,g,y),{years:n,months:i,weeks:o,days:a,hours:s,minutes:f,seconds:p,milliseconds:v,microseconds:g,nanoseconds:y}}(lt(e));if(Dt(e))return{years:K(e,M),months:K(e,L),weeks:K(e,P),days:K(e,B),hours:K(e,$),minutes:K(e,F),seconds:K(e,U),milliseconds:K(e,q),microseconds:K(e,Y),nanoseconds:K(e,W)};const t={years:0,months:0,weeks:0,days:0,hours:0,minutes:0,seconds:0,milliseconds:0,microseconds:0,nanoseconds:0};let r=function(e){if(!it(e))throw new TypeError("invalid duration-like");const t={years:void 0,months:void 0,weeks:void 0,days:void 0,hours:void 0,minutes:void 0,seconds:void 0,milliseconds:void 0,microseconds:void 0,nanoseconds:void 0};let r=!1;for(const n of Et){const i=e[n];void 0!==i&&(r=!0,t[n]=dt(i))}if(!r)throw new TypeError("invalid duration-like");return t}(e);for(const e of Et){const n=r[e];void 0!==n&&(t[e]=n)}let{years:n,months:i,weeks:o,days:a,hours:s,minutes:l,seconds:u,milliseconds:c,microseconds:d,nanoseconds:h}=t;return di(n,i,o,a,s,l,u,c,d,h),{years:n,months:i,weeks:o,days:a,hours:s,minutes:l,seconds:u,milliseconds:c,microseconds:d,nanoseconds:h}}function Gt(e){return void 0===e?"constrain":no(e,"overflow",["constrain","reject"],"constrain")}function Ht(e){return void 0===e?"compatible":no(e,"disambiguation",["compatible","earlier","later","reject"],"compatible")}function Jt(e,t){return no(e,"roundingMode",["ceil","floor","expand","trunc","halfCeil","halfFloor","halfExpand","halfTrunc","halfEven"],t)}function Vt(e,t){return void 0===e?t:no(e,"offset",["prefer","use","ignore","reject"],t)}function Qt(e){return no(e,"calendarName",["auto","always","never","critical"],"auto")}function Zt(e){let t=e.roundingIncrement;if(void 0===t)return 1;if(t=ot(t),!Re(t))throw new RangeError("roundingIncrement must be finite");const r=Ie(t);if(r<1||r>1e9)throw new RangeError(`roundingIncrement must be at least 1 and at most 1e9, not ${t}`);return r}function Kt(e,t,r){const n=r?t:t-1;if(e>n)throw new RangeError(`roundingIncrement must be at least 1 and less than ${n}, not ${e}`);if(t%e!=0)throw new RangeError(`Rounding increment must divide evenly into ${t}`)}function Xt(e){const t=e.fractionalSecondDigits;if(void 0===t)return"auto