MCPcopy Create free account
hub / github.com/Make-md/makemd / tk

Function tk

main.js:79–79  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

77 const mathjs = create(all);
78 mathjs.config({ number: 'BigNumber' });
79`);return Object.freeze(Px)};mi(st,Px,{MATRIX_OPTIONS:NI,NUMBER_OPTIONS:MI});var YZ={};DS(YZ,{createAbs:()=>F5,createAccessorNode:()=>M9,createAcos:()=>R8,createAcosh:()=>q8,createAcot:()=>$8,createAcoth:()=>z8,createAcsc:()=>U8,createAcsch:()=>H8,createAdd:()=>b9,createAddScalar:()=>P5,createAnd:()=>Dk,createAndTransform:()=>QR,createApply:()=>_1,createApplyTransform:()=>TR,createArg:()=>oB,createArrayNode:()=>F9,createAsec:()=>V8,createAsech:()=>G8,createAsin:()=>W8,createAsinh:()=>Q8,createAssignmentNode:()=>I9,createAtan:()=>Y8,createAtan2:()=>X8,createAtanh:()=>K8,createAtomicMass:()=>oR,createAvogadro:()=>sR,createBellNumbers:()=>Z7,createBigNumberClass:()=>QI,createBignumber:()=>w5,createBin:()=>zB,createBitAnd:()=>dk,createBitAndTransform:()=>XR,createBitNot:()=>iB,createBitOr:()=>pk,createBitOrTransform:()=>KR,createBitXor:()=>aB,createBlockNode:()=>L9,createBohrMagneton:()=>qL,createBohrRadius:()=>GL,createBoltzmann:()=>lR,createBoolean:()=>x5,createCatalan:()=>eL,createCbrt:()=>I5,createCeil:()=>B5,createChain:()=>S7,createChainClass:()=>x7,createClassicalElectronRadius:()=>WL,createClone:()=>i5,createColumn:()=>gk,createColumnTransform:()=>NR,createCombinations:()=>q7,createCombinationsWithRep:()=>$7,createCompare:()=>f8,createCompareNatural:()=>d8,createCompareText:()=>p8,createCompile:()=>u7,createComplex:()=>S5,createComplexClass:()=>YI,createComposition:()=>tL,createConcat:()=>hk,createConcatTransform:()=>qR,createConditionalNode:()=>q9,createConductanceQuantum:()=>$L,createConj:()=>sB,createConstantNode:()=>H9,createCorr:()=>R7,createCos:()=>J8,createCosh:()=>Z8,createCot:()=>e9,createCoth:()=>t9,createCoulomb:()=>LL,createCount:()=>dB,createCreateUnit:()=>L8,createCross:()=>pB,createCsc:()=>r9,createCsch:()=>n9,createCtranspose:()=>FB,createCube:()=>L5,createCumSum:()=>Fk,createCumSumTransform:()=>VR,createDeepEqual:()=>k8,createDenseMatrixClass:()=>n5,createDerivative:()=>lL,createDet:()=>E7,createDeuteronMass:()=>ZL,createDiag:()=>mB,createDiff:()=>Ak,createDiffTransform:()=>$R,createDistance:()=>P7,createDivide:()=>j7,createDivideScalar:()=>YB,createDot:()=>S9,createDotDivide:()=>r8,createDotMultiply:()=>rB,createDotPow:()=>t8,createE:()=>xL,createEfimovFactor:()=>aR,createEigs:()=>D7,createElectricConstant:()=>IL,createElectronMass:()=>QL,createElementaryCharge:()=>RL,createEqual:()=>h8,createEqualScalar:()=>A5,createEqualText:()=>g8,createErf:()=>BB,createEvaluate:()=>c7,createExp:()=>R5,createExpm:()=>T7,createExpm1:()=>q5,createFactorial:()=>H7,createFalse:()=>hL,createFaraday:()=>uR,createFermiCoupling:()=>YL,createFft:()=>PB,createFibonacciHeapClass:()=>F8,createFilter:()=>hB,createFilterTransform:()=>MR,createFineStructure:()=>XL,createFirstRadiation:()=>cR,createFix:()=>$5,createFlatten:()=>gB,createFloor:()=>lk,createForEach:()=>AB,createForEachTransform:()=>OR,createFormat:()=>$B,createFraction:()=>E5,createFractionClass:()=>XI,createFreqz:()=>fL,createFunctionAssignmentNode:()=>G9,createFunctionNode:()=>s7,createGamma:()=>z7,createGasConstant:()=>dR,createGcd:()=>z5,createGetMatrixDataType:()=>vB,createGravitationConstant:()=>FL,createGravity:()=>xR,createHartreeEnergy:()=>KL,createHasNumericValue:()=>f5,createHelp:()=>w7,createHelpClass:()=>b7,createHex:()=>HB,createHypot:()=>x9,createI:()=>NL,createIdentity:()=>yB,createIfft:()=>_B,createIm:()=>lB,createImmutableDenseMatrixClass:()=>M8,createIndex:()=>k9,createIndexClass:()=>O8,createIndexNode:()=>Q9,createIndexTransform:()=>FR,createInfinity:()=>AL,createIntersect:()=>_7,createInv:()=>k7,createInverseConductanceQuantum:()=>zL,createInvmod:()=>eB,createIsInteger:()=>s5,createIsNaN:()=>m5,createIsNegative:()=>u5,createIsNumeric:()=>c5,createIsPositive:()=>d5,createIsPrime:()=>WB,createIsZero:()=>p5,createKldivergence:()=>V7,createKlitzing:()=>VL,createKron:()=>bB,createLN10:()=>EL,createLN2:()=>SL,createLOG10E:()=>CL,createLOG2E:()=>kL,createLarger:()=>w8,createLargerEq:()=>E8,createLcm:()=>U5,createLeafCount:()=>rL,createLeftShift:()=>s8,createLgamma:()=>U7,createLog:()=>JB,createLog10:()=>H5,createLog1p:()=>ZB,createLog2:()=>V5,createLoschmidt:()=>fR,createLsolve:()=>n8,createLsolveAll:()=>a8,createLup:()=>p7,createLusolve:()=>v7,createLyap:()=>F7,createMad:()=>L7,createMagneticConstant:()=>_L,createMagneticFluxQuantum:()=>UL,createMap:()=>xB,createMapTransform:()=>jR,createMatrix:()=>k5,createMatrixClass:()=>JI,createMatrixFromColumns:()=>T5,createMatrixFromFunction:()=>C5,createMatrixFromRows:()=>D5,createMax:()=>Tk,createMaxTransform:()=>PR,createMean:()=>jk,createMeanTransform:()=>_R,createMedian:()=>B7,createMin:()=>Nk,createMinTransform:()=>IR,createMod:()=>uk,createMode:()=>RB,createMolarMass:()=>yR,createMolarMassC12:()=>bR,createMolarPlanckConstant:()=>pR,createMolarVolume:()=>mR,createMultinomial:()=>G7,createMultiply:()=>W5,createMultiplyScalar:()=>G5,createNaN:()=>vL,createNeutronMass:()=>eR,createNode:()=>D9,createNorm:()=>w9,createNot:()=>cB,createNthRoot:()=>Q5,createNthRoots:()=>e8,createNuclearMagneton:()=>HL,createNull:()=>gL,createNumber:()=>y5,createNumeric:()=>QB,createObjectNode:()=>X9,createOct:()=>UB,createOnes:()=>wB,createOperatorNode:()=>J9,createOr:()=>mk,createOrTransform:()=>YR,createParenthesisNode:()=>e7,createParse:()=>l7,createParser:()=>d7,createParserClass:()=>f7,createPartitionSelect:()=>T8,createPermutations:()=>W7,createPhi:()=>wL,createPi:()=>yL,createPickRandom:()=>Y7,createPinv:()=>C7,createPlanckCharge:()=>kR,createPlanckConstant:()=>jL,createPlanckLength:()=>wR,createPlanckMass:()=>SR,createPlanckTemperature:()=>CR,createPlanckTime:()=>ER,createPolynomialRoot:()=>y7,createPow:()=>XB,createPrint:()=>Sk,createPrintTransform:()=>WR,createProd:()=>qB,createProtonMass:()=>JL,createQr:()=>m7,createQuantileSeq:()=>_k,createQuantileSeqTransform:()=>HR,createQuantumOfCirculation:()=>tR,createRandom:()=>X7,createRandomInt:()=>K7,createRange:()=>yk,createRangeClass:()=>KI,createRangeNode:()=>r7,createRangeTransform:()=>BR,createRationalize:()=>uL,createRe:()=>uB,createReducedPlanckConstant:()=>PL,createRelationalNode:()=>i7,createReplacer:()=>pL,createReshape:()=>kB,createResize:()=>CB,createResolve:()=>oL,createResultSet:()=>RI,createReviver:()=>dL,createRightArithShift:()=>l8,createRightLogShift:()=>u8,createRotate:()=>DB,createRotationMatrix:()=>TB,createRound:()=>KB,createRow:()=>bk,createRowTransform:()=>LR,createRydberg:()=>rR,createSQRT1_2:()=>DL,createSQRT2:()=>TL,createSackurTetrode:()=>hR,createSchur:()=>O7,createSec:()=>i9,createSech:()=>a9,createSecondRadiation:()=>gR,createSetCartesian:()=>c9,createSetDifference:()=>f9,createSetDistinct:()=>d9,createSetIntersect:()=>p9,createSetIsSubset:()=>m9,createSetMultiplicity:()=>h9,createSetPowerset:()=>g9,createSetSize:()=>A9,createSetSymDifference:()=>v9,createSetUnion:()=>y9,createSign:()=>Y5,createSimplify:()=>nL,createSimplifyConstant:()=>iL,createSimplifyCore:()=>aL,createSin:()=>o9,createSinh:()=>s9,createSize:()=>NB,createSlu:()=>A7,createSmaller:()=>v8,createSmallerEq:()=>b8,createSolveODE:()=>IB,createSort:()=>N8,createSpaClass:()=>j8,createSparse:()=>B8,createSparseMatrixClass:()=>v5,createSpeedOfLight:()=>OL,createSplitUnit:()=>N5,createSqrt:()=>X5,createSqrtm:()=>N7,createSquare:()=>K5,createSqueeze:()=>MB,createStd:()=>Ik,createStdTransform:()=>zR,createStefanBoltzmann:()=>AR,createStirlingS2:()=>J7,createString:()=>b5,createSubset:()=>xk,createSubsetTransform:()=>RR,createSubtract:()=>J5,createSubtractScalar:()=>_5,createSum:()=>Ok,createSumTransform:()=>UR,createSylvester:()=>M7,createSymbolNode:()=>a7,createSymbolicEqual:()=>sL,createTan:()=>l9,createTanh:()=>u9,createTau:()=>bL,createThomsonCrossSection:()=>nR,createTo:()=>GB,createTrace:()=>E9,createTranspose:()=>OB,createTrue:()=>mL,createTypeOf:()=>h5,createTyped:()=>LI,createUnaryMinus:()=>M5,createUnaryPlus:()=>O5,createUnequal:()=>D8,createUnitClass:()=>_8,createUnitFunction:()=>I8,createUppercaseE:()=>zke,createUppercasePi:()=>$ke,createUsolve:()=>i8,createUsolveAll:()=>o8,createVacuumImpedance:()=>BL,createVariance:()=>Pk,createVarianceTransform:()=>GR,createVersion:()=>ML,createWeakMixingAngle:()=>iR,createWienDisplacement:()=>vR,createXgcd:()=>Z5,createXor:()=>fB,createZeros:()=>jB,createZeta:()=>LB,createZpk2tf:()=>cL});var pJ=ge(OI(),1);function Ot(e){return typeof e=="boolean"?!0:isFinite(e)?e===Math.round(e):!1}var Gp=Math.sign||function(e){return e>0?1:e<0?-1:0},C0e=Math.log2||function(t){return Math.log(t)/Math.LN2},D0e=Math.log10||function(t){return Math.log(t)/Math.LN10},FI=Math.log1p||function(e){return Math.log(e+1)},T0e=Math.cbrt||function(t){if(t===0)return t;var r=t<0,n;return r&&(t=-t),isFinite(t)?(n=Math.exp(Math.log(t)/3),n=(t/(n*n)+2*n)/3):n=t,r?-n:n},N0e=Math.expm1||function(t){return t>=2e-4||t<=-2e-4?Math.exp(t)-1:t+t*t/2+t*t*t/6};function oJ(e,t,r){var n={2:"0b",8:"0o",16:"0x"},i=n[t],a="";if(r){if(r<1)throw new Error("size must be in greater than 0");if(!Ot(r))throw new Error("size must be an integer");if(e>2**(r-1)-1||e<-(2**(r-1)))throw new Error("Value must be in range [-2^".concat(r-1,", 2^").concat(r-1,"-1]"));if(!Ot(e))throw new Error("Value must be an integer");e<0&&(e=e+2**r),a="i".concat(r)}var o="";return e<0&&(e=-e,o="-"),"".concat(o).concat(i).concat(e.toString(t)).concat(a)}function th(e,t){if(typeof t=="function")return t(e);if(e===1/0)return"Infinity";if(e===-1/0)return"-Infinity";if(isNaN(e))return"NaN";var{notation:r,precision:n,wordSize:i}=sJ(t);switch(r){case"fixed":return lJ(e,n);case"exponential":return M0e(e,n);case"engineering":return grt(e,n);case"bin":return oJ(e,2,i);case"oct":return oJ(e,8,i);case"hex":return oJ(e,16,i);case"auto":return Art(e,n,t).replace(/((\.\d*?)(0+))($|e)/,function(){var a=arguments[2],o=arguments[4];return a!=="."?a+o:o});default:throw new Error('Unknown notation "'+r+'". Choose "auto", "exponential", "fixed", "bin", "oct", or "hex.')}}function sJ(e){var t="auto",r,n;if(e!==void 0)if(hr(e))r=e;else if(er(e))r=e.toNumber();else if(Ag(e))e.precision!==void 0&&(r=E0e(e.precision,()=>{throw new Error('Option "precision" must be a number or BigNumber')})),e.wordSize!==void 0&&(n=E0e(e.wordSize,()=>{throw new Error('Option "wordSize" must be a number or BigNumber')})),e.notation&&(t=e.notation);else throw new Error("Unsupported type of options, number, BigNumber, or object expected");return{notation:t,precision:r,wordSize:n}}function KE(e){var t=String(e).toLowerCase().match(/^(-?)(\d+\.?\d*)(e([+-]?\d+))?$/);if(!t)throw new SyntaxError("Invalid number "+e);var r=t[1],n=t[2],i=parseFloat(t[4]||"0"),a=n.indexOf(".");i+=a!==-1?a-1:n.length-1;var o=n.replace(".","").replace(/^0*/,function(s){return i-=s.length,""}).replace(/0*$/,"").split("").map(function(s){return parseInt(s)});return o.length===0&&(o.push(0),i++),{sign:r,coefficients:o,exponent:i}}function grt(e,t){if(isNaN(e)||!isFinite(e))return String(e);var r=KE(e),n=jI(r,t),i=n.exponent,a=n.coefficients,o=i%3===0?i:i<0?i-3-i%3:i-i%3;if(hr(t))for(;t>a.length||i-o+1>a.length;)a.push(0);else for(var s=Math.abs(i-o)-(a.length-1),l=0;l<s;l++)a.push(0);for(var u=Math.abs(i-o),c=1;u>0;)c++,u--;var f=a.slice(c).join(""),d=hr(t)&&f.length||f.match(/[1-9]/)?"."+f:"",p=a.slice(0,c).join("")+d+"e"+(i>=0?"+":"")+o.toString();return n.sign+p}function lJ(e,t){if(isNaN(e)||!isFinite(e))return String(e);var r=KE(e),n=typeof t=="number"?jI(r,r.exponent+1+t):r,i=n.coefficients,a=n.exponent+1,o=a+(t||0);return i.length<o&&(i=i.concat(XE(o-i.length))),a<0&&(i=XE(-a+1).concat(i),a=1),a<i.length&&i.splice(a,0,a===0?"0.":"."),n.sign+i.join("")}function M0e(e,t){if(isNaN(e)||!isFinite(e))return String(e);var r=KE(e),n=t?jI(r,t):r,i=n.coefficients,a=n.exponent;i.length<t&&(i=i.concat(XE(t-i.length)));var o=i.shift();return n.sign+o+(i.length>0?"."+i.join(""):"")+"e"+(a>=0?"+":"")+a}function Art(e,t,r){if(isNaN(e)||!isFinite(e))return String(e);var n=k0e(r?.lowerExp,-3),i=k0e(r?.upperExp,5),a=KE(e),o=t?jI(a,t):a;if(o.exponent<n||o.exponent>=i)return M0e(e,t);var s=o.coefficients,l=o.exponent;s.length<t&&(s=s.concat(XE(t-s.length))),s=s.concat(XE(l-s.length+1+(s.length<t?t-s.length:0))),s=XE(-l).concat(s);var u=l>0?l:0;return u<s.length-1&&s.splice(u+1,0,"."),o.sign+s.join("")}function jI(e,t){for(var r={sign:e.sign,coefficients:e.coefficients,exponent:e.exponent},n=r.coefficients;t<=0;)n.unshift(0),r.exponent++,t++;if(n.length>t){var i=n.splice(t,n.length-t);if(i[0]>=5){var a=t-1;for(n[a]++;n[a]===10;)n.pop(),a===0&&(n.unshift(0),r.exponent++,a++),a--,n[a]++}}return r}function XE(e){for(var t=[],r=0;r<e;r++)t.push(0);return t}function O0e(e){return e.toExponential().replace(/e.*$/,"").replace(/^0\.?0*|\./,"").length}var vrt=Number.EPSILON||2220446049250313e-31;function go(e,t,r){if(r==null)return e===t;if(e===t)return!0;if(isNaN(e)||isNaN(t))return!1;if(isFinite(e)&&isFinite(t)){var n=Math.abs(e-t);return n<=vrt?!0:n<=Math.max(Math.abs(e),Math.abs(t))*r}return!1}var F0e=Math.acosh||function(e){return Math.log(Math.sqrt(e*e-1)+e)},j0e=Math.asinh||function(e){return Math.log(Math.sqrt(e*e+1)+e)},P0e=Math.atanh||function(e){return Math.log((1+e)/(1-e))/2},PI=Math.cosh||function(e){return(Math.exp(e)+Math.exp(-e))/2},_0e=Math.sinh||function(e){return(Math.exp(e)-Math.exp(-e))/2},_I=Math.tanh||function(e){var t=Math.exp(2*e);return(t-1)/(t+1)};function I0e(e,t){var r=e>0?!0:e<0?!1:1/e===1/0,n=t>0?!0:t<0?!1:1/t===1/0;return r^n?-e:e}function E0e(e,t){if(hr(e))return e;if(er(e))return e.toNumber();t()}function k0e(e,t){return hr(e)?e:er(e)?e.toNumber():t}function X(e,t,r,n){function i(a){var o=x0e(a,t.map(uJ));return yrt(e,t,a),r(o)}return i.isFactory=!0,i.fn=e,i.dependencies=t.slice().sort(),n&&(i.meta=n),i}function _x(e){return typeof e=="function"&&typeof e.fn=="string"&&Array.isArray(e.dependencies)}function yrt(e,t,r){var n=t.filter(a=>!brt(a)).every(a=>r[a]!==void 0);if(!n){var i=t.filter(a=>r[a]===void 0);throw new Error('Cannot create function "'.concat(e,'", ')+"some dependencies are missing: ".concat(i.map(a=>'"'.concat(a,'"')).join(", "),"."))}}function brt(e){return e&&e[0]==="?"}function uJ(e){return e&&e[0]==="?"?e.slice(1):e}function Oa(e,t){if(q0e(e)&&L0e(e,t))return e[t];throw typeof e[t]=="function"&&II(e,t)?new Error('Cannot access method "'+t+'" as a property'):new Error('No access to property "'+t+'"')}function yg(e,t,r){if(q0e(e)&&L0e(e,t))return e[t]=r,r;throw new Error('No access to property "'+t+'"')}function B0e(e,t){return t in e}function L0e(e,t){return!e||typeof e!="object"?!1:Pt(xrt,t)?!0:!(t in Object.prototype||t in Function.prototype)}function R0e(e,t){if(!II(e,t))throw new Error('No access to method "'+t+'"');return e[t]}function II(e,t){return e==null||typeof e[t]!="function"||Pt(e,t)&&Object.getPrototypeOf&&t in Object.getPrototypeOf(e)?!1:Pt(wrt,t)?!0:!(t in Object.prototype||t in Function.prototype)}function q0e(e){return typeof e=="object"&&e&&e.constructor===Object}var xrt={length:!0,name:!0},wrt={toString:!0,valueOf:!0,toLocaleString:!0};var Ix=class{constructor(t){this.wrappedObject=t,this[Symbol.iterator]=this.entries}keys(){return Object.keys(this.wrappedObject).values()}get(t){return Oa(this.wrappedObject,t)}set(t,r){return yg(this.wrappedObject,t,r),this}has(t){return B0e(this.wrappedObject,t)}entries(){return $0e(this.keys(),t=>[t,this.get(t)])}forEach(t){for(var r of this.keys())t(this.get(r),r,this)}delete(t){delete this.wrappedObject[t]}clear(){for(var t of this.keys())this.delete(t)}get size(){return Object.keys(this.wrappedObject).length}},JE=class{constructor(t,r,n){this.a=t,this.b=r,this.bKeys=n,this[Symbol.iterator]=this.entries}get(t){return this.bKeys.has(t)?this.b.get(t):this.a.get(t)}set(t,r){return this.bKeys.has(t)?this.b.set(t,r):this.a.set(t,r),this}has(t){return this.b.has(t)||this.a.has(t)}keys(){return new Set([...this.a.keys(),...this.b.keys()])[Symbol.iterator]()}entries(){return $0e(this.keys(),t=>[t,this.get(t)])}forEach(t){for(var r of this.keys())t(this.get(r),r,this)}delete(t){return this.bKeys.has(t)?this.b.delete(t):this.a.delete(t)}clear(){this.a.clear(),this.b.clear()}get size(){return[...this.keys()].length}};function $0e(e,t){return{next:()=>{var r=e.next();return r.done?r:{value:t(r.value),done:!1}}}}function D1(){return new Map}function k0(e){if(!e)return D1();if(cJ(e))return e;if(Ag(e))return new Ix(e);throw new Error("createMap can create maps from objects or Maps")}function z0e(e){if(e instanceof Ix)return e.wrappedObject;var t={};for(var r of e.keys()){var n=e.get(r);yg(t,r,n)}return t}function cJ(e){return e?e instanceof Map||e instanceof Ix||typeof e.set=="function"&&typeof e.get=="function"&&typeof e.keys=="function"&&typeof e.has=="function":!1}var U0e=function(){return U0e=pJ.default.create,pJ.default},Srt=["?BigNumber","?Complex","?DenseMatrix","?Fraction"],LI=X("typed",Srt,function(t){var{BigNumber:r,Complex:n,DenseMatrix:i,Fraction:a}=t,o=U0e();return o.clear(),o.addTypes([{name:"number",test:hr},{name:"Complex",test:ol},{name:"BigNumber",test:er},{name:"Fraction",test:Pd},{name:"Unit",test:hs},{name:"identifier",test:s=>Ya&&/^(?:[A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF])(?:[0-9A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF])*$/.test(s)},{name:"string",test:Ya},{name:"Chain",test:WE},{name:"Array",test:mn},{name:"Matrix",test:jt},{name:"DenseMatrix",test:E0},{name:"SparseMatrix",test:_d},{name:"Range",test:C1},{name:"Index",test:gg},{name:"boolean",test:gI},{name:"ResultSet",test:AI},{name:"Help",test:GE},{name:"function",test:vI},{name:"Date",test:yI},{name:"RegExp",test:bI},{name:"null",test:xI},{name:"undefined",test:wI},{name:"AccessorNode",test:Yc},{name:"ArrayNode",test:sl},{name:"AssignmentNode",test:SI},{name:"BlockNode",test:EI},{name:"ConditionalNode",test:kI},{name:"ConstantNode",test:Hr},{name:"FunctionNode",test:du},{name:"FunctionAssignmentNode",test:Vp},{name:"IndexNode",test:If},{name:"Node",test:an},{name:"ObjectNode",test:vg},{name:"OperatorNode",test:ta},{name:"ParenthesisNode",test:ll},{name:"RangeNode",test:CI},{name:"RelationalNode",test:DI},{name:"SymbolNode",test:Oi},{name:"Map",test:cJ},{name:"Object",test:Ag}]),o.addConversions([{from:"number",to:"BigNumber",convert:function(l){if(r||fJ(l),O0e(l)>15)throw new TypeError("Cannot implicitly convert a number with >15 significant digits to BigNumber (value: "+l+"). Use function bignumber(x) to convert to BigNumber.");return new r(l)}},{from:"number",to:"Complex",convert:function(l){return n||BI(l),new n(l,0)}},{from:"BigNumber",to:"Complex",convert:function(l){return n||BI(l),new n(l.toNumber(),0)}},{from:"Fraction",to:"BigNumber",convert:function(l){throw new TypeError("Cannot implicitly convert a Fraction to BigNumber or vice versa. Use function bignumber(x) to convert to BigNumber or fraction(x) to convert to Fraction.")}},{from:"Fraction",to:"Complex",convert:function(l){return n||BI(l),new n(l.valueOf(),0)}},{from:"number",to:"Fraction",convert:function(l){a||dJ(l);var u=new a(l);if(u.valueOf()!==l)throw new TypeError("Cannot implicitly convert a number to a Fraction when there will be a loss of precision (value: "+l+"). Use function fraction(x) to convert to Fraction.");return u}},{from:"string",to:"number",convert:function(l){var u=Number(l);if(isNaN(u))throw new Error('Cannot convert "'+l+'" to a number');return u}},{from:"string",to:"BigNumber",convert:function(l){r||fJ(l);try{return new r(l)}catch{throw new Error('Cannot convert "'+l+'" to BigNumber')}}},{from:"string",to:"Fraction",convert:function(l){a||dJ(l);try{return new a(l)}catch{throw new Error('Cannot convert "'+l+'" to Fraction')}}},{from:"string",to:"Complex",convert:function(l){n||BI(l);try{return new n(l)}catch{throw new Error('Cannot convert "'+l+'" to Complex')}}},{from:"boolean",to:"number",convert:function(l){return+l}},{from:"boolean",to:"BigNumber",convert:function(l){return r||fJ(l),new r(+l)}},{from:"boolean",to:"Fraction",convert:function(l){return a||dJ(l),new a(+l)}},{from:"boolean",to:"string",convert:function(l){return String(l)}},{from:"Array",to:"Matrix",convert:function(l){return i||Ert(),new i(l)}},{from:"Matrix",to:"Array",convert:function(l){return l.valueOf()}}]),o.onMismatch=(s,l,u)=>{var c=o.createError(s,l,u);if(["wrongType","mismatch"].includes(c.data.category)&&l.length===1&&ho(l[0])&&u.some(d=>!d.params.includes(","))){var f=new TypeError("Function '".concat(s,"' doesn't apply to matrices. To call it ")+"elementwise on a matrix 'M', try 'map(M, ".concat(s,")'."));throw f.data=c.data,f}throw c},o.onMismatch=(s,l,u)=>{var c=o.createError(s,l,u);if(["wrongType","mismatch"].includes(c.data.category)&&l.length===1&&ho(l[0])&&u.some(d=>!d.params.includes(","))){var f=new TypeError("Function '".concat(s,"' doesn't apply to matrices. To call it ")+"elementwise on a matrix 'M', try 'map(M, ".concat(s,")'."));throw f.data=c.data,f}throw c},o});function fJ(e){throw new Error("Cannot convert value ".concat(e," into a BigNumber: no class 'BigNumber' provided"))}function BI(e){throw new Error("Cannot convert value ".concat(e," into a Complex number: no class 'Complex' provided"))}function Ert(){throw new Error("Cannot convert array into a Matrix: no class 'DenseMatrix' provided")}function dJ(e){throw new Error("Cannot convert value ".concat(e," into a Fraction, no class 'Fraction' provided."))}var krt="ResultSet",Crt=[],RI=X(krt,Crt,()=>{function e(t){if(!(this instanceof e))throw new SyntaxError("Constructor must be called with the new operator");this.entries=t||[]}return e.prototype.type="ResultSet",e.prototype.isResultSet=!0,e.prototype.valueOf=function(){return this.entries},e.prototype.toString=function(){return"["+this.entries.join(", ")+"]"},e.prototype.toJSON=function(){return{mathjs:"ResultSet",entries:this.entries}},e.fromJSON=function(t){return new e(t.entries)},e},{isClass:!0});var ZE=9e15,O1=1e9,mJ="0123456789abcdef",zI="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",UI="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",hJ={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-ZE,maxE:ZE,crypto:!1},W0e,C0,hn=!0,VI="[DecimalError] ",M1=VI+"Invalid argument: ",Q0e=VI+"Precision limit exceeded",Y0e=VI+"crypto unavailable",X0e="[object Decimal]",nc=Math.floor,ul=Math.pow,Drt=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,Trt=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,Nrt=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,K0e=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,rh=1e7,Vr=7,Mrt=9007199254740991,Ort=zI.length-1,gJ=UI.length-1,yt={toStringTag:X0e};yt.absoluteValue=yt.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),jr(e)};yt.ceil=function(){return jr(new this.constructor(this),this.e+1,2)};yt.clampedTo=yt.clamp=function(e,t){var r,n=this,i=n.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(M1+t);return r=n.cmp(e),r<0?e:n.cmp(t)>0?t:new i(n)};yt.comparedTo=yt.cmp=function(e){var t,r,n,i,a=this,o=a.d,s=(e=new a.constructor(e)).d,l=a.s,u=e.s;if(!o||!s)return!l||!u?NaN:l!==u?l:o===s?0:!o^l<0?1:-1;if(!o[0]||!s[0])return o[0]?l:s[0]?-u:0;if(l!==u)return l;if(a.e!==e.e)return a.e>e.e^l<0?1:-1;for(n=o.length,i=s.length,t=0,r=n<i?n:i;t<r;++t)if(o[t]!==s[t])return o[t]>s[t]^l<0?1:-1;return n===i?0:n>i^l<0?1:-1};yt.cosine=yt.cos=function(){var e,t,r=this,n=r.constructor;return r.d?r.d[0]?(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+Vr,n.rounding=1,r=Frt(n,rve(n,r)),n.precision=e,n.rounding=t,jr(C0==2||C0==3?r.neg():r,e,t,!0)):new n(1):new n(NaN)};yt.cubeRoot=yt.cbrt=function(){var e,t,r,n,i,a,o,s,l,u,c=this,f=c.constructor;if(!c.isFinite()||c.isZero())return new f(c);for(hn=!1,a=c.s*ul(c.s*c,1/3),!a||Math.abs(a)==1/0?(r=pu(c.d),e=c.e,(a=(e-r.length+1)%3)&&(r+=a==1||a==-2?"0":"00"),a=ul(r,1/3),e=nc((e+1)/3)-(e%3==(e<0?-1:2)),a==1/0?r="5e"+e:(r=a.toExponential(),r=r.slice(0,r.indexOf("e")+1)+e),n=new f(r),n.s=c.s):n=new f(a.toString()),o=(e=f.precision)+3;;)if(s=n,l=s.times(s).times(s),u=l.plus(c),n=Fa(u.plus(c).times(s),u.plus(l),o+2,1),pu(s.d).slice(0,o)===(r=pu(n.d)).slice(0,o))if(r=r.slice(o-3,o+1),r=="9999"||!i&&r=="4999"){if(!i&&(jr(s,e+1,0),s.times(s).times(s).eq(c))){n=s;break}o+=4,i=1}else{(!+r||!+r.slice(1)&&r.charAt(0)=="5")&&(jr(n,e+1,1),t=!n.times(n).times(n).eq(c));break}return hn=!0,jr(n,e,f.rounding,t)};yt.decimalPlaces=yt.dp=function(){var e,t=this.d,r=NaN;if(t){if(e=t.length-1,r=(e-nc(this.e/Vr))*Vr,e=t[e],e)for(;e%10==0;e/=10)r--;r<0&&(r=0)}return r};yt.dividedBy=yt.div=function(e){return Fa(this,new this.constructor(e))};yt.dividedToIntegerBy=yt.divToInt=function(e){var t=this,r=t.constructor;return jr(Fa(t,new r(e),0,1,1),r.precision,r.rounding)};yt.equals=yt.eq=function(e){return this.cmp(e)===0};yt.floor=function(){return jr(new this.constructor(this),this.e+1,3)};yt.greaterThan=yt.gt=function(e){return this.cmp(e)>0};yt.greaterThanOrEqualTo=yt.gte=function(e){var t=this.cmp(e);return t==1||t===0};yt.hyperbolicCosine=yt.cosh=function(){var e,t,r,n,i,a=this,o=a.constructor,s=new o(1);if(!a.isFinite())return new o(a.s?1/0:NaN);if(a.isZero())return s;r=o.precision,n=o.rounding,o.precision=r+Math.max(a.e,a.sd())+4,o.rounding=1,i=a.d.length,i<32?(e=Math.ceil(i/3),t=(1/WI(4,e)).toString()):(e=16,t="2.3283064365386962890625e-10"),a=ek(o,1,a.times(t),new o(1),!0);for(var l,u=e,c=new o(8);u--;)l=a.times(a),a=s.minus(l.times(c.minus(l.times(c))));return jr(a,o.precision=r,o.rounding=n,!0)};yt.hyperbolicSine=yt.sinh=function(){var e,t,r,n,i=this,a=i.constructor;if(!i.isFinite()||i.isZero())return new a(i);if(t=a.precision,r=a.rounding,a.precision=t+Math.max(i.e,i.sd())+4,a.rounding=1,n=i.d.length,n<3)i=ek(a,2,i,i,!0);else{e=1.4*Math.sqrt(n),e=e>16?16:e|0,i=i.times(1/WI(5,e)),i=ek(a,2,i,i,!0);for(var o,s=new a(5),l=new a(16),u=new a(20);e--;)o=i.times(i),i=i.times(s.plus(o.times(l.times(o).plus(u))))}return a.precision=t,a.rounding=r,jr(i,t,r,!0)};yt.hyperbolicTangent=yt.tanh=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+7,n.rounding=1,Fa(r.sinh(),r.cosh(),n.precision=e,n.rounding=t)):new n(r.s)};yt.inverseCosine=yt.acos=function(){var e=this,t=e.constructor,r=e.abs().cmp(1),n=t.precision,i=t.rounding;return r!==-1?r===0?e.isNeg()?bg(t,n,i):new t(0):new t(NaN):e.isZero()?bg(t,n+4,i).times(.5):(t.precision=n+6,t.rounding=1,e=new t(1).minus(e).div(e.plus(1)).sqrt().atan(),t.precision=n,t.rounding=i,e.times(2))};yt.inverseHyperbolicCosine=yt.acosh=function(){var e,t,r=this,n=r.constructor;return r.lte(1)?new n(r.eq(1)?0:NaN):r.isFinite()?(e=n.precision,t=n.rounding,n.precision=e+Math.max(Math.abs(r.e),r.sd())+4,n.rounding=1,hn=!1,r=r.times(r).minus(1).sqrt().plus(r),hn=!0,n.precision=e,n.rounding=t,r.ln()):new n(r)};yt.inverseHyperbolicSine=yt.asinh=function(){var e,t,r=this,n=r.constructor;return!r.isFinite()||r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+2*Math.max(Math.abs(r.e),r.sd())+6,n.rounding=1,hn=!1,r=r.times(r).plus(1).sqrt().plus(r),hn=!0,n.precision=e,n.rounding=t,r.ln())};yt.inverseHyperbolicTangent=yt.atanh=function(){var e,t,r,n,i=this,a=i.constructor;return i.isFinite()?i.e>=0?new a(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=a.precision,t=a.rounding,n=i.sd(),Math.max(n,e)<2*-i.e-1?jr(new a(i),e,t,!0):(a.precision=r=n-i.e,i=Fa(i.plus(1),new a(1).minus(i),r+e,1),a.precision=e+4,a.rounding=1,i=i.ln(),a.precision=e,a.rounding=t,i.times(.5))):new a(NaN)};yt.inverseSine=yt.asin=function(){var e,t,r,n,i=this,a=i.constructor;return i.isZero()?new a(i):(t=i.abs().cmp(1),r=a.precision,n=a.rounding,t!==-1?t===0?(e=bg(a,r+4,n).times(.5),e.s=i.s,e):new a(NaN):(a.precision=r+6,a.rounding=1,i=i.div(new a(1).minus(i.times(i)).sqrt().plus(1)).atan(),a.precision=r,a.rounding=n,i.times(2)))};yt.inverseTangent=yt.atan=function(){var e,t,r,n,i,a,o,s,l,u=this,c=u.constructor,f=c.precision,d=c.rounding;if(u.isFinite()){if(u.isZero())return new c(u);if(u.abs().eq(1)&&f+4<=gJ)return o=bg(c,f+4,d).times(.25),o.s=u.s,o}else{if(!u.s)return new c(NaN);if(f+4<=gJ)return o=bg(c,f+4,d).times(.5),o.s=u.s,o}for(c.precision=s=f+10,c.rounding=1,r=Math.min(28,s/Vr+2|0),e=r;e;--e)u=u.div(u.times(u).plus(1).sqrt().plus(1));for(hn=!1,t=Math.ceil(s/Vr),n=1,l=u.times(u),o=new c(u),i=u;e!==-1;)if(i=i.times(l),a=o.minus(i.div(n+=2)),i=i.times(l),o=a.plus(i.div(n+=2)),o.d[t]!==void 0)for(e=t;o.d[e]===a.d[e]&&e--;);return r&&(o=o.times(2<<r-1)),hn=!0,jr(o,c.precision=f,c.rounding=d,!0)};yt.isFinite=function(){return!!this.d};yt.isInteger=yt.isInt=function(){return!!this.d&&nc(this.e/Vr)>this.d.length-2};yt.isNaN=function(){return!this.s};yt.isNegative=yt.isNeg=function(){return this.s<0};yt.isPositive=yt.isPos=function(){return this.s>0};yt.isZero=function(){return!!this.d&&this.d[0]===0};yt.lessThan=yt.lt=function(e){return this.cmp(e)<0};yt.lessThanOrEqualTo=yt.lte=function(e){return this.cmp(e)<1};yt.logarithm=yt.log=function(e){var t,r,n,i,a,o,s,l,u=this,c=u.constructor,f=c.precision,d=c.rounding,p=5;if(e==null)e=new c(10),t=!0;else{if(e=new c(e),r=e.d,e.s<0||!r||!r[0]||e.eq(1))return new c(NaN);t=e.eq(10)}if(r=u.d,u.s<0||!r||!r[0]||u.eq(1))return new c(r&&!r[0]?-1/0:u.s!=1?NaN:r?0:1/0);if(t)if(r.length>1)a=!0;else{for(i=r[0];i%10===0;)i/=10;a=i!==1}if(hn=!1,s=f+p,o=N1(u,s),n=t?HI(c,s+10):N1(e,s),l=Fa(o,n,s,1),u3(l.d,i=f,d))do if(s+=10,o=N1(u,s),n=t?HI(c,s+10):N1(e,s),l=Fa(o,n,s,1),!a){+pu(l.d).slice(i+1,i+15)+1==1e14&&(l=jr(l,f+1,0));break}while(u3(l.d,i+=10,d));return hn=!0,jr(l,f,d)};yt.minus=yt.sub=function(e){var t,r,n,i,a,o,s,l,u,c,f,d,p=this,h=p.constructor;if(e=new h(e),!p.d||!e.d)return!p.s||!e.s?e=new h(NaN):p.d?e.s=-e.s:e=new h(e.d||p.s!==e.s?p:NaN),e;if(p.s!=e.s)return e.s=-e.s,p.plus(e);if(u=p.d,d=e.d,s=h.precision,l=h.rounding,!u[0]||!d[0]){if(d[0])e.s=-e.s;else if(u[0])e=new h(p);else return new h(l===3?-0:0);return hn?jr(e,s,l):e}if(r=nc(e.e/Vr),c=nc(p.e/Vr),u=u.slice(),a=c-r,a){for(f=a<0,f?(t=u,a=-a,o=d.length):(t=d,r=c,o=u.length),n=Math.max(Math.ceil(s/Vr),o)+2,a>n&&(a=n,t.length=1),t.reverse(),n=a;n--;)t.push(0);t.reverse()}else{for(n=u.length,o=d.length,f=n<o,f&&(o=n),n=0;n<o;n++)if(u[n]!=d[n]){f=u[n]<d[n];break}a=0}for(f&&(t=u,u=d,d=t,e.s=-e.s),o=u.length,n=d.length-o;n>0;--n)u[o++]=0;for(n=d.length;n>a;){if(u[--n]<d[n]){for(i=n;i&&u[--i]===0;)u[i]=rh-1;--u[i],u[n]+=rh}u[n]-=d[n]}for(;u[--o]===0;)u.pop();for(;u[0]===0;u.shift())--r;return u[0]?(e.d=u,e.e=GI(u,r),hn?jr(e,s,l):e):new h(l===3?-0:0)};yt.modulo=yt.mod=function(e){var t,r=this,n=r.constructor;return e=new n(e),!r.d||!e.s||e.d&&!e.d[0]?new n(NaN):!e.d||r.d&&!r.d[0]?jr(new n(r),n.precision,n.rounding):(hn=!1,n.modulo==9?(t=Fa(r,e.abs(),0,3,1),t.s*=e.s):t=Fa(r,e,0,n.modulo,1),t=t.times(e),hn=!0,r.minus(t))};yt.naturalExponential=yt.exp=function(){return AJ(this)};yt.naturalLogarithm=yt.ln=function(){return N1(this)};yt.negated=yt.neg=function(){var e=new this.constructor(this);return e.s=-e.s,jr(e)};yt.plus=yt.add=function(e){var t,r,n,i,a,o,s,l,u,c,f=this,d=f.constructor;if(e=new d(e),!f.d||!e.d)return!f.s||!e.s?e=new d(NaN):f.d||(e=new d(e.d||f.s===e.s?f:NaN)),e;if(f.s!=e.s)return e.s=-e.s,f.minus(e);if(u=f.d,c=e.d,s=d.precision,l=d.rounding,!u[0]||!c[0])return c[0]||(e=new d(f)),hn?jr(e,s,l):e;if(a=nc(f.e/Vr),n=nc(e.e/Vr),u=u.slice(),i=a-n,i){for(i<0?(r=u,i=-i,o=c.length):(r=c,n=a,o=u.length),a=Math.ceil(s/Vr),o=a>o?a+1:o+1,i>o&&(i=o,r.length=1),r.reverse();i--;)r.push(0);r.reverse()}for(o=u.length,i=c.length,o-i<0&&(i=o,r=c,c=u,u=r),t=0;i;)t=(u[--i]=u[i]+c[i]+t)/rh|0,u[i]%=rh;for(t&&(u.unshift(t),++n),o=u.length;u[--o]==0;)u.pop();return e.d=u,e.e=GI(u,n),hn?jr(e,s,l):e};yt.precision=yt.sd=function(e){var t,r=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(M1+e);return r.d?(t=J0e(r.d),e&&r.e+1>t&&(t=r.e+1)):t=NaN,t};yt.round=function(){var e=this,t=e.constructor;return jr(new t(e),e.e+1,t.rounding)};yt.sine=yt.sin=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+Math.max(r.e,r.sd())+Vr,n.rounding=1,r=Prt(n,rve(n,r)),n.precision=e,n.rounding=t,jr(C0>2?r.neg():r,e,t,!0)):new n(NaN)};yt.squareRoot=yt.sqrt=function(){var e,t,r,n,i,a,o=this,s=o.d,l=o.e,u=o.s,c=o.constructor;if(u!==1||!s||!s[0])return new c(!u||u<0&&(!s||s[0])?NaN:s?o:1/0);for(hn=!1,u=Math.sqrt(+o),u==0||u==1/0?(t=pu(s),(t.length+l)%2==0&&(t+="0"),u=Math.sqrt(t),l=nc((l+1)/2)-(l<0||l%2),u==1/0?t="5e"+l:(t=u.toExponential(),t=t.slice(0,t.indexOf("e")+1)+l),n=new c(t)):n=new c(u.toString()),r=(l=c.precision)+3;;)if(a=n,n=a.plus(Fa(o,a,r+2,1)).times(.5),pu(a.d).slice(0,r)===(t=pu(n.d)).slice(0,r))if(t=t.slice(r-3,r+1),t=="9999"||!i&&t=="4999"){if(!i&&(jr(a,l+1,0),a.times(a).eq(o))){n=a;break}r+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(jr(n,l+1,1),e=!n.times(n).eq(o));break}return hn=!0,jr(n,l,c.rounding,e)};yt.tangent=yt.tan=function(){var e,t,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(e=n.precision,t=n.rounding,n.precision=e+10,n.rounding=1,r=r.sin(),r.s=1,r=Fa(r,new n(1).minus(r.times(r)).sqrt(),e+10,0),n.precision=e,n.rounding=t,jr(C0==2||C0==4?r.neg():r,e,t,!0)):new n(NaN)};yt.times=yt.mul=function(e){var t,r,n,i,a,o,s,l,u,c=this,f=c.constructor,d=c.d,p=(e=new f(e)).d;if(e.s*=c.s,!d||!d[0]||!p||!p[0])return new f(!e.s||d&&!d[0]&&!p||p&&!p[0]&&!d?NaN:!d||!p?e.s/0:e.s*0);for(r=nc(c.e/Vr)+nc(e.e/Vr),l=d.length,u=p.length,l<u&&(a=d,d=p,p=a,o=l,l=u,u=o),a=[],o=l+u,n=o;n--;)a.push(0);for(n=u;--n>=0;){for(t=0,i=l+n;i>n;)s=a[i]+p[n]*d[i-n-1]+t,a[i--]=s%rh|0,t=s/rh|0;a[i]=(a[i]+t)%rh|0}for(;!a[--o];)a.pop();return t?++r:a.shift(),e.d=a,e.e=GI(a,r),hn?jr(e,f.precision,f.rounding):e};yt.toBinary=function(e,t){return vJ(this,2,e,t)};yt.toDecimalPlaces=yt.toDP=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(Bf(e,0,O1),t===void 0?t=n.rounding:Bf(t,0,8),jr(r,e+r.e+1,t))};yt.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=xg(n,!0):(Bf(e,0,O1),t===void 0?t=i.rounding:Bf(t,0,8),n=jr(new i(n),e+1,t),r=xg(n,!0,e+1)),n.isNeg()&&!n.isZero()?"-"+r:r};yt.toFixed=function(e,t){var r,n,i=this,a=i.constructor;return e===void 0?r=xg(i):(Bf(e,0,O1),t===void 0?t=a.rounding:Bf(t,0,8),n=jr(new a(i),e+i.e+1,t),r=xg(n,!1,e+n.e+1)),i.isNeg()&&!i.isZero()?"-"+r:r};yt.toFraction=function(e){var t,r,n,i,a,o,s,l,u,c,f,d,p=this,h=p.d,m=p.constructor;if(!h)return new m(p);if(u=r=new m(1),n=l=new m(0),t=new m(n),a=t.e=J0e(h)-p.e-1,o=a%Vr,t.d[0]=ul(10,o<0?Vr+o:o),e==null)e=a>0?t:u;else{if(s=new m(e),!s.isInt()||s.lt(u))throw Error(M1+s);e=s.gt(t)?a>0?t:u:s}for(hn=!1,s=new m(pu(h)),c=m.precision,m.precision=a=h.length*Vr*2;f=Fa(s,t,0,1,1),i=r.plus(f.times(n)),i.cmp(e)!=1;)r=n,n=i,i=u,u=l.plus(f.times(i)),l=i,i=t,t=s.minus(f.times(i)),s=i;return i=Fa(e.minus(r),n,0,1,1),l=l.plus(i.times(u)),r=r.plus(i.times(n)),l.s=u.s=p.s,d=Fa(u,n,a,1).minus(p).abs().cmp(Fa(l,r,a,1).minus(p).abs())<1?[u,n]:[l,r],m.precision=c,hn=!0,d};yt.toHexadecimal=yt.toHex=function(e,t){return vJ(this,16,e,t)};yt.toNearest=function(e,t){var r=this,n=r.constructor;if(r=new n(r),e==null){if(!r.d)return r;e=new n(1),t=n.rounding}else{if(e=new n(e),t===void 0?t=n.rounding:Bf(t,0,8),!r.d)return e.s?r:e;if(!e.d)return e.s&&(e.s=r.s),e}return e.d[0]?(hn=!1,r=Fa(r,e,0,t,1).times(e),hn=!0,jr(r)):(e.s=r.s,r=e),r};yt.toNumber=function(){return+this};yt.toOctal=function(e,t){return vJ(this,8,e,t)};yt.toPower=yt.pow=function(e){var t,r,n,i,a,o,s=this,l=s.constructor,u=+(e=new l(e));if(!s.d||!e.d||!s.d[0]||!e.d[0])return new l(ul(+s,u));if(s=new l(s),s.eq(1))return s;if(n=l.precision,a=l.rounding,e.eq(1))return jr(s,n,a);if(t=nc(e.e/Vr),t>=e.d.length-1&&(r=u<0?-u:u)<=Mrt)return i=Z0e(l,s,r,n),e.s<0?new l(1).div(i):jr(i,n,a);if(o=s.s,o<0){if(t<e.d.length-1)return new l(NaN);if((e.d[t]&1)==0&&(o=1),s.e==0&&s.d[0]==1&&s.d.length==1)return s.s=o,s}return r=ul(+s,u),t=r==0||!isFinite(r)?nc(u*(Math.log("0."+pu(s.d))/Math.LN10+s.e+1)):new l(r+"").e,t>l.maxE+1||t<l.minE-1?new l(t>0?o/0:0):(hn=!1,l.rounding=s.s=1,r=Math.min(12,(t+"").length),i=AJ(e.times(N1(s,n+r)),n),i.d&&(i=jr(i,n+5,1),u3(i.d,n,a)&&(t=n+10,i=jr(AJ(e.times(N1(s,t+r)),t),t+5,1),+pu(i.d).slice(n+1,n+15)+1==1e14&&(i=jr(i,n+1,0)))),i.s=o,hn=!0,l.rounding=a,jr(i,n,a))};yt.toPrecision=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=xg(n,n.e<=i.toExpNeg||n.e>=i.toExpPos):(Bf(e,1,O1),t===void 0?t=i.rounding:Bf(t,0,8),n=jr(new i(n),e,t),r=xg(n,e<=n.e||n.e<=i.toExpNeg,e)),n.isNeg()&&!n.isZero()?"-"+r:r};yt.toSignificantDigits=yt.toSD=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(Bf(e,1,O1),t===void 0?t=n.rounding:Bf(t,0,8)),jr(new n(r),e,t)};yt.toString=function(){var e=this,t=e.constructor,r=xg(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?"-"+r:r};yt.truncated=yt.trunc=function(){return jr(new this.constructor(this),this.e+1,1)};yt.valueOf=yt.toJSON=function(){var e=this,t=e.constructor,r=xg(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?"-"+r:r};function pu(e){var t,r,n,i=e.length-1,a="",o=e[0];if(i>0){for(a+=o,t=1;t<i;t++)n=e[t]+"",r=Vr-n.length,r&&(a+=T1(r)),a+=n;o=e[t],n=o+"",r=Vr-n.length,r&&(a+=T1(r))}else if(o===0)return"0";for(;o%10===0;)o/=10;return a+o}function Bf(e,t,r){if(e!==~~e||e<t||e>r)throw Error(M1+e)}function u3(e,t,r,n){var i,a,o,s;for(a=e[0];a>=10;a/=10)--t;return--t<0?(t+=Vr,i=0):(i=Math.ceil((t+1)/Vr),t%=Vr),a=ul(10,Vr-t),s=e[i]%a|0,n==null?t<3?(t==0?s=s/100|0:t==1&&(s=s/10|0),o=r<4&&s==99999||r>3&&s==49999||s==5e4||s==0):o=(r<4&&s+1==a||r>3&&s+1==a/2)&&(e[i+1]/a/100|0)==ul(10,t-2)-1||(s==a/2||s==0)&&(e[i+1]/a/100|0)==0:t<4?(t==0?s=s/1e3|0:t==1?s=s/100|0:t==2&&(s=s/10|0),o=(n||r<4)&&s==9999||!n&&r>3&&s==4999):o=((n||r<4)&&s+1==a||!n&&r>3&&s+1==a/2)&&(e[i+1]/a/1e3|0)==ul(10,t-3)-1,o}function qI(e,t,r){for(var n,i=[0],a,o=0,s=e.length;o<s;){for(a=i.length;a--;)i[a]*=t;for(i[0]+=mJ.indexOf(e.charAt(o++)),n=0;n<i.length;n++)i[n]>r-1&&(i[n+1]===void 0&&(i[n+1]=0),i[n+1]+=i[n]/r|0,i[n]%=r)}return i.reverse()}function Frt(e,t){var r,n,i;if(t.isZero())return t;n=t.d.length,n<32?(r=Math.ceil(n/3),i=(1/WI(4,r)).toString()):(r=16,i="2.3283064365386962890625e-10"),e.precision+=r,t=ek(e,1,t.times(i),new e(1));for(var a=r;a--;){var o=t.times(t);t=o.times(o).minus(o).times(8).plus(1)}return e.precision-=r,t}var Fa=function(){function e(n,i,a){var o,s=0,l=n.length;for(n=n.slice();l--;)o=n[l]*i+s,n[l]=o%a|0,s=o/a|0;return s&&n.unshift(s),n}function t(n,i,a,o){var s,l;if(a!=o)l=a>o?1:-1;else for(s=l=0;s<a;s++)if(n[s]!=i[s]){l=n[s]>i[s]?1:-1;break}return l}function r(n,i,a,o){for(var s=0;a--;)n[a]-=s,s=n[a]<i[a]?1:0,n[a]=s*o+n[a]-i[a];for(;!n[0]&&n.length>1;)n.shift()}return function(n,i,a,o,s,l){var u,c,f,d,p,h,m,v,A,x,g,w,b,y,S,T,D,k,M,E,O=n.constructor,P=n.s==i.s?1:-1,_=n.d,B=i.d;if(!_||!_[0]||!B||!B[0])return new O(!n.s||!i.s||(_?B&&_[0]==B[0]:!B)?NaN:_&&_[0]==0||!B?P*0:P/0);for(l?(p=1,c=n.e-i.e):(l=rh,p=Vr,c=nc(n.e/p)-nc(i.e/p)),M=B.length,D=_.length,A=new O(P),x=A.d=[],f=0;B[f]==(_[f]||0);f++);if(B[f]>(_[f]||0)&&c--,a==null?(y=a=O.precision,o=O.rounding):s?y=a+(n.e-i.e)+1:y=a,y<0)x.push(1),h=!0;else{if(y=y/p+2|0,f=0,M==1){for(d=0,B=B[0],y++;(f<D||d)&&y--;f++)S=d*l+(_[f]||0),x[f]=S/B|0,d=S%B|0;h=d||f<D}else{for(d=l/(B[0]+1)|0,d>1&&(B=e(B,d,l),_=e(_,d,l),M=B.length,D=_.length),T=M,g=_.slice(0,M),w=g.length;w<M;)g[w++]=0;E=B.slice(),E.unshift(0),k=B[0],B[1]>=l/2&&++k;do d=0,u=t(B,g,M,w),u<0?(b=g[0],M!=w&&(b=b*l+(g[1]||0)),d=b/k|0,d>1?(d>=l&&(d=l-1),m=e(B,d,l),v=m.length,w=g.length,u=t(m,g,v,w),u==1&&(d--,r(m,M<v?E:B,v,l))):(d==0&&(u=d=1),m=B.slice()),v=m.length,v<w&&m.unshift(0),r(g,m,w,l),u==-1&&(w=g.length,u=t(B,g,M,w),u<1&&(d++,r(g,M<w?E:B,w,l))),w=g.length):u===0&&(d++,g=[0]),x[f++]=d,u&&g[0]?g[w++]=_[T]||0:(g=[_[T]],w=1);while((T++<D||g[0]!==void 0)&&y--);h=g[0]!==void 0}x[0]||x.shift()}if(p==1)A.e=c,W0e=h;else{for(f=1,d=x[0];d>=10;d/=10)f++;A.e=f+c*p-1,jr(A,s?a+A.e+1:a,o,h)}return A}}();function jr(e,t,r,n){var i,a,o,s,l,u,c,f,d,p=e.constructor;e:if(t!=null){if(f=e.d,!f)return e;for(i=1,s=f[0];s>=10;s/=10)i++;if(a=t-i,a<0)a+=Vr,o=t,c=f[d=0],l=c/ul(10,i-o-1)%10|0;else if(d=Math.ceil((a+1)/Vr),s=f.length,d>=s)if(n){for(;s++<=d;)f.push(0);c=l=0,i=1,a%=Vr,o=a-Vr+1}else break e;else{for(c=s=f[d],i=1;s>=10;s/=10)i++;a%=Vr,o=a-Vr+i,l=o<0?0:c/ul(10,i-o-1)%10|0}if(n=n||t<0||f[d+1]!==void 0||(o<0?c:c%ul(10,i-o-1)),u=r<4?(l||n)&&(r==0||r==(e.s<0?3:2)):l>5||l==5&&(r==4||n||r==6&&(a>0?o>0?c/ul(10,i-o):0:f[d-1])%10&1||r==(e.s<0?8:7)),t<1||!f[0])return f.length=0,u?(t-=e.e+1,f[0]=ul(10,(Vr-t%Vr)%Vr),e.e=-t||0):f[0]=e.e=0,e;if(a==0?(f.length=d,s=1,d--):(f.length=d+1,s=ul(10,Vr-a),f[d]=o>0?(c/ul(10,i-o)%ul(10,o)|0)*s:0),u)for(;;)if(d==0){for(a=1,o=f[0];o>=10;o/=10)a++;for(o=f[0]+=s,s=1;o>=10;o/=10)s++;a!=s&&(e.e++,f[0]==rh&&(f[0]=1));break}else{if(f[d]+=s,f[d]!=rh)break;f[d--]=0,s=1}for(a=f.length;f[--a]===0;)f.pop()}return hn&&(e.e>p.maxE?(e.d=null,e.e=NaN):e.e<p.minE&&(e.e=0,e.d=[0])),e}function xg(e,t,r){if(!e.isFinite())return tve(e);var n,i=e.e,a=pu(e.d),o=a.length;return t?(r&&(n=r-o)>0?a=a.charAt(0)+"."+a.slice(1)+T1(n):o>1&&(a=a.charAt(0)+"."+a.slice(1)),a=a+(e.e<0?"e":"e+")+e.e):i<0?(a="0."+T1(-i-1)+a,r&&(n=r-o)>0&&(a+=T1(n))):i>=o?(a+=T1(i+1-o),r&&(n=r-i-1)>0&&(a=a+"."+T1(n))):((n=i+1)<o&&(a=a.slice(0,n)+"."+a.slice(n)),r&&(n=r-o)>0&&(i+1===o&&(a+="."),a+=T1(n))),a}function GI(e,t){var r=e[0];for(t*=Vr;r>=10;r/=10)t++;return t}function HI(e,t,r){if(t>Ort)throw hn=!0,r&&(e.precision=r),Error(Q0e);return jr(new e(zI),t,1,!0)}function bg(e,t,r){if(t>gJ)throw Error(Q0e);return jr(new e(UI),t,r,!0)}function J0e(e){var t=e.length-1,r=t*Vr+1;if(t=e[t],t){for(;t%10==0;t/=10)r--;for(t=e[0];t>=10;t/=10)r++}return r}function T1(e){for(var t="";e--;)t+="0";return t}function Z0e(e,t,r,n){var i,a=new e(1),o=Math.ceil(n/Vr+4);for(hn=!1;;){if(r%2&&(a=a.times(t),V0e(a.d,o)&&(i=!0)),r=nc(r/2),r===0){r=a.d.length-1,i&&a.d[r]===0&&++a.d[r];break}t=t.times(t),V0e(t.d,o)}return hn=!0,a}function H0e(e){return e.d[e.d.length-1]&1}function eve(e,t,r){for(var n,i,a=new e(t[0]),o=0;++o<t.length;){if(i=new e(t[o]),!i.s){a=i;break}n=a.cmp(i),(n===r||n===0&&a.s===r)&&(a=i)}return a}function AJ(e,t){var r,n,i,a,o,s,l,u=0,c=0,f=0,d=e.constructor,p=d.rounding,h=d.precision;if(!e.d||!e.d[0]||e.e>17)return new d(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:0/0);for(t==null?(hn=!1,l=h):l=t,s=new d(.03125);e.e>-2;)e=e.times(s),f+=5;for(n=Math.log(ul(2,f))/Math.LN10*2+5|0,l+=n,r=a=o=new d(1),d.precision=l;;){if(a=jr(a.times(e),l,1),r=r.times(++c),s=o.plus(Fa(a,r,l,1)),pu(s.d).slice(0,l)===pu(o.d).slice(0,l)){for(i=f;i--;)o=jr(o.times(o),l,1);if(t==null)if(u<3&&u3(o.d,l-n,p,u))d.precision=l+=10,r=a=s=new d(1),c=0,u++;else return jr(o,d.precision=h,p,hn=!0);else return d.precision=h,o}o=s}}function N1(e,t){var r,n,i,a,o,s,l,u,c,f,d,p=1,h=10,m=e,v=m.d,A=m.constructor,x=A.rounding,g=A.precision;if(m.s<0||!v||!v[0]||!m.e&&v[0]==1&&v.length==1)return new A(v&&!v[0]?-1/0:m.s!=1?NaN:v?0:m);if(t==null?(hn=!1,c=g):c=t,A.precision=c+=h,r=pu(v),n=r.charAt(0),Math.abs(a=m.e)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)m=m.times(e),r=pu(m.d),n=r.charAt(0),p++;a=m.e,n>1?(m=new A("0."+r),a++):m=new A(n+"."+r.slice(1))}else return u=HI(A,c+2,g).times(a+""),m=N1(new A(n+"."+r.slice(1)),c-h).plus(u),A.precision=g,t==null?jr(m,g,x,hn=!0):m;for(f=m,l=o=m=Fa(m.minus(1),m.plus(1),c,1),d=jr(m.times(m),c,1),i=3;;){if(o=jr(o.times(d),c,1),u=l.plus(Fa(o,new A(i),c,1)),pu(u.d).slice(0,c)===pu(l.d).slice(0,c))if(l=l.times(2),a!==0&&(l=l.plus(HI(A,c+2,g).times(a+""))),l=Fa(l,new A(p),c,1),t==null)if(u3(l.d,c-h,x,s))A.precision=c+=h,u=o=m=Fa(f.minus(1),f.plus(1),c,1),d=jr(m.times(m),c,1),i=s=1;else return jr(l,A.precision=g,x,hn=!0);else return A.precision=g,l;l=u,i+=2}}function tve(e){return String(e.s*e.s/0)}function $I(e,t){var r,n,i;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;n++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(n,i),t){if(i-=n,e.e=r=r-n-1,e.d=[],n=(r+1)%Vr,r<0&&(n+=Vr),n<i){for(n&&e.d.push(+t.slice(0,n)),i-=Vr;n<i;)e.d.push(+t.slice(n,n+=Vr));t=t.slice(n),n=Vr-t.length}else n-=i;for(;n--;)t+="0";e.d.push(+t),hn&&(e.e>e.constructor.maxE?(e.d=null,e.e=NaN):e.e<e.constructor.minE&&(e.e=0,e.d=[0]))}else e.e=0,e.d=[0];return e}function jrt(e,t){var r,n,i,a,o,s,l,u,c;if(t.indexOf("_")>-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),K0e.test(t))return $I(e,t)}else if(t==="Infinity"||t==="NaN")return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(Trt.test(t))r=16,t=t.toLowerCase();else if(Drt.test(t))r=2;else if(Nrt.test(t))r=8;else throw Error(M1+t);for(a=t.search(/p/i),a>0?(l=+t.slice(a+1),t=t.substring(2,a)):t=t.slice(2),a=t.indexOf("."),o=a>=0,n=e.constructor,o&&(t=t.replace(".",""),s=t.length,a=s-a,i=Z0e(n,new n(r),a,a*2)),u=qI(t,r,rh),c=u.length-1,a=c;u[a]===0;--a)u.pop();return a<0?new n(e.s*0):(e.e=GI(u,c),e.d=u,hn=!1,o&&(e=Fa(e,i,s*4)),l&&(e=e.times(Math.abs(l)<54?ul(2,l):c3.pow(2,l))),hn=!0,e)}function Prt(e,t){var r,n=t.d.length;if(n<3)return t.isZero()?t:ek(e,2,t,t);r=1.4*Math.sqrt(n),r=r>16?16:r|0,t=t.times(1/WI(5,r)),t=ek(e,2,t,t);for(var i,a=new e(5),o=new e(16),s=new e(20);r--;)i=t.times(t),t=t.times(a.plus(i.times(o.times(i).minus(s))));return t}function ek(e,t,r,n,i){var a,o,s,l,u=1,c=e.precision,f=Math.ceil(c/Vr);for(hn=!1,l=r.times(r),s=new e(n);;){if(o=Fa(s.times(l),new e(t++*t++),c,1),s=i?n.plus(o):n.minus(o),n=Fa(o.times(l),new e(t++*t++),c,1),o=s.plus(n),o.d[f]!==void 0){for(a=f;o.d[a]===s.d[a]&&a--;);if(a==-1)break}a=s,s=n,n=o,o=a,u++}return hn=!0,o.d.length=f+1,o}function WI(e,t){for(var r=e;--t;)r*=e;return r}function rve(e,t){var r,n=t.s<0,i=bg(e,e.precision,1),a=i.times(.5);if(t=t.abs(),t.lte(a))return C0=n?4:1,t;if(r=t.divToInt(i),r.isZero())C0=n?3:2;else{if(t=t.minus(r.times(i)),t.lte(a))return C0=H0e(r)?n?2:3:n?4:1,t;C0=H0e(r)?n?1:4:n?3:2}return t.minus(i).abs()}function vJ(e,t,r,n){var i,a,o,s,l,u,c,f,d,p=e.constructor,h=r!==void 0;if(h?(Bf(r,1,O1),n===void 0?n=p.rounding:Bf(n,0,8)):(r=p.precision,n=p.rounding),!e.isFinite())c=tve(e);else{for(c=xg(e),o=c.indexOf("."),h?(i=2,t==16?r=r*4-3:t==8&&(r=r*3-2)):i=t,o>=0&&(c=c.replace(".",""),d=new p(1),d.e=c.length-o,d.d=qI(xg(d),10,i),d.e=d.d.length),f=qI(c,10,i),a=l=f.length;f[--l]==0;)f.pop();if(!f[0])c=h?"0p+0":"0";else{if(o<0?a--:(e=new p(e),e.d=f,e.e=a,e=Fa(e,d,r,n,0,i),f=e.d,a=e.e,u=W0e),o=f[r],s=i/2,u=u||f[r+1]!==void 0,u=n<4?(o!==void 0||u)&&(n===0||n===(e.s<0?3:2)):o>s||o===s&&(n===4||u||n===6&&f[r-1]&1||n===(e.s<0?8:7)),f.length=r,u)for(;++f[--r]>i-1;)f[r]=0,r||(++a,f.unshift(1));for(l=f.length;!f[l-1];--l);for(o=0,c="";o<l;o++)c+=mJ.charAt(f[o]);if(h){if(l>1)if(t==16||t==8){for(o=t==16?4:3,--l;l%o;l++)c+="0";for(f=qI(c,i,t),l=f.length;!f[l-1];--l);for(o=1,c="1.";o<l;o++)c+=mJ.charAt(f[o])}else c=c.charAt(0)+"."+c.slice(1);c=c+(a<0?"p":"p+")+a}else if(a<0){for(;++a;)c="0"+c;c="0."+c}else if(++a>l)for(a-=l;a--;)c+="0";else a<l&&(c=c.slice(0,a)+"."+c.slice(a))}c=(t==16?"0x":t==2?"0b":t==8?"0o":"")+c}return e.s<0?"-"+c:c}function V0e(e,t){if(e.length>t)return e.length=t,!0}function _rt(e){return new this(e).abs()}function Irt(e){return new this(e).acos()}function Brt(e){return new this(e).acosh()}function Lrt(e,t){return new this(e).plus(t)}function Rrt(e){return new this(e).asin()}function qrt(e){return new this(e).asinh()}function $rt(e){return new this(e).atan()}function zrt(e){return new this(e).atanh()}function Urt(e,t){e=new this(e),t=new this(t);var r,n=this.precision,i=this.rounding,a=n+4;return!e.s||!t.s?r=new this(NaN):!e.d&&!t.d?(r=bg(this,a,1).times(t.s>0?.25:.75),r.s=e.s):!t.d||e.isZero()?(r=t.s<0?bg(this,n,i):new this(0),r.s=e.s):!e.d||t.isZero()?(r=bg(this,a,1).times(.5),r.s=e.s):t.s<0?(this.precision=a,this.rounding=1,r=this.atan(Fa(e,t,a,1)),t=bg(this,a,1),this.precision=n,this.rounding=i,r=e.s<0?r.minus(t):r.plus(t)):r=this.atan(Fa(e,t,a,1)),r}function Hrt(e){return new this(e).cbrt()}function Vrt(e){return jr(e=new this(e),e.e+1,2)}function Grt(e,t,r){return new this(e).clamp(t,r)}function Wrt(e){if(!e||typeof e!="object")throw Error(VI+"Object expected");var t,r,n,i=e.defaults===!0,a=["precision",1,O1,"rounding",0,8,"toExpNeg",-ZE,0,"toExpPos",0,ZE,"maxE",0,ZE,"minE",-ZE,0,"modulo",0,9];for(t=0;t<a.length;t+=3)if(r=a[t],i&&(this[r]=hJ[r]),(n=e[r])!==void 0)if(nc(n)===n&&n>=a[t+1]&&n<=a[t+2])this[r]=n;else throw Error(M1+r+": "+n);if(r="crypto",i&&(this[r]=hJ[r]),(n=e[r])!==void 0)if(n===!0||n===!1||n===0||n===1)if(n)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[r]=!0;else throw Error(Y0e);else this[r]=!1;else throw Error(M1+r+": "+n);return this}function Qrt(e){return new this(e).cos()}function Yrt(e){return new this(e).cosh()}function nve(e){var t,r,n;function i(a){var o,s,l,u=this;if(!(u instanceof i))return new i(a);if(u.constructor=i,G0e(a)){u.s=a.s,hn?!a.d||a.e>i.maxE?(u.e=NaN,u.d=null):a.e<i.minE?(u.e=0,u.d=[0]):(u.e=a.e,u.d=a.d.slice()):(u.e=a.e,u.d=a.d?a.d.slice():a.d);return}if(l=typeof a,l==="number"){if(a===0){u.s=1/a<0?-1:1,u.e=0,u.d=[0];return}if(a<0?(a=-a,u.s=-1):u.s=1,a===~~a&&a<1e7){for(o=0,s=a;s>=10;s/=10)o++;hn?o>i.maxE?(u.e=NaN,u.d=null):o<i.minE?(u.e=0,u.d=[0]):(u.e=o,u.d=[a]):(u.e=o,u.d=[a]);return}if(a*0!==0){a||(u.s=NaN),u.e=NaN,u.d=null;return}return $I(u,a.toString())}if(l==="string")return(s=a.charCodeAt(0))===45?(a=a.slice(1),u.s=-1):(s===43&&(a=a.slice(1)),u.s=1),K0e.test(a)?$I(u,a):jrt(u,a);if(l==="bigint")return a<0?(a=-a,u.s=-1):u.s=1,$I(u,a.toString());throw Error(M1+a)}if(i.prototype=yt,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.EUCLID=9,i.config=i.set=Wrt,i.clone=nve,i.isDecimal=G0e,i.abs=_rt,i.acos=Irt,i.acosh=Brt,i.add=Lrt,i.asin=Rrt,i.asinh=qrt,i.atan=$rt,i.atanh=zrt,i.atan2=Urt,i.cbrt=Hrt,i.ceil=Vrt,i.clamp=Grt,i.cos=Qrt,i.cosh=Yrt,i.div=Xrt,i.exp=Krt,i.floor=Jrt,i.hypot=Zrt,i.ln=ent,i.log=tnt,i.log10=nnt,i.log2=rnt,i.max=int,i.min=ant,i.mod=ont,i.mul=snt,i.pow=lnt,i.random=unt,i.round=cnt,i.sign=fnt,i.sin=dnt,i.sinh=pnt,i.sqrt=mnt,i.sub=hnt,i.sum=gnt,i.tan=Ant,i.tanh=vnt,i.trunc=ynt,e===void 0&&(e={}),e&&e.defaults!==!0)for(n=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],t=0;t<n.length;)e.hasOwnProperty(r=n[t++])||(e[r]=this[r]);return i.config(e),i}function Xrt(e,t){return new this(e).div(t)}function Krt(e){return new this(e).exp()}function Jrt(e){return jr(e=new this(e),e.e+1,3)}function Zrt(){var e,t,r=new this(0);for(hn=!1,e=0;e<arguments.length;)if(t=new this(arguments[e++]),t.d)r.d&&(r=r.plus(t.times(t)));else{if(t.s)return hn=!0,new this(1/0);r=t}return hn=!0,r.sqrt()}function G0e(e){return e instanceof c3||e&&e.toStringTag===X0e||!1}function ent(e){return new this(e).ln()}function tnt(e,t){return new this(e).log(t)}function rnt(e){return new this(e).log(2)}function nnt(e){return new this(e).log(10)}function int(){return eve(this,arguments,-1)}function ant(){return eve(this,arguments,1)}function ont(e,t){return new this(e).mod(t)}function snt(e,t){return new this(e).mul(t)}function lnt(e,t){return new this(e).pow(t)}function unt(e){var t,r,n,i,a=0,o=new this(1),s=[];if(e===void 0?e=this.precision:Bf(e,1,O1),n=Math.ceil(e/Vr),this.crypto)if(crypto.getRandomValues)for(t=crypto.getRandomValues(new Uint32Array(n));a<n;)i=t[a],i>=429e7?t[a]=crypto.getRandomValues(new Uint32Array(1))[0]:s[a++]=i%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(n*=4);a<n;)i=t[a]+(t[a+1]<<8)+(t[a+2]<<16)+((t[a+3]&127)<<24),i>=214e7?crypto.randomBytes(4).copy(t,a):(s.push(i%1e7),a+=4);a=n/4}else throw Error(Y0e);else for(;a<n;)s[a++]=Math.random()*1e7|0;for(n=s[--a],e%=Vr,n&&e&&(i=ul(10,Vr-e),s[a]=(n/i|0)*i);s[a]===0;a--)s.pop();if(a<0)r=0,s=[0];else{for(r=-1;s[0]===0;r-=Vr)s.shift();for(n=1,i=s[0];i>=10;i/=10)n++;n<Vr&&(r-=Vr-n)}return o.e=r,o.d=s,o}function cnt(e){return jr(e=new this(e),e.e+1,this.rounding)}function fnt(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function dnt(e){return new this(e).sin()}function pnt(e){return new this(e).sinh()}function mnt(e){return new this(e).sqrt()}function hnt(e,t){return new this(e).sub(t)}function gnt(){var e=0,t=arguments,r=new this(t[e]);for(hn=!1;r.s&&++e<t.length;)r=r.plus(t[e]);return hn=!0,jr(r,this.precision,this.rounding)}function Ant(e){return new this(e).tan()}function vnt(e){return new this(e).tanh()}function ynt(e){return jr(e=new this(e),e.e+1,1)}yt[Symbol.for("nodejs.util.inspect.custom")]=yt.toString;yt[Symbol.toStringTag]="Decimal";var c3=yt.constructor=nve(hJ);zI=new c3(zI);UI=new c3(UI);var Bx=c3;var bnt="BigNumber",xnt=["?on","config"],QI=X(bnt,xnt,e=>{var{on:t,config:r}=e,n=Bx.clone({precision:r.precision,modulo:Bx.EUCLID});return n.prototype=Object.create(n.prototype),n.prototype.type="BigNumber",n.prototype.isBigNumber=!0,n.prototype.toJSON=function(){return{mathjs:"BigNumber",value:this.toString()}},n.fromJSON=function(i){return new n(i.value)},t&&t("config",function(i,a){i.precision!==a.precision&&n.config({precision:i.precision})}),n},{isClass:!0});var ic=Math.cosh||function(e){return Math.abs(e)<1e-9?1-e:(Math.exp(e)+Math.exp(-e))*.5},Wp=Math.sinh||function(e){return Math.abs(e)<1e-9?e:(Math.exp(e)-Math.exp(-e))*.5},wnt=e=>{let t=Math.sin(.5*e);return-2*t*t},yJ=function(e,t){return e=Math.abs(e),t=Math.abs(t),e<t&&([e,t]=[t,e]),e<1e8?Math.sqrt(e*e+t*t):(t/=e,e*Math.sqrt(1+t*t))},tk=function(){throw SyntaxError("Invalid Param")};function bJ(e,t){let r=Math.abs(e),n=Math.abs(t);return e===0?Math.log(n):t===0?Math.log(r):r<3e3&&n<3e3?Math.log(e*e+t*t)*.5:(e=e*.5,t=t*.5,.5*Math.log(e*e+t*t)+Math.LN2)}var Snt={re:0,im:0},Lx=function(e,t){let r=Snt;if(e==null)r.re=r.im=0;else if(t!==void 0)r.re=e,r.im=t;else switch(typeof e){case"object":if("im"in e&&"re"in e)r.re=e.re,r.im=e.im;else if("abs"in e&&"arg"in e){if(!isFinite(e.abs)&&isFinite(e.arg))return tt.INFINITY;r.re=e.abs*Math.cos(e.arg),r.im=e.abs*Math.sin(e.arg)}else if("r"in e&&"phi"in e){if(!isFinite(e.r)&&isFinite(e.phi))return tt.INFINITY;r.re=e.r*Math.cos(e.phi),r.im=e.r*Math.sin(e.phi)}else e.length===2?(r.re=e[0],r.im=e[1]):tk();break;case"string":r.im=r.re=0;let n=e.replace(/_/g,"").match(/\d+\.?\d*e[+-]?\d+|\d+\.?\d*|\.\d+|./g),i=1,a=0;n===null&&tk();for(let o=0;o<n.length;o++){let s=n[o];s===" "||s===" "||s===`
80`||(s==="+"?i++:s==="-"?a++:s==="i"||s==="I"?(i+a===0&&tk(),n[o+1]!==" "&&!isNaN(n[o+1])?(r.im+=parseFloat((a%2?"-":"")+n[o+1]),o++):r.im+=parseFloat((a%2?"-":"")+"1"),i=a=0):((i+a===0||isNaN(s))&&tk(),n[o+1]==="i"||n[o+1]==="I"?(r.im+=parseFloat((a%2?"-":"")+s),o++):r.re+=parseFloat((a%2?"-":"")+s),i=a=0))}i+a>0&&tk();break;case"number":r.im=0,r.re=e;break;default:tk()}return isNaN(r.re)||isNaN(r.im),r};function tt(e,t){if(!(this instanceof tt))return new tt(e,t);let r=Lx(e,t);this.re=r.re,this.im=r.im}tt.prototype={re:0,im:0,sign:function(){let e=yJ(this.re,this.im);return new tt(this.re/e,this.im/e)},add:function(e,t){let r=Lx(e,t),n=this.isInfinite(),i=!(isFinite(r.re)&&isFinite(r.im));return n||i?n&&i?tt.NAN:tt.INFINITY:new tt(this.re+r.re,this.im+r.im)},sub:function(e,t){let r=Lx(e,t),n=this.isInfinite(),i=!(isFinite(r.re)&&isFinite(r.im));return n||i?n&&i?tt.NAN:tt.INFINITY:new tt(this.re-r.re,this.im-r.im)},mul:function(e,t){let r=Lx(e,t),n=this.isInfinite(),i=!(isFinite(r.re)&&isFinite(r.im)),a=this.re===0&&this.im===0,o=r.re===0&&r.im===0;return n&&o||i&&a?tt.NAN:n||i?tt.INFINITY:r.im===0&&this.im===0?new tt(this.re*r.re,0):new tt(this.re*r.re-this.im*r.im,this.re*r.im+this.im*r.re)},div:function(e,t){let r=Lx(e,t),n=this.isInfinite(),i=!(isFinite(r.re)&&isFinite(r.im)),a=this.re===0&&this.im===0,o=r.re===0&&r.im===0;if(a&&o||n&&i)return tt.NAN;if(o||n)return tt.INFINITY;if(a||i)return tt.ZERO;if(r.im===0)return new tt(this.re/r.re,this.im/r.re);if(Math.abs(r.re)<Math.abs(r.im)){let s=r.re/r.im,l=r.re*s+r.im;return new tt((this.re*s+this.im)/l,(this.im*s-this.re)/l)}else{let s=r.im/r.re,l=r.im*s+r.re;return new tt((this.re+this.im*s)/l,(this.im-this.re*s)/l)}},pow:function(e,t){let r=Lx(e,t),n=this.re===0&&this.im===0;if(r.re===0&&r.im===0)return tt.ONE;if(r.im===0){if(this.im===0&&this.re>0)return new tt(Math.pow(this.re,r.re),0);if(this.re===0)switch((r.re%4+4)%4){case 0:return new tt(Math.pow(this.im,r.re),0);case 1:return new tt(0,Math.pow(this.im,r.re));case 2:return new tt(-Math.pow(this.im,r.re),0);case 3:return new tt(0,-Math.pow(this.im,r.re))}}if(n&&r.re>0)return tt.ZERO;let a=Math.atan2(this.im,this.re),o=bJ(this.re,this.im),s=Math.exp(r.re*o-r.im*a),l=r.im*o+r.re*a;return new tt(s*Math.cos(l),s*Math.sin(l))},sqrt:function(){let e=this.re,t=this.im;if(t===0)return e>=0?new tt(Math.sqrt(e),0):new tt(0,Math.sqrt(-e));let r=yJ(e,t),n=Math.sqrt(.5*(r+Math.abs(e))),i=Math.abs(t)/(2*n);return e>=0?new tt(n,t<0?-i:i):new tt(i,t<0?-n:n)},exp:function(){let e=Math.exp(this.re);return this.im===0?new tt(e,0):new tt(e*Math.cos(this.im),e*Math.sin(this.im))},expm1:function(){let e=this.re,t=this.im;return new tt(Math.expm1(e)*Math.cos(t)+wnt(t),Math.exp(e)*Math.sin(t))},log:function(){let e=this.re,t=this.im;return t===0&&e>0?new tt(Math.log(e),0):new tt(bJ(e,t),Math.atan2(t,e))},abs:function(){return yJ(this.re,this.im)},arg:function(){return Math.atan2(this.im,this.re)},sin:function(){let e=this.re,t=this.im;return new tt(Math.sin(e)*ic(t),Math.cos(e)*Wp(t))},cos:function(){let e=this.re,t=this.im;return new tt(Math.cos(e)*ic(t),-Math.sin(e)*Wp(t))},tan:function(){let e=2*this.re,t=2*this.im,r=Math.cos(e)+ic(t);return new tt(Math.sin(e)/r,Wp(t)/r)},cot:function(){let e=2*this.re,t=2*this.im,r=Math.cos(e)-ic(t);return new tt(-Math.sin(e)/r,Wp(t)/r)},sec:function(){let e=this.re,t=this.im,r=.5*ic(2*t)+.5*Math.cos(2*e);return new tt(Math.cos(e)*ic(t)/r,Math.sin(e)*Wp(t)/r)},csc:function(){let e=this.re,t=this.im,r=.5*ic(2*t)-.5*Math.cos(2*e);return new tt(Math.sin(e)*ic(t)/r,-Math.cos(e)*Wp(t)/r)},asin:function(){let e=this.re,t=this.im,r=new tt(t*t-e*e+1,-2*e*t).sqrt(),n=new tt(r.re-t,r.im+e).log();return new tt(n.im,-n.re)},acos:function(){let e=this.re,t=this.im,r=new tt(t*t-e*e+1,-2*e*t).sqrt(),n=new tt(r.re-t,r.im+e).log();return new tt(Math.PI/2-n.im,n.re)},atan:function(){let e=this.re,t=this.im;if(e===0){if(t===1)return new tt(0,1/0);if(t===-1)return new tt(0,-1/0)}let r=e*e+(1-t)*(1-t),n=new tt((1-t*t-e*e)/r,-2*e/r).log();return new tt(-.5*n.im,.5*n.re)},acot:function(){let e=this.re,t=this.im;if(t===0)return new tt(Math.atan2(1,e),0);let r=e*e+t*t;return r!==0?new tt(e/r,-t/r).atan():new tt(e!==0?e/0:0,t!==0?-t/0:0).atan()},asec:function(){let e=this.re,t=this.im;if(e===0&&t===0)return new tt(0,1/0);let r=e*e+t*t;return r!==0?new tt(e/r,-t/r).acos():new tt(e!==0?e/0:0,t!==0?-t/0:0).acos()},acsc:function(){let e=this.re,t=this.im;if(e===0&&t===0)return new tt(Math.PI/2,1/0);let r=e*e+t*t;return r!==0?new tt(e/r,-t/r).asin():new tt(e!==0?e/0:0,t!==0?-t/0:0).asin()},sinh:function(){let e=this.re,t=this.im;return new tt(Wp(e)*Math.cos(t),ic(e)*Math.sin(t))},cosh:function(){let e=this.re,t=this.im;return new tt(ic(e)*Math.cos(t),Wp(e)*Math.sin(t))},tanh:function(){let e=2*this.re,t=2*this.im,r=ic(e)+Math.cos(t);return new tt(Wp(e)/r,Math.sin(t)/r)},coth:function(){let e=2*this.re,t=2*this.im,r=ic(e)-Math.cos(t);return new tt(Wp(e)/r,-Math.sin(t)/r)},csch:function(){let e=this.re,t=this.im,r=Math.cos(2*t)-ic(2*e);return new tt(-2*Wp(e)*Math.cos(t)/r,2*ic(e)*Math.sin(t)/r)},sech:function(){let e=this.re,t=this.im,r=Math.cos(2*t)+ic(2*e);return new tt(2*ic(e)*Math.cos(t)/r,-2*Wp(e)*Math.sin(t)/r)},asinh:function(){let e=this.re,t=this.im;if(t===0){if(e===0)return new tt(0,0);let a=Math.abs(e),o=Math.log(a+Math.sqrt(a*a+1));return new tt(e<0?-o:o,0)}let r=e*e-t*t+1,n=2*e*t,i=new tt(r,n).sqrt();return new tt(e+i.re,t+i.im).log()},acosh:function(){let e=this.re,t=this.im;if(t===0){if(e>1)return new tt(Math.log(e+Math.sqrt(e-1)*Math.sqrt(e+1)),0);if(e<-1){let i=Math.sqrt(e*e-1);return new tt(Math.log(-e+i),Math.PI)}return new tt(0,Math.acos(e))}let r=new tt(e-1,t).sqrt(),n=new tt(e+1,t).sqrt();return new tt(e+r.re*n.re-r.im*n.im,t+r.re*n.im+r.im*n.re).log()},atanh:function(){let e=this.re,t=this.im;if(t===0){if(e===0)return new tt(0,0);if(e===1)return new tt(1/0,0);if(e===-1)return new tt(-1/0,0);if(-1<e&&e<1)return new tt(.5*Math.log((1+e)/(1-e)),0);if(e>1){let l=(e+1)/(e-1);return new tt(.5*Math.log(l),-Math.PI/2)}let s=(1+e)/(1-e);return new tt(.5*Math.log(-s),Math.PI/2)}let r=1-e,n=1+e,i=r*r+t*t;if(i===0)return new tt(e!==-1?e/0:0,t!==0?t/0:0);let a=(n*r-t*t)/i,o=(t*r+n*t)/i;return new tt(bJ(a,o)/2,Math.atan2(o,a)/2)},acoth:function(){let e=this.re,t=this.im;if(e===0&&t===0)return new tt(0,Math.PI/2);let r=e*e+t*t;return r!==0?new tt(e/r,-t/r).atanh():new tt(e!==0?e/0:0,t!==0?-t/0:0).atanh()},acsch:function(){let e=this.re,t=this.im;if(t===0){if(e===0)return new tt(1/0,0);let n=1/e;return new tt(Math.log(n+Math.sqrt(n*n+1)),0)}let r=e*e+t*t;return r!==0?new tt(e/r,-t/r).asinh():new tt(e!==0?e/0:0,t!==0?-t/0:0).asinh()},asech:function(){let e=this.re,t=this.im;if(this.isZero())return tt.INFINITY;let r=e*e+t*t;return r!==0?new tt(e/r,-t/r).acosh():new tt(e!==0?e/0:0,t!==0?-t/0:0).acosh()},inverse:function(){if(this.isZero())return tt.INFINITY;if(this.isInfinite())return tt.ZERO;let e=this.re,t=this.im,r=e*e+t*t;return new tt(e/r,-t/r)},conjugate:function(){return new tt(this.re,-this.im)},neg:function(){return new tt(-this.re,-this.im)},ceil:function(e){return e=Math.pow(10,e||0),new tt(Math.ceil(this.re*e)/e,Math.ceil(this.im*e)/e)},floor:function(e){return e=Math.pow(10,e||0),new tt(Math.floor(this.re*e)/e,Math.floor(this.im*e)/e)},round:function(e){return e=Math.pow(10,e||0),new tt(Math.round(this.re*e)/e,Math.round(this.im*e)/e)},equals:function(e,t){let r=Lx(e,t);return Math.abs(r.re-this.re)<=tt.EPSILON&&Math.abs(r.im-this.im)<=tt.EPSILON},clone:function(){return new tt(this.re,this.im)},toString:function(){let e=this.re,t=this.im,r="";return this.isNaN()?"NaN":this.isInfinite()?"Infinity":(Math.abs(e)<tt.EPSILON&&(e=0),Math.abs(t)<tt.EPSILON&&(t=0),t===0?r+e:(e!==0?(r+=e,r+=" ",t<0?(t=-t,r+="-"):r+="+",r+=" "):t<0&&(t=-t,r+="-"),t!==1&&(r+=t),r+"i"))},toVector:function(){return[this.re,this.im]},valueOf:function(){return this.im===0?this.re:null},isNaN:function(){return isNaN(this.re)||isNaN(this.im)},isZero:function(){return this.im===0&&this.re===0},isFinite:function(){return isFinite(this.re)&&isFinite(this.im)},isInfinite:function(){return!this.isFinite()}};tt.ZERO=new tt(0,0);tt.ONE=new tt(1,0);tt.I=new tt(0,1);tt.PI=new tt(Math.PI,0);tt.E=new tt(Math.E,0);tt.INFINITY=new tt(1/0,1/0);tt.NAN=new tt(NaN,NaN);tt.EPSILON=1e-15;var Ent="Complex",knt=[],YI=X(Ent,knt,()=>(Object.defineProperty(tt,"name",{value:"Complex"}),tt.prototype.constructor=tt,tt.prototype.type="Complex",tt.prototype.isComplex=!0,tt.prototype.toJSON=function(){return{mathjs:"Complex",re:this.re,im:this.im}},tt.prototype.toPolar=function(){return{r:this.abs(),phi:this.arg()}},tt.prototype.format=function(e){var t="",r=this.im,n=this.re,i=th(this.re,e),a=th(this.im,e),o=hr(e)?e:e?e.precision:null;if(o!==null){var s=Math.pow(10,-o);Math.abs(n/r)<s&&(n=0),Math.abs(r/n)<s&&(r=0)}return r===0?t=i:n===0?r===1?t="i":r===-1?t="-i":t=a+"i":r<0?r===-1?t=i+" - i":t=i+" - "+a.substring(1)+"i":r===1?t=i+" + i":t=i+" + "+a+"i",t},tt.fromPolar=function(e){switch(arguments.length){case 1:{var t=arguments[0];if(typeof t=="object")return tt(t);throw new TypeError("Input has to be an object with r and phi keys.")}case 2:{var r=arguments[0],n=arguments[1];if(hr(r)){if(hs(n)&&n.hasBase("ANGLE")&&(n=n.toNumber("rad")),hr(n))return new tt({r,phi:n});throw new TypeError("Phi is not a number nor an angle unit.")}else throw new TypeError("Radius r is not a number.")}default:throw new SyntaxError("Wrong number of arguments in function fromPolar")}},tt.prototype.valueOf=tt.prototype.toString,tt.fromJSON=function(e){return new tt(e)},tt.compare=function(e,t){return e.re>t.re?1:e.re<t.re?-1:e.im>t.im?1:e.im<t.im?-1:0},tt),{isClass:!0});var wg=ge(ave(),1);var Cnt="Fraction",Dnt=[],XI=X(Cnt,Dnt,()=>(Object.defineProperty(wg.default,"name",{value:"Fraction"}),wg.default.prototype.constructor=wg.default,wg.default.prototype.type="Fraction",wg.default.prototype.isFraction=!0,wg.default.prototype.toJSON=function(){return{mathjs:"Fraction",n:this.s*this.n,d:this.d}},wg.default.fromJSON=function(e){return new wg.default(e)},wg.default),{isClass:!0});var Tnt="Range",Nnt=[],KI=X(Tnt,Nnt,()=>{function e(t,r,n){if(!(this instanceof e))throw new SyntaxError("Constructor must be called with the new operator");var i=t!=null,a=r!=null,o=n!=null;if(i){if(er(t))t=t.toNumber();else if(typeof t!="number")throw new TypeError("Parameter start must be a number")}if(a){if(er(r))r=r.toNumber();else if(typeof r!="number")throw new TypeError("Parameter end must be a number")}if(o){if(er(n))n=n.toNumber();else if(typeof n!="number")throw new TypeError("Parameter step must be a number")}this.start=i?parseFloat(t):0,this.end=a?parseFloat(r):0,this.step=o?parseFloat(n):1}return e.prototype.type="Range",e.prototype.isRange=!0,e.parse=function(t){if(typeof t!="string")return null;var r=t.split(":"),n=r.map(function(a){return parseFloat(a)}),i=n.some(function(a){return isNaN(a)});if(i)return null;switch(n.length){case 2:return new e(n[0],n[1]);case 3:return new e(n[0],n[2],n[1]);default:return null}},e.prototype.clone=function(){return new e(this.start,this.end,this.step)},e.prototype.size=function(){var t=0,r=this.start,n=this.step,i=this.end,a=i-r;return Gp(n)===Gp(a)?t=Math.ceil(a/n):a===0&&(t=0),isNaN(t)&&(t=0),[t]},e.prototype.min=function(){var t=this.size()[0];if(t>0)return this.step>0?this.start:this.start+(t-1)*this.step},e.prototype.max=function(){var t=this.size()[0];if(t>0)return this.step>0?this.start+(t-1)*this.step:this.start},e.prototype.forEach=function(t){var r=this.start,n=this.step,i=this.end,a=0;if(n>0)for(;r<i;)t(r,[a],this),r+=n,a++;else if(n<0)for(;r>i;)t(r,[a],this),r+=n,a++},e.prototype.map=function(t){var r=[];return this.forEach(function(n,i,a){r[i[0]]=t(n,i,a)}),r},e.prototype.toArray=function(){var t=[];return this.forEach(function(r,n){t[n[0]]=r}),t},e.prototype.valueOf=function(){return this.toArray()},e.prototype.format=function(t){var r=th(this.start,t);return this.step!==1&&(r+=":"+th(this.step,t)),r+=":"+th(this.end,t),r},e.prototype.toString=function(){return this.format()},e.prototype.toJSON=function(){return{mathjs:"Range",start:this.start,end:this.end,step:this.step}},e.fromJSON=function(t){return new e(t.start,t.end,t.step)},e},{isClass:!0});var Mnt="Matrix",Ont=[],JI=X(Mnt,Ont,()=>{function e(){if(!(this instanceof e))throw new SyntaxError("Constructor must be called with the new operator")}return e.prototype.type="Matrix",e.prototype.isMatrix=!0,e.prototype.storage=function(){throw new Error("Cannot invoke storage on a Matrix interface")},e.prototype.datatype=function(){throw new Error("Cannot invoke datatype on a Matrix interface")},e.prototype.create=function(t,r){throw new Error("Cannot invoke create on a Matrix interface")},e.prototype.subset=function(t,r,n){throw new Error("Cannot invoke subset on a Matrix interface")},e.prototype.get=function(t){throw new Error("Cannot invoke get on a Matrix interface")},e.prototype.set=function(t,r,n){throw new Error("Cannot invoke set on a Matrix interface")},e.prototype.resize=function(t,r){throw new Error("Cannot invoke resize on a Matrix interface")},e.prototype.reshape=function(t,r){throw new Error("Cannot invoke reshape on a Matrix interface")},e.prototype.clone=function(){throw new Error("Cannot invoke clone on a Matrix interface")},e.prototype.size=function(){throw new Error("Cannot invoke size on a Matrix interface")},e.prototype.map=function(t,r){throw new Error("Cannot invoke map on a Matrix interface")},e.prototype.forEach=function(t){throw new Error("Cannot invoke forEach on a Matrix interface")},e.prototype[Symbol.iterator]=function(){throw new Error("Cannot iterate a Matrix interface")},e.prototype.toArray=function(){throw new Error("Cannot invoke toArray on a Matrix interface")},e.prototype.valueOf=function(){throw new Error("Cannot invoke valueOf on a Matrix interface")},e.prototype.format=function(t){throw new Error("Cannot invoke format on a Matrix interface")},e.prototype.toString=function(){throw new Error("Cannot invoke toString on a Matrix interface")},e},{isClass:!0});function wJ(e,t,r){var n=e.constructor,i=new n(2),a="";if(r){if(r<1)throw new Error("size must be in greater than 0");if(!Ot(r))throw new Error("size must be an integer");if(e.greaterThan(i.pow(r-1).sub(1))||e.lessThan(i.pow(r-1).mul(-1)))throw new Error("Value must be in range [-2^".concat(r-1,", 2^").concat(r-1,"-1]"));if(!e.isInteger())throw new Error("Value must be an integer");e.lessThan(0)&&(e=e.add(i.pow(r))),a="i".concat(r)}switch(t){case 2:return"".concat(e.toBinary()).concat(a);case 8:return"".concat(e.toOctal()).concat(a);case 16:return"".concat(e.toHexadecimal()).concat(a);default:throw new Error("Base ".concat(t," not supported "))}}function lve(e,t){if(typeof t=="function")return t(e);if(!e.isFinite())return e.isNaN()?"NaN":e.gt(0)?"Infinity":"-Infinity";var{notation:r,precision:n,wordSize:i}=sJ(t);switch(r){case"fixed":return jnt(e,n);case"exponential":return ove(e,n);case"engineering":return Fnt(e,n);case"bin":return wJ(e,2,i);case"oct":return wJ(e,8,i);case"hex":return wJ(e,16,i);case"auto":{var a=sve(t?.lowerExp,-3),o=sve(t?.upperExp,5);if(e.isZero())return"0";var s,l=e.toSignificantDigits(n),u=l.e;return u>=a&&u<o?s=l.toFixed():s=ove(e,n),s.replace(/((\.\d*?)(0+))($|e)/,function(){var c=arguments[2],f=arguments[4];return c!=="."?c+f:f})}default:throw new Error('Unknown notation "'+r+'". Choose "auto", "exponential", "fixed", "bin", "oct", or "hex.')}}function Fnt(e,t){var r=e.e,n=r%3===0?r:r<0?r-3-r%3:r-r%3,i=e.mul(Math.pow(10,-n)),a=i.toPrecision(t);if(a.includes("e")){var o=e.constructor;a=new o(a).toFixed()}return a+"e"+(r>=0?"+":"")+n.toString()}function ove(e,t){return t!==void 0?e.toExponential(t-1):e.toExponential()}function jnt(e,t){return e.toFixed(t)}function sve(e,t){return hr(e)?e:er(e)?e.toNumber():t}function cve(e,t){var r=e.length-t.length,n=e.length;return e.substring(r,n)===t}function Er(e,t){var r=Pnt(e,t);return t&&typeof t=="object"&&"truncate"in t&&r.length>t.truncate?r.substring(0,t.truncate-3)+"...":r}function Pnt(e,t){if(typeof e=="number")return th(e,t);if(er(e))return lve(e,t);if(_nt(e))return!t||t.fraction!=="decimal"?e.s*e.n+"/"+e.d:e.toString();if(Array.isArray(e))return fve(e,t);if(Ya(e))return Rx(e);if(typeof e=="function")return e.syntax?String(e.syntax):"function";if(e&&typeof e=="object"){if(typeof e.format=="function")return e.format(t);if(e&&e.toString(t)!=={}.toString())return e.toString(t);var r=Object.keys(e).map(n=>Rx(n)+": "+Er(e[n],t));return"{"+r.join(", ")+"}"}return String(e)}function Rx(e){for(var t=String(e),r="",n=0;n<t.length;){var i=t.charAt(n);r+=i in uve?uve[i]:i,n++}return'"'+r+'"'}var uve={'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t"};function cl(e){var t=String(e);return t=t.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;"),t}function fve(e,t){if(Array.isArray(e)){for(var r="[",n=e.length,i=0;i<n;i++)i!==0&&(r+=", "),r+=fve(e[i],t);return r+="]",r}else return Er(e,t)}function _nt(e){return e&&typeof e=="object"&&typeof e.s=="number"&&typeof e.n=="number"&&typeof e.d=="number"||!1}function ZI(e,t){if(!Ya(e))throw new TypeError("Unexpected type of argument in function compareText (expected: string or Array or Matrix, actual: "+yn(e)+", index: 0)");if(!Ya(t))throw new TypeError("Unexpected type of argument in function compareText (expected: string or Array or Matrix, actual: "+yn(t)+", index: 1)");return e===t?0:e>t?1:-1}function Tr(e,t,r){if(!(this instanceof Tr))throw new SyntaxError("Constructor must be called with the new operator");this.actual=e,this.expected=t,this.relation=r,this.message="Dimension mismatch ("+(Array.isArray(e)?"["+e.join(", ")+"]":e)+" "+(this.relation||"!=")+" "+(Array.isArray(t)?"["+t.join(", ")+"]":t)+")",this.stack=new Error().stack}Tr.prototype=new RangeError;Tr.prototype.constructor=RangeError;Tr.prototype.name="DimensionError";Tr.prototype.isDimensionError=!0;function fl(e,t,r){if(!(this instanceof fl))throw new SyntaxError("Constructor must be called with the new operator");this.index=e,arguments.length<3?(this.min=0,this.max=t):(this.min=t,this.max=r),this.min!==void 0&&this.index<this.min?this.message="Index out of range ("+this.index+" < "+this.min+")":this.max!==void 0&&this.index>=this.max?this.message="Index out of range ("+this.index+" > "+(this.max-1)+")":this.message="Index out of range ("+this.index+")",this.stack=new Error().stack}fl.prototype=new RangeError;fl.prototype.constructor=RangeError;fl.prototype.name="IndexError";fl.prototype.isIndexError=!0;function gr(e){for(var t=[];Array.isArray(e);)t.push(e.length),e=e[0];return t}function dve(e,t,r){var n,i=e.length;if(i!==t[r])throw new Tr(i,t[r]);if(r<t.length-1){var a=r+1;for(n=0;n<i;n++){var o=e[n];if(!Array.isArray(o))throw new Tr(t.length-1,t.length,"<");dve(e[n],t,a)}}else for(n=0;n<i;n++)if(Array.isArray(e[n]))throw new Tr(t.length+1,t.length,">")}function EJ(e,t){var r=t.length===0;if(r){if(Array.isArray(e))throw new Tr(e.length,0)}else dve(e,t,0)}function f3(e,t){var r=e.isMatrix?e._size:gr(e),n=t._sourceSize;n.forEach((i,a)=>{if(i!==null&&i!==r[a])throw new Tr(i,r[a])})}function xi(e,t){if(e!==void 0){if(!hr(e)||!Ot(e))throw new TypeError("Index must be an integer (value: "+e+")");if(e<0||typeof t=="number"&&e>=t)throw new fl(e,t)}}function qx(e){for(var t=0;t<e._dimensions.length;++t){var r=e._dimensions[t];if(r._data&&mn(r._data)){if(r._size[0]===0)return!0}else if(r.isRange){if(r.start===r.end)return!0}else if(Ya(r)&&r.length===0)return!0}return!1}function nh(e,t,r){if(!Array.isArray(t))throw new TypeError("Array expected");if(t.length===0)throw new Error("Resizing to scalar is not supported");t.forEach(function(i){if(!hr(i)||!Ot(i)||i<0)throw new TypeError("Invalid size, must contain positive integers (size: "+Er(t)+")")}),(hr(e)||er(e))&&(e=[e]);var n=r!==void 0?r:0;return SJ(e,t,0,n),e}function SJ(e,t,r,n){var i,a,o=e.length,s=t[r],l=Math.min(o,s);if(e.length=s,r<t.length-1){var u=r+1;for(i=0;i<l;i++)a=e[i],Array.isArray(a)||(a=[a],e[i]=a),SJ(a,t,u,n);for(i=l;i<s;i++)a=[],e[i]=a,SJ(a,t,u,n)}else{for(i=0;i<l;i++)for(;Array.isArray(e[i]);)e[i]=e[i][0];for(i=l;i<s;i++)e[i]=n}}function d3(e,t){var r=qr(e),n=r.length;if(!Array.isArray(e)||!Array.isArray(t))throw new TypeError("Array expected");if(t.length===0)throw new Tr(0,n,"!=");t=p3(t,n);var i=pve(t);if(n!==i)throw new Tr(i,n,"!=");try{return Int(r,t)}catch(a){throw a instanceof Tr?new Tr(i,n,"!="):a}}function p3(e,t){var r=pve(e),n=e.slice(),i=-1,a=e.indexOf(i),o=e.indexOf(i,a+1)>=0;if(o)throw new Error("More than one wildcard in sizes");var s=a>=0,l=t%r===0;if(s)if(l)n[a]=-t/r;else throw new Error("Could not replace wildcard, since "+t+" is no multiple of "+-r);return n}function pve(e){return e.reduce((t,r)=>t*r,1)}function Int(e,t){for(var r=e,n,i=t.length-1;i>0;i--){var a=t[i];n=[];for(var o=r.length/a,s=0;s<o;s++)n.push(r.slice(s*a,(s+1)*a));r=n}return r}function rk(e,t){for(var r=t||gr(e);Array.isArray(e)&&e.length===1;)e=e[0],r.shift();for(var n=r.length;r[n-1]===1;)n--;return n<r.length&&(e=mve(e,n,0),r.length=n),e}function mve(e,t,r){var n,i;if(r<t){var a=r+1;for(n=0,i=e.length;n<i;n++)e[n]=mve(e[n],t,a)}else for(;Array.isArray(e);)e=e[0];return e}function e5(e,t,r,n){var i=n||gr(e);if(r)for(var a=0;a<r;a++)e=[e],i.unshift(1);for(e=hve(e,t,0);i.length<t;)i.push(1);return e}function hve(e,t,r){var n,i;if(Array.isArray(e)){var a=r+1;for(n=0,i=e.length;n<i;n++)e[n]=hve(e[n],t,a)}else for(var o=r;o<t;o++)e=[e];return e}function qr(e){if(!Array.isArray(e))return e;var t=[];return e.forEach(function r(n){Array.isArray(n)?n.forEach(r):t.push(n)}),t}function Lf(e,t){return Array.prototype.map.call(e,t)}function F1(e,t){Array.prototype.forEach.call(e,t)}function t5(e,t){if(gr(e).length!==1)throw new Error("Only one dimensional matrices supported");return Array.prototype.filter.call(e,t)}function nk(e,t){if(gr(e).length!==1)throw new Error("Only one dimensional matrices supported");return Array.prototype.filter.call(e,r=>t.test(r))}function kJ(e,t){return Array.prototype.join.call(e,t)}function D0(e){if(!Array.isArray(e))throw new TypeError("Array input expected");if(e.length===0)return e;var t=[],r=0;t[0]={value:e[0],identifier:0};for(var n=1;n<e.length;n++)e[n]===e[n-1]?r++:r=0,t.push({value:e[n],identifier:r});return t}function ik(e){if(!Array.isArray(e))throw new TypeError("Array input expected");if(e.length===0)return e;for(var t=[],r=0;r<e.length;r++)t.push(e[r].value);return t}function j1(e,t){for(var r,n=0,i=0;i<e.length;i++){var a=e[i],o=Array.isArray(a);if(i===0&&o&&(n=a.length),o&&a.length!==n)return;var s=o?j1(a,t):t(a);if(r===void 0)r=s;else if(r!==s)return"mixed"}return r}function gve(e,t,r,n){if(n<r){if(e.length!==t.length)throw new Tr(e.length,t.length);for(var i=[],a=0;a<e.length;a++)i[a]=gve(e[a],t[a],r,n+1);return i}else return e.concat(t)}function CJ(){var e=Array.prototype.slice.call(arguments,0,-1),t=Array.prototype.slice.call(arguments,-1);if(e.length===1)return e[0];if(e.length>1)return e.slice(1).reduce(function(r,n){return gve(r,n,t,0)},e[0]);throw new Error("Wrong number of arguments in function concat")}function Bnt(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];for(var n=t.map(d=>d.length),i=Math.max(...n),a=new Array(i).fill(null),o=0;o<t.length;o++)for(var s=t[o],l=n[o],u=0;u<l;u++){var c=i-l+u;s[u]>a[c]&&(a[c]=s[u])}for(var f=0;f<t.length;f++)m3(t[f],a);return a}function m3(e,t){for(var r=t.length,n=e.length,i=0;i<n;i++){var a=r-n+i;if(e[i]<t[a]&&e[i]>1||e[i]>t[a])throw new Error("shape missmatch: missmatch is found in arg with shape (".concat(e,") not possible to broadcast dimension ").concat(n," with size ").concat(e[i]," to size ").concat(t[a]))}}function DJ(e,t){var r=gr(e);if(eh(r,t))return e;m3(r,t);var n=Bnt(r,t),i=n.length,a=[...Array(i-r.length).fill(1),...r],o=Rnt(e);r.length<i&&(o=d3(o,a),r=gr(o));for(var s=0;s<i;s++)r[s]<n[s]&&(o=Lnt(o,n[s],s),r=gr(o));return o}function Lnt(e,t,r){return CJ(...Array(t).fill(e),r)}function Rnt(e){return mi([],e)}function Ave(e){var t=0,r=1,n=Object.create(null),i=Object.create(null),a=0,o=function(l){var u=i[l];if(!!u&&(delete n[u],delete i[l],--t,r===u)){if(!t){a=0,r=1;return}for(;!Object.prototype.hasOwnProperty.call(n,++r););}};return e=Math.abs(e),{hit:function(l){var u=i[l],c=++a;if(n[c]=l,i[l]=c,!u)return++t,t<=e?void 0:(l=n[r],o(l),l);if(delete n[u],r===u)for(;!Object.prototype.hasOwnProperty.call(n,++r););},delete:o,clear:function(){t=a=0,r=1,n=Object.create(null),i=Object.create(null)}}}function $x(e){var{hasher:t,limit:r}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return r=r??Number.POSITIVE_INFINITY,t=t??JSON.stringify,function n(){typeof n.cache!="object"&&(n.cache={values:new Map,lru:Ave(r||Number.POSITIVE_INFINITY)});for(var i=[],a=0;a<arguments.length;a++)i[a]=arguments[a];var o=t(i);if(n.cache.values.has(o))return n.cache.lru.hit(o),n.cache.values.get(o);var s=e.apply(e,i);return n.cache.values.set(o,s),n.cache.values.delete(n.cache.lru.hit(o)),s}}function r5(e){return Object.keys(e.signatures||{}).reduce(function(t,r){var n=(r.match(/,/g)||[]).length+1;return Math.max(t,n)},-1)}var qnt="DenseMatrix",$nt=["Matrix"],n5=X(qnt,$nt,e=>{var{Matrix:t}=e;function r(c,f){if(!(this instanceof r))throw new SyntaxError("Constructor must be called with the new operator");if(f&&!Ya(f))throw new Error("Invalid datatype: "+f);if(jt(c))c.type==="DenseMatrix"?(this._data=nr(c._data),this._size=nr(c._size),this._datatype=f||c._datatype):(this._data=c.toArray(),this._size=c.size(),this._datatype=f||c._datatype);else if(c&&mn(c.data)&&mn(c.size))this._data=c.data,this._size=c.size,EJ(this._data,this._size),this._datatype=f||c.datatype;else if(mn(c))this._data=u(c),this._size=gr(this._data),EJ(this._data,this._size),this._datatype=f;else{if(c)throw new TypeError("Unsupported type of data ("+yn(c)+")");this._data=[],this._size=[0],this._datatype=f}}r.prototype=new t,r.prototype.createDenseMatrix=function(c,f){return new r(c,f)},Object.defineProperty(r,"name",{value:"DenseMatrix"}),r.prototype.constructor=r,r.prototype.type="DenseMatrix",r.prototype.isDenseMatrix=!0,r.prototype.getDataType=function(){return j1(this._data,yn)},r.prototype.storage=function(){return"dense"},r.prototype.datatype=function(){return this._datatype},r.prototype.create=function(c,f){return new r(c,f)},r.prototype.subset=function(c,f,d){switch(arguments.length){case 1:return n(this,c);case 2:case 3:return a(this,c,f,d);default:throw new SyntaxError("Wrong number of arguments")}},r.prototype.get=function(c){if(!mn(c))throw new TypeError("Array expected");if(c.length!==this._size.length)throw new Tr(c.length,this._size.length);for(var f=0;f<c.length;f++)xi(c[f],this._size[f]);for(var d=this._data,p=0,h=c.length;p<h;p++){var m=c[p];xi(m,d.length),d=d[m]}return d},r.prototype.set=function(c,f,d){if(!mn(c))throw new TypeError("Array expected");if(c.length<this._size.length)throw new Tr(c.length,this._size.length,"<");var p,h,m,v=c.map(function(x){return x+1});l(this,v,d);var A=this._data;for(p=0,h=c.length-1;p<h;p++)m=c[p],xi(m,A.length),A=A[m];return m=c[c.length-1],xi(m,A.length),A[m]=f,this};function n(c,f){if(!gg(f))throw new TypeError("Invalid index");var d=f.isScalar();if(d)return c.get(f.min());var p=f.size();if(p.length!==c._size.length)throw new Tr(p.length,c._size.length);for(var h=f.min(),m=f.max(),v=0,A=c._size.length;v<A;v++)xi(h[v],c._size[v]),xi(m[v],c._size[v]);return new r(i(c._data,f,p.length,0),c._datatype)}function i(c,f,d,p){var h=p===d-1,m=f.dimension(p);return h?m.map(function(v){return xi(v,c.length),c[v]}).valueOf():m.map(function(v){xi(v,c.length);var A=c[v];return i(A,f,d,p+1)}).valueOf()}function a(c,f,d,p){if(!f||f.isIndex!==!0)throw new TypeError("Invalid index");var h=f.size(),m=f.isScalar(),v;if(jt(d)?(v=d.size(),d=d.valueOf()):v=gr(d),m){if(v.length!==0)throw new TypeError("Scalar expected");c.set(f.min(),d,p)}else{if(!eh(v,h))try{v.length===0?d=DJ([d],h):d=DJ(d,h),v=gr(d)}catch{}if(h.length<c._size.length)throw new Tr(h.length,c._size.length,"<");if(v.length<h.length){for(var A=0,x=0;h[A]===1&&v[A]===1;)A++;for(;h[A]===1;)x++,A++;d=e5(d,h.length,x,v)}if(!eh(h,v))throw new Tr(h,v,">");var g=f.max().map(function(y){return y+1});l(c,g,p);var w=h.length,b=0;o(c._data,f,d,w,b)}return c}function o(c,f,d,p,h){var m=h===p-1,v=f.dimension(h);m?v.forEach(function(A,x){xi(A),c[A]=d[x[0]]}):v.forEach(function(A,x){xi(A),o(c[A],f,d[x[0]],p,h+1)})}r.prototype.resize=function(c,f,d){if(!ho(c))throw new TypeError("Array or Matrix expected");var p=c.valueOf().map(m=>Array.isArray(m)&&m.length===1?m[0]:m),h=d?this.clone():this;return s(h,p,f)};function s(c,f,d){if(f.length===0){for(var p=c._data;mn(p);)p=p[0];return p}return c._size=f.slice(0),c._data=nh(c._data,c._size,d),c}r.prototype.reshape=function(c,f){var d=f?this.clone():this;d._data=d3(d._data,c);var p=d._size.reduce((h,m)=>h*m);return d._size=p3(c,p),d};function l(c,f,d){for(var p=c._size.slice(0),h=!1;p.length<f.length;)p.push(0),h=!0;for(var m=0,v=f.length;m<v;m++)f[m]>p[m]&&(p[m]=f[m],h=!0);h&&s(c,p,d)}r.prototype.clone=function(){var c=new r({data:nr(this._data),size:nr(this._size),datatype:this._datatype});return c},r.prototype.size=function(){return this._size.slice(0)},r.prototype.map=function(c){var f=this,d=r5(c),p=function v(A,x){return mn(A)?A.map(function(g,w){return v(g,x.concat(w))}):d===1?c(A):d===2?c(A,x):c(A,x,f)},h=p(this._data,[]),m=this._datatype!==void 0?j1(h,yn):void 0;return new r(h,m)},r.prototype.forEach=function(c){var f=this,d=function p(h,m){mn(h)?h.forEach(function(v,A){p(v,m.concat(A))}):c(h,m,f)};d(this._data,[])},r.prototype[Symbol.iterator]=function*(){var c=function*f(d,p){if(mn(d))for(var h=0;h<d.length;h++)yield*f(d[h],p.concat(h));else yield{value:d,index:p}};yield*c(this._data,[])},r.prototype.rows=function(){var c=[],f=this.size();if(f.length!==2)throw new TypeError("Rows can only be returned for a 2D matrix.");var d=this._data;for(var p of d)c.push(new r([p],this._datatype));return c},r.prototype.columns=function(){var c=this,f=[],d=this.size();if(d.length!==2)throw new TypeError("Rows can only be returned for a 2D matrix.");for(var p=this._data,h=function(A){var x=p.map(g=>[g[A]]);f.push(new r(x,c._datatype))},m=0;m<d[1];m++)h(m);return f},r.prototype.toArray=function(){return nr(this._data)},r.prototype.valueOf=function(){return this._data},r.prototype.format=function(c){return Er(this._data,c)},r.prototype.toString=function(){return Er(this._data)},r.prototype.toJSON=function(){return{mathjs:"DenseMatrix",data:this._data,size:this._size,datatype:this._datatype}},r.prototype.diagonal=function(c){if(c){if(er(c)&&(c=c.toNumber()),!hr(c)||!Ot(c))throw new TypeError("The parameter k must be an integer number")}else c=0;for(var f=c>0?c:0,d=c<0?-c:0,p=this._size[0],h=this._size[1],m=Math.min(p-d,h-f),v=[],A=0;A<m;A++)v[A]=this._data[A+d][A+f];return new r({data:v,size:[m],datatype:this._datatype})},r.diagonal=function(c,f,d,p){if(!mn(c))throw new TypeError("Array expected, size parameter");if(c.length!==2)throw new Error("Only two dimensions matrix are supported");if(c=c.map(function(S){if(er(S)&&(S=S.toNumber()),!hr(S)||!Ot(S)||S<1)throw new Error("Size values must be positive integers");return S}),d){if(er(d)&&(d=d.toNumber()),!hr(d)||!Ot(d))throw new TypeError("The parameter k must be an integer number")}else d=0;var h=d>0?d:0,m=d<0?-d:0,v=c[0],A=c[1],x=Math.min(v-m,A-h),g;if(mn(f)){if(f.length!==x)throw new Error("Invalid value array length");g=function(T){return f[T]}}else if(jt(f)){var w=f.size();if(w.length!==1||w[0]!==x)throw new Error("Invalid matrix length");g=function(T){return f.get([T])}}else g=function(){return f};p||(p=er(g(0))?g(0).mul(0):0);var b=[];if(c.length>0){b=nh(b,c,p);for(var y=0;y<x;y++)b[y+m][y+h]=g(y)}return new r({data:b,size:[v,A]})},r.fromJSON=function(c){return new r(c)},r.prototype.swapRows=function(c,f){if(!hr(c)||!Ot(c)||!hr(f)||!Ot(f))throw new Error("Row index must be positive integers");if(this._size.length!==2)throw new Error("Only two dimensional matrix is supported");return xi(c,this._size[0]),xi(f,this._size[0]),r._swapRows(c,f,this._data),this},r._swapRows=function(c,f,d){var p=d[c];d[c]=d[f],d[f]=p};function u(c){return jt(c)?u(c.valueOf()):mn(c)?c.map(u):c}return r},{isClass:!0});var vve="clone",znt=["typed"],i5=X(vve,znt,e=>{var{typed:t}=e;return t(vve,{any:nr})});function a5(e){var t=e.length,r=e[0].length,n,i,a=[];for(i=0;i<r;i++){var o=[];for(n=0;n<t;n++)o.push(e[n][i]);a.push(o)}return a}function Qp(e){for(var t=0;t<e.length;t++)if(ho(e[t]))return!0;return!1}function ac(e,t){jt(e)&&(e=e.valueOf());for(var r=0,n=e.length;r<n;r++){var i=e[r];Array.isArray(i)?ac(i,t):t(i)}}function Ut(e,t,r){return e&&typeof e.map=="function"?e.map(function(n){return Ut(n,t,r)}):t(e)}function P1(e,t,r){var n=Array.isArray(e)?gr(e):e.size();if(t<0||t>=n.length)throw new fl(t,n.length);return jt(e)?e.create(o5(e.valueOf(),t,r)):o5(e,t,r)}function o5(e,t,r){var n,i,a,o;if(t<=0)if(Array.isArray(e[0])){for(o=a5(e),i=[],n=0;n<o.length;n++)i[n]=o5(o[n],t-1,r);return i}else{for(a=e[0],n=1;n<e.length;n++)a=r(a,e[n]);return a}else{for(i=[],n=0;n<e.length;n++)i[n]=o5(e[n],t-1,r);return i}}function TJ(e,t,r,n,i,a,o,s,l,u,c){var f=e._values,d=e._index,p=e._ptr,h,m,v,A;if(n)for(m=p[t],v=p[t+1],h=m;h<v;h++)A=d[h],r[A]!==a?(r[A]=a,o.push(A),u?(n[A]=l?s(f[h],c):s(c,f[h]),i[A]=a):n[A]=f[h]):(n[A]=l?s(f[h],n[A]):s(n[A],f[h]),i[A]=a);else for(m=p[t],v=p[t+1],h=m;h<v;h++)A=d[h],r[A]!==a?(r[A]=a,o.push(A)):i[A]=a}var yve="isInteger",Unt=["typed"],s5=X(yve,Unt,e=>{var{typed:t}=e;return t(yve,{number:Ot,BigNumber:function(n){return n.isInt()},Fraction:function(n){return n.d===1&&isFinite(n.n)},"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r))})});var Rf="number",T0="number, number";function NJ(e){return Math.abs(e)}NJ.signature=Rf;function MJ(e,t){return e+t}MJ.signature=T0;function OJ(e,t){return e-t}OJ.signature=T0;function FJ(e,t){return e*t}FJ.signature=T0;function Hnt(e,t){return e/t}Hnt.signature=T0;function jJ(e){return-e}jJ.signature=Rf;function PJ(e){return e}PJ.signature=Rf;function ak(e){return T0e(e)}ak.signature=Rf;function _J(e){return e*e*e}_J.signature=Rf;function IJ(e){return Math.exp(e)}IJ.signature=Rf;function BJ(e){return N0e(e)}BJ.signature=Rf;function Vnt(e,t){if(!Ot(e)||!Ot(t))throw new Error("Parameters in function gcd must be integer numbers");for(var r;t!==0;)r=e%t,e=t,t=r;return e<0?-e:e}Vnt.signature=T0;function LJ(e,t){if(!Ot(e)||!Ot(t))throw new Error("Parameters in function lcm must be integer numbers");if(e===0||t===0)return 0;for(var r,n=e*t;t!==0;)r=t,t=e%r,e=r;return Math.abs(n/e)}LJ.signature=T0;function bve(e,t){return t?Math.log(e)/Math.log(t):Math.log(e)}function RJ(e){return D0e(e)}RJ.signature=Rf;function qJ(e){return C0e(e)}qJ.signature=Rf;function Gnt(e){return FI(e)}Gnt.signature=Rf;function Wnt(e,t){return t===0?e:e-t*Math.floor(e/t)}Wnt.signature=T0;function $J(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:2,r=t<0;if(r&&(t=-t),t===0)throw new Error("Root must be non-zero");if(e<0&&Math.abs(t)%2!==1)throw new Error("Root must be odd when a is negative.");if(e===0)return r?1/0:0;if(!isFinite(e))return r?0:e;var n=Math.pow(Math.abs(e),1/t);return n=e<0?-n:n,r?1/n:n}function l5(e){return Gp(e)}l5.signature=Rf;function Qnt(e){return Math.sqrt(e)}Qnt.signature=Rf;function zJ(e){return e*e}zJ.signature=Rf;function UJ(e,t){var r,n,i,a=0,o=1,s=1,l=0;if(!Ot(e)||!Ot(t))throw new Error("Parameters in function xgcd must be integer numbers");for(;t;)n=Math.floor(e/t),i=e-n*t,r=a,a=o-n*a,o=r,r=s,s=l-n*s,l=r,e=t,t=i;var u;return e<0?u=[-e,-o,-l]:u=[e,e?o:0,l],u}UJ.signature=T0;function HJ(e,t){return e*e<1&&t===1/0||e*e>1&&t===-1/0?0:Math.pow(e,t)}HJ.signature=T0;function ok(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(!Ot(t)||t<0||t>15)throw new Error("Number of decimals in function round must be an integer from 0 to 15 inclusive");return parseFloat(lJ(e,t))}function Ynt(e){return Math.abs(e)}Ynt.signature=Rf;var Xnt="number",sk="number, number";function VJ(e,t){if(!Ot(e)||!Ot(t))throw new Error("Integers expected in function bitAnd");return e&t}VJ.signature=sk;function GJ(e){if(!Ot(e))throw new Error("Integer expected in function bitNot");return~e}GJ.signature=Xnt;function WJ(e,t){if(!Ot(e)||!Ot(t))throw new Error("Integers expected in function bitOr");return e|t}WJ.signature=sk;function QJ(e,t){if(!Ot(e)||!Ot(t))throw new Error("Integers expected in function bitXor");return e^t}QJ.signature=sk;function YJ(e,t){if(!Ot(e)||!Ot(t))throw new Error("Integers expected in function leftShift");return e<<t}YJ.signature=sk;function XJ(e,t){if(!Ot(e)||!Ot(t))throw new Error("Integers expected in function rightArithShift");return e>>t}XJ.signature=sk;function KJ(e,t){if(!Ot(e)||!Ot(t))throw new Error("Integers expected in function rightLogShift");return e>>>t}KJ.signature=sk;function Id(e,t){if(t<e)return 1;if(t===e)return t;var r=t+e>>1;return Id(e,r)*Id(r+1,t)}function JJ(e,t){if(!Ot(e)||e<0)throw new TypeError("Positive integer value expected in function combinations");if(!Ot(t)||t<0)throw new TypeError("Positive integer value expected in function combinations");if(t>e)throw new TypeError("k must be less than or equal to n");for(var r=e-t,n=1,i=t<r?r+1:t+1,a=2,o=t<r?t:r,s=i;s<=e;++s)for(n*=s;a<=o&&n%a===0;)n/=a,++a;return a<=o&&(n/=Id(a,o)),n}JJ.signature="number, number";var xve=Math.PI,wve=2*Math.PI,Sve=Math.E,Eve=1.618033988749895;var Knt="number",ZJ="number, number";function eZ(e){return!e}eZ.signature=Knt;function tZ(e,t){return!!(e||t)}tZ.signature=ZJ;function rZ(e,t){return!!e!=!!t}rZ.signature=ZJ;function nZ(e,t){return!!(e&&t)}nZ.signature=ZJ;function h3(e){var t;if(Ot(e))return e<=0?isFinite(e)?1/0:NaN:e>171?1/0:Id(1,e-1);if(e<.5)return Math.PI/(Math.sin(Math.PI*e)*h3(1-e));if(e>=171.35)return 1/0;if(e>85){var r=e*e,n=r*e,i=n*e,a=i*e;return Math.sqrt(2*Math.PI/e)*Math.pow(e/Math.E,e)*(1+1/(12*e)+1/(288*r)-139/(51840*n)-571/(2488320*i)+163879/(209018880*a)+5246819/(75246796800*a*e))}--e,t=zx[0];for(var o=1;o<zx.length;++o)t+=zx[o]/(e+o);var s=e+iZ+.5;return Math.sqrt(2*Math.PI)*Math.pow(s,e+.5)*Math.exp(-s)*t}h3.signature="number";var iZ=4.7421875,zx=[.9999999999999971,57.15623566586292,-59.59796035547549,14.136097974741746,-.4919138160976202,3399464998481189e-20,4652362892704858e-20,-9837447530487956e-20,.0001580887032249125,-.00021026444172410488,.00021743961811521265,-.0001643181065367639,8441822398385275e-20,-26190838401581408e-21,36899182659531625e-22],aZ=.9189385332046728,Jnt=5,Znt=7,kve=[1.000000000190015,76.18009172947146,-86.50532032941678,24.01409824083091,-1.231739572450155,.001208650973866179,-5395239384953e-18];function g3(e){if(e<0)return NaN;if(e===0)return 1/0;if(!isFinite(e))return e;if(e<.5)return Math.log(Math.PI/Math.sin(Math.PI*e))-g3(1-e);e=e-1;for(var t=e+Jnt+.5,r=kve[0],n=Znt-1;n>=1;n--)r+=kve[n]/(e+n);return aZ+(e+.5)*Math.log(t)-t+Math.log(r)}g3.signature="number";var To="number",eit="number, number";function tit(e){return Math.acos(e)}tit.signature=To;function oZ(e){return F0e(e)}oZ.signature=To;function sZ(e){return Math.atan(1/e)}sZ.signature=To;function lZ(e){return isFinite(e)?(Math.log((e+1)/e)+Math.log(e/(e-1)))/2:0}lZ.signature=To;function uZ(e){return Math.asin(1/e)}uZ.signature=To;function cZ(e){var t=1/e;return Math.log(t+Math.sqrt(t*t+1))}cZ.signature=To;function fZ(e){return Math.acos(1/e)}fZ.signature=To;function dZ(e){var t=1/e,r=Math.sqrt(t*t-1);return Math.log(r+t)}dZ.signature=To;function rit(e){return Math.asin(e)}rit.signature=To;function pZ(e){return j0e(e)}pZ.signature=To;function nit(e){return Math.atan(e)}nit.signature=To;function iit(e,t){return Math.atan2(e,t)}iit.signature=eit;function mZ(e){return P0e(e)}mZ.signature=To;function ait(e){return Math.cos(e)}ait.signature=To;function oit(e){return PI(e)}oit.signature=To;function hZ(e){return 1/Math.tan(e)}hZ.signature=To;function gZ(e){var t=Math.exp(2*e);return(t+1)/(t-1)}gZ.signature=To;function AZ(e){return 1/Math.sin(e)}AZ.signature=To;function vZ(e){return e===0?Number.POSITIVE_INFINITY:Math.abs(2/(Math.exp(e)-Math.exp(-e)))*Gp(e)}vZ.signature=To;function yZ(e){return 1/Math.cos(e)}yZ.signature=To;function bZ(e){return 2/(Math.exp(e)+Math.exp(-e))}bZ.signature=To;function sit(e){return Math.sin(e)}sit.signature=To;function xZ(e){return _0e(e)}xZ.signature=To;function lit(e){return Math.tan(e)}lit.signature=To;function uit(e){return _I(e)}uit.signature=To;var A3="number";function cit(e){return Ot(e)}cit.signature=A3;function wZ(e){return e<0}wZ.signature=A3;function SZ(e){return e>0}SZ.signature=A3;function EZ(e){return e===0}EZ.signature=A3;function kZ(e){return Number.isNaN(e)}kZ.signature=A3;var Cve="isNegative",fit=["typed"],u5=X(Cve,fit,e=>{var{typed:t}=e;return t(Cve,{number:wZ,BigNumber:function(n){return n.isNeg()&&!n.isZero()&&!n.isNaN()},Fraction:function(n){return n.s<0},Unit:t.referToSelf(r=>n=>t.find(r,n.valueType())(n.value)),"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r))})});var Dve="isNumeric",dit=["typed"],c5=X(Dve,dit,e=>{var{typed:t}=e;return t(Dve,{"number | BigNumber | Fraction | boolean":()=>!0,"Complex | Unit | string | null | undefined | Node":()=>!1,"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r))})});var Tve="hasNumericValue",pit=["typed","isNumeric"],f5=X(Tve,pit,e=>{var{typed:t,isNumeric:r}=e;return t(Tve,{boolean:()=>!0,string:function(i){return i.trim().length>0&&!isNaN(Number(i))},any:function(i){return r(i)}})});var Nve="isPositive",mit=["typed"],d5=X(Nve,mit,e=>{var{typed:t}=e;return t(Nve,{number:SZ,BigNumber:function(n){return!n.isNeg()&&!n.isZero()&&!n.isNaN()},Fraction:function(n){return n.s>0&&n.n>0},Unit:t.referToSelf(r=>n=>t.find(r,n.valueType())(n.value)),"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r))})});var Mve="isZero",hit=["typed"],p5=X(Mve,hit,e=>{var{typed:t}=e;return t(Mve,{number:EZ,BigNumber:function(n){return n.isZero()},Complex:function(n){return n.re===0&&n.im===0},Fraction:function(n){return n.d===1&&n.n===0},Unit:t.referToSelf(r=>n=>t.find(r,n.valueType())(n.value)),"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r))})});var Ove="isNaN",git=["typed"],m5=X(Ove,git,e=>{var{typed:t}=e;return t(Ove,{number:kZ,BigNumber:function(n){return n.isNaN()},Fraction:function(n){return!1},Complex:function(n){return n.isNaN()},Unit:function(n){return Number.isNaN(n.value)},"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r))})});var Fve="typeOf",Ait=["typed"],h5=X(Fve,Ait,e=>{var{typed:t}=e;return t(Fve,{any:yn})});function gs(e,t,r){if(r==null)return e.eq(t);if(e.eq(t))return!0;if(e.isNaN()||t.isNaN())return!1;if(e.isFinite()&&t.isFinite()){var n=e.minus(t).abs();if(n.isZero())return!0;var i=e.constructor.max(e.abs(),t.abs());return n.lte(i.times(r))}return!1}function jve(e,t,r){return go(e.re,t.re,r)&&go(e.im,t.im,r)}var Yp=X("compareUnits",["typed"],e=>{var{typed:t}=e;return{"Unit, Unit":t.referToSelf(r=>(n,i)=>{if(!n.equalBase(i))throw new Error("Cannot compare units with different base");return t.find(r,[n.valueType(),i.valueType()])(n.value,i.value)})}});var g5="equalScalar",vit=["typed","config"],A5=X(g5,vit,e=>{var{typed:t,config:r}=e,n=Yp({typed:t});return t(g5,{"boolean, boolean":function(a,o){return a===o},"number, number":function(a,o){return go(a,o,r.epsilon)},"BigNumber, BigNumber":function(a,o){return a.eq(o)||gs(a,o,r.epsilon)},"Fraction, Fraction":function(a,o){return a.equals(o)},"Complex, Complex":function(a,o){return jve(a,o,r.epsilon)}},n)}),xqt=X(g5,["typed","config"],e=>{var{typed:t,config:r}=e;return t(g5,{"number, number":function(i,a){return go(i,a,r.epsilon)}})});var yit="SparseMatrix",bit=["typed","equalScalar","Matrix"],v5=X(yit,bit,e=>{var{typed:t,equalScalar:r,Matrix:n}=e;function i(m,v){if(!(this instanceof i))throw new SyntaxError("Constructor must be called with the new operator");if(v&&!Ya(v))throw new Error("Invalid datatype: "+v);if(jt(m))a(this,m,v);else if(m&&mn(m.index)&&mn(m.ptr)&&mn(m.size))this._values=m.values,this._index=m.index,this._ptr=m.ptr,this._size=m.size,this._datatype=v||m.datatype;else if(mn(m))o(this,m,v);else{if(m)throw new TypeError("Unsupported type of data ("+yn(m)+")");this._values=[],this._index=[],this._ptr=[0],this._size=[0,0],this._datatype=v}}function a(m,v,A){v.type==="SparseMatrix"?(m._values=v._values?nr(v._values):void 0,m._index=nr(v._index),m._ptr=nr(v._ptr),m._size=nr(v._size),m._datatype=A||v._datatype):o(m,v.valueOf(),A||v._datatype)}function o(m,v,A){m._values=[],m._index=[],m._ptr=[],m._datatype=A;var x=v.length,g=0,w=r,b=0;if(Ya(A)&&(w=t.find(r,[A,A])||r,b=t.convert(0,A)),x>0){var y=0;do{m._ptr.push(m._index.length);for(var S=0;S<x;S++){var T=v[S];if(mn(T)){if(y===0&&g<T.length&&(g=T.length),y<T.length){var D=T[y];w(D,b)||(m._values.push(D),m._index.push(S))}}else y===0&&g<1&&(g=1),w(T,b)||(m._values.push(T),m._index.push(S))}y++}while(y<g)}m._ptr.push(m._index.length),m._size=[x,g]}i.prototype=new n,i.prototype.createSparseMatrix=function(m,v){return new i(m,v)},Object.defineProperty(i,"name",{value:"SparseMatrix"}),i.prototype.constructor=i,i.prototype.type="SparseMatrix",i.prototype.isSparseMatrix=!0,i.prototype.getDataType=function(){return j1(this._values,yn)},i.prototype.storage=function(){return"sparse"},i.prototype.datatype=function(){return this._datatype},i.prototype.create=function(m,v){return new i(m,v)},i.prototype.density=function(){var m=this._size[0],v=this._size[1];return m!==0&&v!==0?this._index.length/(m*v):0},i.prototype.subset=function(m,v,A){if(!this._values)throw new Error("Cannot invoke subset on a Pattern only matrix");switch(arguments.length){case 1:return s(this,m);case 2:case 3:return l(this,m,v,A);default:throw new SyntaxError("Wrong number of arguments")}};function s(m,v){if(!gg(v))throw new TypeError("Invalid index");var A=v.isScalar();if(A)return m.get(v.min());var x=v.size();if(x.length!==m._size.length)throw new Tr(x.length,m._size.length);var g,w,b,y,S=v.min(),T=v.max();for(g=0,w=m._size.length;g<w;g++)xi(S[g],m._size[g]),xi(T[g],m._size[g]);var D=m._values,k=m._index,M=m._ptr,E=v.dimension(0),O=v.dimension(1),P=[],_=[];E.forEach(function(I,R){_[I]=R[0],P[I]=!0});var B=D?[]:void 0,F=[],L=[];return O.forEach(function(I){for(L.push(F.length),b=M[I],y=M[I+1];b<y;b++)g=k[b],P[g]===!0&&(F.push(_[g]),B&&B.push(D[b]))}),L.push(F.length),new i({values:B,index:F,ptr:L,size:x,datatype:m._datatype})}function l(m,v,A,x){if(!v||v.isIndex!==!0)throw new TypeError("Invalid index");var g=v.size(),w=v.isScalar(),b;if(jt(A)?(b=A.size(),A=A.toArray()):b=gr(A),w){if(b.length!==0)throw new TypeError("Scalar expected");m.set(v.min(),A,x)}else{if(g.length!==1&&g.length!==2)throw new Tr(g.length,m._size.length,"<");if(b.length<g.length){for(var y=0,S=0;g[y]===1&&b[y]===1;)y++;for(;g[y]===1;)S++,y++;A=e5(A,g.length,S,b)}if(!eh(g,b))throw new Tr(g,b,">");if(g.length===1){var T=v.dimension(0);T.forEach(function(M,E){xi(M),m.set([M,0],A[E[0]],x)})}else{var D=v.dimension(0),k=v.dimension(1);D.forEach(function(M,E){xi(M),k.forEach(function(O,P){xi(O),m.set([M,O],A[E[0]][P[0]],x)})})}}return m}i.prototype.get=function(m){if(!mn(m))throw new TypeError("Array expected");if(m.length!==this._size.length)throw new Tr(m.length,this._size.length);if(!this._values)throw new Error("Cannot invoke get on a Pattern only matrix");var v=m[0],A=m[1];xi(v,this._size[0]),xi(A,this._size[1]);var x=u(v,this._ptr[A],this._ptr[A+1],this._index);return x<this._ptr[A+1]&&this._index[x]===v?this._values[x]:0},i.prototype.set=function(m,v,A){if(!mn(m))throw new TypeError("Array expected");if(m.length!==this._size.length)throw new Tr(m.length,this._size.length);if(!this._values)throw new Error("Cannot invoke set on a Pattern only matrix");var x=m[0],g=m[1],w=this._size[0],b=this._size[1],y=r,S=0;Ya(this._datatype)&&(y=t.find(r,[this._datatype,this._datatype])||r,S=t.convert(0,this._datatype)),(x>w-1||g>b-1)&&(d(this,Math.max(x+1,w),Math.max(g+1,b),A),w=this._size[0],b=this._size[1]),xi(x,w),xi(g,b);var T=u(x,this._ptr[g],this._ptr[g+1],this._index);return T<this._ptr[g+1]&&this._index[T]===x?y(v,S)?c(T,g,this._values,this._index,this._ptr):this._values[T]=v:y(v,S)||f(T,x,g,v,this._values,this._index,this._ptr),this};function u(m,v,A,x){if(A-v===0)return A;for(var g=v;g<A;g++)if(x[g]===m)return g;return v}function c(m,v,A,x,g){A.splice(m,1),x.splice(m,1);for(var w=v+1;w<g.length;w++)g[w]--}function f(m,v,A,x,g,w,b){g.splice(m,0,x),w.splice(m,0,v);for(var y=A+1;y<b.length;y++)b[y]++}i.prototype.resize=function(m,v,A){if(!ho(m))throw new TypeError("Array or Matrix expected");var x=m.valueOf().map(w=>Array.isArray(w)&&w.length===1?w[0]:w);if(x.length!==2)throw new Error("Only two dimensions matrix are supported");x.forEach(function(w){if(!hr(w)||!Ot(w)||w<0)throw new TypeError("Invalid size, must contain positive integers (size: "+Er(x)+")")});var g=A?this.clone():this;return d(g,x[0],x[1],v)};function d(m,v,A,x){var g=x||0,w=r,b=0;Ya(m._datatype)&&(w=t.find(r,[m._datatype,m._datatype])||r,b=t.convert(0,m._datatype),g=t.convert(g,m._datatype));var y=!w(g,b),S=m._size[0],T=m._size[1],D,k,M;if(A>T){for(k=T;k<A;k++)if(m._ptr[k]=m._values.length,y)for(D=0;D<S;D++)m._values.push(g),m._index.push(D);m._ptr[A]=m._values.length}else A<T&&(m._ptr.splice(A+1,T-A),m._values.splice(m._ptr[A],m._values.length),m._index.splice(m._ptr[A],m._index.length));if(T=A,v>S){if(y){var E=0;for(k=0;k<T;k++){m._ptr[k]=m._ptr[k]+E,M=m._ptr[k+1]+E;var O=0;for(D=S;D<v;D++,O++)m._values.splice(M+O,0,g),m._index.splice(M+O,0,D),E++}m._ptr[T]=m._values.length}}else if(v<S){var P=0;for(k=0;k<T;k++){m._ptr[k]=m._ptr[k]-P;var _=m._ptr[k],B=m._ptr[k+1]-P;for(M=_;M<B;M++)D=m._index[M],D>v-1&&(m._values.splice(M,1),m._index.splice(M,1),P++)}m._ptr[k]=m._values.length}return m._size[0]=v,m._size[1]=A,m}i.prototype.reshape=function(m,v){if(!mn(m))throw new TypeError("Array expected");if(m.length!==2)throw new Error("Sparse matrices can only be reshaped in two dimensions");m.forEach(function(I){if(!hr(I)||!Ot(I)||I<=-2||I===0)throw new TypeError("Invalid size, must contain positive integers or -1 (size: "+Er(m)+")")});var A=this._size[0]*this._size[1];m=p3(m,A);var x=m[0]*m[1];if(A!==x)throw new Error("Reshaping sparse matrix will result in the wrong number of elements");var g=v?this.clone():this;if(this._size[0]===m[0]&&this._size[1]===m[1])return g;for(var w=[],b=0;b<g._ptr.length;b++)for(var y=0;y<g._ptr[b+1]-g._ptr[b];y++)w.push(b);for(var S=g._values.slice(),T=g._index.slice(),D=0;D<g._index.length;D++){var k=T[D],M=w[D],E=k*g._size[1]+M;w[D]=E%m[1],T[D]=Math.floor(E/m[1])}g._values.length=0,g._index.length=0,g._ptr.length=m[1]+1,g._size=m.slice();for(var O=0;O<g._ptr.length;O++)g._ptr[O]=0;for(var P=0;P<S.length;P++){var _=T[P],B=w[P],F=S[P],L=u(_,g._ptr[B],g._ptr[B+1],g._index);f(L,_,B,F,g._values,g._index,g._ptr)}return g},i.prototype.clone=function(){var m=new i({values:this._values?nr(this._values):void 0,index:nr(this._index),ptr:nr(this._ptr),size:nr(this._size),datatype:this._datatype});return m},i.prototype.size=function(){return this._size.slice(0)},i.prototype.map=function(m,v){if(!this._values)throw new Error("Cannot invoke map on a Pattern only matrix");var A=this,x=this._size[0],g=this._size[1],w=r5(m),b=function(S,T,D){return w===1?m(S):w===2?m(S,[T,D]):m(S,[T,D],A)};return p(this,0,x-1,0,g-1,b,v)};function p(m,v,A,x,g,w,b){var y=[],S=[],T=[],D=r,k=0;Ya(m._datatype)&&(D=t.find(r,[m._datatype,m._datatype])||r,k=t.convert(0,m._datatype));for(var M=function(q,ie,Ae){q=w(q,ie,Ae),D(q,k)||(y.push(q),S.push(ie))},E=x;E<=g;E++){T.push(y.length);var O=m._ptr[E],P=m._ptr[E+1];if(b)for(var _=O;_<P;_++){var B=m._index[_];B>=v&&B<=A&&M(m._values[_],B-v,E-x)}else{for(var F={},L=O;L<P;L++){var I=m._index[L];F[I]=m._values[L]}for(var R=v;R<=A;R++){var J=R in F?F[R]:0;M(J,R-v,E-x)}}}return T.push(y.length),new i({values:y,index:S,ptr:T,size:[A-v+1,g-x+1]})}i.prototype.forEach=function(m,v){if(!this._values)throw new Error("Cannot invoke forEach on a Pattern only matrix");for(var A=this,x=this._size[0],g=this._size[1],w=0;w<g;w++){var b=this._ptr[w],y=this._ptr[w+1];if(v)for(var S=b;S<y;S++){var T=this._index[S];m(this._values[S],[T,w],A)}else{for(var D={},k=b;k<y;k++){var M=this._index[k];D[M]=this._values[k]}for(var E=0;E<x;E++){var O=E in D?D[E]:0;m(O,[E,w],A)}}}},i.prototype[Symbol.iterator]=function*(){if(!this._values)throw new Error("Cannot iterate a Pattern only matrix");for(var m=this._size[1],v=0;v<m;v++)for(var A=this._ptr[v],x=this._ptr[v+1],g=A;g<x;g++){var w=this._index[g];yield{value:this._values[g],index:[w,v]}}},i.prototype.toArray=function(){return h(this._values,this._index,this._ptr,this._size,!0)},i.prototype.valueOf=function(){return h(this._values,this._index,this._ptr,this._size,!1)};function h(m,v,A,x,g){var w=x[0],b=x[1],y=[],S,T;for(S=0;S<w;S++)for(y[S]=[],T=0;T<b;T++)y[S][T]=0;for(T=0;T<b;T++)for(var D=A[T],k=A[T+1],M=D;M<k;M++)S=v[M],y[S][T]=m?g?nr(m[M]):m[M]:1;return y}return i.prototype.format=function(m){for(var v=this._size[0],A=this._size[1],x=this.density(),g="Sparse Matrix ["+Er(v,m)+" x "+Er(A,m)+"] density: "+Er(x,m)+`
81`,w=0;w<A;w++)for(var b=this._ptr[w],y=this._ptr[w+1],S=b;S<y;S++){var T=this._index[S];g+=`
82 (`+Er(T,m)+", "+Er(w,m)+") ==> "+(this._values?Er(this._values[S],m):"X")}return g},i.prototype.toString=function(){return Er(this.toArray())},i.prototype.toJSON=function(){return{mathjs:"SparseMatrix",values:this._values,index:this._index,ptr:this._ptr,size:this._size,datatype:this._datatype}},i.prototype.diagonal=function(m){if(m){if(er(m)&&(m=m.toNumber()),!hr(m)||!Ot(m))throw new TypeError("The parameter k must be an integer number")}else m=0;var v=m>0?m:0,A=m<0?-m:0,x=this._size[0],g=this._size[1],w=Math.min(x-A,g-v),b=[],y=[],S=[];S[0]=0;for(var T=v;T<g&&b.length<w;T++)for(var D=this._ptr[T],k=this._ptr[T+1],M=D;M<k;M++){var E=this._index[M];if(E===T-v+A){b.push(this._values[M]),y[b.length-1]=E-A;break}}return S.push(b.length),new i({values:b,index:y,ptr:S,size:[w,1]})},i.fromJSON=function(m){return new i(m)},i.diagonal=function(m,v,A,x,g){if(!mn(m))throw new TypeError("Array expected, size parameter");if(m.length!==2)throw new Error("Only two dimensions matrix are supported");if(m=m.map(function(I){if(er(I)&&(I=I.toNumber()),!hr(I)||!Ot(I)||I<1)throw new Error("Size values must be positive integers");return I}),A){if(er(A)&&(A=A.toNumber()),!hr(A)||!Ot(A))throw new TypeError("The parameter k must be an integer number")}else A=0;var w=r,b=0;Ya(g)&&(w=t.find(r,[g,g])||r,b=t.convert(0,g));var y=A>0?A:0,S=A<0?-A:0,T=m[0],D=m[1],k=Math.min(T-S,D-y),M;if(mn(v)){if(v.length!==k)throw new Error("Invalid value array length");M=function(R){return v[R]}}else if(jt(v)){var E=v.size();if(E.length!==1||E[0]!==k)throw new Error("Invalid matrix length");M=function(R){return v.get([R])}}else M=function(){return v};for(var O=[],P=[],_=[],B=0;B<D;B++){_.push(O.length);var F=B-y;if(F>=0&&F<k){var L=M(F);w(L,b)||(P.push(F+S),O.push(L))}}return _.push(O.length),new i({values:O,index:P,ptr:_,size:[T,D]})},i.prototype.swapRows=function(m,v){if(!hr(m)||!Ot(m)||!hr(v)||!Ot(v))throw new Error("Row index must be positive integers");if(this._size.length!==2)throw new Error("Only two dimensional matrix is supported");return xi(m,this._size[0]),xi(v,this._size[0]),i._swapRows(m,v,this._size[1],this._values,this._index,this._ptr),this},i._forEachRow=function(m,v,A,x,g){for(var w=x[m],b=x[m+1],y=w;y<b;y++)g(A[y],v[y])},i._swapRows=function(m,v,A,x,g,w){for(var b=0;b<A;b++){var y=w[b],S=w[b+1],T=u(m,y,S,g),D=u(v,y,S,g);if(T<S&&D<S&&g[T]===m&&g[D]===v){if(x){var k=x[T];x[T]=x[D],x[D]=k}continue}if(T<S&&g[T]===m&&(D>=S||g[D]!==v)){var M=x?x[T]:void 0;g.splice(D,0,v),x&&x.splice(D,0,M),g.splice(D<=T?T+1:T,1),x&&x.splice(D<=T?T+1:T,1);continue}if(D<S&&g[D]===v&&(T>=S||g[T]!==m)){var E=x?x[D]:void 0;g.splice(T,0,m),x&&x.splice(T,0,E),g.splice(T<=D?D+1:D,1),x&&x.splice(T<=D?D+1:D,1)}}},i},{isClass:!0});var xit="number",wit=["typed"];function Sit(e){var t=e.match(/(0[box])([0-9a-fA-F]*)\.([0-9a-fA-F]*)/);if(t){var r={"0b":2,"0o":8,"0x":16}[t[1]],n=t[2],i=t[3];return{input:e,radix:r,integerPart:n,fractionalPart:i}}else return null}function Eit(e){for(var t=parseInt(e.integerPart,e.radix),r=0,n=0;n<e.fractionalPart.length;n++){var i=parseInt(e.fractionalPart[n],e.radix);r+=i/Math.pow(e.radix,n+1)}var a=t+r;if(isNaN(a))throw new SyntaxError('String "'+e.input+'" is not a valid number');return a}var y5=X(xit,wit,e=>{var{typed:t}=e,r=t("number",{"":function(){return 0},number:function(i){return i},string:function(i){if(i==="NaN")return NaN;var a=Sit(i);if(a)return Eit(a);var o=0,s=i.match(/(0[box][0-9a-fA-F]*)i([0-9]*)/);s&&(o=Number(s[2]),i=s[1]);var l=Number(i);if(isNaN(l))throw new SyntaxError('String "'+i+'" is not a valid number');if(s){if(l>2**o-1)throw new SyntaxError('String "'.concat(i,'" is out of range'));l>=2**(o-1)&&(l=l-2**o)}return l},BigNumber:function(i){return i.toNumber()},Fraction:function(i){return i.valueOf()},Unit:t.referToSelf(n=>i=>{var a=i.clone();return a.value=n(i.value),a}),null:function(i){return 0},"Unit, string | Unit":function(i,a){return i.toNumber(a)},"Array | Matrix":t.referToSelf(n=>i=>Ut(i,n))});return r.fromJSON=function(n){return parseFloat(n.value)},r});var Pve="string",kit=["typed"],b5=X(Pve,kit,e=>{var{typed:t}=e;return t(Pve,{"":function(){return""},number:th,null:function(n){return"null"},boolean:function(n){return n+""},string:function(n){return n},"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r)),any:function(n){return String(n)}})});var _ve="boolean",Cit=["typed"],x5=X(_ve,Cit,e=>{var{typed:t}=e;return t(_ve,{"":function(){return!1},boolean:function(n){return n},number:function(n){return!!n},null:function(n){return!1},BigNumber:function(n){return!n.isZero()},string:function(n){var i=n.toLowerCase();if(i==="true")return!0;if(i==="false")return!1;var a=Number(n);if(n!==""&&!isNaN(a))return!!a;throw new Error('Cannot convert "'+n+'" to a boolean')},"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r))})});var Dit="bignumber",Tit=["typed","BigNumber"],w5=X(Dit,Tit,e=>{var{typed:t,BigNumber:r}=e;return t("bignumber",{"":function(){return new r(0)},number:function(i){return new r(i+"")},string:function(i){var a=i.match(/(0[box][0-9a-fA-F]*)i([0-9]*)/);if(a){var o=a[2],s=r(a[1]),l=new r(2).pow(Number(o));if(s.gt(l.sub(1)))throw new SyntaxError('String "'.concat(i,'" is out of range'));var u=new r(2).pow(Number(o)-1);return s.gte(u)?s.sub(l):s}return new r(i)},BigNumber:function(i){return i},Unit:t.referToSelf(n=>i=>{var a=i.clone();return a.value=n(i.value),a}),Fraction:function(i){return new r(i.n).div(i.d).times(i.s)},null:function(i){return new r(0)},"Array | Matrix":t.referToSelf(n=>i=>Ut(i,n))})});var Nit="complex",Mit=["typed","Complex"],S5=X(Nit,Mit,e=>{var{typed:t,Complex:r}=e;return t("complex",{"":function(){return r.ZERO},number:function(i){return new r(i,0)},"number, number":function(i,a){return new r(i,a)},"BigNumber, BigNumber":function(i,a){return new r(i.toNumber(),a.toNumber())},Fraction:function(i){return new r(i.valueOf(),0)},Complex:function(i){return i.clone()},string:function(i){return r(i)},null:function(i){return r(0)},Object:function(i){if("re"in i&&"im"in i)return new r(i.re,i.im);if("r"in i&&"phi"in i||"abs"in i&&"arg"in i)return new r(i);throw new Error("Expected object with properties (re and im) or (r and phi) or (abs and arg)")},"Array | Matrix":t.referToSelf(n=>i=>Ut(i,n))})});var Oit="fraction",Fit=["typed","Fraction"],E5=X(Oit,Fit,e=>{var{typed:t,Fraction:r}=e;return t("fraction",{number:function(i){if(!isFinite(i)||isNaN(i))throw new Error(i+" cannot be represented as a fraction");return new r(i)},string:function(i){return new r(i)},"number, number":function(i,a){return new r(i,a)},null:function(i){return new r(0)},BigNumber:function(i){return new r(i.toString())},Fraction:function(i){return i},Unit:t.referToSelf(n=>i=>{var a=i.clone();return a.value=n(i.value),a}),Object:function(i){return new r(i)},"Array | Matrix":t.referToSelf(n=>i=>Ut(i,n))})});var Ive="matrix",jit=["typed","Matrix","DenseMatrix","SparseMatrix"],k5=X(Ive,jit,e=>{var{typed:t,Matrix:r,DenseMatrix:n,SparseMatrix:i}=e;return t(Ive,{"":function(){return a([])},string:function(s){return a([],s)},"string, string":function(s,l){return a([],s,l)},Array:function(s){return a(s)},Matrix:function(s){return a(s,s.storage())},"Array | Matrix, string":a,"Array | Matrix, string, string":a});function a(o,s,l){if(s==="dense"||s==="default"||s===void 0)return new n(o,l);if(s==="sparse")return new i(o,l);throw new TypeError("Unknown matrix type "+JSON.stringify(s)+".")}});var Bve="matrixFromFunction",Pit=["typed","matrix","isZero"],C5=X(Bve,Pit,e=>{var{typed:t,matrix:r,isZero:n}=e;return t(Bve,{"Array | Matrix, function, string, string":function(o,s,l,u){return i(o,s,l,u)},"Array | Matrix, function, string":function(o,s,l){return i(o,s,l)},"Matrix, function":function(o,s){return i(o,s,"dense")},"Array, function":function(o,s){return i(o,s,"dense").toArray()},"Array | Matrix, string, function":function(o,s,l){return i(o,l,s)},"Array | Matrix, string, string, function":function(o,s,l,u){return i(o,u,s,l)}});function i(a,o,s,l){var u;return l!==void 0?u=r(s,l):u=r(s),u.resize(a),u.forEach(function(c,f){var d=o(f);n(d)||u.set(f,d)}),u}});var Lve="matrixFromRows",_it=["typed","matrix","flatten","size"],D5=X(Lve,_it,e=>{var{typed:t,matrix:r,flatten:n,size:i}=e;return t(Lve,{"...Array":function(l){return a(l)},"...Matrix":function(l){return r(a(l.map(u=>u.toArray())))}});function a(s){if(s.length===0)throw new TypeError("At least one row is needed to construct a matrix.");var l=o(s[0]),u=[];for(var c of s){var f=o(c);if(f!==l)throw new TypeError("The vectors had different length: "+(l|0)+" \u2260 "+(f|0));u.push(n(c))}return u}function o(s){var l=i(s);if(l.length===1)return l[0];if(l.length===2){if(l[0]===1)return l[1];if(l[1]===1)return l[0];throw new TypeError("At least one of the arguments is not a vector.")}else throw new TypeError("Only one- or two-dimensional vectors are supported.")}});var Rve="matrixFromColumns",Iit=["typed","matrix","flatten","size"],T5=X(Rve,Iit,e=>{var{typed:t,matrix:r,flatten:n,size:i}=e;return t(Rve,{"...Array":function(l){return a(l)},"...Matrix":function(l){return r(a(l.map(u=>u.toArray())))}});function a(s){if(s.length===0)throw new TypeError("At least one column is needed to construct a matrix.");for(var l=o(s[0]),u=[],c=0;c<l;c++)u[c]=[];for(var f of s){var d=o(f);if(d!==l)throw new TypeError("The vectors had different length: "+(l|0)+" \u2260 "+(d|0));for(var p=n(f),h=0;h<l;h++)u[h].push(p[h])}return u}function o(s){var l=i(s);if(l.length===1)return l[0];if(l.length===2){if(l[0]===1)return l[1];if(l[1]===1)return l[0];throw new TypeError("At least one of the arguments is not a vector.")}else throw new TypeError("Only one- or two-dimensional vectors are supported.")}});var qve="splitUnit",Bit=["typed"],N5=X(qve,Bit,e=>{var{typed:t}=e;return t(qve,{"Unit, Array":function(n,i){return n.splitUnit(i)}})});var $ve="unaryMinus",Lit=["typed"],M5=X($ve,Lit,e=>{var{typed:t}=e;return t($ve,{number:jJ,"Complex | BigNumber | Fraction":r=>r.neg(),Unit:t.referToSelf(r=>n=>{var i=n.clone();return i.value=t.find(r,i.valueType())(n.value),i}),"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r,!0))})});var zve="unaryPlus",Rit=["typed","config","BigNumber"],O5=X(zve,Rit,e=>{var{typed:t,config:r,BigNumber:n}=e;return t(zve,{number:PJ,Complex:function(a){return a},BigNumber:function(a){return a},Fraction:function(a){return a},Unit:function(a){return a.clone()},"Array | Matrix":t.referToSelf(i=>a=>Ut(a,i,!0)),"boolean | string":function(a){return r.number==="BigNumber"?new n(+a):+a}})});var Uve="abs",qit=["typed"],F5=X(Uve,qit,e=>{var{typed:t}=e;return t(Uve,{number:NJ,"Complex | BigNumber | Fraction | Unit":r=>r.abs(),"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r,!0))})});var Hve="apply",$it=["typed","isInteger"],_1=X(Hve,$it,e=>{var{typed:t,isInteger:r}=e;return t(Hve,{"Array | Matrix, number | BigNumber, function":function(i,a,o){if(!r(a))throw new TypeError("Integer number expected for dimension");var s=Array.isArray(i)?gr(i):i.size();if(a<0||a>=s.length)throw new fl(a,s.length);return jt(i)?i.create(j5(i.valueOf(),a,o)):j5(i,a,o)}})});function j5(e,t,r){var n,i,a;if(t<=0)if(Array.isArray(e[0])){for(a=zit(e),i=[],n=0;n<a.length;n++)i[n]=j5(a[n],t-1,r);return i}else return r(e);else{for(i=[],n=0;n<e.length;n++)i[n]=j5(e[n],t-1,r);return i}}function zit(e){var t=e.length,r=e[0].length,n,i,a=[];for(i=0;i<r;i++){var o=[];for(n=0;n<t;n++)o.push(e[n][i]);a.push(o)}return a}var Vve="addScalar",Uit=["typed"],P5=X(Vve,Uit,e=>{var{typed:t}=e;return t(Vve,{"number, number":MJ,"Complex, Complex":function(n,i){return n.add(i)},"BigNumber, BigNumber":function(n,i){return n.plus(i)},"Fraction, Fraction":function(n,i){return n.add(i)},"Unit, Unit":t.referToSelf(r=>(n,i)=>{if(n.value===null||n.value===void 0)throw new Error("Parameter x contains a unit with undefined value");if(i.value===null||i.value===void 0)throw new Error("Parameter y contains a unit with undefined value");if(!n.equalBase(i))throw new Error("Units do not match");var a=n.clone();return a.value=t.find(r,[a.valueType(),i.valueType()])(a.value,i.value),a.fixPrefix=!1,a})})});var Gve="subtractScalar",Hit=["typed"],_5=X(Gve,Hit,e=>{var{typed:t}=e;return t(Gve,{"number, number":OJ,"Complex, Complex":function(n,i){return n.sub(i)},"BigNumber, BigNumber":function(n,i){return n.minus(i)},"Fraction, Fraction":function(n,i){return n.sub(i)},"Unit, Unit":t.referToSelf(r=>(n,i)=>{if(n.value===null||n.value===void 0)throw new Error("Parameter x contains a unit with undefined value");if(i.value===null||i.value===void 0)throw new Error("Parameter y contains a unit with undefined value");if(!n.equalBase(i))throw new Error("Units do not match");var a=n.clone();return a.value=t.find(r,[a.valueType(),i.valueType()])(a.value,i.value),a.fixPrefix=!1,a})})});var Wve="cbrt",Vit=["config","typed","isNegative","unaryMinus","matrix","Complex","BigNumber","Fraction"],I5=X(Wve,Vit,e=>{var{config:t,typed:r,isNegative:n,unaryMinus:i,matrix:a,Complex:o,BigNumber:s,Fraction:l}=e;return r(Wve,{number:ak,Complex:u,"Complex, boolean":u,BigNumber:function(d){return d.cbrt()},Unit:c});function u(f,d){var p=f.arg()/3,h=f.abs(),m=new o(ak(h),0).mul(new o(0,p).exp());if(d){var v=[m,new o(ak(h),0).mul(new o(0,p+Math.PI*2/3).exp()),new o(ak(h),0).mul(new o(0,p-Math.PI*2/3).exp())];return t.matrix==="Array"?v:a(v)}else return m}function c(f){if(f.value&&ol(f.value)){var d=f.clone();return d.value=1,d=d.pow(1/3),d.value=u(f.value),d}else{var p=n(f.value);p&&(f.value=i(f.value));var h;er(f.value)?h=new s(1).div(3):Pd(f.value)?h=new l(1,3):h=1/3;var m=f.pow(h);return p&&(m.value=i(m.value)),m}}});var Git="matAlgo11xS0s",Wit=["typed","equalScalar"],wi=X(Git,Wit,e=>{var{typed:t,equalScalar:r}=e;return function(i,a,o,s){var l=i._values,u=i._index,c=i._ptr,f=i._size,d=i._datatype;if(!l)throw new Error("Cannot perform operation on Pattern Sparse Matrix and Scalar value");var p=f[0],h=f[1],m,v=r,A=0,x=o;typeof d=="string"&&(m=d,v=t.find(r,[m,m]),A=t.convert(0,m),a=t.convert(a,m),x=t.find(o,[m,m]));for(var g=[],w=[],b=[],y=0;y<h;y++){b[y]=w.length;for(var S=c[y],T=c[y+1],D=S;D<T;D++){var k=u[D],M=s?x(a,l[D]):x(l[D],a);v(M,A)||(w.push(k),g.push(M))}}return b[h]=w.length,i.createSparseMatrix({values:g,index:w,ptr:b,size:[p,h],datatype:m})}});var Qit="matAlgo12xSfs",Yit=["typed","DenseMatrix"],zn=X(Qit,Yit,e=>{var{typed:t,DenseMatrix:r}=e;return function(i,a,o,s){var l=i._values,u=i._index,c=i._ptr,f=i._size,d=i._datatype;if(!l)throw new Error("Cannot perform operation on Pattern Sparse Matrix and Scalar value");var p=f[0],h=f[1],m,v=o;typeof d=="string"&&(m=d,a=t.convert(a,m),v=t.find(o,[m,m]));for(var A=[],x=[],g=[],w=0;w<h;w++){for(var b=w+1,y=c[w],S=c[w+1],T=y;T<S;T++){var D=u[T];x[D]=l[T],g[D]=b}for(var k=0;k<p;k++)w===0&&(A[k]=[]),g[k]===b?A[k][w]=s?v(a,x[k]):v(x[k],a):A[k][w]=s?v(a,0):v(0,a)}return new r({data:A,size:[p,h],datatype:m})}});var Xit="matAlgo14xDs",Kit=["typed"],Jo=X(Xit,Kit,e=>{var{typed:t}=e;return function(i,a,o,s){var l=i._data,u=i._size,c=i._datatype,f,d=o;typeof c=="string"&&(f=c,a=t.convert(a,f),d=t.find(o,[f,f]));var p=u.length>0?r(d,0,u,u[0],l,a,s):[];return i.createDenseMatrix({data:p,size:nr(u),datatype:f})};function r(n,i,a,o,s,l,u){var c=[];if(i===a.length-1)for(var f=0;f<o;f++)c[f]=u?n(l,s[f]):n(s[f],l);else for(var d=0;d<o;d++)c[d]=r(n,i+1,a,a[i+1],s[d],l,u);return c}});var CZ="ceil",Jit=["typed","config","round","matrix","equalScalar","zeros","DenseMatrix"],Zit=X(CZ,["typed","config","round"],e=>{var{typed:t,config:r,round:n}=e;return t(CZ,{number:function(a){return go(a,n(a),r.epsilon)?n(a):Math.ceil(a)},"number, number":function(a,o){if(go(a,n(a,o),r.epsilon))return n(a,o);var[s,l]="".concat(a,"e").split("e"),u=Math.ceil(Number("".concat(s,"e").concat(Number(l)+o)));return[s,l]="".concat(u,"e").split("e"),Number("".concat(s,"e").concat(Number(l)-o))}})}),B5=X(CZ,Jit,e=>{var{typed:t,config:r,round:n,matrix:i,equalScalar:a,zeros:o,DenseMatrix:s}=e,l=wi({typed:t,equalScalar:a}),u=zn({typed:t,DenseMatrix:s}),c=Jo({typed:t}),f=Zit({typed:t,config:r,round:n});return t("ceil",{number:f.signatures.number,"number,number":f.signatures["number,number"],Complex:function(p){return p.ceil()},"Complex, number":function(p,h){return p.ceil(h)},"Complex, BigNumber":function(p,h){return p.ceil(h.toNumber())},BigNumber:function(p){return gs(p,n(p),r.epsilon)?n(p):p.ceil()},"BigNumber, BigNumber":function(p,h){return gs(p,n(p,h),r.epsilon)?n(p,h):p.toDecimalPlaces(h.toNumber(),Bx.ROUND_CEIL)},Fraction:function(p){return p.ceil()},"Fraction, number":function(p,h){return p.ceil(h)},"Fraction, BigNumber":function(p,h){return p.ceil(h.toNumber())},"Array | Matrix":t.referToSelf(d=>p=>Ut(p,d,!0)),"Array, number | BigNumber":t.referToSelf(d=>(p,h)=>Ut(p,m=>d(m,h),!0)),"SparseMatrix, number | BigNumber":t.referToSelf(d=>(p,h)=>l(p,h,d,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(d=>(p,h)=>c(p,h,d,!1)),"number | Complex | Fraction | BigNumber, Array":t.referToSelf(d=>(p,h)=>c(i(h),p,d,!0).valueOf()),"number | Complex | Fraction | BigNumber, Matrix":t.referToSelf(d=>(p,h)=>a(p,0)?o(h.size(),h.storage()):h.storage()==="dense"?c(h,p,d,!0):u(h,p,d,!0))})});var Qve="cube",eat=["typed"],L5=X(Qve,eat,e=>{var{typed:t}=e;return t(Qve,{number:_J,Complex:function(n){return n.mul(n).mul(n)},BigNumber:function(n){return n.times(n).times(n)},Fraction:function(n){return n.pow(3)},Unit:function(n){return n.pow(3)}})});var Yve="exp",tat=["typed"],R5=X(Yve,tat,e=>{var{typed:t}=e;return t(Yve,{number:IJ,Complex:function(n){return n.exp()},BigNumber:function(n){return n.exp()}})});var Xve="expm1",rat=["typed","Complex"],q5=X(Xve,rat,e=>{var{typed:t,Complex:r}=e;return t(Xve,{number:BJ,Complex:function(i){var a=Math.exp(i.re);return new r(a*Math.cos(i.im)-1,a*Math.sin(i.im))},BigNumber:function(i){return i.exp().minus(1)}})});var DZ="fix",nat=["typed","Complex","matrix","ceil","floor","equalScalar","zeros","DenseMatrix"],iat=X(DZ,["typed","ceil","floor"],e=>{var{typed:t,ceil:r,floor:n}=e;return t(DZ,{number:function(a){return a>0?n(a):r(a)},"number, number":function(a,o){return a>0?n(a,o):r(a,o)}})}),$5=X(DZ,nat,e=>{var{typed:t,Complex:r,matrix:n,ceil:i,floor:a,equalScalar:o,zeros:s,DenseMatrix:l}=e,u=zn({typed:t,DenseMatrix:l}),c=Jo({typed:t}),f=iat({typed:t,ceil:i,floor:a});return t("fix",{number:f.signatures.number,"number, number | BigNumber":f.signatures["number,number"],Complex:function(p){return new r(p.re>0?Math.floor(p.re):Math.ceil(p.re),p.im>0?Math.floor(p.im):Math.ceil(p.im))},"Complex, number":function(p,h){return new r(p.re>0?a(p.re,h):i(p.re,h),p.im>0?a(p.im,h):i(p.im,h))},"Complex, BigNumber":function(p,h){var m=h.toNumber();return new r(p.re>0?a(p.re,m):i(p.re,m),p.im>0?a(p.im,m):i(p.im,m))},BigNumber:function(p){return p.isNegative()?i(p):a(p)},"BigNumber, number | BigNumber":function(p,h){return p.isNegative()?i(p,h):a(p,h)},Fraction:function(p){return p.s<0?p.ceil():p.floor()},"Fraction, number | BigNumber":function(p,h){return p.s<0?i(p,h):a(p,h)},"Array | Matrix":t.referToSelf(d=>p=>Ut(p,d,!0)),"Array | Matrix, number | BigNumber":t.referToSelf(d=>(p,h)=>Ut(p,m=>d(m,h),!0)),"number | Complex | Fraction | BigNumber, Array":t.referToSelf(d=>(p,h)=>c(n(h),p,d,!0).valueOf()),"number | Complex | Fraction | BigNumber, Matrix":t.referToSelf(d=>(p,h)=>o(p,0)?s(h.size(),h.storage()):h.storage()==="dense"?c(h,p,d,!0):u(h,p,d,!0))})});var TZ="floor",aat=["typed","config","round","matrix","equalScalar","zeros","DenseMatrix"],oat=X(TZ,["typed","config","round"],e=>{var{typed:t,config:r,round:n}=e;return t(TZ,{number:function(a){return go(a,n(a),r.epsilon)?n(a):Math.floor(a)},"number, number":function(a,o){if(go(a,n(a,o),r.epsilon))return n(a,o);var[s,l]="".concat(a,"e").split("e"),u=Math.floor(Number("".concat(s,"e").concat(Number(l)+o)));return[s,l]="".concat(u,"e").split("e"),Number("".concat(s,"e").concat(Number(l)-o))}})}),lk=X(TZ,aat,e=>{var{typed:t,config:r,round:n,matrix:i,equalScalar:a,zeros:o,DenseMatrix:s}=e,l=wi({typed:t,equalScalar:a}),u=zn({typed:t,DenseMatrix:s}),c=Jo({typed:t}),f=oat({typed:t,config:r,round:n});return t("floor",{number:f.signatures.number,"number,number":f.signatures["number,number"],Complex:function(p){return p.floor()},"Complex, number":function(p,h){return p.floor(h)},"Complex, BigNumber":function(p,h){return p.floor(h.toNumber())},BigNumber:function(p){return gs(p,n(p),r.epsilon)?n(p):p.floor()},"BigNumber, BigNumber":function(p,h){return gs(p,n(p,h),r.epsilon)?n(p,h):p.toDecimalPlaces(h.toNumber(),Bx.ROUND_FLOOR)},Fraction:function(p){return p.floor()},"Fraction, number":function(p,h){return p.floor(h)},"Fraction, BigNumber":function(p,h){return p.floor(h.toNumber())},"Array | Matrix":t.referToSelf(d=>p=>Ut(p,d,!0)),"Array, number | BigNumber":t.referToSelf(d=>(p,h)=>Ut(p,m=>d(m,h),!0)),"SparseMatrix, number | BigNumber":t.referToSelf(d=>(p,h)=>l(p,h,d,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(d=>(p,h)=>c(p,h,d,!1)),"number | Complex | Fraction | BigNumber, Array":t.referToSelf(d=>(p,h)=>c(i(h),p,d,!0).valueOf()),"number | Complex | Fraction | BigNumber, Matrix":t.referToSelf(d=>(p,h)=>a(p,0)?o(h.size(),h.storage()):h.storage()==="dense"?c(h,p,d,!0):u(h,p,d,!0))})});var sat="matAlgo02xDS0",lat=["typed","equalScalar"],Zo=X(sat,lat,e=>{var{typed:t,equalScalar:r}=e;return function(i,a,o,s){var l=i._data,u=i._size,c=i._datatype||i.getDataType(),f=a._values,d=a._index,p=a._ptr,h=a._size,m=a._datatype||a._data===void 0?a._datatype:a.getDataType();if(u.length!==h.length)throw new Tr(u.length,h.length);if(u[0]!==h[0]||u[1]!==h[1])throw new RangeError("Dimension mismatch. Matrix A ("+u+") must match Matrix B ("+h+")");if(!f)throw new Error("Cannot perform operation on Dense Matrix and Pattern Sparse Matrix");var v=u[0],A=u[1],x,g=r,w=0,b=o;typeof c=="string"&&c===m&&c!=="mixed"&&(x=c,g=t.find(r,[x,x]),w=t.convert(0,x),b=t.find(o,[x,x]));for(var y=[],S=[],T=[],D=0;D<A;D++){T[D]=S.length;for(var k=p[D],M=p[D+1],E=k;E<M;E++){var O=d[E],P=s?b(f[E],l[O][D]):b(l[O][D],f[E]);g(P,w)||(S.push(O),y.push(P))}}return T[A]=S.length,a.createSparseMatrix({values:y,index:S,ptr:T,size:[v,A],datatype:c===i._datatype&&m===a._datatype?x:void 0})}});var uat="matAlgo03xDSf",cat=["typed"],ra=X(uat,cat,e=>{var{typed:t}=e;return function(n,i,a,o){var s=n._data,l=n._size,u=n._datatype||n.getDataType(),c=i._values,f=i._index,d=i._ptr,p=i._size,h=i._datatype||i._data===void 0?i._datatype:i.getDataType();if(l.length!==p.length)throw new Tr(l.length,p.length);if(l[0]!==p[0]||l[1]!==p[1])throw new RangeError("Dimension mismatch. Matrix A ("+l+") must match Matrix B ("+p+")");if(!c)throw new Error("Cannot perform operation on Dense Matrix and Pattern Sparse Matrix");var m=l[0],v=l[1],A,x=0,g=a;typeof u=="string"&&u===h&&u!=="mixed"&&(A=u,x=t.convert(0,A),g=t.find(a,[A,A]));for(var w=[],b=0;b<m;b++)w[b]=[];for(var y=[],S=[],T=0;T<v;T++){for(var D=T+1,k=d[T],M=d[T+1],E=k;E<M;E++){var O=f[E];y[O]=o?g(c[E],s[O][T]):g(s[O][T],c[E]),S[O]=D}for(var P=0;P<m;P++)S[P]===D?w[P][T]=y[P]:w[P][T]=o?g(x,s[P][T]):g(s[P][T],x)}return n.createDenseMatrix({data:w,size:[m,v],datatype:u===n._datatype&&h===i._datatype?A:void 0})}});var fat="matAlgo05xSfSf",dat=["typed","equalScalar"],I1=X(fat,dat,e=>{var{typed:t,equalScalar:r}=e;return function(i,a,o){var s=i._values,l=i._index,u=i._ptr,c=i._size,f=i._datatype||i._data===void 0?i._datatype:i.getDataType(),d=a._values,p=a._index,h=a._ptr,m=a._size,v=a._datatype||a._data===void 0?a._datatype:a.getDataType();if(c.length!==m.length)throw new Tr(c.length,m.length);if(c[0]!==m[0]||c[1]!==m[1])throw new RangeError("Dimension mismatch. Matrix A ("+c+") must match Matrix B ("+m+")");var A=c[0],x=c[1],g,w=r,b=0,y=o;typeof f=="string"&&f===v&&f!=="mixed"&&(g=f,w=t.find(r,[g,g]),b=t.convert(0,g),y=t.find(o,[g,g]));var S=s&&d?[]:void 0,T=[],D=[],k=S?[]:void 0,M=S?[]:void 0,E=[],O=[],P,_,B,F;for(_=0;_<x;_++){D[_]=T.length;var L=_+1;for(B=u[_],F=u[_+1];B<F;B++)P=l[B],T.push(P),E[P]=L,k&&(k[P]=s[B]);for(B=h[_],F=h[_+1];B<F;B++)P=p[B],E[P]!==L&&T.push(P),O[P]=L,M&&(M[P]=d[B]);if(S)for(B=D[_];B<T.length;){P=T[B];var I=E[P],R=O[P];if(I===L||R===L){var J=I===L?k[P]:b,Q=R===L?M[P]:b,q=y(J,Q);w(q,b)?T.splice(B,1):(S.push(q),B++)}}}return D[x]=T.length,i.createSparseMatrix({values:S,index:T,ptr:D,size:[A,x],datatype:f===i._datatype&&v===a._datatype?g:void 0})}});var pat="matAlgo13xDD",mat=["typed"],Kve=X(pat,mat,e=>{var{typed:t}=e;return function(i,a,o){var s=i._data,l=i._size,u=i._datatype,c=a._data,f=a._size,d=a._datatype,p=[];if(l.length!==f.length)throw new Tr(l.length,f.length);for(var h=0;h<l.length;h++){if(l[h]!==f[h])throw new RangeError("Dimension mismatch. Matrix A ("+l+") must match Matrix B ("+f+")");p[h]=l[h]}var m,v=o;typeof u=="string"&&u===d&&(m=u,v=t.find(o,[m,m]));var A=p.length>0?r(v,0,p,p[0],s,c):[];return i.createDenseMatrix({data:A,size:p,datatype:m})};function r(n,i,a,o,s,l){var u=[];if(i===a.length-1)for(var c=0;c<o;c++)u[c]=n(s[c],l[c]);else for(var f=0;f<o;f++)u[f]=r(n,i+1,a,a[i+1],s[f],l[f]);return u}});var hat="broadcast",gat=["concat"],Jve=X(hat,gat,e=>{var{concat:t}=e;return function(i,a){var o=Math.max(i._size.length,a._size.length);if(i._size.length===a._size.length&&i._size.every((h,m)=>h===a._size[m]))return[i,a];for(var s=r(i._size,o,0),l=r(a._size,o,0),u=[],c=0;c<o;c++)u[c]=Math.max(s[c],l[c]);m3(s,u),m3(l,u);var f=i.clone(),d=a.clone();f._size.length<o?f.reshape(r(f._size,o,1)):d._size.length<o&&d.reshape(r(d._size,o,1));for(var p=0;p<o;p++)f._size[p]<u[p]&&(f=n(f,u[p],p)),d._size[p]<u[p]&&(d=n(d,u[p],p));return[f,d]};function r(i,a,o){return[...Array(a-i.length).fill(o),...i]}function n(i,a,o){return t(...Array(a).fill(i),o)}});var Aat="matrixAlgorithmSuite",vat=["typed","matrix","concat"],Pr=X(Aat,vat,e=>{var{typed:t,matrix:r,concat:n}=e,i=Kve({typed:t}),a=Jo({typed:t}),o=Jve({concat:n});return function(l){var u=l.elop,c=l.SD||l.DS,f;u?(f={"DenseMatrix, DenseMatrix":(m,v)=>i(...o(m,v),u),"Array, Array":(m,v)=>i(...o(r(m),r(v)),u).valueOf(),"Array, DenseMatrix":(m,v)=>i(...o(r(m),v),u),"DenseMatrix, Array":(m,v)=>i(...o(m,r(v)),u)},l.SS&&(f["SparseMatrix, SparseMatrix"]=(m,v)=>l.SS(...o(m,v),u,!1)),l.DS&&(f["DenseMatrix, SparseMatrix"]=(m,v)=>l.DS(...o(m,v),u,!1),f["Array, SparseMatrix"]=(m,v)=>l.DS(...o(r(m),v),u,!1)),c&&(f["SparseMatrix, DenseMatrix"]=(m,v)=>c(...o(v,m),u,!0),f["SparseMatrix, Array"]=(m,v)=>c(...o(r(v),m),u,!0))):(f={"DenseMatrix, DenseMatrix":t.referToSelf(m=>(v,A)=>i(...o(v,A),m)),"Array, Array":t.referToSelf(m=>(v,A)=>i(...o(r(v),r(A)),m).valueOf()),"Array, DenseMatrix":t.referToSelf(m=>(v,A)=>i(...o(r(v),A),m)),"DenseMatrix, Array":t.referToSelf(m=>(v,A)=>i(...o(v,r(A)),m))},l.SS&&(f["SparseMatrix, SparseMatrix"]=t.referToSelf(m=>(v,A)=>l.SS(...o(v,A),m,!1))),l.DS&&(f["DenseMatrix, SparseMatrix"]=t.referToSelf(m=>(v,A)=>l.DS(...o(v,A),m,!1)),f["Array, SparseMatrix"]=t.referToSelf(m=>(v,A)=>l.DS(...o(r(v),A),m,!1))),c&&(f["SparseMatrix, DenseMatrix"]=t.referToSelf(m=>(v,A)=>c(...o(A,v),m,!0)),f["SparseMatrix, Array"]=t.referToSelf(m=>(v,A)=>c(...o(r(A),v),m,!0))));var d=l.scalar||"any",p=l.Ds||l.Ss;p&&(u?(f["DenseMatrix,"+d]=(m,v)=>a(m,v,u,!1),f[d+", DenseMatrix"]=(m,v)=>a(v,m,u,!0),f["Array,"+d]=(m,v)=>a(r(m),v,u,!1).valueOf(),f[d+", Array"]=(m,v)=>a(r(v),m,u,!0).valueOf()):(f["DenseMatrix,"+d]=t.referToSelf(m=>(v,A)=>a(v,A,m,!1)),f[d+", DenseMatrix"]=t.referToSelf(m=>(v,A)=>a(A,v,m,!0)),f["Array,"+d]=t.referToSelf(m=>(v,A)=>a(r(v),A,m,!1).valueOf()),f[d+", Array"]=t.referToSelf(m=>(v,A)=>a(r(A),v,m,!0).valueOf())));var h=l.sS!==void 0?l.sS:l.Ss;return u?(l.Ss&&(f["SparseMatrix,"+d]=(m,v)=>l.Ss(m,v,u,!1)),h&&(f[d+", SparseMatrix"]=(m,v)=>h(v,m,u,!0))):(l.Ss&&(f["SparseMatrix,"+d]=t.referToSelf(m=>(v,A)=>l.Ss(v,A,m,!1))),h&&(f[d+", SparseMatrix"]=t.referToSelf(m=>(v,A)=>h(A,v,m,!0)))),u&&u.signatures&&TI(f,u.signatures),f}});var Zve="mod",yat=["typed","config","round","matrix","equalScalar","zeros","DenseMatrix","concat"],uk=X(Zve,yat,e=>{var{typed:t,config:r,round:n,matrix:i,equalScalar:a,zeros:o,DenseMatrix:s,concat:l}=e,u=lk({typed:t,config:r,round:n,matrix:i,equalScalar:a,zeros:o,DenseMatrix:s}),c=Zo({typed:t,equalScalar:a}),f=ra({typed:t}),d=I1({typed:t,equalScalar:a}),p=wi({typed:t,equalScalar:a}),h=zn({typed:t,DenseMatrix:s}),m=Pr({typed:t,matrix:i,concat:l});return t(Zve,{"number, number":v,"BigNumber, BigNumber":function(x,g){return g.isZero()?x:x.sub(g.mul(u(x.div(g))))},"Fraction, Fraction":function(x,g){return g.equals(0)?x:x.sub(g.mul(u(x.div(g))))}},m({SS:d,DS:f,SD:c,Ss:p,sS:h}));function v(A,x){return x===0?A:A-x*u(A/x)}});var bat="matAlgo01xDSid",xat=["typed"],oc=X(bat,xat,e=>{var{typed:t}=e;return function(n,i,a,o){var s=n._data,l=n._size,u=n._datatype||n.getDataType(),c=i._values,f=i._index,d=i._ptr,p=i._size,h=i._datatype||i._data===void 0?i._datatype:i.getDataType();if(l.length!==p.length)throw new Tr(l.length,p.length);if(l[0]!==p[0]||l[1]!==p[1])throw new RangeError("Dimension mismatch. Matrix A ("+l+") must match Matrix B ("+p+")");if(!c)throw new Error("Cannot perform operation on Dense Matrix and Pattern Sparse Matrix");var m=l[0],v=l[1],A=typeof u=="string"&&u!=="mixed"&&u===h?u:void 0,x=A?t.find(a,[A,A]):a,g,w,b=[];for(g=0;g<m;g++)b[g]=[];var y=[],S=[];for(w=0;w<v;w++){for(var T=w+1,D=d[w],k=d[w+1],M=D;M<k;M++)g=f[M],y[g]=o?x(c[M],s[g][w]):x(s[g][w],c[M]),S[g]=T;for(g=0;g<m;g++)S[g]===T?b[g][w]=y[g]:b[g][w]=s[g][w]}return n.createDenseMatrix({data:b,size:[m,v],datatype:u===n._datatype&&h===i._datatype?A:void 0})}});var wat="matAlgo04xSidSid",Sat=["typed","equalScalar"],ck=X(wat,Sat,e=>{var{typed:t,equalScalar:r}=e;return function(i,a,o){var s=i._values,l=i._index,u=i._ptr,c=i._size,f=i._datatype||i._data===void 0?i._datatype:i.getDataType(),d=a._values,p=a._index,h=a._ptr,m=a._size,v=a._datatype||a._data===void 0?a._datatype:a.getDataType();if(c.length!==m.length)throw new Tr(c.length,m.length);if(c[0]!==m[0]||c[1]!==m[1])throw new RangeError("Dimension mismatch. Matrix A ("+c+") must match Matrix B ("+m+")");var A=c[0],x=c[1],g,w=r,b=0,y=o;typeof f=="string"&&f===v&&f!=="mixed"&&(g=f,w=t.find(r,[g,g]),b=t.convert(0,g),y=t.find(o,[g,g]));var S=s&&d?[]:void 0,T=[],D=[],k=s&&d?[]:void 0,M=s&&d?[]:void 0,E=[],O=[],P,_,B,F,L;for(_=0;_<x;_++){D[_]=T.length;var I=_+1;for(F=u[_],L=u[_+1],B=F;B<L;B++)P=l[B],T.push(P),E[P]=I,k&&(k[P]=s[B]);for(F=h[_],L=h[_+1],B=F;B<L;B++)if(P=p[B],E[P]===I){if(k){var R=y(k[P],d[B]);w(R,b)?E[P]=null:k[P]=R}}else T.push(P),O[P]=I,M&&(M[P]=d[B]);if(k&&M)for(B=D[_];B<T.length;)P=T[B],E[P]===I?(S[B]=k[P],B++):O[P]===I?(S[B]=M[P],B++):T.splice(B,1)}return D[x]=T.length,i.createSparseMatrix({values:S,index:T,ptr:D,size:[A,x],datatype:f===i._datatype&&v===a._datatype?g:void 0})}});var Eat="matAlgo10xSids",kat=["typed","DenseMatrix"],qf=X(Eat,kat,e=>{var{typed:t,DenseMatrix:r}=e;return function(i,a,o,s){var l=i._values,u=i._index,c=i._ptr,f=i._size,d=i._datatype;if(!l)throw new Error("Cannot perform operation on Pattern Sparse Matrix and Scalar value");var p=f[0],h=f[1],m,v=o;typeof d=="string"&&(m=d,a=t.convert(a,m),v=t.find(o,[m,m]));for(var A=[],x=[],g=[],w=0;w<h;w++){for(var b=w+1,y=c[w],S=c[w+1],T=y;T<S;T++){var D=u[T];x[D]=l[T],g[D]=b}for(var k=0;k<p;k++)w===0&&(A[k]=[]),g[k]===b?A[k][w]=s?v(a,x[k]):v(x[k],a):A[k][w]=a}return new r({data:A,size:[p,h],datatype:m})}});function Bd(e,t,r,n){if(!(this instanceof Bd))throw new SyntaxError("Constructor must be called with the new operator");this.fn=e,this.count=t,this.min=r,this.max=n,this.message="Wrong number of arguments in function "+e+" ("+t+" provided, "+r+(n!=null?"-"+n:"")+" expected)",this.stack=new Error().stack}Bd.prototype=new Error;Bd.prototype.constructor=Error;Bd.prototype.name="ArgumentsError";Bd.prototype.isArgumentsError=!0;var e1e="gcd",Cat=["typed","config","round","matrix","equalScalar","zeros","BigNumber","DenseMatrix","concat"],NZ="number | BigNumber | Fraction | Matrix | Array",Dat="".concat(NZ,", ").concat(NZ,", ...").concat(NZ);function t1e(e){return!e.some(t=>Array.isArray(t))}var z5=X(e1e,Cat,e=>{var{typed:t,matrix:r,config:n,round:i,equalScalar:a,zeros:o,BigNumber:s,DenseMatrix:l,concat:u}=e,c=uk({typed:t,config:n,round:i,matrix:r,equalScalar:a,zeros:o,DenseMatrix:l,concat:u}),f=oc({typed:t}),d=ck({typed:t,equalScalar:a}),p=qf({typed:t,DenseMatrix:l}),h=Pr({typed:t,matrix:r,concat:u});return t(e1e,{"number, number":m,"BigNumber, BigNumber":v,"Fraction, Fraction":(A,x)=>A.gcd(x)},h({SS:d,DS:f,Ss:p}),{[Dat]:t.referToSelf(A=>(x,g,w)=>{for(var b=A(x,g),y=0;y<w.length;y++)b=A(b,w[y]);return b}),Array:t.referToSelf(A=>x=>{if(x.length===1&&Array.isArray(x[0])&&t1e(x[0]))return A(...x[0]);if(t1e(x))return A(...x);throw new Bd("gcd() supports only 1d matrices!")}),Matrix:t.referToSelf(A=>x=>A(x.toArray()))});function m(A,x){if(!Ot(A)||!Ot(x))throw new Error("Parameters in function gcd must be integer numbers");for(var g;x!==0;)g=c(A,x),A=x,x=g;return A<0?-A:A}function v(A,x){if(!A.isInt()||!x.isInt())throw new Error("Parameters in function gcd must be integer numbers");for(var g=new s(0);!x.isZero();){var w=c(A,x);A=x,x=w}return A.lt(g)?A.neg():A}});var Tat="matAlgo06xS0S0",Nat=["typed","equalScalar"],B1=X(Tat,Nat,e=>{var{typed:t,equalScalar:r}=e;return function(i,a,o){var s=i._values,l=i._size,u=i._datatype||i._data===void 0?i._datatype:i.getDataType(),c=a._values,f=a._size,d=a._datatype||a._data===void 0?a._datatype:a.getDataType();if(l.length!==f.length)throw new Tr(l.length,f.length);if(l[0]!==f[0]||l[1]!==f[1])throw new RangeError("Dimension mismatch. Matrix A ("+l+") must match Matrix B ("+f+")");var p=l[0],h=l[1],m,v=r,A=0,x=o;typeof u=="string"&&u===d&&u!=="mixed"&&(m=u,v=t.find(r,[m,m]),A=t.convert(0,m),x=t.find(o,[m,m]));for(var g=s&&c?[]:void 0,w=[],b=[],y=g?[]:void 0,S=[],T=[],D=0;D<h;D++){b[D]=w.length;var k=D+1;if(TJ(i,D,S,y,T,k,w,x),TJ(a,D,S,y,T,k,w,x),y)for(var M=b[D];M<w.length;){var E=w[M];if(T[E]===k){var O=y[E];v(O,A)?w.splice(M,1):(g.push(O),M++)}else w.splice(M,1)}else for(var P=b[D];P<w.length;){var _=w[P];T[_]!==k?w.splice(P,1):P++}}return b[h]=w.length,i.createSparseMatrix({values:g,index:w,ptr:b,size:[p,h],datatype:u===i._datatype&&d===a._datatype?m:void 0})}});var r1e="lcm",Mat=["typed","matrix","equalScalar","concat"],U5=X(r1e,Mat,e=>{var{typed:t,matrix:r,equalScalar:n,concat:i}=e,a=Zo({typed:t,equalScalar:n}),o=B1({typed:t,equalScalar:n}),s=wi({typed:t,equalScalar:n}),l=Pr({typed:t,matrix:r,concat:i}),u="number | BigNumber | Fraction | Matrix | Array",c={};return c["".concat(u,", ").concat(u,", ...").concat(u)]=t.referToSelf(d=>(p,h,m)=>{for(var v=d(p,h),A=0;A<m.length;A++)v=d(v,m[A]);return v}),t(r1e,{"number, number":LJ,"BigNumber, BigNumber":f,"Fraction, Fraction":(d,p)=>d.lcm(p)},l({SS:o,DS:a,Ss:s}),c);function f(d,p){if(!d.isInt()||!p.isInt())throw new Error("Parameters in function lcm must be integer numbers");if(d.isZero())return d;if(p.isZero())return p;for(var h=d.times(p);!p.isZero();){var m=p;p=d.mod(m),d=m}return h.div(d).abs()}});var n1e="log10",Oat=["typed","config","Complex"],H5=X(n1e,Oat,e=>{var{typed:t,config:r,Complex:n}=e;return t(n1e,{number:function(a){return a>=0||r.predictable?RJ(a):new n(a,0).log().div(Math.LN10)},Complex:function(a){return new n(a).log().div(Math.LN10)},BigNumber:function(a){return!a.isNegative()||r.predictable?a.log():new n(a.toNumber(),0).log().div(Math.LN10)},"Array | Matrix":t.referToSelf(i=>a=>Ut(a,i))})});var i1e="log2",Fat=["typed","config","Complex"],V5=X(i1e,Fat,e=>{var{typed:t,config:r,Complex:n}=e;return t(i1e,{number:function(o){return o>=0||r.predictable?qJ(o):i(new n(o,0))},Complex:i,BigNumber:function(o){return!o.isNegative()||r.predictable?o.log(2):i(new n(o.toNumber(),0))},"Array | Matrix":t.referToSelf(a=>o=>Ut(o,a))});function i(a){var o=Math.sqrt(a.re*a.re+a.im*a.im);return new n(Math.log2?Math.log2(o):Math.log(o)/Math.LN2,Math.atan2(a.im,a.re)/Math.LN2)}});var jat="multiplyScalar",Pat=["typed"],G5=X(jat,Pat,e=>{var{typed:t}=e;return t("multiplyScalar",{"number, number":FJ,"Complex, Complex":function(n,i){return n.mul(i)},"BigNumber, BigNumber":function(n,i){return n.times(i)},"Fraction, Fraction":function(n,i){return n.mul(i)},"number | Fraction | BigNumber | Complex, Unit":(r,n)=>n.multiply(r),"Unit, number | Fraction | BigNumber | Complex | Unit":(r,n)=>r.multiply(n)})});var a1e="multiply",_at=["typed","matrix","addScalar","multiplyScalar","equalScalar","dot"],W5=X(a1e,_at,e=>{var{typed:t,matrix:r,addScalar:n,multiplyScalar:i,equalScalar:a,dot:o}=e,s=wi({typed:t,equalScalar:a}),l=Jo({typed:t});function u(b,y){switch(b.length){case 1:switch(y.length){case 1:if(b[0]!==y[0])throw new RangeError("Dimension mismatch in multiplication. Vectors must have the same length");break;case 2:if(b[0]!==y[0])throw new RangeError("Dimension mismatch in multiplication. Vector length ("+b[0]+") must match Matrix rows ("+y[0]+")");break;default:throw new Error("Can only multiply a 1 or 2 dimensional matrix (Matrix B has "+y.length+" dimensions)")}break;case 2:switch(y.length){case 1:if(b[1]!==y[0])throw new RangeError("Dimension mismatch in multiplication. Matrix columns ("+b[1]+") must match Vector length ("+y[0]+")");break;case 2:if(b[1]!==y[0])throw new RangeError("Dimension mismatch in multiplication. Matrix A columns ("+b[1]+") must match Matrix B rows ("+y[0]+")");break;default:throw new Error("Can only multiply a 1 or 2 dimensional matrix (Matrix B has "+y.length+" dimensions)")}break;default:throw new Error("Can only multiply a 1 or 2 dimensional matrix (Matrix A has "+b.length+" dimensions)")}}function c(b,y,S){if(S===0)throw new Error("Cannot multiply two empty vectors");return o(b,y)}function f(b,y){if(y.storage()!=="dense")throw new Error("Support for SparseMatrix not implemented");return d(b,y)}function d(b,y){var S=b._data,T=b._size,D=b._datatype||b.getDataType(),k=y._data,M=y._size,E=y._datatype||y.getDataType(),O=T[0],P=M[1],_,B=n,F=i;D&&E&&D===E&&typeof D=="string"&&D!=="mixed"&&(_=D,B=t.find(n,[_,_]),F=t.find(i,[_,_]));for(var L=[],I=0;I<P;I++){for(var R=F(S[0],k[0][I]),J=1;J<O;J++)R=B(R,F(S[J],k[J][I]));L[I]=R}return b.createDenseMatrix({data:L,size:[P],datatype:D===b._datatype&&E===y._datatype?_:void 0})}var p=t("_multiplyMatrixVector",{"DenseMatrix, any":m,"SparseMatrix, any":x}),h=t("_multiplyMatrixMatrix",{"DenseMatrix, DenseMatrix":v,"DenseMatrix, SparseMatrix":A,"SparseMatrix, DenseMatrix":g,"SparseMatrix, SparseMatrix":w});function m(b,y){var S=b._data,T=b._size,D=b._datatype||b.getDataType(),k=y._data,M=y._datatype||y.getDataType(),E=T[0],O=T[1],P,_=n,B=i;D&&M&&D===M&&typeof D=="string"&&D!=="mixed"&&(P=D,_=t.find(n,[P,P]),B=t.find(i,[P,P]));for(var F=[],L=0;L<E;L++){for(var I=S[L],R=B(I[0],k[0]),J=1;J<O;J++)R=_(R,B(I[J],k[J]));F[L]=R}return b.createDenseMatrix({data:F,size:[E],datatype:D===b._datatype&&M===y._datatype?P:void 0})}function v(b,y){var S=b._data,T=b._size,D=b._datatype||b.getDataType(),k=y._data,M=y._size,E=y._datatype||y.getDataType(),O=T[0],P=T[1],_=M[1],B,F=n,L=i;D&&E&&D===E&&typeof D=="string"&&D!=="mixed"&&D!=="mixed"&&(B=D,F=t.find(n,[B,B]),L=t.find(i,[B,B]));for(var I=[],R=0;R<O;R++){var J=S[R];I[R]=[];for(var Q=0;Q<_;Q++){for(var q=L(J[0],k[0][Q]),ie=1;ie<P;ie++)q=F(q,L(J[ie],k[ie][Q]));I[R][Q]=q}}return b.createDenseMatrix({data:I,size:[O,_],datatype:D===b._datatype&&E===y._datatype?B:void 0})}function A(b,y){var S=b._data,T=b._size,D=b._datatype||b.getDataType(),k=y._values,M=y._index,E=y._ptr,O=y._size,P=y._datatype||y._data===void 0?y._datatype:y.getDataType();if(!k)throw new Error("Cannot multiply Dense Matrix times Pattern only Matrix");var _=T[0],B=O[1],F,L=n,I=i,R=a,J=0;D&&P&&D===P&&typeof D=="string"&&D!=="mixed"&&(F=D,L=t.find(n,[F,F]),I=t.find(i,[F,F]),R=t.find(a,[F,F]),J=t.convert(0,F));for(var Q=[],q=[],ie=[],Ae=y.createSparseMatrix({values:Q,index:q,ptr:ie,size:[_,B],datatype:D===b._datatype&&P===y._datatype?F:void 0}),le=0;le<B;le++){ie[le]=q.length;var pe=E[le],ae=E[le+1];if(ae>pe)for(var oe=0,ue=0;ue<_;ue++){for(var Se=ue+1,H=void 0,ye=pe;ye<ae;ye++){var ne=M[ye];oe!==Se?(H=I(S[ue][ne],k[ye]),oe=Se):H=L(H,I(S[ue][ne],k[ye]))}oe===Se&&!R(H,J)&&(q.push(ue),Q.push(H))}}return ie[B]=q.length,Ae}function x(b,y){var S=b._values,T=b._index,D=b._ptr,k=b._datatype||b._data===void 0?b._datatype:b.getDataType();if(!S)throw new Error("Cannot multiply Pattern only Matrix times Dense Matrix");var M=y._data,E=y._datatype||y.getDataType(),O=b._size[0],P=y._size[0],_=[],B=[],F=[],L,I=n,R=i,J=a,Q=0;k&&E&&k===E&&typeof k=="string"&&k!=="mixed"&&(L=k,I=t.find(n,[L,L]),R=t.find(i,[L,L]),J=t.find(a,[L,L]),Q=t.convert(0,L));var q=[],ie=[];F[0]=0;for(var Ae=0;Ae<P;Ae++){var le=M[Ae];if(!J(le,Q))for(var pe=D[Ae],ae=D[Ae+1],oe=pe;oe<ae;oe++){var ue=T[oe];ie[ue]?q[ue]=I(q[ue],R(le,S[oe])):(ie[ue]=!0,B.push(ue),q[ue]=R(le,S[oe]))}}for(var Se=B.length,H=0;H<Se;H++){var ye=B[H];_[H]=q[ye]}return F[1]=B.length,b.createSparseMatrix({values:_,index:B,ptr:F,size:[O,1],datatype:k===b._datatype&&E===y._datatype?L:void 0})}function g(b,y){var S=b._values,T=b._index,D=b._ptr,k=b._datatype||b._data===void 0?b._datatype:b.getDataType();if(!S)throw new Error("Cannot multiply Pattern only Matrix times Dense Matrix");var M=y._data,E=y._datatype||y.getDataType(),O=b._size[0],P=y._size[0],_=y._size[1],B,F=n,L=i,I=a,R=0;k&&E&&k===E&&typeof k=="string"&&k!=="mixed"&&(B=k,F=t.find(n,[B,B]),L=t.find(i,[B,B]),I=t.find(a,[B,B]),R=t.convert(0,B));for(var J=[],Q=[],q=[],ie=b.createSparseMatrix({values:J,index:Q,ptr:q,size:[O,_],datatype:k===b._datatype&&E===y._datatype?B:void 0}),Ae=[],le=[],pe=0;pe<_;pe++){q[pe]=Q.length;for(var ae=pe+1,oe=0;oe<P;oe++){var ue=M[oe][pe];if(!I(ue,R))for(var Se=D[oe],H=D[oe+1],ye=Se;ye<H;ye++){var ne=T[ye];le[ne]!==ae?(le[ne]=ae,Q.push(ne),Ae[ne]=L(ue,S[ye])):Ae[ne]=F(Ae[ne],L(ue,S[ye]))}}for(var z=q[pe],U=Q.length,V=z;V<U;V++){var Y=Q[V];J[V]=Ae[Y]}}return q[_]=Q.length,ie}function w(b,y){var S=b._values,T=b._index,D=b._ptr,k=b._datatype||b._data===void 0?b._datatype:b.getDataType(),M=y._values,E=y._index,O=y._ptr,P=y._datatype||y._data===void 0?y._datatype:y.getDataType(),_=b._size[0],B=y._size[1],F=S&&M,L,I=n,R=i;k&&P&&k===P&&typeof k=="string"&&k!=="mixed"&&(L=k,I=t.find(n,[L,L]),R=t.find(i,[L,L]));for(var J=F?[]:void 0,Q=[],q=[],ie=b.createSparseMatrix({values:J,index:Q,ptr:q,size:[_,B],datatype:k===b._datatype&&P===y._datatype?L:void 0}),Ae=F?[]:void 0,le=[],pe,ae,oe,ue,Se,H,ye,ne,z=0;z<B;z++){q[z]=Q.length;var U=z+1;for(Se=O[z],H=O[z+1],ue=Se;ue<H;ue++)if(ne=E[ue],F)for(ae=D[ne],oe=D[ne+1],pe=ae;pe<oe;pe++)ye=T[pe],le[ye]!==U?(le[ye]=U,Q.push(ye),Ae[ye]=R(M[ue],S[pe])):Ae[ye]=I(Ae[ye],R(M[ue],S[pe]));else for(ae=D[ne],oe=D[ne+1],pe=ae;pe<oe;pe++)ye=T[pe],le[ye]!==U&&(le[ye]=U,Q.push(ye));if(F)for(var V=q[z],Y=Q.length,Z=V;Z<Y;Z++){var re=Q[Z];J[Z]=Ae[re]}}return q[B]=Q.length,ie}return t(a1e,i,{"Array, Array":t.referTo("Matrix, Matrix",b=>(y,S)=>{u(gr(y),gr(S));var T=b(r(y),r(S));return jt(T)?T.valueOf():T}),"Matrix, Matrix":function(y,S){var T=y.size(),D=S.size();return u(T,D),T.length===1?D.length===1?c(y,S,T[0]):f(y,S):D.length===1?p(y,S):h(y,S)},"Matrix, Array":t.referTo("Matrix,Matrix",b=>(y,S)=>b(y,r(S))),"Array, Matrix":t.referToSelf(b=>(y,S)=>b(r(y,S.storage()),S)),"SparseMatrix, any":function(y,S){return s(y,S,i,!1)},"DenseMatrix, any":function(y,S){return l(y,S,i,!1)},"any, SparseMatrix":function(y,S){return s(S,y,i,!0)},"any, DenseMatrix":function(y,S){return l(S,y,i,!0)},"Array, any":function(y,S){return l(r(y),S,i,!1).valueOf()},"any, Array":function(y,S){return l(r(S),y,i,!0).valueOf()},"any, any":i,"any, any, ...any":t.referToSelf(b=>(y,S,T)=>{for(var D=b(y,S),k=0;k<T.length;k++)D=b(D,T[k]);return D})})});var o1e="nthRoot",Iat=["typed","matrix","equalScalar","BigNumber","concat"],Q5=X(o1e,Iat,e=>{var{typed:t,matrix:r,equalScalar:n,BigNumber:i,concat:a}=e,o=oc({typed:t}),s=Zo({typed:t,equalScalar:n}),l=B1({typed:t,equalScalar:n}),u=wi({typed:t,equalScalar:n}),c=Pr({typed:t,matrix:r,concat:a});function f(){throw new Error("Complex number not supported in function nthRoot. Use nthRoots instead.")}return t(o1e,{number:$J,"number, number":$J,BigNumber:p=>d(p,new i(2)),"BigNumber, BigNumber":d,Complex:f,"Complex, number":f,Array:t.referTo("DenseMatrix,number",p=>h=>p(r(h),2).valueOf()),DenseMatrix:t.referTo("DenseMatrix,number",p=>h=>p(h,2)),SparseMatrix:t.referTo("SparseMatrix,number",p=>h=>p(h,2)),"SparseMatrix, SparseMatrix":t.referToSelf(p=>(h,m)=>{if(m.density()===1)return l(h,m,p);throw new Error("Root must be non-zero")}),"DenseMatrix, SparseMatrix":t.referToSelf(p=>(h,m)=>{if(m.density()===1)return o(h,m,p,!1);throw new Error("Root must be non-zero")}),"Array, SparseMatrix":t.referTo("DenseMatrix,SparseMatrix",p=>(h,m)=>p(r(h),m)),"number | BigNumber, SparseMatrix":t.referToSelf(p=>(h,m)=>{if(m.density()===1)return u(m,h,p,!0);throw new Error("Root must be non-zero")})},c({scalar:"number | BigNumber",SD:s,Ss:u,sS:!1}));function d(p,h){var m=i.precision,v=i.clone({precision:m+2}),A=new i(0),x=new v(1),g=h.isNegative();if(g&&(h=h.neg()),h.isZero())throw new Error("Root must be non-zero");if(p.isNegative()&&!h.abs().mod(2).equals(1))throw new Error("Root must be odd when a is negative.");if(p.isZero())return g?new v(1/0):0;if(!p.isFinite())return g?A:p;var w=p.abs().pow(x.div(h));return w=p.isNeg()?w.neg():w,new i((g?x.div(w):w).toPrecision(m))}});var s1e="sign",Bat=["typed","BigNumber","Fraction","complex"],Y5=X(s1e,Bat,e=>{var{typed:t,BigNumber:r,complex:n,Fraction:i}=e;return t(s1e,{number:l5,Complex:function(o){return o.im===0?n(l5(o.re)):o.sign()},BigNumber:function(o){return new r(o.cmp(0))},Fraction:function(o){return new i(o.s,1)},"Array | Matrix":t.referToSelf(a=>o=>Ut(o,a,!0)),Unit:t.referToSelf(a=>o=>{if(!o._isDerived()&&o.units[0].unit.offset!==0)throw new TypeError("sign is ambiguous for units with offset");return t.find(a,o.valueType())(o.value)})})});var Lat="sqrt",Rat=["config","typed","Complex"],X5=X(Lat,Rat,e=>{var{config:t,typed:r,Complex:n}=e;return r("sqrt",{number:i,Complex:function(o){return o.sqrt()},BigNumber:function(o){return!o.isNegative()||t.predictable?o.sqrt():i(o.toNumber())},Unit:function(o){return o.pow(.5)}});function i(a){return isNaN(a)?NaN:a>=0||t.predictable?Math.sqrt(a):new n(a,0).sqrt()}});var l1e="square",qat=["typed"],K5=X(l1e,qat,e=>{var{typed:t}=e;return t(l1e,{number:zJ,Complex:function(n){return n.mul(n)},BigNumber:function(n){return n.times(n)},Fraction:function(n){return n.mul(n)},Unit:function(n){return n.pow(2)}})});var u1e="subtract",$at=["typed","matrix","equalScalar","subtractScalar","unaryMinus","DenseMatrix","concat"],J5=X(u1e,$at,e=>{var{typed:t,matrix:r,equalScalar:n,subtractScalar:i,unaryMinus:a,DenseMatrix:o,concat:s}=e,l=oc({typed:t}),u=ra({typed:t}),c=I1({typed:t,equalScalar:n}),f=qf({typed:t,DenseMatrix:o}),d=zn({typed:t,DenseMatrix:o}),p=Pr({typed:t,matrix:r,concat:s});return t(u1e,{"any, any":i},p({elop:i,SS:c,DS:l,SD:u,Ss:d,sS:f}))});var c1e="xgcd",zat=["typed","config","matrix","BigNumber"],Z5=X(c1e,zat,e=>{var{typed:t,config:r,matrix:n,BigNumber:i}=e;return t(c1e,{"number, number":function(s,l){var u=UJ(s,l);return r.matrix==="Array"?u:n(u)},"BigNumber, BigNumber":a});function a(o,s){var l,u,c,f=new i(0),d=new i(1),p=f,h=d,m=d,v=f;if(!o.isInt()||!s.isInt())throw new Error("Parameters in function xgcd must be integer numbers");for(;!s.isZero();)u=o.div(s).floor(),c=o.mod(s),l=p,p=h.minus(u.times(p)),h=l,l=m,m=v.minus(u.times(m)),v=l,o=s,s=c;var A;return o.lt(f)?A=[o.neg(),h.neg(),v.neg()]:A=[o,o.isZero()?0:h,v],r.matrix==="Array"?A:n(A)}});var f1e="invmod",Uat=["typed","config","BigNumber","xgcd","equal","smaller","mod","add","isInteger"],eB=X(f1e,Uat,e=>{var{typed:t,config:r,BigNumber:n,xgcd:i,equal:a,smaller:o,mod:s,add:l,isInteger:u}=e;return t(f1e,{"number, number":c,"BigNumber, BigNumber":c});function c(f,d){if(!u(f)||!u(d))throw new Error("Parameters in function invmod must be integer numbers");if(f=s(f,d),a(d,0))throw new Error("Divisor must be non zero");var p=i(f,d);p=p.valueOf();var[h,m]=p;return a(h,n(1))?(m=s(m,d),o(m,n(0))&&(m=l(m,d)),m):NaN}});var Hat="matAlgo09xS0Sf",Vat=["typed","equalScalar"],tB=X(Hat,Vat,e=>{var{typed:t,equalScalar:r}=e;return function(i,a,o){var s=i._values,l=i._index,u=i._ptr,c=i._size,f=i._datatype||i._data===void 0?i._datatype:i.getDataType(),d=a._values,p=a._index,h=a._ptr,m=a._size,v=a._datatype||a._data===void 0?a._datatype:a.getDataType();if(c.length!==m.length)throw new Tr(c.length,m.length);if(c[0]!==m[0]||c[1]!==m[1])throw new RangeError("Dimension mismatch. Matrix A ("+c+") must match Matrix B ("+m+")");var A=c[0],x=c[1],g,w=r,b=0,y=o;typeof f=="string"&&f===v&&f!=="mixed"&&(g=f,w=t.find(r,[g,g]),b=t.convert(0,g),y=t.find(o,[g,g]));var S=s&&d?[]:void 0,T=[],D=[],k=S?[]:void 0,M=[],E,O,P,_,B;for(O=0;O<x;O++){D[O]=T.length;var F=O+1;if(k)for(_=h[O],B=h[O+1],P=_;P<B;P++)E=p[P],M[E]=F,k[E]=d[P];for(_=u[O],B=u[O+1],P=_;P<B;P++)if(E=l[P],k){var L=M[E]===F?k[E]:b,I=y(s[P],L);w(I,b)||(T.push(E),S.push(I))}else T.push(E)}return D[x]=T.length,i.createSparseMatrix({values:S,index:T,ptr:D,size:[A,x],datatype:f===i._datatype&&v===a._datatype?g:void 0})}});var d1e="dotMultiply",Gat=["typed","matrix","equalScalar","multiplyScalar","concat"],rB=X(d1e,Gat,e=>{var{typed:t,matrix:r,equalScalar:n,multiplyScalar:i,concat:a}=e,o=Zo({typed:t,equalScalar:n}),s=tB({typed:t,equalScalar:n}),l=wi({typed:t,equalScalar:n}),u=Pr({typed:t,matrix:r,concat:a});return t(d1e,u({elop:i,SS:s,DS:o,Ss:l}))});function p1e(e,t){if(e.isFinite()&&!e.isInteger()||t.isFinite()&&!t.isInteger())throw new Error("Integers expected in function bitAnd");var r=e.constructor;if(e.isNaN()||t.isNaN())return new r(NaN);if(e.isZero()||t.eq(-1)||e.eq(t))return e;if(t.isZero()||e.eq(-1))return t;if(!e.isFinite()||!t.isFinite()){if(!e.isFinite()&&!t.isFinite())return e.isNegative()===t.isNegative()?e:new r(0);if(!e.isFinite())return t.isNegative()?e:e.isNegative()?new r(0):t;if(!t.isFinite())return e.isNegative()?t:t.isNegative()?new r(0):e}return MZ(e,t,function(n,i){return n&i})}function fk(e){if(e.isFinite()&&!e.isInteger())throw new Error("Integer expected in function bitNot");var t=e.constructor,r=t.precision;t.config({precision:1e9});var n=e.plus(new t(1));return n.s=-n.s||null,t.config({precision:r}),n}function m1e(e,t){if(e.isFinite()&&!e.isInteger()||t.isFinite()&&!t.isInteger())throw new Error("Integers expected in function bitOr");var r=e.constructor;if(e.isNaN()||t.isNaN())return new r(NaN);var n=new r(-1);return e.isZero()||t.eq(n)||e.eq(t)?t:t.isZero()||e.eq(n)?e:!e.isFinite()||!t.isFinite()?!e.isFinite()&&!e.isNegative()&&t.isNegative()||e.isNegative()&&!t.isNegative()&&!t.isFinite()?n:e.isNegative()&&t.isNegative()?e.isFinite()?e:t:e.isFinite()?t:e:MZ(e,t,function(i,a){return i|a})}function MZ(e,t,r){var n=e.constructor,i,a,o=+(e.s<0),s=+(t.s<0);if(o){i=nB(fk(e));for(var l=0;l<i.length;++l)i[l]^=1}else i=nB(e);if(s){a=nB(fk(t));for(var u=0;u<a.length;++u)a[u]^=1}else a=nB(t);var c,f,d;i.length<=a.length?(c=i,f=a,d=o):(c=a,f=i,d=s);var p=c.length,h=f.length,m=r(o,s)^1,v=new n(m^1),A=new n(1),x=new n(2),g=n.precision;for(n.config({precision:1e9});p>0;)r(c[--p],f[--h])===m&&(v=v.plus(A)),A=A.times(x);for(;h>0;)r(d,f[--h])===m&&(v=v.plus(A)),A=A.times(x);return n.config({precision:g}),m===0&&(v.s=-v.s),v}function nB(e){for(var t=e.d,r=t[0]+"",n=1;n<t.length;++n){for(var i=t[n]+"",a=7-i.length;a--;)i="0"+i;r+=i}for(var o=r.length;r.charAt(o)==="0";)o--;var s=e.e,l=r.slice(0,o+1||1),u=l.length;if(s>0)if(++s>u)for(s-=u;s--;)l+="0";else s<u&&(l=l.slice(0,s)+"."+l.slice(s));for(var c=[0],f=0;f<l.length;){for(var d=c.length;d--;)c[d]*=10;c[0]+=parseInt(l.charAt(f++));for(var p=0;p<c.length;++p)c[p]>1&&((c[p+1]===null||c[p+1]===void 0)&&(c[p+1]=0),c[p+1]+=c[p]>>1,c[p]&=1)}return c.reverse()}function h1e(e,t){if(e.isFinite()&&!e.isInteger()||t.isFinite()&&!t.isInteger())throw new Error("Integers expected in function bitXor");var r=e.constructor;if(e.isNaN()||t.isNaN())return new r(NaN);if(e.isZero())return t;if(t.isZero())return e;if(e.eq(t))return new r(0);var n=new r(-1);return e.eq(n)?fk(t):t.eq(n)?fk(e):!e.isFinite()||!t.isFinite()?!e.isFinite()&&!t.isFinite()?n:new r(e.isNegative()===t.isNegative()?1/0:-1/0):MZ(e,t,function(i,a){return i^a})}function g1e(e,t){if(e.isFinite()&&!e.isInteger()||t.isFinite()&&!t.isInteger())throw new Error("Integers expected in function leftShift");var r=e.constructor;return e.isNaN()||t.isNaN()||t.isNegative()&&!t.isZero()?new r(NaN):e.isZero()||t.isZero()?e:!e.isFinite()&&!t.isFinite()?new r(NaN):t.lt(55)?e.times(Math.pow(2,t.toNumber())+""):e.times(new r(2).pow(t))}function A1e(e,t){if(e.isFinite()&&!e.isInteger()||t.isFinite()&&!t.isInteger())throw new Error("Integers expected in function rightArithShift");var r=e.constructor;return e.isNaN()||t.isNaN()||t.isNegative()&&!t.isZero()?new r(NaN):e.isZero()||t.isZero()?e:t.isFinite()?t.lt(55)?e.div(Math.pow(2,t.toNumber())+"").floor():e.div(new r(2).pow(t)).floor():e.isNegative()?new r(-1):e.isFinite()?new r(0):new r(NaN)}var v1e="bitAnd",Wat=["typed","matrix","equalScalar","concat"],dk=X(v1e,Wat,e=>{var{typed:t,matrix:r,equalScalar:n,concat:i}=e,a=Zo({typed:t,equalScalar:n}),o=B1({typed:t,equalScalar:n}),s=wi({typed:t,equalScalar:n}),l=Pr({typed:t,matrix:r,concat:i});return t(v1e,{"number, number":VJ,"BigNumber, BigNumber":p1e},l({SS:o,DS:a,Ss:s}))});var y1e="bitNot",Qat=["typed"],iB=X(y1e,Qat,e=>{var{typed:t}=e;return t(y1e,{number:GJ,BigNumber:fk,"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r))})});var b1e="bitOr",Yat=["typed","matrix","equalScalar","DenseMatrix","concat"],pk=X(b1e,Yat,e=>{var{typed:t,matrix:r,equalScalar:n,DenseMatrix:i,concat:a}=e,o=oc({typed:t}),s=ck({typed:t,equalScalar:n}),l=qf({typed:t,DenseMatrix:i}),u=Pr({typed:t,matrix:r,concat:a});return t(b1e,{"number, number":WJ,"BigNumber, BigNumber":m1e},u({SS:s,DS:o,Ss:l}))});var Xat="matAlgo07xSSf",Kat=["typed","DenseMatrix"],Ps=X(Xat,Kat,e=>{var{typed:t,DenseMatrix:r}=e;return function(a,o,s){var l=a._size,u=a._datatype||a._data===void 0?a._datatype:a.getDataType(),c=o._size,f=o._datatype||o._data===void 0?o._datatype:o.getDataType();if(l.length!==c.length)throw new Tr(l.length,c.length);if(l[0]!==c[0]||l[1]!==c[1])throw new RangeError("Dimension mismatch. Matrix A ("+l+") must match Matrix B ("+c+")");var d=l[0],p=l[1],h,m=0,v=s;typeof u=="string"&&u===f&&u!=="mixed"&&(h=u,m=t.convert(0,h),v=t.find(s,[h,h]));var A,x,g=[];for(A=0;A<d;A++)g[A]=[];var w=[],b=[],y=[],S=[];for(x=0;x<p;x++){var T=x+1;for(n(a,x,y,w,T),n(o,x,S,b,T),A=0;A<d;A++){var D=y[A]===T?w[A]:m,k=S[A]===T?b[A]:m;g[A][x]=v(D,k)}}return new r({data:g,size:[d,p],datatype:u===a._datatype&&f===o._datatype?h:void 0})};function n(i,a,o,s,l){for(var u=i._values,c=i._index,f=i._ptr,d=f[a],p=f[a+1];d<p;d++){var h=c[d];o[h]=l,s[h]=u[d]}}});var x1e="bitXor",Jat=["typed","matrix","DenseMatrix","concat"],aB=X(x1e,Jat,e=>{var{typed:t,matrix:r,DenseMatrix:n,concat:i}=e,a=ra({typed:t}),o=Ps({typed:t,DenseMatrix:n}),s=zn({typed:t,DenseMatrix:n}),l=Pr({typed:t,matrix:r,concat:i});return t(x1e,{"number, number":QJ,"BigNumber, BigNumber":h1e},l({SS:o,DS:a,Ss:s}))});var w1e="arg",Zat=["typed"],oB=X(w1e,Zat,e=>{var{typed:t}=e;return t(w1e,{number:function(n){return Math.atan2(0,n)},BigNumber:function(n){return n.constructor.atan2(0,n)},Complex:function(n){return n.arg()},"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r))})});var S1e="conj",eot=["typed"],sB=X(S1e,eot,e=>{var{typed:t}=e;return t(S1e,{"number | BigNumber | Fraction":r=>r,Complex:r=>r.conjugate(),"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r))})});var E1e="im",tot=["typed"],lB=X(E1e,tot,e=>{var{typed:t}=e;return t(E1e,{number:()=>0,"BigNumber | Fraction":r=>r.mul(0),Complex:r=>r.im,"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r))})});var k1e="re",rot=["typed"],uB=X(k1e,rot,e=>{var{typed:t}=e;return t(k1e,{"number | BigNumber | Fraction":r=>r,Complex:r=>r.re,"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r))})});var C1e="not",not=["typed"],cB=X(C1e,not,e=>{var{typed:t}=e;return t(C1e,{"null | undefined":()=>!0,number:eZ,Complex:function(n){return n.re===0&&n.im===0},BigNumber:function(n){return n.isZero()||n.isNaN()},Unit:t.referToSelf(r=>n=>t.find(r,n.valueType())(n.value)),"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r))})});var D1e="or",iot=["typed","matrix","equalScalar","DenseMatrix","concat"],mk=X(D1e,iot,e=>{var{typed:t,matrix:r,equalScalar:n,DenseMatrix:i,concat:a}=e,o=ra({typed:t}),s=I1({typed:t,equalScalar:n}),l=zn({typed:t,DenseMatrix:i}),u=Pr({typed:t,matrix:r,concat:a});return t(D1e,{"number, number":tZ,"Complex, Complex":function(f,d){return f.re!==0||f.im!==0||d.re!==0||d.im!==0},"BigNumber, BigNumber":function(f,d){return!f.isZero()&&!f.isNaN()||!d.isZero()&&!d.isNaN()},"Unit, Unit":t.referToSelf(c=>(f,d)=>c(f.value||0,d.value||0))},u({SS:s,DS:o,Ss:l}))});var T1e="xor",aot=["typed","matrix","DenseMatrix","concat"],fB=X(T1e,aot,e=>{var{typed:t,matrix:r,DenseMatrix:n,concat:i}=e,a=ra({typed:t}),o=Ps({typed:t,DenseMatrix:n}),s=zn({typed:t,DenseMatrix:n}),l=Pr({typed:t,matrix:r,concat:i});return t(T1e,{"number, number":rZ,"Complex, Complex":function(c,f){return(c.re!==0||c.im!==0)!=(f.re!==0||f.im!==0)},"BigNumber, BigNumber":function(c,f){return(!c.isZero()&&!c.isNaN())!=(!f.isZero()&&!f.isNaN())},"Unit, Unit":t.referToSelf(u=>(c,f)=>u(c.value||0,f.value||0))},l({SS:o,DS:a,Ss:s}))});var N1e="concat",oot=["typed","matrix","isInteger"],hk=X(N1e,oot,e=>{var{typed:t,matrix:r,isInteger:n}=e;return t(N1e,{"...Array | Matrix | number | BigNumber":function(a){var o,s=a.length,l=-1,u,c=!1,f=[];for(o=0;o<s;o++){var d=a[o];if(jt(d)&&(c=!0),hr(d)||er(d)){if(o!==s-1)throw new Error("Dimension must be specified as last argument");if(u=l,l=d.valueOf(),!n(l))throw new TypeError("Integer number expected for dimension");if(l<0||o>0&&l>u)throw new fl(l,u+1)}else{var p=nr(d).valueOf(),h=gr(p);if(f[o]=p,u=l,l=h.length-1,o>0&&l!==u)throw new Tr(u+1,l+1)}}if(f.length===0)throw new SyntaxError("At least one matrix expected");for(var m=f.shift();f.length;)m=CJ(m,f.shift(),l);return c?r(m):m},"...string":function(a){return a.join("")}})});var M1e="column",sot=["typed","Index","matrix","range"],gk=X(M1e,sot,e=>{var{typed:t,Index:r,matrix:n,range:i}=e;return t(M1e,{"Matrix, number":a,"Array, number":function(s,l){return a(n(nr(s)),l).valueOf()}});function a(o,s){if(o.size().length!==2)throw new Error("Only two dimensional matrix is supported");xi(s,o.size()[1]);var l=i(0,o.size()[0]),u=new r(l,s),c=o.subset(u);return jt(c)?c:n([[c]])}});var O1e="count",lot=["typed","size","prod"],dB=X(O1e,lot,e=>{var{typed:t,size:r,prod:n}=e;return t(O1e,{string:function(a){return a.length},"Matrix | Array":function(a){return n(r(a))}})});var F1e="cross",uot=["typed","matrix","subtract","multiply"],pB=X(F1e,uot,e=>{var{typed:t,matrix:r,subtract:n,multiply:i}=e;return t(F1e,{"Matrix, Matrix":function(s,l){return r(a(s.toArray(),l.toArray()))},"Matrix, Array":function(s,l){return r(a(s.toArray(),l))},"Array, Matrix":function(s,l){return r(a(s,l.toArray()))},"Array, Array":a});function a(o,s){var l=Math.max(gr(o).length,gr(s).length);o=rk(o),s=rk(s);var u=gr(o),c=gr(s);if(u.length!==1||c.length!==1||u[0]!==3||c[0]!==3)throw new RangeError("Vectors with length 3 expected (Size A = ["+u.join(", ")+"], B = ["+c.join(", ")+"])");var f=[n(i(o[1],s[2]),i(o[2],s[1])),n(i(o[2],s[0]),i(o[0],s[2])),n(i(o[0],s[1]),i(o[1],s[0]))];return l>1?[f]:f}});var j1e="diag",cot=["typed","matrix","DenseMatrix","SparseMatrix"],mB=X(j1e,cot,e=>{var{typed:t,matrix:r,DenseMatrix:n,SparseMatrix:i}=e;return t(j1e,{Array:function(u){return a(u,0,gr(u),null)},"Array, number":function(u,c){return a(u,c,gr(u),null)},"Array, BigNumber":function(u,c){return a(u,c.toNumber(),gr(u),null)},"Array, string":function(u,c){return a(u,0,gr(u),c)},"Array, number, string":function(u,c,f){return a(u,c,gr(u),f)},"Array, BigNumber, string":function(u,c,f){return a(u,c.toNumber(),gr(u),f)},Matrix:function(u){return a(u,0,u.size(),u.storage())},"Matrix, number":function(u,c){return a(u,c,u.size(),u.storage())},"Matrix, BigNumber":function(u,c){return a(u,c.toNumber(),u.size(),u.storage())},"Matrix, string":function(u,c){return a(u,0,u.size(),c)},"Matrix, number, string":function(u,c,f){return a(u,c,u.size(),f)},"Matrix, BigNumber, string":function(u,c,f){return a(u,c.toNumber(),u.size(),f)}});function a(l,u,c,f){if(!Ot(u))throw new TypeError("Second parameter in function diag must be an integer");var d=u>0?u:0,p=u<0?-u:0;switch(c.length){case 1:return o(l,u,f,c[0],p,d);case 2:return s(l,u,f,c,p,d)}throw new RangeError("Matrix for function diag must be 2 dimensional")}function o(l,u,c,f,d,p){var h=[f+d,f+p];if(c&&c!=="sparse"&&c!=="dense")throw new TypeError("Unknown matrix type ".concat(c,'"'));var m=c==="sparse"?i.diagonal(h,l,u):n.diagonal(h,l,u);return c!==null?m:m.valueOf()}function s(l,u,c,f,d,p){if(jt(l)){var h=l.diagonal(u);return c!==null?c!==h.storage()?r(h,c):h:h.valueOf()}for(var m=Math.min(f[0]-d,f[1]-p),v=[],A=0;A<m;A++)v[A]=l[A+d][A+p];return c!==null?r(v):v}});var v3=ge(OI(),1);function Xp(e,t,r,n,i){if(v3.default.isTypedFunction(e)){var a=[t,r,n],o=v3.default.resolve(e,a);if(o)return f(o.implementation,a);var s=[t,r],l=v3.default.resolve(e,s);if(l)return f(l.implementation,s);var u=[t],c=v3.default.resolve(e,u);return c?f(c.implementation,u):f(e,a)}else return e(t,r,n);function f(d,p){try{return d.apply(d,p)}catch(v){var h;if(v instanceof TypeError&&((h=v.data)===null||h===void 0?void 0:h.category)==="wrongType"){var m=[];throw m.push("value: ".concat(yn(t))),p.length>=2&&m.push("index: ".concat(yn(r))),p.length>=3&&m.push("array: ".concat(yn(n))),new TypeError("Function ".concat(i," cannot apply callback arguments ")+"".concat(e.name,"(").concat(m.join(", "),") at index ").concat(JSON.stringify(r)))}else throw new TypeError("Function ".concat(i," cannot apply callback arguments ")+"to function ".concat(e.name,": ").concat(v.message))}}}var fot="filter",dot=["typed"],hB=X(fot,dot,e=>{var{typed:t}=e;return t("filter",{"Array, function":P1e,"Matrix, function":function(n,i){return n.create(P1e(n.toArray(),i))},"Array, RegExp":nk,"Matrix, RegExp":function(n,i){return n.create(nk(n.toArray(),i))}})});function P1e(e,t){return t5(e,function(r,n,i){return Xp(t,r,[n],i,"filter")})}var _1e="flatten",pot=["typed","matrix"],gB=X(_1e,pot,e=>{var{typed:t,matrix:r}=e;return t(_1e,{Array:function(i){return qr(i)},Matrix:function(i){var a=qr(i.toArray());return r(a)}})});var I1e="forEach",mot=["typed"],AB=X(I1e,mot,e=>{var{typed:t}=e;return t(I1e,{"Array, function":hot,"Matrix, function":function(n,i){n.forEach(i)}})});function hot(e,t){var r=function n(i,a){if(Array.isArray(i))F1(i,function(o,s){n(o,a.concat(s))});else return Xp(t,i,a,e,"forEach")};r(e,[])}var B1e="getMatrixDataType",got=["typed"],vB=X(B1e,got,e=>{var{typed:t}=e;return t(B1e,{Array:function(n){return j1(n,yn)},Matrix:function(n){return n.getDataType()}})});var L1e="identity",Aot=["typed","config","matrix","BigNumber","DenseMatrix","SparseMatrix"],yB=X(L1e,Aot,e=>{var{typed:t,config:r,matrix:n,BigNumber:i,DenseMatrix:a,SparseMatrix:o}=e;return t(L1e,{"":function(){return r.matrix==="Matrix"?n([]):[]},string:function(c){return n(c)},"number | BigNumber":function(c){return l(c,c,r.matrix==="Matrix"?"dense":void 0)},"number | BigNumber, string":function(c,f){return l(c,c,f)},"number | BigNumber, number | BigNumber":function(c,f){return l(c,f,r.matrix==="Matrix"?"dense":void 0)},"number | BigNumber, number | BigNumber, string":function(c,f,d){return l(c,f,d)},Array:function(c){return s(c)},"Array, string":function(c,f){return s(c,f)},Matrix:function(c){return s(c.valueOf(),c.storage())},"Matrix, string":function(c,f){return s(c.valueOf(),f)}});function s(u,c){switch(u.length){case 0:return c?n(c):[];case 1:return l(u[0],u[0],c);case 2:return l(u[0],u[1],c);default:throw new Error("Vector containing two values expected")}}function l(u,c,f){var d=er(u)||er(c)?i:null;if(er(u)&&(u=u.toNumber()),er(c)&&(c=c.toNumber()),!Ot(u)||u<1)throw new Error("Parameters in function identity must be positive integers");if(!Ot(c)||c<1)throw new Error("Parameters in function identity must be positive integers");var p=d?new i(1):1,h=d?new d(0):0,m=[u,c];if(f){if(f==="sparse")return o.diagonal(m,p,0,h);if(f==="dense")return a.diagonal(m,p,0,h);throw new TypeError('Unknown matrix type "'.concat(f,'"'))}for(var v=nh([],m,h),A=u<c?u:c,x=0;x<A;x++)v[x][x]=p;return v}});var R1e="kron",vot=["typed","matrix","multiplyScalar"],bB=X(R1e,vot,e=>{var{typed:t,matrix:r,multiplyScalar:n}=e;return t(R1e,{"Matrix, Matrix":function(o,s){return r(i(o.toArray(),s.toArray()))},"Matrix, Array":function(o,s){return r(i(o.toArray(),s))},"Array, Matrix":function(o,s){return r(i(o,s.toArray()))},"Array, Array":i});function i(a,o){if(gr(a).length===1&&(a=[a]),gr(o).length===1&&(o=[o]),gr(a).length>2||gr(o).length>2)throw new RangeError("Vectors with dimensions greater then 2 are not supported expected (Size x = "+JSON.stringify(a.length)+", y = "+JSON.stringify(o.length)+")");var s=[],l=[];return a.map(function(u){return o.map(function(c){return l=[],s.push(l),u.map(function(f){return c.map(function(d){return l.push(n(f,d))})})})})&&s}});var q1e="map",yot=["typed"],xB=X(q1e,yot,e=>{var{typed:t}=e;return t(q1e,{"Array, function":bot,"Matrix, function":function(n,i){return n.map(i)}})});function bot(e,t){var r=function n(i,a){return Array.isArray(i)?i.map(function(o,s){return n(o,a.concat(s))}):Xp(t,i,a,e,"map")};return r(e,[])}var $1e="diff",xot=["typed","matrix","subtract","number"],Ak=X($1e,xot,e=>{var{typed:t,matrix:r,subtract:n,number:i}=e;return t($1e,{"Array | Matrix":function(c){return jt(c)?r(o(c.toArray())):o(c)},"Array | Matrix, number":function(c,f){if(!Ot(f))throw new RangeError("Dimension must be a whole number");return jt(c)?r(a(c.toArray(),f)):a(c,f)},"Array, BigNumber":t.referTo("Array,number",u=>(c,f)=>u(c,i(f))),"Matrix, BigNumber":t.referTo("Matrix,number",u=>(c,f)=>u(c,i(f)))});function a(u,c){if(jt(u)&&(u=u.toArray()),!Array.isArray(u))throw RangeError("Array/Matrix does not have that many dimensions");if(c>0){var f=[];return u.forEach(d=>{f.push(a(d,c-1))}),f}else{if(c===0)return o(u);throw RangeError("Cannot have negative dimension")}}function o(u){for(var c=[],f=u.length,d=1;d<f;d++)c.push(s(u[d-1],u[d]));return c}function s(u,c){jt(u)&&(u=u.toArray()),jt(c)&&(c=c.toArray());var f=Array.isArray(u),d=Array.isArray(c);if(f&&d)return l(u,c);if(!f&&!d)return n(c,u);throw TypeError("Cannot calculate difference between 1 array and 1 non-array")}function l(u,c){if(u.length!==c.length)throw RangeError("Not all sub-arrays have the same length");for(var f=[],d=u.length,p=0;p<d;p++)f.push(s(u[p],c[p]));return f}});var wot="ones",Sot=["typed","config","matrix","BigNumber"],wB=X(wot,Sot,e=>{var{typed:t,config:r,matrix:n,BigNumber:i}=e;return t("ones",{"":function(){return r.matrix==="Array"?a([]):a([],"default")},"...number | BigNumber | string":function(u){var c=u[u.length-1];if(typeof c=="string"){var f=u.pop();return a(u,f)}else return r.matrix==="Array"?a(u):a(u,"default")},Array:a,Matrix:function(u){var c=u.storage();return a(u.valueOf(),c)},"Array | Matrix, string":function(u,c){return a(u.valueOf(),c)}});function a(l,u){var c=o(l),f=c?new i(1):1;if(s(l),u){var d=n(u);return l.length>0?d.resize(l,f):d}else{var p=[];return l.length>0?nh(p,l,f):p}}function o(l){var u=!1;return l.forEach(function(c,f,d){er(c)&&(u=!0,d[f]=c.toNumber())}),u}function s(l){l.forEach(function(u){if(typeof u!="number"||!Ot(u)||u<0)throw new Error("Parameters in function ones must be positive integers")})}});function vk(){throw new Error('No "bignumber" implementation available')}function SB(){throw new Error('No "fraction" implementation available')}function EB(){throw new Error('No "matrix" implementation available')}var z1e="range",Eot=["typed","config","?matrix","?bignumber","smaller","smallerEq","larger","largerEq","add","isPositive"],yk=X(z1e,Eot,e=>{var{typed:t,config:r,matrix:n,bignumber:i,smaller:a,smallerEq:o,larger:s,largerEq:l,add:u,isPositive:c}=e;return t(z1e,{string:d,"string, boolean":d,"number, number":function(v,A){return f(p(v,A,1,!1))},"number, number, number":function(v,A,x){return f(p(v,A,x,!1))},"number, number, boolean":function(v,A,x){return f(p(v,A,1,x))},"number, number, number, boolean":function(v,A,x,g){return f(p(v,A,x,g))},"BigNumber, BigNumber":function(v,A){var x=v.constructor;return f(p(v,A,new x(1),!1))},"BigNumber, BigNumber, BigNumber":function(v,A,x){return f(p(v,A,x,!1))},"BigNumber, BigNumber, boolean":function(v,A,x){var g=v.constructor;return f(p(v,A,new g(1),x))},"BigNumber, BigNumber, BigNumber, boolean":function(v,A,x,g){return f(p(v,A,x,g))},"Unit, Unit, Unit":function(v,A,x){return f(p(v,A,x,!1))},"Unit, Unit, Unit, boolean":function(v,A,x,g){return f(p(v,A,x,g))}});function f(m){return r.matrix==="Matrix"?n?n(m):EB():m}function d(m,v){var A=h(m);if(!A)throw new SyntaxError('String "'+m+'" is no valid range');return r.number==="BigNumber"?(i===void 0&&vk(),f(p(i(A.start),i(A.end),i(A.step)),v)):f(p(A.start,A.end,A.step,v))}function p(m,v,A,x){for(var g=[],w=c(A)?x?o:a:x?l:s,b=m;w(b,v);)g.push(b),b=u(b,A);return g}function h(m){var v=m.split(":"),A=v.map(function(g){return Number(g)}),x=A.some(function(g){return isNaN(g)});if(x)return null;switch(A.length){case 2:return{start:A[0],end:A[1],step:1};case 3:return{start:A[0],end:A[2],step:A[1]};default:return null}}});var U1e="reshape",kot=["typed","isInteger","matrix"],kB=X(U1e,kot,e=>{var{typed:t,isInteger:r}=e;return t(U1e,{"Matrix, Array":function(i,a){return i.reshape(a,!0)},"Array, Array":function(i,a){return a.forEach(function(o){if(!r(o))throw new TypeError("Invalid size for dimension: "+o)}),d3(i,a)}})});var Cot="resize",Dot=["config","matrix"],CB=X(Cot,Dot,e=>{var{config:t,matrix:r}=e;return function(a,o,s){if(arguments.length!==2&&arguments.length!==3)throw new Bd("resize",arguments.length,2,3);if(jt(o)&&(o=o.valueOf()),er(o[0])&&(o=o.map(function(c){return er(c)?c.toNumber():c})),jt(a))return a.resize(o,s,!0);if(typeof a=="string")return n(a,o,s);var l=Array.isArray(a)?!1:t.matrix!=="Array";if(o.length===0){for(;Array.isArray(a);)a=a[0];return nr(a)}else{Array.isArray(a)||(a=[a]),a=nr(a);var u=nh(a,o,s);return l?r(u):u}};function n(i,a,o){if(o!==void 0){if(typeof o!="string"||o.length!==1)throw new TypeError("Single character expected as defaultValue")}else o=" ";if(a.length!==1)throw new Tr(a.length,1);var s=a[0];if(typeof s!="number"||!Ot(s))throw new TypeError("Invalid size, must contain positive integers (size: "+Er(a)+")");if(i.length>s)return i.substring(0,s);if(i.length<s){for(var l=i,u=0,c=s-i.length;u<c;u++)l+=o;return l}else return i}});var H1e="rotate",Tot=["typed","multiply","rotationMatrix"],DB=X(H1e,Tot,e=>{var{typed:t,multiply:r,rotationMatrix:n}=e;return t(H1e,{"Array , number | BigNumber | Complex | Unit":function(o,s){i(o,2);var l=r(n(s),o);return l.toArray()},"Matrix , number | BigNumber | Complex | Unit":function(o,s){return i(o,2),r(n(s),o)},"Array, number | BigNumber | Complex | Unit, Array | Matrix":function(o,s,l){i(o,3);var u=r(n(s,l),o);return u},"Matrix, number | BigNumber | Complex | Unit, Array | Matrix":function(o,s,l){return i(o,3),r(n(s,l),o)}});function i(a,o){var s=Array.isArray(a)?gr(a):a.size();if(s.length>2)throw new RangeError("Vector must be of dimensions 1x".concat(o));if(s.length===2&&s[1]!==1)throw new RangeError("Vector must be of dimensions 1x".concat(o));if(s[0]!==o)throw new RangeError("Vector must be of dimensions 1x".concat(o))}});var V1e="rotationMatrix",Not=["typed","config","multiplyScalar","addScalar","unaryMinus","norm","matrix","BigNumber","DenseMatrix","SparseMatrix","cos","sin"],TB=X(V1e,Not,e=>{var{typed:t,config:r,multiplyScalar:n,addScalar:i,unaryMinus:a,norm:o,BigNumber:s,matrix:l,DenseMatrix:u,SparseMatrix:c,cos:f,sin:d}=e;return t(V1e,{"":function(){return r.matrix==="Matrix"?l([]):[]},string:function(g){return l(g)},"number | BigNumber | Complex | Unit":function(g){return p(g,r.matrix==="Matrix"?"dense":void 0)},"number | BigNumber | Complex | Unit, string":function(g,w){return p(g,w)},"number | BigNumber | Complex | Unit, Array":function(g,w){var b=l(w);return h(b),A(g,b,void 0)},"number | BigNumber | Complex | Unit, Matrix":function(g,w){h(w);var b=w.storage()||(r.matrix==="Matrix"?"dense":void 0);return A(g,w,b)},"number | BigNumber | Complex | Unit, Array, string":function(g,w,b){var y=l(w);return h(y),A(g,y,b)},"number | BigNumber | Complex | Unit, Matrix, string":function(g,w,b){return h(w),A(g,w,b)}});function p(x,g){var w=er(x),b=w?new s(-1):-1,y=f(x),S=d(x),T=[[y,n(b,S)],[S,y]];return v(T,g)}function h(x){var g=x.size();if(g.length<1||g[0]!==3)throw new RangeError("Vector must be of dimensions 1x3")}function m(x){return x.reduce((g,w)=>n(g,w))}function v(x,g){if(g){if(g==="sparse")return new c(x);if(g==="dense")return new u(x);throw new TypeError('Unknown matrix type "'.concat(g,'"'))}return x}function A(x,g,w){var b=o(g);if(b===0)throw new RangeError("Rotation around zero vector");var y=er(x)?s:null,S=y?new y(1):1,T=y?new y(-1):-1,D=y?new y(g.get([0])/b):g.get([0])/b,k=y?new y(g.get([1])/b):g.get([1])/b,M=y?new y(g.get([2])/b):g.get([2])/b,E=f(x),O=i(S,a(E)),P=d(x),_=i(E,m([D,D,O])),B=i(m([D,k,O]),m([T,M,P])),F=i(m([D,M,O]),m([k,P])),L=i(m([D,k,O]),m([M,P])),I=i(E,m([k,k,O])),R=i(m([k,M,O]),m([T,D,P])),J=i(m([D,M,O]),m([T,k,P])),Q=i(m([k,M,O]),m([D,P])),q=i(E,m([M,M,O])),ie=[[_,B,F],[L,I,R],[J,Q,q]];return v(ie,w)}});var G1e="row",Mot=["typed","Index","matrix","range"],bk=X(G1e,Mot,e=>{var{typed:t,Index:r,matrix:n,range:i}=e;return t(G1e,{"Matrix, number":a,"Array, number":function(s,l){return a(n(nr(s)),l).valueOf()}});function a(o,s){if(o.size().length!==2)throw new Error("Only two dimensional matrix is supported");xi(s,o.size()[0]);var l=i(0,o.size()[1]),u=new r(s,l),c=o.subset(u);return jt(c)?c:n([[c]])}});var W1e="size",Oot=["typed","config","?matrix"],NB=X(W1e,Oot,e=>{var{typed:t,config:r,matrix:n}=e;return t(W1e,{Matrix:function(a){return a.create(a.size())},Array:gr,string:function(a){return r.matrix==="Array"?[a.length]:n([a.length])},"number | Complex | BigNumber | Unit | boolean | null":function(a){return r.matrix==="Array"?[]:n?n([]):EB()}})});var Q1e="squeeze",Fot=["typed","matrix"],MB=X(Q1e,Fot,e=>{var{typed:t,matrix:r}=e;return t(Q1e,{Array:function(i){return rk(nr(i))},Matrix:function(i){var a=rk(i.toArray());return Array.isArray(a)?r(a):a},any:function(i){return nr(i)}})});var Y1e="subset",jot=["typed","matrix","zeros","add"],xk=X(Y1e,jot,e=>{var{typed:t,matrix:r,zeros:n,add:i}=e;return t(Y1e,{"Matrix, Index":function(s,l){return qx(l)?r():(f3(s,l),s.subset(l))},"Array, Index":t.referTo("Matrix, Index",function(o){return function(s,l){var u=o(r(s),l);return l.isScalar()?u:u.valueOf()}}),"Object, Index":_ot,"string, Index":Pot,"Matrix, Index, any, any":function(s,l,u,c){return qx(l)?s:(f3(s,l),s.clone().subset(l,a(u,l),c))},"Array, Index, any, any":t.referTo("Matrix, Index, any, any",function(o){return function(s,l,u,c){var f=o(r(s),l,u,c);return f.isMatrix?f.valueOf():f}}),"Array, Index, any":t.referTo("Matrix, Index, any, any",function(o){return function(s,l,u){return o(r(s),l,u,void 0).valueOf()}}),"Matrix, Index, any":t.referTo("Matrix, Index, any, any",function(o){return function(s,l,u){return o(s,l,u,void 0)}}),"string, Index, string":X1e,"string, Index, string, string":X1e,"Object, Index, any":Iot});function a(o,s){if(typeof o=="string")throw new Error("can't boradcast a string");if(s._isScalar)return o;var l=s.size();if(l.every(u=>u>0))try{return i(o,n(l))}catch{return o}else return o}});function Pot(e,t){if(!gg(t))throw new TypeError("Index expected");if(qx(t))return"";if(f3(Array.from(e),t),t.size().length!==1)throw new Tr(t.size().length,1);var r=e.length;xi(t.min()[0],r),xi(t.max()[0],r);var n=t.dimension(0),i="";return n.forEach(function(a){i+=e.charAt(a)}),i}function X1e(e,t,r,n){if(!t||t.isIndex!==!0)throw new TypeError("Index expected");if(qx(t))return e;if(f3(Array.from(e),t),t.size().length!==1)throw new Tr(t.size().length,1);if(n!==void 0){if(typeof n!="string"||n.length!==1)throw new TypeError("Single character expected as defaultValue")}else n=" ";var i=t.dimension(0),a=i.size()[0];if(a!==r.length)throw new Tr(i.size()[0],r.length);var o=e.length;xi(t.min()[0]),xi(t.max()[0]);for(var s=[],l=0;l<o;l++)s[l]=e.charAt(l);if(i.forEach(function(f,d){s[f]=r.charAt(d[0])}),s.length>o)for(var u=o-1,c=s.length;u<c;u++)s[u]||(s[u]=n);return s.join("")}function _ot(e,t){if(!qx(t)){if(t.size().length!==1)throw new Tr(t.size(),1);var r=t.dimension(0);if(typeof r!="string")throw new TypeError("String expected as index to retrieve an object property");return Oa(e,r)}}function Iot(e,t,r){if(qx(t))return e;if(t.size().length!==1)throw new Tr(t.size(),1);var n=t.dimension(0);if(typeof n!="string")throw new TypeError("String expected as index to retrieve an object property");var i=nr(e);return yg(i,n,r),i}var K1e="transpose",Bot=["typed","matrix"],OB=X(K1e,Bot,e=>{var{typed:t,matrix:r}=e;return t(K1e,{Array:o=>n(r(o)).valueOf(),Matrix:n,any:nr});function n(o){var s=o.size(),l;switch(s.length){case 1:l=o.clone();break;case 2:{var u=s[0],c=s[1];if(c===0)throw new RangeError("Cannot transpose a 2D matrix with no columns (size: "+Er(s)+")");switch(o.storage()){case"dense":l=i(o,u,c);break;case"sparse":l=a(o,u,c);break}}break;default:throw new RangeError("Matrix must be a vector or two dimensional (size: "+Er(s)+")")}return l}function i(o,s,l){for(var u=o._data,c=[],f,d=0;d<l;d++){f=c[d]=[];for(var p=0;p<s;p++)f[p]=nr(u[p][d])}return o.createDenseMatrix({data:c,size:[l,s],datatype:o._datatype})}function a(o,s,l){for(var u=o._values,c=o._index,f=o._ptr,d=u?[]:void 0,p=[],h=[],m=[],v=0;v<s;v++)m[v]=0;var A,x,g;for(A=0,x=c.length;A<x;A++)m[c[A]]++;for(var w=0,b=0;b<s;b++)h.push(w),w+=m[b],m[b]=h[b];for(h.push(w),g=0;g<l;g++)for(var y=f[g],S=f[g+1],T=y;T<S;T++){var D=m[c[T]]++;p[D]=g,u&&(d[D]=nr(u[T]))}return o.createSparseMatrix({values:d,index:p,ptr:h,size:[l,s],datatype:o._datatype})}});var J1e="ctranspose",Lot=["typed","transpose","conj"],FB=X(J1e,Lot,e=>{var{typed:t,transpose:r,conj:n}=e;return t(J1e,{any:function(a){return n(r(a))}})});var Z1e="zeros",Rot=["typed","config","matrix","BigNumber"],jB=X(Z1e,Rot,e=>{var{typed:t,config:r,matrix:n,BigNumber:i}=e;return t(Z1e,{"":function(){return r.matrix==="Array"?a([]):a([],"default")},"...number | BigNumber | string":function(u){var c=u[u.length-1];if(typeof c=="string"){var f=u.pop();return a(u,f)}else return r.matrix==="Array"?a(u):a(u,"default")},Array:a,Matrix:function(u){var c=u.storage();return a(u.valueOf(),c)},"Array | Matrix, string":function(u,c){return a(u.valueOf(),c)}});function a(l,u){var c=o(l),f=c?new i(0):0;if(s(l),u){var d=n(u);return l.length>0?d.resize(l,f):d}else{var p=[];return l.length>0?nh(p,l,f):p}}function o(l){var u=!1;return l.forEach(function(c,f,d){er(c)&&(u=!0,d[f]=c.toNumber())}),u}function s(l){l.forEach(function(u){if(typeof u!="number"||!Ot(u)||u<0)throw new Error("Parameters in function zeros must be positive integers")})}});var eye="fft",qot=["typed","matrix","addScalar","multiplyScalar","divideScalar","exp","tau","i","dotDivide","conj","pow","ceil","log2"],PB=X(eye,qot,e=>{var{typed:t,matrix:r,addScalar:n,multiplyScalar:i,divideScalar:a,exp:o,tau:s,i:l,dotDivide:u,conj:c,pow:f,ceil:d,log2:p}=e;return t(eye,{Array:h,Matrix:function(g){return g.create(h(g.toArray()))}});function h(x){var g=gr(x);return g.length===1?A(x,g[0]):m(x.map(w=>h(w,g.slice(1))),0)}function m(x,g){var w=gr(x);if(g!==0)return new Array(w[0]).fill(0).map((y,S)=>m(x[S],g-1));if(w.length===1)return A(x);function b(y){var S=gr(y);return new Array(S[1]).fill(0).map((T,D)=>new Array(S[0]).fill(0).map((k,M)=>y[M][D]))}return b(m(b(x),1))}function v(x){for(var g=x.length,w=o(a(i(-1,i(l,s)),g)),b=[],y=1-g;y<g;y++)b.push(f(w,a(f(y,2),2)));for(var S=f(2,d(p(g+g-1))),T=[...new Array(g).fill(0).map((B,F)=>i(x[F],b[g-1+F])),...new Array(S-g).fill(0)],D=[...new Array(g+g-1).fill(0).map((B,F)=>a(1,b[F])),...new Array(S-(g+g-1)).fill(0)],k=A(T),M=A(D),E=new Array(S).fill(0).map((B,F)=>i(k[F],M[F])),O=u(c(h(c(E))),S),P=[],_=g-1;_<g+g-1;_++)P.push(i(O[_],b[_]));return P}function A(x){var g=x.length;if(g===1)return[x[0]];if(g%2===0){for(var w=[...A(x.filter((T,D)=>D%2===0),g/2),...A(x.filter((T,D)=>D%2===1),g/2)],b=0;b<g/2;b++){var y=w[b],S=i(w[b+g/2],o(i(i(s,l),a(-b,g))));w[b]=n(y,S),w[b+g/2]=n(y,i(-1,S))}return w}else return v(x)}});var tye="ifft",$ot=["typed","fft","dotDivide","conj"],_B=X(tye,$ot,e=>{var{typed:t,fft:r,dotDivide:n,conj:i}=e;return t(tye,{"Array | Matrix":function(o){var s=jt(o)?o.size():gr(o);return n(i(r(i(o))),s.reduce((l,u)=>l*u,1))}})});function rye(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function zot(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?rye(Object(r),!0).forEach(function(n){ai(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):rye(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var Uot="solveODE",Hot=["typed","add","subtract","multiply","divide","max","map","abs","isPositive","isNegative","larger","smaller","matrix","bignumber","unaryMinus"],IB=X(Uot,Hot,e=>{var{typed:t,add:r,subtract:n,multiply:i,divide:a,max:o,map:s,abs:l,isPositive:u,isNegative:c,larger:f,smaller:d,matrix:p,bignumber:h,unaryMinus:m}=e;function v(T){return function(D,k,M,E){var O=!(k.length===2&&(k.every(y)||k.every(hs)));if(O)throw new Error('"tspan" must be an Array of two numeric values or two units [tStart, tEnd]');var P=k[0],_=k[1],B=f(_,P),F=E.firstStep;if(F!==void 0&&!u(F))throw new Error('"firstStep" must be positive');var L=E.maxStep;if(L!==void 0&&!u(L))throw new Error('"maxStep" must be positive');var I=E.minStep;if(I&&c(I))throw new Error('"minStep" must be positive or zero');var R=[P,_,F,I,L].filter(ke=>ke!==void 0);if(!(R.every(y)||R.every(hs)))throw new Error('Inconsistent type of "t" dependant variables');for(var J=1,Q=E.tol?E.tol:1e-4,q=E.minDelta?E.minDelta:.2,ie=E.maxDelta?E.maxDelta:5,Ae=E.maxIter?E.maxIter:1e4,le=[P,_,...M,L,I].some(er),[pe,ae,oe,ue]=le?[h(T.a),h(T.c),h(T.b),h(T.bp)]:[T.a,T.c,T.b,T.bp],Se=F?B?F:m(F):a(n(_,P),J),H=[P],ye=[M],ne=n(oe,ue),z=0,U=0,V=w(B),Y=b(B);V(H[z],_);){var Z=[];Se=Y(H[z],_,Se),Z.push(D(H[z],ye[z]));for(var re=1;re<ae.length;++re)Z.push(D(r(H[z],i(ae[re],Se)),r(ye[z],i(Se,pe[re],Z))));var he=o(l(s(i(ne,Z),ke=>hs(ke)?ke.value:ke)));he<Q&&Q/he>1/4&&(H.push(r(H[z],Se)),ye.push(r(ye[z],i(Se,oe,Z))),z++);var fe=.84*(Q/he)**(1/5);if(d(fe,q)?fe=q:f(fe,ie)&&(fe=ie),fe=le?h(fe):fe,Se=i(Se,fe),L&&f(l(Se),L)?Se=B?L:m(L):I&&d(l(Se),I)&&(Se=B?I:m(I)),U++,U>Ae)throw new Error("Maximum number of iterations reached, try changing options")}return{t:H,y:ye}}}function A(T,D,k,M){var E=[[],[.5],[0,.75],[.2222222222222222,.3333333333333333,.4444444444444444]],O=[null,1/2,3/4,1],P=[2/9,1/3,4/9,0],_=[7/24,1/4,1/3,1/8],B={a:E,c:O,b:P,bp:_};return v(B)(T,D,k,M)}function x(T,D,k,M){var E=[[],[.2],[.075,.225],[.9777777777777777,-3.7333333333333334,3.5555555555555554],[2.9525986892242035,-11.595793324188385,9.822892851699436,-.2908093278463649],[2.8462752525252526,-10.757575757575758,8.906422717743473,.2784090909090909,-.2735313036020583],[.09114583333333333,0,.44923629829290207,.6510416666666666,-.322376179245283,.13095238095238096]],O=[null,1/5,3/10,4/5,8/9,1,1],P=[35/384,0,500/1113,125/192,-2187/6784,11/84,0],_=[5179/57600,0,7571/16695,393/640,-92097/339200,187/2100,1/40],B={a:E,c:O,b:P,bp:_};return v(B)(T,D,k,M)}function g(T,D,k,M){var E=M.method?M.method:"RK45",O={RK23:A,RK45:x};if(E.toUpperCase()in O){var P=zot({},M);return delete P.method,O[E.toUpperCase()](T,D,k,P)}else{var _=Object.keys(O).map(F=>'"'.concat(F,'"')),B="".concat(_.slice(0,-1).join(", ")," and ").concat(_.slice(-1));throw new Error('Unavailable method "'.concat(E,'". Available methods are ').concat(B))}}function w(T){return T?d:f}function b(T){var D=T?f:d;return function(k,M,E){var O=r(k,E);return D(O,M)?n(M,k):E}}function y(T){return er(T)||hr(T)}function S(T,D,k,M){var E=g(T,D.toArray(),k.toArray(),M);return{t:p(E.t),y:p(E.y)}}return t("solveODE",{"function, Array, Array, Object":g,"function, Matrix, Matrix, Object":S,"function, Array, Array":(T,D,k)=>g(T,D,k,{}),"function, Matrix, Matrix":(T,D,k)=>S(T,D,k,{}),"function, Array, number | BigNumber | Unit":(T,D,k)=>{var M=g(T,D,[k],{});return{t:M.t,y:M.y.map(E=>E[0])}},"function, Matrix, number | BigNumber | Unit":(T,D,k)=>{var M=g(T,D.toArray(),[k],{});return{t:p(M.t),y:p(M.y.map(E=>E[0]))}},"function, Array, number | BigNumber | Unit, Object":(T,D,k,M)=>{var E=g(T,D,[k],M);return{t:E.t,y:E.y.map(O=>O[0])}},"function, Matrix, number | BigNumber | Unit, Object":(T,D,k,M)=>{var E=g(T,D.toArray(),[k],M);return{t:p(E.t),y:p(E.y.map(O=>O[0]))}}})});var Vot="erf",Got=["typed"],BB=X(Vot,Got,e=>{var{typed:t}=e;return t("name",{number:function(o){var s=Math.abs(o);return s>=Yot?Gp(o):s<=Wot?Gp(o)*r(s):s<=4?Gp(o)*(1-n(s)):Gp(o)*(1-i(s))},"Array | Matrix":t.referToSelf(a=>o=>Ut(o,a))});function r(a){var o=a*a,s=N0[0][4]*o,l=o,u;for(u=0;u<3;u+=1)s=(s+N0[0][u])*o,l=(l+wk[0][u])*o;return a*(s+N0[0][3])/(l+wk[0][3])}function n(a){var o=N0[1][8]*a,s=a,l;for(l=0;l<7;l+=1)o=(o+N0[1][l])*a,s=(s+wk[1][l])*a;var u=(o+N0[1][7])/(s+wk[1][7]),c=parseInt(a*16)/16,f=(a-c)*(a+c);return Math.exp(-c*c)*Math.exp(-f)*u}function i(a){var o=1/(a*a),s=N0[2][5]*o,l=o,u;for(u=0;u<4;u+=1)s=(s+N0[2][u])*o,l=(l+wk[2][u])*o;var c=o*(s+N0[2][4])/(l+wk[2][4]);c=(Qot-c)/a,o=parseInt(a*16)/16;var f=(a-o)*(a+o);return Math.exp(-o*o)*Math.exp(-f)*c}}),Wot=.46875,Qot=.5641895835477563,N0=[[3.1611237438705655,113.86415415105016,377.485237685302,3209.3775891384694,.18577770618460315],[.5641884969886701,8.883149794388377,66.11919063714163,298.6351381974001,881.952221241769,1712.0476126340707,2051.0783778260716,1230.3393547979972,21531153547440383e-24],[.30532663496123236,.36034489994980445,.12578172611122926,.016083785148742275,.0006587491615298378,.016315387137302097]],wk=[[23.601290952344122,244.02463793444417,1282.6165260773723,2844.236833439171],[15.744926110709835,117.6939508913125,537.1811018620099,1621.3895745666903,3290.7992357334597,4362.619090143247,3439.3676741437216,1230.3393548037495],[2.568520192289822,1.8729528499234604,.5279051029514285,.06051834131244132,.0023352049762686918]],Yot=Math.pow(2,53);var nye="zeta",Xot=["typed","config","multiply","pow","divide","factorial","equal","smallerEq","isNegative","gamma","sin","subtract","add","?Complex","?BigNumber","pi"],LB=X(nye,Xot,e=>{var{typed:t,config:r,multiply:n,pow:i,divide:a,factorial:o,equal:s,smallerEq:l,isNegative:u,gamma:c,sin:f,subtract:d,add:p,Complex:h,BigNumber:m,pi:v}=e;return t(nye,{number:y=>A(y,S=>S,()=>20),BigNumber:y=>A(y,S=>new m(S),()=>Math.abs(Math.log10(r.epsilon))),Complex:x});function A(y,S,T){return s(y,0)?S(-.5):s(y,1)?S(NaN):isFinite(y)?g(y,S,T,D=>D):u(y)?S(NaN):S(1)}function x(y){return y.re===0&&y.im===0?new h(-.5):y.re===1?new h(NaN,NaN):y.re===1/0&&y.im===0?new h(1):y.im===1/0||y.re===-1/0?new h(NaN,NaN):g(y,S=>S,S=>Math.round(1.3*15+.9*Math.abs(S.im)),S=>S.re)}function g(y,S,T,D){var k=T(y);if(D(y)>-(k-1)/2)return b(y,S(k),S);var M=n(i(2,y),i(S(v),d(y,1)));return M=n(M,f(n(a(S(v),2),y))),M=n(M,c(d(1,y))),n(M,g(d(1,y),S,T,D))}function w(y,S){for(var T=y,D=y;l(D,S);D=p(D,1)){var k=a(n(o(p(S,d(D,1))),i(4,D)),n(o(d(S,D)),o(n(2,D))));T=p(T,k)}return n(S,T)}function b(y,S,T){for(var D=a(1,n(w(T(0),S),d(1,i(2,d(1,y))))),k=T(0),M=T(1);l(M,S);M=p(M,1))k=p(k,a(n((-1)**(M-1),w(M,S)),i(M,y)));return n(D,k)}});var iye="mode",Kot=["typed","isNaN","isNumeric"],RB=X(iye,Kot,e=>{var{typed:t,isNaN:r,isNumeric:n}=e;return t(iye,{"Array | Matrix":i,"...":function(o){return i(o)}});function i(a){a=qr(a.valueOf());var o=a.length;if(o===0)throw new Error("Cannot calculate mode of an empty array");for(var s={},l=[],u=0,c=0;c<a.length;c++){var f=a[c];if(n(f)&&r(f))throw new Error("Cannot calculate mode of an array containing NaN values");f in s||(s[f]=0),s[f]++,s[f]===u?l.push(f):s[f]>u&&(u=s[f],l=[f])}return l}});function No(e,t,r){var n;return String(e).includes("Unexpected type")?(n=arguments.length>2?" (type: "+yn(r)+", value: "+JSON.stringify(r)+")":" (type: "+e.data.actual+")",new TypeError("Cannot calculate "+t+", unexpected type of argument"+n)):String(e).includes("complex numbers")?(n=arguments.length>2?" (type: "+yn(r)+", value: "+JSON.stringify(r)+")":"",new TypeError("Cannot calculate "+t+", no ordering relation is defined for complex numbers"+n)):e}var aye="prod",Jot=["typed","config","multiplyScalar","numeric"],qB=X(aye,Jot,e=>{var{typed:t,config:r,multiplyScalar:n,numeric:i}=e;return t(aye,{"Array | Matrix":a,"Array | Matrix, number | BigNumber":function(s,l){throw new Error("prod(A, dim) is not yet supported")},"...":function(s){return a(s)}});function a(o){var s;if(ac(o,function(l){try{s=s===void 0?l:n(s,l)}catch(u){throw No(u,"prod",l)}}),typeof s=="string"&&(s=i(s,r.number)),s===void 0)throw new Error("Cannot calculate prod of an empty array");return s}});var oye="format",Zot=["typed"],$B=X(oye,Zot,e=>{var{typed:t}=e;return t(oye,{any:Er,"any, Object | function | number | BigNumber":Er})});var sye="bin",est=["typed","format"],zB=X(sye,est,e=>{var{typed:t,format:r}=e;return t(sye,{"number | BigNumber":function(i){return r(i,{notation:"bin"})},"number | BigNumber, number | BigNumber":function(i,a){return r(i,{notation:"bin",wordSize:a})}})});var lye="oct",tst=["typed","format"],UB=X(lye,tst,e=>{var{typed:t,format:r}=e;return t(lye,{"number | BigNumber":function(i){return r(i,{notation:"oct"})},"number | BigNumber, number | BigNumber":function(i,a){return r(i,{notation:"oct",wordSize:a})}})});var uye="hex",rst=["typed","format"],HB=X(uye,rst,e=>{var{typed:t,format:r}=e;return t(uye,{"number | BigNumber":function(i){return r(i,{notation:"hex"})},"number | BigNumber, number | BigNumber":function(i,a){return r(i,{notation:"hex",wordSize:a})}})});var VB=/\$([\w.]+)/g;var cye="print",nst=["typed"],Sk=X(cye,nst,e=>{var{typed:t}=e;return t(cye,{"string, Object | Array":fye,"string, Object | Array, number | Object":fye})});function fye(e,t,r){return e.replace(VB,function(n,i){var a=i.split("."),o=t[a.shift()];for(o!==void 0&&o.isMatrix&&(o=o.toArray());a.length&&o!==void 0;){var s=a.shift();o=s?o[s]:o+"."}return o!==void 0?Ya(o)?o:Er(o,r):n})}var dye="to",ist=["typed","matrix","concat"],GB=X(dye,ist,e=>{var{typed:t,matrix:r,concat:n}=e,i=Pr({typed:t,matrix:r,concat:n});return t(dye,{"Unit, Unit | string":(a,o)=>a.to(o)},i({Ds:!0}))});var pye="isPrime",ast=["typed"],WB=X(pye,ast,e=>{var{typed:t}=e;return t(pye,{number:function(n){if(n*0!==0)return!1;if(n<=3)return n>1;if(n%2===0||n%3===0)return!1;for(var i=5;i*i<=n;i+=6)if(n%i===0||n%(i+2)===0)return!1;return!0},BigNumber:function(n){if(n.toNumber()*0!==0)return!1;if(n.lte(3))return n.gt(1);if(n.mod(2).eq(0)||n.mod(3).eq(0))return!1;if(n.lt(Math.pow(2,32))){for(var i=n.toNumber(),a=5;a*a<=i;a+=6)if(i%a===0||i%(a+2)===0)return!1;return!0}function o(x,g,w){for(var b=1;!g.eq(0);)g.mod(2).eq(0)?(g=g.div(2),x=x.mul(x).mod(w)):(g=g.sub(1),b=x.mul(b).mod(w));return b}var s=n.constructor.clone({precision:n.toFixed(0).length*2});n=new s(n);for(var l=0,u=n.sub(1);u.mod(2).eq(0);)u=u.div(2),l+=1;var c=null;if(n.lt("3317044064679887385961981"))c=[2,3,5,7,11,13,17,19,23,29,31,37,41].filter(x=>x<n);else{var f=Math.min(n.toNumber()-2,Math.floor(2*Math.pow(n.toFixed(0).length*Math.log(10),2)));c=[];for(var d=2;d<=f;d+=1)c.push(f)}for(var p=0;p<c.length;p+=1){var h=c[p],m=o(n.sub(n).add(h),u,n);if(!m.eq(1)){for(var v=0,A=m;!A.eq(n.sub(1));v+=1,A=A.mul(A).mod(n))if(v===l-1)return!1}}return!0},"Array | Matrix":t.referToSelf(r=>n=>Ut(n,r))})});var ost="numeric",sst=["number","?bignumber","?fraction"],QB=X(ost,sst,e=>{var{number:t,bignumber:r,fraction:n}=e,i={string:!0,number:!0,BigNumber:!0,Fraction:!0},a={number:o=>t(o),BigNumber:r?o=>r(o):vk,Fraction:n?o=>n(o):SB};return function(s){var l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"number",u=arguments.length>2?arguments[2]:void 0;if(u!==void 0)throw new SyntaxError("numeric() takes one or two arguments");var c=yn(s);if(!(c in i))throw new TypeError("Cannot convert "+s+' of type "'+c+'"; valid input types are '+Object.keys(i).join(", "));if(!(l in a))throw new TypeError("Cannot convert "+s+' to type "'+l+'"; valid output types are '+Object.keys(a).join(", "));return l===c?s:a[l](s)}});var mye="divideScalar",lst=["typed","numeric"],YB=X(mye,lst,e=>{var{typed:t,numeric:r}=e;return t(mye,{"number, number":function(i,a){return i/a},"Complex, Complex":function(i,a){return i.div(a)},"BigNumber, BigNumber":function(i,a){return i.div(a)},"Fraction, Fraction":function(i,a){return i.div(a)},"Unit, number | Complex | Fraction | BigNumber | Unit":(n,i)=>n.divide(i),"number | Fraction | Complex | BigNumber, Unit":(n,i)=>i.divideInto(n)})});var hye="pow",ust=["typed","config","identity","multiply","matrix","inv","fraction","number","Complex"],XB=X(hye,ust,e=>{var{typed:t,config:r,identity:n,multiply:i,matrix:a,inv:o,number:s,fraction:l,Complex:u}=e;return t(hye,{"number, number":c,"Complex, Complex":function(h,m){return h.pow(m)},"BigNumber, BigNumber":function(h,m){return m.isInteger()||h>=0||r.predictable?h.pow(m):new u(h.toNumber(),0).pow(m.toNumber(),0)},"Fraction, Fraction":function(h,m){var v=h.pow(m);if(v!=null)return v;if(r.predictable)throw new Error("Result of pow is non-rational and cannot be expressed as a fraction");return c(h.valueOf(),m.valueOf())},"Array, number":f,"Array, BigNumber":function(h,m){return f(h,m.toNumber())},"Matrix, number":d,"Matrix, BigNumber":function(h,m){return d(h,m.toNumber())},"Unit, number | BigNumber":function(h,m){return h.pow(m)}});function c(p,h){if(r.predictable&&!Ot(h)&&p<0)try{var m=l(h),v=s(m);if((h===v||Math.abs((h-v)/h)<1e-14)&&m.d%2===1)return(m.n%2===0?1:-1)*Math.pow(-p,h)}catch{}return r.predictable&&(p<-1&&h===1/0||p>-1&&p<0&&h===-1/0)?NaN:Ot(h)||p>=0||r.predictable?HJ(p,h):p*p<1&&h===1/0||p*p>1&&h===-1/0?0:new u(p,0).pow(h,0)}function f(p,h){if(!Ot(h))throw new TypeError("For A^b, b must be an integer (value is "+h+")");var m=gr(p);if(m.length!==2)throw new Error("For A^b, A must be 2 dimensional (A has "+m.length+" dimensions)");if(m[0]!==m[1])throw new Error("For A^b, A must be square (size is "+m[0]+"x"+m[1]+")");if(h<0)try{return f(o(p),-h)}catch(x){throw x.message==="Cannot calculate inverse, determinant is zero"?new TypeError("For A^b, when A is not invertible, b must be a positive integer (value is "+h+")"):x}for(var v=n(m[0]).valueOf(),A=p;h>=1;)(h&1)===1&&(v=i(A,v)),h>>=1,A=i(A,A);return v}function d(p,h){return a(f(p.valueOf(),h))}});var Ek="Number of decimals in function round must be an integer",gye="round",cst=["typed","config","matrix","equalScalar","zeros","BigNumber","DenseMatrix"],KB=X(gye,cst,e=>{var{typed:t,config:r,matrix:n,equalScalar:i,zeros:a,BigNumber:o,DenseMatrix:s}=e,l=wi({typed:t,equalScalar:i}),u=zn({typed:t,DenseMatrix:s}),c=Jo({typed:t});function f(d){return Math.abs(KE(d).exponent)}return t(gye,{number:function(p){var h=ok(p,f(r.epsilon)),m=go(p,h,r.epsilon)?h:p;return ok(m)},"number, number":function(p,h){var m=f(r.epsilon);if(h>=m)return ok(p,h);var v=ok(p,m),A=go(p,v,r.epsilon)?v:p;return ok(A,h)},"number, BigNumber":function(p,h){if(!h.isInteger())throw new TypeError(Ek);return new o(p).toDecimalPlaces(h.toNumber())},Complex:function(p){return p.round()},"Complex, number":function(p,h){if(h%1)throw new TypeError(Ek);return p.round(h)},"Complex, BigNumber":function(p,h){if(!h.isInteger())throw new TypeError(Ek);var m=h.toNumber();return p.round(m)},BigNumber:function(p){var h=new o(p).toDecimalPlaces(f(r.epsilon)),m=gs(p,h,r.epsilon)?h:p;return m.toDecimalPlaces(0)},"BigNumber, BigNumber":function(p,h){if(!h.isInteger())throw new TypeError(Ek);var m=f(r.epsilon);if(h>=m)return p.toDecimalPlaces(h.toNumber());var v=p.toDecimalPlaces(m),A=gs(p,v,r.epsilon)?v:p;return A.toDecimalPlaces(h.toNumber())},Fraction:function(p){return p.round()},"Fraction, number":function(p,h){if(h%1)throw new TypeError(Ek);return p.round(h)},"Fraction, BigNumber":function(p,h){if(!h.isInteger())throw new TypeError(Ek);return p.round(h.toNumber())},"Unit, number, Unit":t.referToSelf(d=>function(p,h,m){var v=p.toNumeric(m);return m.multiply(d(v,h))}),"Unit, BigNumber, Unit":t.referToSelf(d=>(p,h,m)=>d(p,h.toNumber(),m)),"Unit, Unit":t.referToSelf(d=>(p,h)=>d(p,0,h)),"Array | Matrix, number, Unit":t.referToSelf(d=>(p,h,m)=>Ut(p,v=>d(v,h,m),!0)),"Array | Matrix, BigNumber, Unit":t.referToSelf(d=>(p,h,m)=>d(p,h.toNumber(),m)),"Array | Matrix, Unit":t.referToSelf(d=>(p,h)=>d(p,0,h)),"Array | Matrix":t.referToSelf(d=>p=>Ut(p,d,!0)),"SparseMatrix, number | BigNumber":t.referToSelf(d=>(p,h)=>l(p,h,d,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(d=>(p,h)=>c(p,h,d,!1)),"Array, number | BigNumber":t.referToSelf(d=>(p,h)=>c(n(p),h,d,!1).valueOf()),"number | Complex | BigNumber | Fraction, SparseMatrix":t.referToSelf(d=>(p,h)=>i(p,0)?a(h.size(),h.storage()):u(h,p,d,!0)),"number | Complex | BigNumber | Fraction, DenseMatrix":t.referToSelf(d=>(p,h)=>i(p,0)?a(h.size(),h.storage()):c(h,p,d,!0)),"number | Complex | BigNumber | Fraction, Array":t.referToSelf(d=>(p,h)=>c(n(h),p,d,!0).valueOf())})});var Aye="log",fst=["config","typed","divideScalar","Complex"],JB=X(Aye,fst,e=>{var{typed:t,config:r,divideScalar:n,Complex:i}=e;return t(Aye,{number:function(o){return o>=0||r.predictable?bve(o):new i(o,0).log()},Complex:function(o){return o.log()},BigNumber:function(o){return!o.isNegative()||r.predictable?o.ln():new i(o.toNumber(),0).log()},"any, any":t.referToSelf(a=>(o,s)=>n(a(o),a(s)))})});var vye="log1p",dst=["typed","config","divideScalar","log","Complex"],ZB=X(vye,dst,e=>{var{typed:t,config:r,divideScalar:n,log:i,Complex:a}=e;return t(vye,{number:function(l){return l>=-1||r.predictable?FI(l):o(new a(l,0))},Complex:o,BigNumber:function(l){var u=l.plus(1);return!u.isNegative()||r.predictable?u.ln():o(new a(l.toNumber(),0))},"Array | Matrix":t.referToSelf(s=>l=>Ut(l,s)),"any, any":t.referToSelf(s=>(l,u)=>n(s(l),i(u)))});function o(s){var l=s.re+1;return new a(Math.log(Math.sqrt(l*l+s.im*s.im)),Math.atan2(s.im,l))}});var yye="nthRoots",pst=["config","typed","divideScalar","Complex"],e8=X(yye,pst,e=>{var{typed:t,config:r,divideScalar:n,Complex:i}=e,a=[function(l){return new i(l,0)},function(l){return new i(0,l)},function(l){return new i(-l,0)},function(l){return new i(0,-l)}];function o(s,l){if(l<0)throw new Error("Root must be greater than zero");if(l===0)throw new Error("Root must be non-zero");if(l%1!==0)throw new Error("Root must be an integer");if(s===0||s.abs()===0)return[new i(0,0)];var u=typeof s=="number",c;(u||s.re===0||s.im===0)&&(u?c=2*+(s<0):s.im===0?c=2*+(s.re<0):c=2*+(s.im<0)+1);for(var f=s.arg(),d=s.abs(),p=[],h=Math.pow(d,1/l),m=0;m<l;m++){var v=(c+4*m)/l;if(v===Math.round(v)){p.push(a[v%4](h));continue}p.push(new i({r:h,phi:(f+2*Math.PI*m)/l}))}return p}return t(yye,{Complex:function(l){return o(l,2)},"Complex, number":o})});var bye="dotPow",mst=["typed","equalScalar","matrix","pow","DenseMatrix","concat"],t8=X(bye,mst,e=>{var{typed:t,equalScalar:r,matrix:n,pow:i,DenseMatrix:a,concat:o}=e,s=ra({typed:t}),l=Ps({typed:t,DenseMatrix:a}),u=wi({typed:t,equalScalar:r}),c=zn({typed:t,DenseMatrix:a}),f=Pr({typed:t,matrix:n,concat:o}),d={};for(var p in i.signatures)Object.prototype.hasOwnProperty.call(i.signatures,p)&&!p.includes("Matrix")&&!p.includes("Array")&&(d[p]=i.signatures[p]);var h=t(d);return t(bye,f({elop:h,SS:l,DS:s,Ss:u,sS:c}))});var xye="dotDivide",hst=["typed","matrix","equalScalar","divideScalar","DenseMatrix","concat"],r8=X(xye,hst,e=>{var{typed:t,matrix:r,equalScalar:n,divideScalar:i,DenseMatrix:a,concat:o}=e,s=Zo({typed:t,equalScalar:n}),l=ra({typed:t}),u=Ps({typed:t,DenseMatrix:a}),c=wi({typed:t,equalScalar:n}),f=zn({typed:t,DenseMatrix:a}),d=Pr({typed:t,matrix:r,concat:o});return t(xye,d({elop:i,SS:u,DS:l,SD:s,Ss:c,sS:f}))});function Sg(e){var{DenseMatrix:t}=e;return function(n,i,a){var o=n.size();if(o.length!==2)throw new RangeError("Matrix must be two dimensional (size: "+Er(o)+")");var s=o[0],l=o[1];if(s!==l)throw new RangeError("Matrix must be square (size: "+Er(o)+")");var u=[];if(jt(i)){var c=i.size(),f=i._data;if(c.length===1){if(c[0]!==s)throw new RangeError("Dimension mismatch. Matrix columns must match vector length.");for(var d=0;d<s;d++)u[d]=[f[d]];return new t({data:u,size:[s,1],datatype:i._datatype})}if(c.length===2){if(c[0]!==s||c[1]!==1)throw new RangeError("Dimension mismatch. Matrix columns must match vector length.");if(E0(i)){if(a){u=[];for(var p=0;p<s;p++)u[p]=[f[p][0]];return new t({data:u,size:[s,1],datatype:i._datatype})}return i}if(_d(i)){for(var h=0;h<s;h++)u[h]=[0];for(var m=i._values,v=i._index,A=i._ptr,x=A[1],g=A[0];g<x;g++){var w=v[g];u[w][0]=m[g]}return new t({data:u,size:[s,1],datatype:i._datatype})}}throw new RangeError("Dimension mismatch. The right side has to be either 1- or 2-dimensional vector.")}if(mn(i)){var b=gr(i);if(b.length===1){if(b[0]!==s)throw new RangeError("Dimension mismatch. Matrix columns must match vector length.");for(var y=0;y<s;y++)u[y]=[i[y]];return new t({data:u,size:[s,1]})}if(b.length===2){if(b[0]!==s||b[1]!==1)throw new RangeError("Dimension mismatch. Matrix columns must match vector length.");for(var S=0;S<s;S++)u[S]=[i[S][0]];return new t({data:u,size:[s,1]})}throw new RangeError("Dimension mismatch. The right side has to be either 1- or 2-dimensional vector.")}}}var wye="lsolve",gst=["typed","matrix","divideScalar","multiplyScalar","subtractScalar","equalScalar","DenseMatrix"],n8=X(wye,gst,e=>{var{typed:t,matrix:r,divideScalar:n,multiplyScalar:i,subtractScalar:a,equalScalar:o,DenseMatrix:s}=e,l=Sg({DenseMatrix:s});return t(wye,{"SparseMatrix, Array | Matrix":function(d,p){return c(d,p)},"DenseMatrix, Array | Matrix":function(d,p){return u(d,p)},"Array, Array | Matrix":function(d,p){var h=r(d),m=u(h,p);return m.valueOf()}});function u(f,d){d=l(f,d,!0);for(var p=d._data,h=f._size[0],m=f._size[1],v=[],A=f._data,x=0;x<m;x++){var g=p[x][0]||0,w=void 0;if(o(g,0))w=0;else{var b=A[x][x];if(o(b,0))throw new Error("Linear system cannot be solved since matrix is singular");w=n(g,b);for(var y=x+1;y<h;y++)p[y]=[a(p[y][0]||0,i(w,A[y][x]))]}v[x]=[w]}return new s({data:v,size:[h,1]})}function c(f,d){d=l(f,d,!0);for(var p=d._data,h=f._size[0],m=f._size[1],v=f._values,A=f._index,x=f._ptr,g=[],w=0;w<m;w++){var b=p[w][0]||0;if(o(b,0))g[w]=[0];else{for(var y=0,S=[],T=[],D=x[w],k=x[w+1],M=D;M<k;M++){var E=A[M];E===w?y=v[M]:E>w&&(S.push(v[M]),T.push(E))}if(o(y,0))throw new Error("Linear system cannot be solved since matrix is singular");for(var O=n(b,y),P=0,_=T.length;P<_;P++){var B=T[P];p[B]=[a(p[B][0]||0,i(O,S[P]))]}g[w]=[O]}}return new s({data:g,size:[h,1]})}});var Sye="usolve",Ast=["typed","matrix","divideScalar","multiplyScalar","subtractScalar","equalScalar","DenseMatrix"],i8=X(Sye,Ast,e=>{var{typed:t,matrix:r,divideScalar:n,multiplyScalar:i,subtractScalar:a,equalScalar:o,DenseMatrix:s}=e,l=Sg({DenseMatrix:s});return t(Sye,{"SparseMatrix, Array | Matrix":function(d,p){return c(d,p)},"DenseMatrix, Array | Matrix":function(d,p){return u(d,p)},"Array, Array | Matrix":function(d,p){var h=r(d),m=u(h,p);return m.valueOf()}});function u(f,d){d=l(f,d,!0);for(var p=d._data,h=f._size[0],m=f._size[1],v=[],A=f._data,x=m-1;x>=0;x--){var g=p[x][0]||0,w=void 0;if(o(g,0))w=0;else{var b=A[x][x];if(o(b,0))throw new Error("Linear system cannot be solved since matrix is singular");w=n(g,b);for(var y=x-1;y>=0;y--)p[y]=[a(p[y][0]||0,i(w,A[y][x]))]}v[x]=[w]}return new s({data:v,size:[h,1]})}function c(f,d){d=l(f,d,!0);for(var p=d._data,h=f._size[0],m=f._size[1],v=f._values,A=f._index,x=f._ptr,g=[],w=m-1;w>=0;w--){var b=p[w][0]||0;if(o(b,0))g[w]=[0];else{for(var y=0,S=[],T=[],D=x[w],k=x[w+1],M=k-1;M>=D;M--){var E=A[M];E===w?y=v[M]:E<w&&(S.push(v[M]),T.push(E))}if(o(y,0))throw new Error("Linear system cannot be solved since matrix is singular");for(var O=n(b,y),P=0,_=T.length;P<_;P++){var B=T[P];p[B]=[a(p[B][0],i(O,S[P]))]}g[w]=[O]}}return new s({data:g,size:[h,1]})}});var Eye="lsolveAll",vst=["typed","matrix","divideScalar","multiplyScalar","subtractScalar","equalScalar","DenseMatrix"],a8=X(Eye,vst,e=>{var{typed:t,matrix:r,divideScalar:n,multiplyScalar:i,subtractScalar:a,equalScalar:o,DenseMatrix:s}=e,l=Sg({DenseMatrix:s});return t(Eye,{"SparseMatrix, Array | Matrix":function(d,p){return c(d,p)},"DenseMatrix, Array | Matrix":function(d,p){return u(d,p)},"Array, Array | Matrix":function(d,p){var h=r(d),m=u(h,p);return m.map(v=>v.valueOf())}});function u(f,d){for(var p=[l(f,d,!0)._data.map(T=>T[0])],h=f._data,m=f._size[0],v=f._size[1],A=0;A<v;A++)for(var x=p.length,g=0;g<x;g++){var w=p[g];if(o(h[A][A],0))if(o(w[A],0)){if(g===0){var y=[...w];y[A]=1;for(var S=A+1;S<v;S++)y[S]=a(y[S],h[S][A]);p.push(y)}}else{if(g===0)return[];p.splice(g,1),g-=1,x-=1}else{w[A]=n(w[A],h[A][A]);for(var b=A+1;b<v;b++)w[b]=a(w[b],i(w[A],h[b][A]))}}return p.map(T=>new s({data:T.map(D=>[D]),size:[m,1]}))}function c(f,d){for(var p=[l(f,d,!0)._data.map(J=>J[0])],h=f._size[0],m=f._size[1],v=f._values,A=f._index,x=f._ptr,g=0;g<m;g++)for(var w=p.length,b=0;b<w;b++){for(var y=p[b],S=[],T=[],D=x[g],k=x[g+1],M=0,E=D;E<k;E++){var O=A[E];O===g?M=v[E]:O>g&&(S.push(v[E]),T.push(O))}if(o(M,0))if(o(y[g],0)){if(b===0){var F=[...y];F[g]=1;for(var L=0,I=T.length;L<I;L++){var R=T[L];F[R]=a(F[R],S[L])}p.push(F)}}else{if(b===0)return[];p.splice(b,1),b-=1,w-=1}else{y[g]=n(y[g],M);for(var P=0,_=T.length;P<_;P++){var B=T[P];y[B]=a(y[B],i(y[g],S[P]))}}}return p.map(J=>new s({data:J.map(Q=>[Q]),size:[h,1]}))}});var kye="usolveAll",yst=["typed","matrix","divideScalar","multiplyScalar","subtractScalar","equalScalar","DenseMatrix"],o8=X(kye,yst,e=>{var{typed:t,matrix:r,divideScalar:n,multiplyScalar:i,subtractScalar:a,equalScalar:o,DenseMatrix:s}=e,l=Sg({DenseMatrix:s});return t(kye,{"SparseMatrix, Array | Matrix":function(d,p){return c(d,p)},"DenseMatrix, Array | Matrix":function(d,p){return u(d,p)},"Array, Array | Matrix":function(d,p){var h=r(d),m=u(h,p);return m.map(v=>v.valueOf())}});function u(f,d){for(var p=[l(f,d,!0)._data.map(T=>T[0])],h=f._data,m=f._size[0],v=f._size[1],A=v-1;A>=0;A--)for(var x=p.length,g=0;g<x;g++){var w=p[g];if(o(h[A][A],0))if(o(w[A],0)){if(g===0){var y=[...w];y[A]=1;for(var S=A-1;S>=0;S--)y[S]=a(y[S],h[S][A]);p.push(y)}}else{if(g===0)return[];p.splice(g,1),g-=1,x-=1}else{w[A]=n(w[A],h[A][A]);for(var b=A-1;b>=0;b--)w[b]=a(w[b],i(w[A],h[b][A]))}}return p.map(T=>new s({data:T.map(D=>[D]),size:[m,1]}))}function c(f,d){for(var p=[l(f,d,!0)._data.map(J=>J[0])],h=f._size[0],m=f._size[1],v=f._values,A=f._index,x=f._ptr,g=m-1;g>=0;g--)for(var w=p.length,b=0;b<w;b++){for(var y=p[b],S=[],T=[],D=x[g],k=x[g+1],M=0,E=k-1;E>=D;E--){var O=A[E];O===g?M=v[E]:O<g&&(S.push(v[E]),T.push(O))}if(o(M,0))if(o(y[g],0)){if(b===0){var F=[...y];F[g]=1;for(var L=0,I=T.length;L<I;L++){var R=T[L];F[R]=a(F[R],S[L])}p.push(F)}}else{if(b===0)return[];p.splice(b,1),b-=1,w-=1}else{y[g]=n(y[g],M);for(var P=0,_=T.length;P<_;P++){var B=T[P];y[B]=a(y[B],i(y[g],S[P]))}}}return p.map(J=>new s({data:J.map(Q=>[Q]),size:[h,1]}))}});var bst="matAlgo08xS0Sid",xst=["typed","equalScalar"],kk=X(bst,xst,e=>{var{typed:t,equalScalar:r}=e;return function(i,a,o){var s=i._values,l=i._index,u=i._ptr,c=i._size,f=i._datatype||i._data===void 0?i._datatype:i.getDataType(),d=a._values,p=a._index,h=a._ptr,m=a._size,v=a._datatype||a._data===void 0?a._datatype:a.getDataType();if(c.length!==m.length)throw new Tr(c.length,m.length);if(c[0]!==m[0]||c[1]!==m[1])throw new RangeError("Dimension mismatch. Matrix A ("+c+") must match Matrix B ("+m+")");if(!s||!d)throw new Error("Cannot perform operation on Pattern Sparse Matrices");var A=c[0],x=c[1],g,w=r,b=0,y=o;typeof f=="string"&&f===v&&f!=="mixed"&&(g=f,w=t.find(r,[g,g]),b=t.convert(0,g),y=t.find(o,[g,g]));for(var S=[],T=[],D=[],k=[],M=[],E,O,P,_,B=0;B<x;B++){D[B]=T.length;var F=B+1;for(O=u[B],P=u[B+1],E=O;E<P;E++)_=l[E],M[_]=F,k[_]=s[E],T.push(_);for(O=h[B],P=h[B+1],E=O;E<P;E++)_=p[E],M[_]===F&&(k[_]=y(k[_],d[E]));for(E=D[B];E<T.length;){_=T[E];var L=k[_];w(L,b)?T.splice(E,1):(S.push(L),E++)}}return D[x]=T.length,i.createSparseMatrix({values:S,index:T,ptr:D,size:[A,x],datatype:f===i._datatype&&v===a._datatype?g:void 0})}});var Ck=X("useMatrixForArrayScalar",["typed","matrix"],e=>{var{typed:t,matrix:r}=e;return{"Array, number":t.referTo("DenseMatrix, number",n=>(i,a)=>n(r(i),a).valueOf()),"Array, BigNumber":t.referTo("DenseMatrix, BigNumber",n=>(i,a)=>n(r(i),a).valueOf()),"number, Array":t.referTo("number, DenseMatrix",n=>(i,a)=>n(i,r(a)).valueOf()),"BigNumber, Array":t.referTo("BigNumber, DenseMatrix",n=>(i,a)=>n(i,r(a)).valueOf())}});var Cye="leftShift",wst=["typed","matrix","equalScalar","zeros","DenseMatrix","concat"],s8=X(Cye,wst,e=>{var{typed:t,matrix:r,equalScalar:n,zeros:i,DenseMatrix:a,concat:o}=e,s=oc({typed:t}),l=Zo({typed:t,equalScalar:n}),u=kk({typed:t,equalScalar:n}),c=qf({typed:t,DenseMatrix:a}),f=wi({typed:t,equalScalar:n}),d=Jo({typed:t}),p=Pr({typed:t,matrix:r,concat:o}),h=Ck({typed:t,matrix:r});return t(Cye,{"number, number":YJ,"BigNumber, BigNumber":g1e,"SparseMatrix, number | BigNumber":t.referToSelf(m=>(v,A)=>n(A,0)?v.clone():f(v,A,m,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(m=>(v,A)=>n(A,0)?v.clone():d(v,A,m,!1)),"number | BigNumber, SparseMatrix":t.referToSelf(m=>(v,A)=>n(v,0)?i(A.size(),A.storage()):c(A,v,m,!0)),"number | BigNumber, DenseMatrix":t.referToSelf(m=>(v,A)=>n(v,0)?i(A.size(),A.storage()):d(A,v,m,!0))},h,p({SS:u,DS:s,SD:l}))});var Dye="rightArithShift",Sst=["typed","matrix","equalScalar","zeros","DenseMatrix","concat"],l8=X(Dye,Sst,e=>{var{typed:t,matrix:r,equalScalar:n,zeros:i,DenseMatrix:a,concat:o}=e,s=oc({typed:t}),l=Zo({typed:t,equalScalar:n}),u=kk({typed:t,equalScalar:n}),c=qf({typed:t,DenseMatrix:a}),f=wi({typed:t,equalScalar:n}),d=Jo({typed:t}),p=Pr({typed:t,matrix:r,concat:o}),h=Ck({typed:t,matrix:r});return t(Dye,{"number, number":XJ,"BigNumber, BigNumber":A1e,"SparseMatrix, number | BigNumber":t.referToSelf(m=>(v,A)=>n(A,0)?v.clone():f(v,A,m,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(m=>(v,A)=>n(A,0)?v.clone():d(v,A,m,!1)),"number | BigNumber, SparseMatrix":t.referToSelf(m=>(v,A)=>n(v,0)?i(A.size(),A.storage()):c(A,v,m,!0)),"number | BigNumber, DenseMatrix":t.referToSelf(m=>(v,A)=>n(v,0)?i(A.size(),A.storage()):d(A,v,m,!0))},h,p({SS:u,DS:s,SD:l}))});var Tye="rightLogShift",Est=["typed","matrix","equalScalar","zeros","DenseMatrix","concat"],u8=X(Tye,Est,e=>{var{typed:t,matrix:r,equalScalar:n,zeros:i,DenseMatrix:a,concat:o}=e,s=oc({typed:t}),l=Zo({typed:t,equalScalar:n}),u=kk({typed:t,equalScalar:n}),c=qf({typed:t,DenseMatrix:a}),f=wi({typed:t,equalScalar:n}),d=Jo({typed:t}),p=Pr({typed:t,matrix:r,concat:o}),h=Ck({typed:t,matrix:r});return t(Tye,{"number, number":KJ,"SparseMatrix, number | BigNumber":t.referToSelf(m=>(v,A)=>n(A,0)?v.clone():f(v,A,m,!1)),"DenseMatrix, number | BigNumber":t.referToSelf(m=>(v,A)=>n(A,0)?v.clone():d(v,A,m,!1)),"number | BigNumber, SparseMatrix":t.referToSelf(m=>(v,A)=>n(v,0)?i(A.size(),A.storage()):c(A,v,m,!0)),"number | BigNumber, DenseMatrix":t.referToSelf(m=>(v,A)=>n(v,0)?i(A.size(),A.storage()):d(A,v,m,!0))},h,p({SS:u,DS:s,SD:l}))});var Nye="and",kst=["typed","matrix","equalScalar","zeros","not","concat"],Dk=X(Nye,kst,e=>{var{typed:t,matrix:r,equalScalar:n,zeros:i,not:a,concat:o}=e,s=Zo({typed:t,equalScalar:n}),l=B1({typed:t,equalScalar:n}),u=wi({typed:t,equalScalar:n}),c=Jo({typed:t}),f=Pr({typed:t,matrix:r,concat:o});return t(Nye,{"number, number":nZ,"Complex, Complex":function(p,h){return(p.re!==0||p.im!==0)&&(h.re!==0||h.im!==0)},"BigNumber, BigNumber":function(p,h){return!p.isZero()&&!h.isZero()&&!p.isNaN()&&!h.isNaN()},"Unit, Unit":t.referToSelf(d=>(p,h)=>d(p.value||0,h.value||0)),"SparseMatrix, any":t.referToSelf(d=>(p,h)=>a(h)?i(p.size(),p.storage()):u(p,h,d,!1)),"DenseMatrix, any":t.referToSelf(d=>(p,h)=>a(h)?i(p.size(),p.storage()):c(p,h,d,!1)),"any, SparseMatrix":t.referToSelf(d=>(p,h)=>a(p)?i(p.size(),p.storage()):u(h,p,d,!0)),"any, DenseMatrix":t.referToSelf(d=>(p,h)=>a(p)?i(p.size(),p.storage()):c(h,p,d,!0)),"Array, any":t.referToSelf(d=>(p,h)=>d(r(p),h).valueOf()),"any, Array":t.referToSelf(d=>(p,h)=>d(p,r(h)).valueOf())},f({SS:l,DS:s}))});var c8="compare",Cst=["typed","config","matrix","equalScalar","BigNumber","Fraction","DenseMatrix","concat"],f8=X(c8,Cst,e=>{var{typed:t,config:r,equalScalar:n,matrix:i,BigNumber:a,Fraction:o,DenseMatrix:s,concat:l}=e,u=ra({typed:t}),c=I1({typed:t,equalScalar:n}),f=zn({typed:t,DenseMatrix:s}),d=Pr({typed:t,matrix:i,concat:l}),p=Yp({typed:t});return t(c8,Dst({typed:t,config:r}),{"boolean, boolean":function(m,v){return m===v?0:m>v?1:-1},"BigNumber, BigNumber":function(m,v){return gs(m,v,r.epsilon)?new a(0):new a(m.cmp(v))},"Fraction, Fraction":function(m,v){return new o(m.compare(v))},"Complex, Complex":function(){throw new TypeError("No ordering relation is defined for complex numbers")}},p,d({SS:c,DS:u,Ss:f}))}),Dst=X(c8,["typed","config"],e=>{var{typed:t,config:r}=e;return t(c8,{"number, number":function(i,a){return go(i,a,r.epsilon)?0:i>a?1:-1}})});var Ux=ge(Oye(),1);var Fye="compareNatural",Tst=["typed","compare"],d8=X(Fye,Tst,e=>{var{typed:t,compare:r}=e,n=r.signatures["boolean,boolean"];return t(Fye,{"any, any":i});function i(l,u){var c=yn(l),f=yn(u),d;if((c==="number"||c==="BigNumber"||c==="Fraction")&&(f==="number"||f==="BigNumber"||f==="Fraction"))return d=r(l,u),d.toString()!=="0"?d>0?1:-1:(0,Ux.default)(c,f);var p=["Array","DenseMatrix","SparseMatrix"];if(p.includes(c)||p.includes(f))return d=a(i,l,u),d!==0?d:(0,Ux.default)(c,f);if(c!==f)return(0,Ux.default)(c,f);if(c==="Complex")return Nst(l,u);if(c==="Unit")return l.equalBase(u)?i(l.value,u.value):o(i,l.formatUnits(),u.formatUnits());if(c==="boolean")return n(l,u);if(c==="string")return(0,Ux.default)(l,u);if(c==="Object")return s(i,l,u);if(c==="null"||c==="undefined")return 0;throw new TypeError('Unsupported type of value "'+c+'"')}function a(l,u,c){return _d(u)&&_d(c)?o(l,u.toJSON().values,c.toJSON().values):_d(u)?a(l,u.toArray(),c):_d(c)?a(l,u,c.toArray()):E0(u)?a(l,u.toJSON().data,c):E0(c)?a(l,u,c.toJSON().data):Array.isArray(u)?Array.isArray(c)?o(l,u,c):a(l,u,[c]):a(l,[u],c)}function o(l,u,c){for(var f=0,d=Math.min(u.length,c.length);f<d;f++){var p=l(u[f],c[f]);if(p!==0)return p}return u.length>c.length?1:u.length<c.length?-1:0}function s(l,u,c){var f=Object.keys(u),d=Object.keys(c);f.sort(Ux.default),d.sort(Ux.default);var p=o(l,f,d);if(p!==0)return p;for(var h=0;h<f.length;h++){var m=l(u[f[h]],c[d[h]]);if(m!==0)return m}return 0}});function Nst(e,t){return e.re>t.re?1:e.re<t.re?-1:e.im>t.im?1:e.im<t.im?-1:0}var jye="compareText",Mst=["typed","matrix","concat"];ZI.signature="any, any";var p8=X(jye,Mst,e=>{var{typed:t,matrix:r,concat:n}=e,i=Pr({typed:t,matrix:r,concat:n});return t(jye,ZI,i({elop:ZI,Ds:!0}))});var m8="equal",Ost=["typed","matrix","equalScalar","DenseMatrix","concat"],h8=X(m8,Ost,e=>{var{typed:t,matrix:r,equalScalar:n,DenseMatrix:i,concat:a}=e,o=ra({typed:t}),s=Ps({typed:t,DenseMatrix:i}),l=zn({typed:t,DenseMatrix:i}),u=Pr({typed:t,matrix:r,concat:a});return t(m8,Fst({typed:t,equalScalar:n}),u({elop:n,SS:s,DS:o,Ss:l}))}),Fst=X(m8,["typed","equalScalar"],e=>{var{typed:t,equalScalar:r}=e;return t(m8,{"any, any":function(i,a){return i===null?a===null:a===null?i===null:i===void 0?a===void 0:a===void 0?i===void 0:r(i,a)}})});var Pye="equalText",jst=["typed","compareText","isZero"],g8=X(Pye,jst,e=>{var{typed:t,compareText:r,isZero:n}=e;return t(Pye,{"any, any":function(a,o){return n(r(a,o))}})});var A8="smaller",Pst=["typed","config","matrix","DenseMatrix","concat"],v8=X(A8,Pst,e=>{var{typed:t,config:r,matrix:n,DenseMatrix:i,concat:a}=e,o=ra({typed:t}),s=Ps({typed:t,DenseMatrix:i}),l=zn({typed:t,DenseMatrix:i}),u=Pr({typed:t,matrix:n,concat:a}),c=Yp({typed:t});return t(A8,_st({typed:t,config:r}),{"boolean, boolean":(f,d)=>f<d,"BigNumber, BigNumber":function(d,p){return d.lt(p)&&!gs(d,p,r.epsilon)},"Fraction, Fraction":(f,d)=>f.compare(d)===-1,"Complex, Complex":function(d,p){throw new TypeError("No ordering relation is defined for complex numbers")}},c,u({SS:s,DS:o,Ss:l}))}),_st=X(A8,["typed","config"],e=>{var{typed:t,config:r}=e;return t(A8,{"number, number":function(i,a){return i<a&&!go(i,a,r.epsilon)}})});var y8="smallerEq",Ist=["typed","config","matrix","DenseMatrix","concat"],b8=X(y8,Ist,e=>{var{typed:t,config:r,matrix:n,DenseMatrix:i,concat:a}=e,o=ra({typed:t}),s=Ps({typed:t,DenseMatrix:i}),l=zn({typed:t,DenseMatrix:i}),u=Pr({typed:t,matrix:n,concat:a}),c=Yp({typed:t});return t(y8,Bst({typed:t,config:r}),{"boolean, boolean":(f,d)=>f<=d,"BigNumber, BigNumber":function(d,p){return d.lte(p)||gs(d,p,r.epsilon)},"Fraction, Fraction":(f,d)=>f.compare(d)!==1,"Complex, Complex":function(){throw new TypeError("No ordering relation is defined for complex numbers")}},c,u({SS:s,DS:o,Ss:l}))}),Bst=X(y8,["typed","config"],e=>{var{typed:t,config:r}=e;return t(y8,{"number, number":function(i,a){return i<=a||go(i,a,r.epsilon)}})});var x8="larger",Lst=["typed","config","matrix","DenseMatrix","concat"],w8=X(x8,Lst,e=>{var{typed:t,config:r,matrix:n,DenseMatrix:i,concat:a}=e,o=ra({typed:t}),s=Ps({typed:t,DenseMatrix:i}),l=zn({typed:t,DenseMatrix:i}),u=Pr({typed:t,matrix:n,concat:a}),c=Yp({typed:t});return t(x8,Rst({typed:t,config:r}),{"boolean, boolean":(f,d)=>f>d,"BigNumber, BigNumber":function(d,p){return d.gt(p)&&!gs(d,p,r.epsilon)},"Fraction, Fraction":(f,d)=>f.compare(d)===1,"Complex, Complex":function(){throw new TypeError("No ordering relation is defined for complex numbers")}},c,u({SS:s,DS:o,Ss:l}))}),Rst=X(x8,["typed","config"],e=>{var{typed:t,config:r}=e;return t(x8,{"number, number":function(i,a){return i>a&&!go(i,a,r.epsilon)}})});var S8="largerEq",qst=["typed","config","matrix","DenseMatrix","concat"],E8=X(S8,qst,e=>{var{typed:t,config:r,matrix:n,DenseMatrix:i,concat:a}=e,o=ra({typed:t}),s=Ps({typed:t,DenseMatrix:i}),l=zn({typed:t,DenseMatrix:i}),u=Pr({typed:t,matrix:n,concat:a}),c=Yp({typed:t});return t(S8,$st({typed:t,config:r}),{"boolean, boolean":(f,d)=>f>=d,"BigNumber, BigNumber":function(d,p){return d.gte(p)||gs(d,p,r.epsilon)},"Fraction, Fraction":(f,d)=>f.compare(d)!==-1,"Complex, Complex":function(){throw new TypeError("No ordering relation is defined for complex numbers")}},c,u({SS:s,DS:o,Ss:l}))}),$st=X(S8,["typed","config"],e=>{var{typed:t,config:r}=e;return t(S8,{"number, number":function(i,a){return i>=a||go(i,a,r.epsilon)}})});var _ye="deepEqual",zst=["typed","equal"],k8=X(_ye,zst,e=>{var{typed:t,equal:r}=e;return t(_ye,{"any, any":function(a,o){return n(a.valueOf(),o.valueOf())}});function n(i,a){if(Array.isArray(i))if(Array.isArray(a)){var o=i.length;if(o!==a.length)return!1;for(var s=0;s<o;s++)if(!n(i[s],a[s]))return!1;return!0}else return!1;else return Array.isArray(a)?!1:r(i,a)}});var C8="unequal",Ust=["typed","config","equalScalar","matrix","DenseMatrix","concat"],D8=X(C8,Ust,e=>{var{typed:t,config:r,equalScalar:n,matrix:i,DenseMatrix:a,concat:o}=e,s=ra({typed:t}),l=Ps({typed:t,DenseMatrix:a}),u=zn({typed:t,DenseMatrix:a}),c=Pr({typed:t,matrix:i,concat:o});return t(C8,Hst({typed:t,equalScalar:n}),c({elop:f,SS:l,DS:s,Ss:u}));function f(d,p){return!n(d,p)}}),Hst=X(C8,["typed","equalScalar"],e=>{var{typed:t,equalScalar:r}=e;return t(C8,{"any, any":function(i,a){return i===null?a!==null:a===null?i!==null:i===void 0?a!==void 0:a===void 0?i!==void 0:!r(i,a)}})});var Iye="partitionSelect",Vst=["typed","isNumeric","isNaN","compare"],T8=X(Iye,Vst,e=>{var{typed:t,isNumeric:r,isNaN:n,compare:i}=e,a=i,o=(u,c)=>-i(u,c);return t(Iye,{"Array | Matrix, number":function(c,f){return s(c,f,a)},"Array | Matrix, number, string":function(c,f,d){if(d==="asc")return s(c,f,a);if(d==="desc")return s(c,f,o);throw new Error('Compare string must be "asc" or "desc"')},"Array | Matrix, number, function":s});function s(u,c,f){if(!Ot(c)||c<0)throw new Error("k must be a non-negative integer");if(jt(u)){var d=u.size();if(d.length>1)throw new Error("Only one dimensional matrices supported");return l(u.valueOf(),c,f)}if(Array.isArray(u))return l(u,c,f)}function l(u,c,f){if(c>=u.length)throw new Error("k out of bounds");for(var d=0;d<u.length;d++)if(r(u[d])&&n(u[d]))return u[d];for(var p=0,h=u.length-1;p<h;){for(var m=p,v=h,A=u[Math.floor(Math.random()*(h-p+1))+p];m<v;)if(f(u[m],A)>=0){var x=u[v];u[v]=u[m],u[m]=x,--v}else++m;f(u[m],A)>0&&--m,c<=m?h=m:p=m+1}return u[c]}});var Bye="sort",Gst=["typed","matrix","compare","compareNatural"],N8=X(Bye,Gst,e=>{var{typed:t,matrix:r,compare:n,compareNatural:i}=e,a=n,o=(c,f)=>-n(c,f);return t(Bye,{Array:function(f){return l(f),f.sort(a)},Matrix:function(f){return u(f),r(f.toArray().sort(a),f.storage())},"Array, function":function(f,d){return l(f),f.sort(d)},"Matrix, function":function(f,d){return u(f),r(f.toArray().sort(d),f.storage())},"Array, string":function(f,d){return l(f),f.sort(s(d))},"Matrix, string":function(f,d){return u(f),r(f.toArray().sort(s(d)),f.storage())}});function s(c){if(c==="asc")return a;if(c==="desc")return o;if(c==="natural")return i;throw new Error('String "asc", "desc", or "natural" expected')}function l(c){if(gr(c).length!==1)throw new Error("One dimensional array expected")}function u(c){if(c.size().length!==1)throw new Error("One dimensional matrix expected")}});var Lye="max",Wst=["typed","config","numeric","larger"],Tk=X(Lye,Wst,e=>{var{typed:t,config:r,numeric:n,larger:i}=e;return t(Lye,{"Array | Matrix":o,"Array | Matrix, number | BigNumber":function(l,u){return P1(l,u.valueOf(),a)},"...":function(l){if(Qp(l))throw new TypeError("Scalar values expected in function max");return o(l)}});function a(s,l){try{return i(s,l)?s:l}catch(u){throw No(u,"max",l)}}function o(s){var l;if(ac(s,function(u){try{isNaN(u)&&typeof u=="number"?l=NaN:(l===void 0||i(u,l))&&(l=u)}catch(c){throw No(c,"max",u)}}),l===void 0)throw new Error("Cannot calculate max of an empty array");return typeof l=="string"&&(l=n(l,r.number)),l}});var Rye="min",Qst=["typed","config","numeric","smaller"],Nk=X(Rye,Qst,e=>{var{typed:t,config:r,numeric:n,smaller:i}=e;return t(Rye,{"Array | Matrix":o,"Array | Matrix, number | BigNumber":function(l,u){return P1(l,u.valueOf(),a)},"...":function(l){if(Qp(l))throw new TypeError("Scalar values expected in function min");return o(l)}});function a(s,l){try{return i(s,l)?s:l}catch(u){throw No(u,"min",l)}}function o(s){var l;if(ac(s,function(u){try{isNaN(u)&&typeof u=="number"?l=NaN:(l===void 0||i(u,l))&&(l=u)}catch(c){throw No(c,"min",u)}}),l===void 0)throw new Error("Cannot calculate min of an empty array");return typeof l=="string"&&(l=n(l,r.number)),l}});var Yst="ImmutableDenseMatrix",Xst=["smaller","DenseMatrix"],M8=X(Yst,Xst,e=>{var{smaller:t,DenseMatrix:r}=e;function n(i,a){if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");if(a&&!Ya(a))throw new Error("Invalid datatype: "+a);if(jt(i)||mn(i)){var o=new r(i,a);this._data=o._data,this._size=o._size,this._datatype=o._datatype,this._min=null,this._max=null}else if(i&&mn(i.data)&&mn(i.size))this._data=i.data,this._size=i.size,this._datatype=i.datatype,this._min=typeof i.min<"u"?i.min:null,this._max=typeof i.max<"u"?i.max:null;else{if(i)throw new TypeError("Unsupported type of data ("+yn(i)+")");this._data=[],this._size=[0],this._datatype=a,this._min=null,this._max=null}}return n.prototype=new r,n.prototype.type="ImmutableDenseMatrix",n.prototype.isImmutableDenseMatrix=!0,n.prototype.subset=function(i){switch(arguments.length){case 1:{var a=r.prototype.subset.call(this,i);return jt(a)?new n({data:a._data,size:a._size,datatype:a._datatype}):a}case 2:case 3:throw new Error("Cannot invoke set subset on an Immutable Matrix instance");default:throw new SyntaxError("Wrong number of arguments")}},n.prototype.set=function(){throw new Error("Cannot invoke set on an Immutable Matrix instance")},n.prototype.resize=function(){throw new Error("Cannot invoke resize on an Immutable Matrix instance")},n.prototype.reshape=function(){throw new Error("Cannot invoke reshape on an Immutable Matrix instance")},n.prototype.clone=function(){return new n({data:nr(this._data),size:nr(this._size),datatype:this._datatype})},n.prototype.toJSON=function(){return{mathjs:"ImmutableDenseMatrix",data:this._data,size:this._size,datatype:this._datatype}},n.fromJSON=function(i){return new n(i)},n.prototype.swapRows=function(){throw new Error("Cannot invoke swapRows on an Immutable Matrix instance")},n.prototype.min=function(){if(this._min===null){var i=null;this.forEach(function(a){(i===null||t(a,i))&&(i=a)}),this._min=i!==null?i:void 0}return this._min},n.prototype.max=function(){if(this._max===null){var i=null;this.forEach(function(a){(i===null||t(i,a))&&(i=a)}),this._max=i!==null?i:void 0}return this._max},n},{isClass:!0});var Kst="Index",Jst=["ImmutableDenseMatrix","getMatrixDataType"],O8=X(Kst,Jst,e=>{var{ImmutableDenseMatrix:t,getMatrixDataType:r}=e;function n(a){if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");this._dimensions=[],this._sourceSize=[],this._isScalar=!0;for(var o=0,s=arguments.length;o<s;o++){var l=arguments[o],u=mn(l),c=jt(l),f=null;if(C1(l))this._dimensions.push(l),this._isScalar=!1;else if(u||c){var d=void 0;r(l)==="boolean"?(u&&(d=i(qye(l).valueOf())),c&&(d=i(qye(l._data).valueOf())),f=l.valueOf().length):d=i(l.valueOf()),this._dimensions.push(d);var p=d.size();(p.length!==1||p[0]!==1||f!==null)&&(this._isScalar=!1)}else if(typeof l=="number")this._dimensions.push(i([l]));else if(typeof l=="string")this._dimensions.push(l);else throw new TypeError("Dimension must be an Array, Matrix, number, string, or Range");this._sourceSize.push(f)}}n.prototype.type="Index",n.prototype.isIndex=!0;function i(a){for(var o=0,s=a.length;o<s;o++)if(typeof a[o]!="number"||!Ot(a[o]))throw new TypeError("Index parameters must be positive integer numbers");return new t(a)}return n.prototype.clone=function(){var a=new n;return a._dimensions=nr(this._dimensions),a._isScalar=this._isScalar,a._sourceSize=this._sourceSize,a},n.create=function(a){var o=new n;return n.apply(o,a),o},n.prototype.size=function(){for(var a=[],o=0,s=this._dimensions.length;o<s;o++){var l=this._dimensions[o];a[o]=typeof l=="string"?1:l.size()[0]}return a},n.prototype.max=function(){for(var a=[],o=0,s=this._dimensions.length;o<s;o++){var l=this._dimensions[o];a[o]=typeof l=="string"?l:l.max()}return a},n.prototype.min=function(){for(var a=[],o=0,s=this._dimensions.length;o<s;o++){var l=this._dimensions[o];a[o]=typeof l=="string"?l:l.min()}return a},n.prototype.forEach=function(a){for(var o=0,s=this._dimensions.length;o<s;o++)a(this._dimensions[o],o,this)},n.prototype.dimension=function(a){return this._dimensions[a]||null},n.prototype.isObjectProperty=function(){return this._dimensions.length===1&&typeof this._dimensions[0]=="string"},n.prototype.getObjectProperty=function(){return this.isObjectProperty()?this._dimensions[0]:null},n.prototype.isScalar=function(){return this._isScalar},n.prototype.toArray=function(){for(var a=[],o=0,s=this._dimensions.length;o<s;o++){var l=this._dimensions[o];a.push(typeof l=="string"?l:l.toArray())}return a},n.prototype.valueOf=n.prototype.toArray,n.prototype.toString=function(){for(var a=[],o=0,s=this._dimensions.length;o<s;o++){var l=this._dimensions[o];typeof l=="string"?a.push(JSON.stringify(l)):a.push(l.toString())}return"["+a.join(", ")+"]"},n.prototype.toJSON=function(){return{mathjs:"Index",dimensions:this._dimensions}},n.fromJSON=function(a){return n.create(a.dimensions)},n},{isClass:!0});function qye(e){var t=[];return e.forEach((r,n)=>{r&&t.push(n)}),t}var Zst="FibonacciHeap",elt=["smaller","larger"],F8=X(Zst,elt,e=>{var{smaller:t,larger:r}=e,n=1/Math.log((1+Math.sqrt(5))/2);function i(){if(!(this instanceof i))throw new SyntaxError("Constructor must be called with the new operator");this._minimum=null,this._size=0}i.prototype.type="FibonacciHeap",i.prototype.isFibonacciHeap=!0,i.prototype.insert=function(c,f){var d={key:c,value:f,degree:0};if(this._minimum){var p=this._minimum;d.left=p,d.right=p.right,p.right=d,d.right.left=d,t(c,p.key)&&(this._minimum=d)}else d.left=d,d.right=d,this._minimum=d;return this._size++,d},i.prototype.size=function(){return this._size},i.prototype.clear=function(){this._minimum=null,this._size=0},i.prototype.isEmpty=function(){return this._size===0},i.prototype.extractMinimum=function(){var c=this._minimum;if(c===null)return c;for(var f=this._minimum,d=c.degree,p=c.child;d>0;){var h=p.right;p.left.right=p.right,p.right.left=p.left,p.left=f,p.right=f.right,f.right=p,p.right.left=p,p.parent=null,p=h,d--}return c.left.right=c.right,c.right.left=c.left,c===c.right?f=null:(f=c.right,f=u(f,this._size)),this._size--,this._minimum=f,c},i.prototype.remove=function(c){this._minimum=a(this._minimum,c,-1),this.extractMinimum()};function a(c,f,d){f.key=d;var p=f.parent;return p&&t(f.key,p.key)&&(o(c,f,p),s(c,p)),t(f.key,c.key)&&(c=f),c}function o(c,f,d){f.left.right=f.right,f.right.left=f.left,d.degree--,d.child===f&&(d.child=f.right),d.degree===0&&(d.child=null),f.left=c,f.right=c.right,c.right=f,f.right.left=f,f.parent=null,f.mark=!1}function s(c,f){var d=f.parent;!d||(f.mark?(o(c,f,d),s(d)):f.mark=!0)}var l=function(f,d){f.left.right=f.right,f.right.left=f.left,f.parent=d,d.child?(f.left=d.child,f.right=d.child.right,d.child.right=f,f.right.left=f):(d.child=f,f.right=f,f.left=f),d.degree++,f.mark=!1};function u(c,f){var d=Math.floor(Math.log(f)*n)+1,p=new Array(d),h=0,m=c;if(m)for(h++,m=m.right;m!==c;)h++,m=m.right;for(var v;h>0;){for(var A=m.degree,x=m.right;v=p[A],!!v;){if(r(m.key,v.key)){var g=v;v=m,m=g}l(v,m),p[A]=null,A++}p[A]=m,m=x,h--}c=null;for(var w=0;w<d;w++)v=p[w],v&&(c?(v.left.right=v.right,v.right.left=v.left,v.left=c,v.right=c.right,c.right=v,v.right.left=v,t(v.key,c.key)&&(c=v)):c=v);return c}return i},{isClass:!0});var tlt="Spa",rlt=["addScalar","equalScalar","FibonacciHeap"],j8=X(tlt,rlt,e=>{var{addScalar:t,equalScalar:r,FibonacciHeap:n}=e;function i(){if(!(this instanceof i))throw new SyntaxError("Constructor must be called with the new operator");this._values=[],this._heap=new n}return i.prototype.type="Spa",i.prototype.isSpa=!0,i.prototype.set=function(a,o){if(this._values[a])this._values[a].value=o;else{var s=this._heap.insert(a,o);this._values[a]=s}},i.prototype.get=function(a){var o=this._values[a];return o?o.value:0},i.prototype.accumulate=function(a,o){var s=this._values[a];s?s.value=t(s.value,o):(s=this._heap.insert(a,o),this._values[a]=s)},i.prototype.forEach=function(a,o,s){var l=this._heap,u=this._values,c=[],f=l.extractMinimum();for(f&&c.push(f);f&&f.key<=o;)f.key>=a&&(r(f.value,0)||s(f.key,f.value,this)),f=l.extractMinimum(),f&&c.push(f);for(var d=0;d<c.length;d++){var p=c[d];f=l.insert(p.key,p.value),u[f.key]=f}},i.prototype.swap=function(a,o){var s=this._values[a],l=this._values[o];if(!s&&l)s=this._heap.insert(a,l.value),this._heap.remove(l),this._values[a]=s,this._values[o]=void 0;else if(s&&!l)l=this._heap.insert(o,s.value),this._heap.remove(s),this._values[o]=l,this._values[a]=void 0;else if(s&&l){var u=s.value;s.value=l.value,l.value=u}},i},{isClass:!0});var $ye=$x(function(e){return new e(1).exp()},{hasher:P8}),zye=$x(function(e){return new e(1).plus(new e(5).sqrt()).div(2)},{hasher:P8}),y3=$x(function(e){return e.acos(-1)},{hasher:P8}),Uye=$x(function(e){return y3(e).times(2)},{hasher:P8});function P8(e){return e[0].precision}function Hye(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function OZ(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Hye(Object(r),!0).forEach(function(n){ai(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Hye(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}var nlt="Unit",ilt=["?on","config","addScalar","subtractScalar","multiplyScalar","divideScalar","pow","abs","fix","round","equal","isNumeric","format","number","Complex","BigNumber","Fraction"],_8=X(nlt,ilt,e=>{var{on:t,config:r,addScalar:n,subtractScalar:i,multiplyScalar:a,divideScalar:o,pow:s,abs:l,fix:u,round:c,equal:f,isNumeric:d,format:p,number:h,Complex:m,BigNumber:v,Fraction:A}=e,x=h;function g(z,U){if(!(this instanceof g))throw new Error("Constructor must be called with the new operator");if(!(z==null||d(z)||ol(z)))throw new TypeError("First parameter in Unit constructor must be number, BigNumber, Fraction, Complex, or undefined");if(this.fixPrefix=!1,this.skipAutomaticSimplification=!0,U===void 0)this.units=[],this.dimensions=L.map(Y=>0);else if(typeof U=="string"){var V=g.parse(U);this.units=V.units,this.dimensions=V.dimensions}else if(hs(U)&&U.value===null)this.fixPrefix=U.fixPrefix,this.skipAutomaticSimplification=U.skipAutomaticSimplification,this.dimensions=U.dimensions.slice(0),this.units=U.units.map(Y=>mi({},Y));else throw new TypeError("Second parameter in Unit constructor must be a string or valueless Unit");this.value=this._normalize(z)}Object.defineProperty(g,"name",{value:"Unit"}),g.prototype.constructor=g,g.prototype.type="Unit",g.prototype.isUnit=!0;var w,b,y;function S(){for(;y===" "||y===" ";)k()}function T(z){return z>="0"&&z<="9"||z==="."}function D(z){return z>="0"&&z<="9"}function k(){b++,y=w.charAt(b)}function M(z){b=z,y=w.charAt(b)}function E(){var z="",U=b;if(y==="+"?k():y==="-"&&(z+=y,k()),!T(y))return M(U),null;if(y==="."){if(z+=y,k(),!D(y))return M(U),null}else{for(;D(y);)z+=y,k();y==="."&&(z+=y,k())}for(;D(y);)z+=y,k();if(y==="E"||y==="e"){var V="",Y=b;if(V+=y,k(),(y==="+"||y==="-")&&(V+=y,k()),!D(y))return M(Y),z;for(z=z+V;D(y);)z+=y,k()}return z}function O(){for(var z="";D(y)||g.isValidAlpha(y);)z+=y,k();var U=z.charAt(0);return g.isValidAlpha(U)?z:null}function P(z){return y===z?(k(),z):null}g.parse=function(z,U){if(U=U||{},w=z,b=-1,y="",typeof w!="string")throw new TypeError("Invalid argument in Unit.parse, string expected");var V=new g;V.units=[];var Y=1,Z=!1;k(),S();var re=E(),he=null;if(re){if(r.number==="BigNumber")he=new v(re);else if(r.number==="Fraction")try{he=new A(re)}catch{he=parseFloat(re)}else he=parseFloat(re);S(),P("*")?(Y=1,Z=!0):P("/")&&(Y=-1,Z=!0)}for(var fe=[],ke=1;;){for(S();y==="(";)fe.push(Y),ke*=Y,Y=1,k(),S();var se=void 0;if(y){var Le=y;if(se=O(),se===null)throw new SyntaxError('Unexpected "'+Le+'" in "'+w+'" at index '+b.toString())}else break;var Ne=_(se);if(Ne===null)throw new SyntaxError('Unit "'+se+'" not found.');var Ge=Y*ke;if(S(),P("^")){S();var Ye=E();if(Ye===null)throw new SyntaxError('In "'+z+'", "^" must be followed by a floating-point number');Ge*=Ye}V.units.push({unit:Ne.unit,prefix:Ne.prefix,power:Ge});for(var ve=0;ve<L.length;ve++)V.dimensions[ve]+=(Ne.unit.dimensions[ve]||0)*Ge;for(S();y===")";){if(fe.length===0)throw new SyntaxError('Unmatched ")" in "'+w+'" at index '+b.toString());ke/=fe.pop(),k(),S()}if(Z=!1,P("*")?(Y=1,Z=!0):P("/")?(Y=-1,Z=!0):Y=1,Ne.unit.base){var Oe=Ne.unit.base.key;le.auto[Oe]={unit:Ne.unit,prefix:Ne.prefix}}}if(S(),y)throw new SyntaxError('Could not parse: "'+z+'"');if(Z)throw new SyntaxError('Trailing characters: "'+z+'"');if(fe.length!==0)throw new SyntaxError('Unmatched "(" in "'+w+'"');if(V.units.length===0&&!U.allowNoUnits)throw new SyntaxError('"'+z+'" contains no units');return V.value=he!==void 0?V._normalize(he):null,V},g.prototype.clone=function(){var z=new g;z.fixPrefix=this.fixPrefix,z.skipAutomaticSimplification=this.skipAutomaticSimplification,z.value=nr(this.value),z.dimensions=this.dimensions.slice(0),z.units=[];for(var U=0;U<this.units.length;U++){z.units[U]={};for(var V in this.units[U])Pt(this.units[U],V)&&(z.units[U][V]=this.units[U][V])}return z},g.prototype.valueType=function(){return yn(this.value)},g.prototype._isDerived=function(){return this.units.length===0?!1:this.units.length>1||Math.abs(this.units[0].power-1)>1e-15},g.prototype._normalize=function(z){if(z==null||this.units.length===0)return z;for(var U=z,V=g._getNumberConverter(yn(z)),Y=0;Y<this.units.length;Y++){var Z=V(this.units[Y].unit.value),re=V(this.units[Y].prefix.value),he=V(this.units[Y].power);U=a(U,s(a(Z,re),he))}return U},g.prototype._denormalize=function(z,U){if(z==null||this.units.length===0)return z;for(var V=z,Y=g._getNumberConverter(yn(z)),Z=0;Z<this.units.length;Z++){var re=Y(this.units[Z].unit.value),he=Y(this.units[Z].prefix.value),fe=Y(this.units[Z].power);V=o(V,s(a(re,he),fe))}return V};var _=$x(z=>{if(Pt(q,z)){var U=q[z],V=U.prefixes[""];return{unit:U,prefix:V}}for(var Y in q)if(Pt(q,Y)&&cve(z,Y)){var Z=q[Y],re=z.length-Y.length,he=z.substring(0,re),fe=Pt(Z.prefixes,he)?Z.prefixes[he]:void 0;if(fe!==void 0)return{unit:Z,prefix:fe}}return null},{hasher:z=>z[0],limit:100});g.isValuelessUnit=function(z){return _(z)!==null},g.prototype.hasBase=function(z){if(typeof z=="string"&&(z=I[z]),!z)return!1;for(var U=0;U<L.length;U++)if(Math.abs((this.dimensions[U]||0)-(z.dimensions[U]||0))>1e-12)return!1;return!0},g.prototype.equalBase=function(z){for(var U=0;U<L.length;U++)if(Math.abs((this.dimensions[U]||0)-(z.dimensions[U]||0))>1e-12)return!1;return!0},g.prototype.equals=function(z){return this.equalBase(z)&&f(this.value,z.value)},g.prototype.multiply=function(z){for(var U=this.clone(),V=hs(z)?z:new g(z),Y=0;Y<L.length;Y++)U.dimensions[Y]=(this.dimensions[Y]||0)+(V.dimensions[Y]||0);for(var Z=0;Z<V.units.length;Z++){var re=OZ({},V.units[Z]);U.units.push(re)}if(this.value!==null||V.value!==null){var he=this.value===null?this._normalize(1):this.value,fe=V.value===null?V._normalize(1):V.value;U.value=a(he,fe)}else U.value=null;return hs(z)&&(U.skipAutomaticSimplification=!1),B(U)},g.prototype.divideInto=function(z){return new g(z).divide(this)},g.prototype.divide=function(z){for(var U=this.clone(),V=hs(z)?z:new g(z),Y=0;Y<L.length;Y++)U.dimensions[Y]=(this.dimensions[Y]||0)-(V.dimensions[Y]||0);for(var Z=0;Z<V.units.length;Z++){var re=OZ(OZ({},V.units[Z]),{},{power:-V.units[Z].power});U.units.push(re)}if(this.value!==null||V.value!==null){var he=this.value===null?this._normalize(1):this.value,fe=V.value===null?V._normalize(1):V.value;U.value=o(he,fe)}else U.value=null;return hs(z)&&(U.skipAutomaticSimplification=!1),B(U)},g.prototype.pow=function(z){for(var U=this.clone(),V=0;V<L.length;V++)U.dimensions[V]=(this.dimensions[V]||0)*z;for(var Y=0;Y<U.units.length;Y++)U.units[Y].power*=z;return U.value!==null?U.value=s(U.value,z):U.value=null,U.skipAutomaticSimplification=!1,B(U)};function B(z){return z.equalBase(I.NONE)&&z.value!==null&&!r.predictable?z.value:z}g.prototype.abs=function(){var z=this.clone();if(z.value!==null)if(z._isDerived()||z.units.length===0||z.units[0].unit.offset===0)z.value=l(z.value);else{var U=z._numberConverter(),V=U(z.units[0].unit.value),Y=U(z.units[0].unit.offset),Z=a(V,Y);z.value=i(l(n(z.value,Z)),Z)}for(var re in z.units)(z.units[re].unit.name==="VA"||z.units[re].unit.name==="VAR")&&(z.units[re].unit=q.W);return z},g.prototype.to=function(z){var U=this.value===null?this._normalize(1):this.value,V;if(typeof z=="string")V=g.parse(z);else if(hs(z))V=z.clone();else throw new Error("String or Unit expected as parameter");if(!this.equalBase(V))throw new Error("Units do not match ('".concat(V.toString(),"' != '").concat(this.toString(),"')"));if(V.value!==null)throw new Error("Cannot convert to a unit with a value");if(this.value===null||this._isDerived()||this.units.length===0||V.units.length===0||this.units[0].unit.offset===V.units[0].unit.offset)V.value=nr(U);else{var Y=g._getNumberConverter(yn(U)),Z=this.units[0].unit.value,re=this.units[0].unit.offset,he=a(Z,re),fe=V.units[0].unit.value,ke=V.units[0].unit.offset,se=a(fe,ke);V.value=n(U,Y(i(he,se)))}return V.fixPrefix=!0,V.skipAutomaticSimplification=!0,V},g.prototype.toNumber=function(z){return x(this.toNumeric(z))},g.prototype.toNumeric=function(z){var U;return z?U=this.to(z):U=this.clone(),U._isDerived()||U.units.length===0?U._denormalize(U.value):U._denormalize(U.value,U.units[0].prefix.value)},g.prototype.toString=function(){return this.format()},g.prototype.toJSON=function(){return{mathjs:"Unit",value:this._denormalize(this.value),unit:this.units.length>0?this.formatUnits():null,fixPrefix:this.fixPrefix}},g.fromJSON=function(z){var U,V=new g(z.value,(U=z.unit)!==null&&U!==void 0?U:void 0);return V.fixPrefix=z.fixPrefix||!1,V},g.prototype.valueOf=g.prototype.toString,g.prototype.simplify=function(){var z=this.clone(),U=[],V;for(var Y in pe)if(Pt(pe,Y)&&z.hasBase(I[Y])){V=Y;break}if(V==="NONE")z.units=[];else{var Z;if(V&&Pt(pe,V)&&(Z=pe[V]),Z)z.units=[{unit:Z.unit,prefix:Z.prefix,power:1}];else{for(var re=!1,he=0;he<L.length;he++){var fe=L[he];Math.abs(z.dimensions[he]||0)>1e-12&&(Pt(pe,fe)?U.push({unit:pe[fe].unit,prefix:pe[fe].prefix,power:z.dimensions[he]||0}):re=!0)}U.length<z.units.length&&!re&&(z.units=U)}}return z},g.prototype.toSI=function(){for(var z=this.clone(),U=[],V=0;V<L.length;V++){var Y=L[V];if(Math.abs(z.dimensions[V]||0)>1e-12)if(Pt(le.si,Y))U.push({unit:le.si[Y].unit,prefix:le.si[Y].prefix,power:z.dimensions[V]||0});else throw new Error("Cannot express custom unit "+Y+" in SI units")}return z.units=U,z.fixPrefix=!0,z.skipAutomaticSimplification=!0,this.value!==null?(z.value=null,this.to(z)):z},g.prototype.formatUnits=function(){for(var z="",U="",V=0,Y=0,Z=0;Z<this.units.length;Z++)this.units[Z].power>0?(V++,z+=" "+this.units[Z].prefix.name+this.units[Z].unit.name,Math.abs(this.units[Z].power-1)>1e-15&&(z+="^"+this.units[Z].power)):this.units[Z].power<0&&Y++;if(Y>0)for(var re=0;re<this.units.length;re++)this.units[re].power<0&&(V>0?(U+=" "+this.units[re].prefix.name+this.units[re].unit.name,Math.abs(this.units[re].power+1)>1e-15&&(U+="^"+-this.units[re].power)):(U+=" "+this.units[re].prefix.name+this.units[re].unit.name,U+="^"+this.units[re].power));z=z.substr(1),U=U.substr(1),V>1&&Y>0&&(z="("+z+")"),Y>1&&V>0&&(U="("+U+")");var he=z;return V>0&&Y>0&&(he+=" / "),he+=U,he},g.prototype.format=function(z){var U=this.skipAutomaticSimplification||this.value===null?this.clone():this.simplify(),V=!1;typeof U.value<"u"&&U.value!==null&&ol(U.value)&&(V=Math.abs(U.value.re)<1e-14);for(var Y in U.units)Pt(U.units,Y)&&U.units[Y].unit&&(U.units[Y].unit.name==="VA"&&V?U.units[Y].unit=q.VAR:U.units[Y].unit.name==="VAR"&&!V&&(U.units[Y].unit=q.VA));U.units.length===1&&!U.fixPrefix&&Math.abs(U.units[0].power-Math.round(U.units[0].power))<1e-14&&(U.units[0].prefix=U._bestPrefix());var Z=U._denormalize(U.value),re=U.value!==null?p(Z,z||{}):"",he=U.formatUnits();return U.value&&ol(U.value)&&(re="("+re+")"),he.length>0&&re.length>0&&(re+=" "),re+=he,re},g.prototype._bestPrefix=function(){if(this.units.length!==1)throw new Error("Can only compute the best prefix for single units with integer powers, like kg, s^2, N^-1, and so forth!");if(Math.abs(this.units[0].power-Math.round(this.units[0].power))>=1e-14)throw new Error("Can only compute the best prefix for single units with integer powers, like kg, s^2, N^-1, and so forth!");var z=this.value!==null?l(this.value):0,U=l(this.units[0].unit.value),V=this.units[0].prefix;if(z===0)return V;var Y=this.units[0].power,Z=Math.log(z/Math.pow(V.value*U,Y))/Math.LN10-1.2;if(Z>-2.200001&&Z<1.800001)return V;Z=Math.abs(Z);var re=this.units[0].unit.prefixes;for(var he in re)if(Pt(re,he)){var fe=re[he];if(fe.scientific){var ke=Math.abs(Math.log(z/Math.pow(fe.value*U,Y))/Math.LN10-1.2);(ke<Z||ke===Z&&fe.name.length<V.name.length)&&(V=fe,Z=ke)}}return V},g.prototype.splitUnit=function(z){for(var U=this.clone(),V=[],Y=0;Y<z.length&&(U=U.to(z[Y]),Y!==z.length-1);Y++){var Z=U.toNumeric(),re=c(Z),he=void 0,fe=f(re,Z);fe?he=re:he=u(U.toNumeric());var ke=new g(he,z[Y].toString());V.push(ke),U=i(U,ke)}for(var se=0,Le=0;Le<V.length;Le++)se=n(se,V[Le].value);return f(se,this.value)&&(U.value=0),V.push(U),V};var F={NONE:{"":{name:"",value:1,scientific:!0}},SHORT:{"":{name:"",value:1,scientific:!0},da:{name:"da",value:10,scientific:!1},h:{name:"h",value:100,scientific:!1},k:{name:"k",value:1e3,scientific:!0},M:{name:"M",value:1e6,scientific:!0},G:{name:"G",value:1e9,scientific:!0},T:{name:"T",value:1e12,scientific:!0},P:{name:"P",value:1e15,scientific:!0},E:{name:"E",value:1e18,scientific:!0},Z:{name:"Z",value:1e21,scientific:!0},Y:{name:"Y",value:1e24,scientific:!0},R:{name:"R",value:1e27,scientific:!0},Q:{name:"Q",value:1e30,scientific:!0},d:{name:"d",value:.1,scientific:!1},c:{name:"c",value:.01,scientific:!1},m:{name:"m",value:.001,scientific:!0},u:{name:"u",value:1e-6,scientific:!0},n:{name:"n",value:1e-9,scientific:!0},p:{name:"p",value:1e-12,scientific:!0},f:{name:"f",value:1e-15,scientific:!0},a:{name:"a",value:1e-18,scientific:!0},z:{name:"z",value:1e-21,scientific:!0},y:{name:"y",value:1e-24,scientific:!0},r:{name:"r",value:1e-27,scientific:!0},q:{name:"q",value:1e-30,scientific:!0}},LONG:{"":{name:"",value:1,scientific:!0},deca:{name:"deca",value:10,scientific:!1},hecto:{name:"hecto",value:100,scientific:!1},kilo:{name:"kilo",value:1e3,scientific:!0},mega:{name:"mega",value:1e6,scientific:!0},giga:{name:"giga",value:1e9,scientific:!0},tera:{name:"tera",value:1e12,scientific:!0},peta:{name:"peta",value:1e15,scientific:!0},exa:{name:"exa",value:1e18,scientific:!0},zetta:{name:"zetta",value:1e21,scientific:!0},yotta:{name:"yotta",value:1e24,scientific:!0},ronna:{name:"ronna",value:1e27,scientific:!0},quetta:{name:"quetta",value:1e30,scientific:!0},deci:{name:"deci",value:.1,scientific:!1},centi:{name:"centi",value:.01,scientific:!1},milli:{name:"milli",value:.001,scientific:!0},micro:{name:"micro",value:1e-6,scientific:!0},nano:{name:"nano",value:1e-9,scientific:!0},pico:{name:"pico",value:1e-12,scientific:!0},femto:{name:"femto",value:1e-15,scientific:!0},atto:{name:"atto",value:1e-18,scientific:!0},zepto:{name:"zepto",value:1e-21,scientific:!0},yocto:{name:"yocto",value:1e-24,scientific:!0},ronto:{name:"ronto",value:1e-27,scientific:!0},quecto:{name:"quecto",value:1e-30,scientific:!0}},SQUARED:{"":{name:"",value:1,scientific:!0},da:{name:"da",value:100,scientific:!1},h:{name:"h",value:1e4,scientific:!1},k:{name:"k",value:1e6,scientific:!0},M:{name:"M",value:1e12,scientific:!0},G:{name:"G",value:1e18,scientific:!0},T:{name:"T",value:1e24,scientific:!0},P:{name:"P",value:1e30,scientific:!0},E:{name:"E",value:1e36,scientific:!0},Z:{name:"Z",value:1e42,scientific:!0},Y:{name:"Y",value:1e48,scientific:!0},R:{name:"R",value:1e54,scientific:!0},Q:{name:"Q",value:1e60,scientific:!0},d:{name:"d",value:.01,scientific:!1},c:{name:"c",value:1e-4,scientific:!1},m:{name:"m",value:1e-6,scientific:!0},u:{name:"u",value:1e-12,scientific:!0},n:{name:"n",value:1e-18,scientific:!0},p:{name:"p",value:1e-24,scientific:!0},f:{name:"f",value:1e-30,scientific:!0},a:{name:"a",value:1e-36,scientific:!0},z:{name:"z",value:1e-42,scientific:!0},y:{name:"y",value:1e-48,scientific:!0},r:{name:"r",value:1e-54,scientific:!0},q:{name:"q",value:1e-60,scientific:!0}},CUBIC:{"":{name:"",value:1,scientific:!0},da:{name:"da",value:1e3,scientific:!1},h:{name:"h",value:1e6,scientific:!1},k:{name:"k",value:1e9,scientific:!0},M:{name:"M",value:1e18,scientific:!0},G:{name:"G",value:1e27,scientific:!0},T:{name:"T",value:1e36,scientific:!0},P:{name:"P",value:1e45,scientific:!0},E:{name:"E",value:1e54,scientific:!0},Z:{name:"Z",value:1e63,scientific:!0},Y:{name:"Y",value:1e72,scientific:!0},R:{name:"R",value:1e81,scientific:!0},Q:{name:"Q",value:1e90,scientific:!0},d:{name:"d",value:.001,scientific:!1},c:{name:"c",value:1e-6,scientific:!1},m:{name:"m",value:1e-9,scientific:!0},u:{name:"u",value:1e-18,scientific:!0},n:{name:"n",value:1e-27,scientific:!0},p:{name:"p",value:1e-36,scientific:!0},f:{name:"f",value:1e-45,scientific:!0},a:{name:"a",value:1e-54,scientific:!0},z:{name:"z",value:1e-63,scientific:!0},y:{name:"y",value:1e-72,scientific:!0},r:{name:"r",value:1e-81,scientific:!0},q:{name:"q",value:1e-90,scientific:!0}},BINARY_SHORT_SI:{"":{name:"",value:1,scientific:!0},k:{name:"k",value:1e3,scientific:!0},M:{name:"M",value:1e6,scientific:!0},G:{name:"G",value:1e9,scientific:!0},T:{name:"T",value:1e12,scientific:!0},P:{name:"P",value:1e15,scientific:!0},E:{name:"E",value:1e18,scientific:!0},Z:{name:"Z",value:1e21,scientific:!0},Y:{name:"Y",value:1e24,scientific:!0}},BINARY_SHORT_IEC:{"":{name:"",value:1,scientific:!0},Ki:{name:"Ki",value:1024,scientific:!0},Mi:{name:"Mi",value:Math.pow(1024,2),scientific:!0},Gi:{name:"Gi",value:Math.pow(1024,3),scientific:!0},Ti:{name:"Ti",value:Math.pow(1024,4),scientific:!0},Pi:{name:"Pi",value:Math.pow(1024,5),scientific:!0},Ei:{name:"Ei",value:Math.pow(1024,6),scientific:!0},Zi:{name:"Zi",value:Math.pow(1024,7),scientific:!0},Yi:{name:"Yi",value:Math.pow(1024,8),scientific:!0}},BINARY_LONG_SI:{"":{name:"",value:1,scientific:!0},kilo:{name:"kilo",value:1e3,scientific:!0},mega:{name:"mega",value:1e6,scientific:!0},giga:{name:"giga",value:1e9,scientific:!0},tera:{name:"tera",value:1e12,scientific:!0},peta:{name:"peta",value:1e15,scientific:!0},exa:{name:"exa",value:1e18,scientific:!0},zetta:{name:"zetta",value:1e21,scientific:!0},yotta:{name:"yotta",value:1e24,scientific:!0}},BINARY_LONG_IEC:{"":{name:"",value:1,scientific:!0},kibi:{name:"kibi",value:1024,scientific:!0},mebi:{name:"mebi",value:Math.pow(1024,2),scientific:!0},gibi:{name:"gibi",value:Math.pow(1024,3),scientific:!0},tebi:{name:"tebi",value:Math.pow(1024,4),scientific:!0},pebi:{name:"pebi",value:Math.pow(1024,5),scientific:!0},exi:{name:"exi",value:Math.pow(1024,6),scientific:!0},zebi:{name:"zebi",value:Math.pow(1024,7),scientific:!0},yobi:{name:"yobi",value:Math.pow(1024,8),scientific:!0}},BTU:{"":{name:"",value:1,scientific:!0},MM:{name:"MM",value:1e6,scientific:!0}}};F.SHORTLONG=mi({},F.SHORT,F.LONG),F.BINARY_SHORT=mi({},F.BINARY_SHORT_SI,F.BINARY_SHORT_IEC),F.BINARY_LONG=mi({},F.BINARY_LONG_SI,F.BINARY_LONG_IEC);var L=["MASS","LENGTH","TIME","CURRENT","TEMPERATURE","LUMINOUS_INTENSITY","AMOUNT_OF_SUBSTANCE","ANGLE","BIT"],I={NONE:{dimensions:[0,0,0,0,0,0,0,0,0]},MASS:{dimensions:[1,0,0,0,0,0,0,0,0]},LENGTH:{dimensions:[0,1,0,0,0,0,0,0,0]},TIME:{dimensions:[0,0,1,0,0,0,0,0,0]},CURRENT:{dimensions:[0,0,0,1,0,0,0,0,0]},TEMPERATURE:{dimensions:[0,0,0,0,1,0,0,0,0]},LUMINOUS_INTENSITY:{dimensions:[0,0,0,0,0,1,0,0,0]},AMOUNT_OF_SUBSTANCE:{dimensions:[0,0,0,0,0,0,1,0,0]},FORCE:{dimensions:[1,1,-2,0,0,0,0,0,0]},SURFACE:{dimensions:[0,2,0,0,0,0,0,0,0]},VOLUME:{dimensions:[0,3,0,0,0,0,0,0,0]},ENERGY:{dimensions:[1,2,-2,0,0,0,0,0,0]},POWER:{dimensions:[1,2,-3,0,0,0,0,0,0]},PRESSURE:{dimensions:[1,-1,-2,0,0,0,0,0,0]},ELECTRIC_CHARGE:{dimensions:[0,0,1,1,0,0,0,0,0]},ELECTRIC_CAPACITANCE:{dimensions:[-1,-2,4,2,0,0,0,0,0]},ELECTRIC_POTENTIAL:{dimensions:[1,2,-3,-1,0,0,0,0,0]},ELECTRIC_RESISTANCE:{dimensions:[1,2,-3,-2,0,0,0,0,0]},ELECTRIC_INDUCTANCE:{dimensions:[1,2,-2,-2,0,0,0,0,0]},ELECTRIC_CONDUCTANCE:{dimensions:[-1,-2,3,2,0,0,0,0,0]},MAGNETIC_FLUX:{dimensions:[1,2,-2,-1,0,0,0,0,0]},MAGNETIC_FLUX_DENSITY:{dimensions:[1,0,-2,-1,0,0,0,0,0]},FREQUENCY:{dimensions:[0,0,-1,0,0,0,0,0,0]},ANGLE:{dimensions:[0,0,0,0,0,0,0,1,0]},BIT:{dimensions:[0,0,0,0,0,0,0,0,1]}};for(var R in I)Pt(I,R)&&(I[R].key=R);var J={},Q={name:"",base:J,value:1,offset:0,dimensions:L.map(z=>0)},q={meter:{name:"meter",base:I.LENGTH,prefixes:F.LONG,value:1,offset:0},inch:{name:"inch",base:I.LENGTH,prefixes:F.NONE,value:.0254,offset:0},foot:{name:"foot",base:I.LENGTH,prefixes:F.NONE,value:.3048,offset:0},yard:{name:"yard",base:I.LENGTH,prefixes:F.NONE,value:.9144,offset:0},mile:{name:"mile",base:I.LENGTH,prefixes:F.NONE,value:1609.344,offset:0},link:{name:"link",base:I.LENGTH,prefixes:F.NONE,value:.201168,offset:0},rod:{name:"rod",base:I.LENGTH,prefixes:F.NONE,value:5.0292,offset:0},chain:{name:"chain",base:I.LENGTH,prefixes:F.NONE,value:20.1168,offset:0},angstrom:{name:"angstrom",base:I.LENGTH,prefixes:F.NONE,value:1e-10,offset:0},m:{name:"m",base:I.LENGTH,prefixes:F.SHORT,value:1,offset:0},in:{name:"in",base:I.LENGTH,prefixes:F.NONE,value:.0254,offset:0},ft:{name:"ft",base:I.LENGTH,prefixes:F.NONE,value:.3048,offset:0},yd:{name:"yd",base:I.LENGTH,prefixes:F.NONE,value:.9144,offset:0},mi:{name:"mi",base:I.LENGTH,prefixes:F.NONE,value:1609.344,offset:0},li:{name:"li",base:I.LENGTH,prefixes:F.NONE,value:.201168,offset:0},rd:{name:"rd",base:I.LENGTH,prefixes:F.NONE,value:5.02921,offset:0},ch:{name:"ch",base:I.LENGTH,prefixes:F.NONE,value:20.1168,offset:0},mil:{name:"mil",base:I.LENGTH,prefixes:F.NONE,value:254e-7,offset:0},m2:{name:"m2",base:I.SURFACE,prefixes:F.SQUARED,value:1,offset:0},sqin:{name:"sqin",base:I.SURFACE,prefixes:F.NONE,value:64516e-8,offset:0},sqft:{name:"sqft",base:I.SURFACE,prefixes:F.NONE,value:.09290304,offset:0},sqyd:{name:"sqyd",base:I.SURFACE,prefixes:F.NONE,value:.83612736,offset:0},sqmi:{name:"sqmi",base:I.SURFACE,prefixes:F.NONE,value:2589988110336e-6,offset:0},sqrd:{name:"sqrd",base:I.SURFACE,prefixes:F.NONE,value:25.29295,offset:0},sqch:{name:"sqch",base:I.SURFACE,prefixes:F.NONE,value:404.6873,offset:0},sqmil:{name:"sqmil",base:I.SURFACE,prefixes:F.NONE,value:64516e-14,offset:0},acre:{name:"acre",base:I.SURFACE,prefixes:F.NONE,value:4046.86,offset:0},hectare:{name:"hectare",base:I.SURFACE,prefixes:F.NONE,value:1e4,offset:0},m3:{name:"m3",base:I.VOLUME,prefixes:F.CUBIC,value:1,offset:0},L:{name:"L",base:I.VOLUME,prefixes:F.SHORT,value:.001,offset:0},l:{name:"l",base:I.VOLUME,prefixes:F.SHORT,value:.001,offset:0},litre:{name:"litre",base:I.VOLUME,prefixes:F.LONG,value:.001,offset:0},cuin:{name:"cuin",base:I.VOLUME,prefixes:F.NONE,value:16387064e-12,offset:0},cuft:{name:"cuft",base:I.VOLUME,prefixes:F.NONE,value:.028316846592,offset:0},cuyd:{name:"cuyd",base:I.VOLUME,prefixes:F.NONE,value:.764554857984,offset:0},teaspoon:{name:"teaspoon",base:I.VOLUME,prefixes:F.NONE,value:5e-6,offset:0},tablespoon:{name:"tablespoon",base:I.VOLUME,prefixes:F.NONE,value:15e-6,offset:0},drop:{name:"drop",base:I.VOLUME,prefixes:F.NONE,value:5e-8,offset:0},gtt:{name:"gtt",base:I.VOLUME,prefixes:F.NONE,value:5e-8,offset:0},minim:{name:"minim",base:I.VOLUME,prefixes:F.NONE,value:6161152e-14,offset:0},fluiddram:{name:"fluiddram",base:I.VOLUME,prefixes:F.NONE,value:36966911e-13,offset:0},fluidounce:{name:"fluidounce",base:I.VOLUME,prefixes:F.NONE,value:2957353e-11,offset:0},gill:{name:"gill",base:I.VOLUME,prefixes:F.NONE,value:.0001182941,offset:0},cc:{name:"cc",base:I.VOLUME,prefixes:F.NONE,value:1e-6,offset:0},cup:{name:"cup",base:I.VOLUME,prefixes:F.NONE,value:.0002365882,offset:0},pint:{name:"pint",base:I.VOLUME,prefixes:F.NONE,value:.0004731765,offset:0},quart:{name:"quart",base:I.VOLUME,prefixes:F.NONE,value:.0009463529,offset:0},gallon:{name:"gallon",base:I.VOLUME,prefixes:F.NONE,value:.003785412,offset:0},beerbarrel:{name:"beerbarrel",base:I.VOLUME,prefixes:F.NONE,value:.1173478,offset:0},oilbarrel:{name:"oilbarrel",base:I.VOLUME,prefixes:F.NONE,value:.1589873,offset:0},hogshead:{name:"hogshead",base:I.VOLUME,prefixes:F.NONE,value:.238481,offset:0},fldr:{name:"fldr",base:I.VOLUME,prefixes:F.NONE,value:36966911e-13,offset:0},floz:{name:"floz",base:I.VOLUME,prefixes:F.NONE,value:2957353e-11,offset:0},gi:{name:"gi",base:I.VOLUME,prefixes:F.NONE,value:.0001182941,offset:0},cp:{name:"cp",base:I.VOLUME,prefixes:F.NONE,value:.0002365882,offset:0},pt:{name:"pt",base:I.VOLUME,prefixes:F.NONE,value:.0004731765,offset:0},qt:{name:"qt",base:I.VOLUME,prefixes:F.NONE,value:.0009463529,offset:0},gal:{name:"gal",base:I.VOLUME,prefixes:F.NONE,value:.003785412,offset:0},bbl:{name:"bbl",base:I.VOLUME,prefixes:F.NONE,value:.1173478,offset:0},obl:{name:"obl",base:I.VOLUME,prefixes:F.NONE,value:.1589873,offset:0},g:{name:"g",base:I.MASS,prefixes:F.SHORT,value:.001,offset:0},gram:{name:"gram",base:I.MASS,prefixes:F.LONG,value:.001,offset:0},ton:{name:"ton",base:I.MASS,prefixes:F.SHORT,value:907.18474,offset:0},t:{name:"t",base:I.MASS,prefixes:F.SHORT,value:1e3,offset:0},tonne:{name:"tonne",base:I.MASS,prefixes:F.LONG,value:1e3,offset:0},grain:{name:"grain",base:I.MASS,prefixes:F.NONE,value:6479891e-11,offset:0},dram:{name:"dram",base:I.MASS,prefixes:F.NONE,value:.0017718451953125,offset:0},ounce:{name:"ounce",base:I.MASS,prefixes:F.NONE,value:.028349523125,offset:0},poundmass:{name:"poundmass",base:I.MASS,prefixes:F.NONE,value:.45359237,offset:0},hundredweight:{name:"hundredweight",base:I.MASS,prefixes:F.NONE,value:45.359237,offset:0},stick:{name:"stick",base:I.MASS,prefixes:F.NONE,value:.115,offset:0},stone:{name:"stone",base:I.MASS,prefixes:F.NONE,value:6.35029318,offset:0},gr:{name:"gr",base:I.MASS,prefixes:F.NONE,value:6479891e-11,offset:0},dr:{name:"dr",base:I.MASS,prefixes:F.NONE,value:.0017718451953125,offset:0},oz:{name:"oz",base:I.MASS,prefixes:F.NONE,value:.028349523125,offset:0},lbm:{name:"lbm",base:I.MASS,prefixes:F.NONE,value:.45359237,offset:0},cwt:{name:"cwt",base:I.MASS,prefixes:F.NONE,value:45.359237,offset:0},s:{name:"s",base:I.TIME,prefixes:F.SHORT,value:1,offset:0},min:{name:"min",base:I.TIME,prefixes:F.NONE,value:60,offset:0},h:{name:"h",base:I.TIME,prefixes:F.NONE,value:3600,offset:0},second:{name:"second",base:I.TIME,prefixes:F.LONG,value:1,offset:0},sec:{name:"sec",base:I.TIME,prefixes:F.LONG,value:1,offset:0},minute:{name:"minute",base:I.TIME,prefixes:F.NONE,value:60,offset:0},hour:{name:"hour",base:I.TIME,prefixes:F.NONE,value:3600,offset:0},day:{name:"day",base:I.TIME,prefixes:F.NONE,value:86400,offset:0},week:{name:"week",base:I.TIME,prefixes:F.NONE,value:7*86400,offset:0},month:{name:"month",base:I.TIME,prefixes:F.NONE,value:2629800,offset:0},year:{name:"year",base:I.TIME,prefixes:F.NONE,value:31557600,offset:0},decade:{name:"decade",base:I.TIME,prefixes:F.NONE,value:315576e3,offset:0},century:{name:"century",base:I.TIME,prefixes:F.NONE,value:315576e4,offset:0},millennium:{name:"millennium",base:I.TIME,prefixes:F.NONE,value:315576e5,offset:0},hertz:{name:"Hertz",base:I.FREQUENCY,prefixes:F.LONG,value:1,offset:0,reciprocal:!0},Hz:{name:"Hz",base:I.FREQUENCY,prefixes:F.SHORT,value:1,offset:0,reciprocal:!0},rad:{name:"rad",base:I.ANGLE,prefixes:F.SHORT,value:1,offset:0},radian:{name:"radian",base:I.ANGLE,prefixes:F.LONG,value:1,offset:0},deg:{name:"deg",base:I.ANGLE,prefixes:F.SHORT,value:null,offset:0},degree:{name:"degree",base:I.ANGLE,prefixes:F.LONG,value:null,offset:0},grad:{name:"grad",base:I.ANGLE,prefixes:F.SHORT,value:null,offset:0},gradian:{name:"gradian",base:I.ANGLE,prefixes:F.LONG,value:null,offset:0},cycle:{name:"cycle",base:I.ANGLE,prefixes:F.NONE,value:null,offset:0},arcsec:{name:"arcsec",base:I.ANGLE,prefixes:F.NONE,value:null,offset:0},arcmin:{name:"arcmin",base:I.ANGLE,prefixes:F.NONE,value:null,offset:0},A:{name:"A",base:I.CURRENT,prefixes:F.SHORT,value:1,offset:0},ampere:{name:"ampere",base:I.CURRENT,prefixes:F.LONG,value:1,offset:0},K:{name:"K",base:I.TEMPERATURE,prefixes:F.SHORT,value:1,offset:0},degC:{name:"degC",base:I.TEMPERATURE,prefixes:F.SHORT,value:1,offset:273.15},degF:{name:"degF",base:I.TEMPERATURE,prefixes:F.SHORT,value:new A(5,9),offset:459.67},degR:{name:"degR",base:I.TEMPERATURE,prefixes:F.SHORT,value:new A(5,9),offset:0},kelvin:{name:"kelvin",base:I.TEMPERATURE,prefixes:F.LONG,value:1,offset:0},celsius:{name:"celsius",base:I.TEMPERATURE,prefixes:F.LONG,value:1,offset:273.15},fahrenheit:{name:"fahrenheit",base:I.TEMPERATURE,prefixes:F.LONG,value:new A(5,9),offset:459.67},rankine:{name:"rankine",base:I.TEMPERATURE,prefixes:F.LONG,value:new A(5,9),offset:0},mol:{name:"mol",base:I.AMOUNT_OF_SUBSTANCE,prefixes:F.SHORT,value:1,offset:0},mole:{name:"mole",base:I.AMOUNT_OF_SUBSTANCE,prefixes:F.LONG,value:1,offset:0},cd:{name:"cd",base:I.LUMINOUS_INTENSITY,prefixes:F.SHORT,value:1,offset:0},candela:{name:"candela",base:I.LUMINOUS_INTENSITY,prefixes:F.LONG,value:1,offset:0},N:{name:"N",base:I.FORCE,prefixes:F.SHORT,value:1,offset:0},newton:{name:"newton",base:I.FORCE,prefixes:F.LONG,value:1,offset:0},dyn:{name:"dyn",base:I.FORCE,prefixes:F.SHORT,value:1e-5,offset:0},dyne:{name:"dyne",base:I.FORCE,prefixes:F.LONG,value:1e-5,offset:0},lbf:{name:"lbf",base:I.FORCE,prefixes:F.NONE,value:4.4482216152605,offset:0},poundforce:{name:"poundforce",base:I.FORCE,prefixes:F.NONE,value:4.4482216152605,offset:0},kip:{name:"kip",base:I.FORCE,prefixes:F.LONG,value:4448.2216,offset:0},kilogramforce:{name:"kilogramforce",base:I.FORCE,prefixes:F.NONE,value:9.80665,offset:0},J:{name:"J",base:I.ENERGY,prefixes:F.SHORT,value:1,offset:0},joule:{name:"joule",base:I.ENERGY,prefixes:F.LONG,value:1,offset:0},erg:{name:"erg",base:I.ENERGY,prefixes:F.SHORTLONG,value:1e-7,offset:0},Wh:{name:"Wh",base:I.ENERGY,prefixes:F.SHORT,value:3600,offset:0},BTU:{name:"BTU",base:I.ENERGY,prefixes:F.BTU,value:1055.05585262,offset:0},eV:{name:"eV",base:I.ENERGY,prefixes:F.SHORT,value:1602176565e-28,offset:0},electronvolt:{name:"electronvolt",base:I.ENERGY,prefixes:F.LONG,value:1602176565e-28,offset:0},W:{name:"W",base:I.POWER,prefixes:F.SHORT,value:1,offset:0},watt:{name:"watt",base:I.POWER,prefixes:F.LONG,value:1,offset:0},hp:{name:"hp",base:I.POWER,prefixes:F.NONE,value:745.6998715386,offset:0},VAR:{name:"VAR",base:I.POWER,prefixes:F.SHORT,value:m.I,offset:0},VA:{name:"VA",base:I.POWER,prefixes:F.SHORT,value:1,offset:0},Pa:{name:"Pa",base:I.PRESSURE,prefixes:F.SHORT,value:1,offset:0},psi:{name:"psi",base:I.PRESSURE,prefixes:F.NONE,value:6894.75729276459,offset:0},atm:{name:"atm",base:I.PRESSURE,prefixes:F.NONE,value:101325,offset:0},bar:{name:"bar",base:I.PRESSURE,prefixes:F.SHORTLONG,value:1e5,offset:0},torr:{name:"torr",base:I.PRESSURE,prefixes:F.NONE,value:133.322,offset:0},mmHg:{name:"mmHg",base:I.PRESSURE,prefixes:F.NONE,value:133.322,offset:0},mmH2O:{name:"mmH2O",base:I.PRESSURE,prefixes:F.NONE,value:9.80665,offset:0},cmH2O:{name:"cmH2O",base:I.PRESSURE,prefixes:F.NONE,value:98.0665,offset:0},coulomb:{name:"coulomb",base:I.ELECTRIC_CHARGE,prefixes:F.LONG,value:1,offset:0},C:{name:"C",base:I.ELECTRIC_CHARGE,prefixes:F.SHORT,value:1,offset:0},farad:{name:"farad",base:I.ELECTRIC_CAPACITANCE,prefixes:F.LONG,value:1,offset:0},F:{name:"F",base:I.ELECTRIC_CAPACITANCE,prefixes:F.SHORT,value:1,offset:0},volt:{name:"volt",base:I.ELECTRIC_POTENTIAL,prefixes:F.LONG,value:1,offset:0},V:{name:"V",base:I.ELECTRIC_POTENTIAL,prefixes:F.SHORT,value:1,offset:0},ohm:{name:"ohm",base:I.ELECTRIC_RESISTANCE,prefixes:F.SHORTLONG,value:1,offset:0},henry:{name:"henry",base:I.ELECTRIC_INDUCTANCE,prefixes:F.LONG,value:1,offset:0},H:{name:"H",base:I.ELECTRIC_INDUCTANCE,prefixes:F.SHORT,value:1,offset:0},siemens:{name:"siemens",base:I.ELECTRIC_CONDUCTANCE,prefixes:F.LONG,value:1,offset:0},S:{name:"S",base:I.ELECTRIC_CONDUCTANCE,prefixes:F.SHORT,value:1,offset:0},weber:{name:"weber",base:I.MAGNETIC_FLUX,prefixes:F.LONG,value:1,offset:0},Wb:{name:"Wb",base:I.MAGNETIC_FLUX,prefixes:F.SHORT,value:1,offset:0},tesla:{name:"tesla",base:I.MAGNETIC_FLUX_DENSITY,prefixes:F.LONG,value:1,offset:0},T:{name:"T",base:I.MAGNETIC_FLUX_DENSITY,prefixes:F.SHORT,value:1,offset:0},b:{name:"b",base:I.BIT,prefixes:F.BINARY_SHORT,value:1,offset:0},bits:{name:"bits",base:I.BIT,prefixes:F.BINARY_LONG,value:1,offset:0},B:{name:"B",base:I.BIT,prefixes:F.BINARY_SHORT,value:8,offset:0},bytes:{name:"bytes",base:I.BIT,prefixes:F.BINARY_LONG,value:8,offset:0}},ie={meters:"meter",inches:"inch",feet:"foot",yards:"yard",miles:"mile",links:"link",rods:"rod",chains:"chain",angstroms:"angstrom",lt:"l",litres:"litre",liter:"litre",liters:"litre",teaspoons:"teaspoon",tablespoons:"tablespoon",minims:"minim",fluiddrams:"fluiddram",fluidounces:"fluidounce",gills:"gill",cups:"cup",pints:"pint",quarts:"quart",gallons:"gallon",beerbarrels:"beerbarrel",oilbarrels:"oilbarrel",hogsheads:"hogshead",gtts:"gtt",grams:"gram",tons:"ton",tonnes:"tonne",grains:"grain",drams:"dram",ounces:"ounce",poundmasses:"poundmass",hundredweights:"hundredweight",sticks:"stick",lb:"lbm",lbs:"lbm",kips:"kip",kgf:"kilogramforce",acres:"acre",hectares:"hectare",sqfeet:"sqft",sqyard:"sqyd",sqmile:"sqmi",sqmiles:"sqmi",mmhg:"mmHg",mmh2o:"mmH2O",cmh2o:"cmH2O",seconds:"second",secs:"second",minutes:"minute",mins:"minute",hours:"hour",hr:"hour",hrs:"hour",days:"day",weeks:"week",months:"month",years:"year",decades:"decade",centuries:"century",millennia:"millennium",hertz:"hertz",radians:"radian",degrees:"degree",gradians:"gradian",cycles:"cycle",arcsecond:"arcsec",arcseconds:"arcsec",arcminute:"arcmin",arcminutes:"arcmin",BTUs:"BTU",watts:"watt",joules:"joule",amperes:"ampere",amps:"ampere",amp:"ampere",coulombs:"coulomb",volts:"volt",ohms:"ohm",farads:"farad",webers:"weber",teslas:"tesla",electronvolts:"electronvolt",moles:"mole",bit:"bits",byte:"bytes"};function Ae(z){if(z.number==="BigNumber"){var U=y3(v);q.rad.value=new v(1),q.deg.value=U.div(180),q.grad.value=U.div(200),q.cycle.value=U.times(2),q.arcsec.value=U.div(648e3),q.arcmin.value=U.div(10800)}else q.rad.value=1,q.deg.value=Math.PI/180,q.grad.value=Math.PI/200,q.cycle.value=Math.PI*2,q.arcsec.value=Math.PI/648e3,q.arcmin.value=Math.PI/10800;q.radian.value=q.rad.value,q.degree.value=q.deg.value,q.gradian.value=q.grad.value}Ae(r),t&&t("config",function(z,U){z.number!==U.number&&Ae(z)});var le={si:{NONE:{unit:Q,prefix:F.NONE[""]},LENGTH:{unit:q.m,prefix:F.SHORT[""]},MASS:{unit:q.g,prefix:F.SHORT.k},TIME:{unit:q.s,prefix:F.SHORT[""]},CURRENT:{unit:q.A,prefix:F.SHORT[""]},TEMPERATURE:{unit:q.K,prefix:F.SHORT[""]},LUMINOUS_INTENSITY:{unit:q.cd,prefix:F.SHORT[""]},AMOUNT_OF_SUBSTANCE:{unit:q.mol,prefix:F.SHORT[""]},ANGLE:{unit:q.rad,prefix:F.SHORT[""]},BIT:{unit:q.bits,prefix:F.SHORT[""]},FORCE:{unit:q.N,prefix:F.SHORT[""]},ENERGY:{unit:q.J,prefix:F.SHORT[""]},POWER:{unit:q.W,prefix:F.SHORT[""]},PRESSURE:{unit:q.Pa,prefix:F.SHORT[""]},ELECTRIC_CHARGE:{unit:q.C,prefix:F.SHORT[""]},ELECTRIC_CAPACITANCE:{unit:q.F,prefix:F.SHORT[""]},ELECTRIC_POTENTIAL:{unit:q.V,prefix:F.SHORT[""]},ELECTRIC_RESISTANCE:{unit:q.ohm,prefix:F.SHORT[""]},ELECTRIC_INDUCTANCE:{unit:q.H,prefix:F.SHORT[""]},ELECTRIC_CONDUCTANCE:{unit:q.S,prefix:F.SHORT[""]},MAGNETIC_FLUX:{unit:q.Wb,prefix:F.SHORT[""]},MAGNETIC_FLUX_DENSITY:{unit:q.T,prefix:F.SHORT[""]},FREQUENCY:{unit:q.Hz,prefix:F.SHORT[""]}}};le.cgs=JSON.parse(JSON.stringify(le.si)),le.cgs.LENGTH={unit:q.m,prefix:F.SHORT.c},le.cgs.MASS={unit:q.g,prefix:F.SHORT[""]},le.cgs.FORCE={unit:q.dyn,prefix:F.SHORT[""]},le.cgs.ENERGY={unit:q.erg,prefix:F.NONE[""]},le.us=JSON.parse(JSON.stringify(le.si)),le.us.LENGTH={unit:q.ft,prefix:F.NONE[""]},le.us.MASS={unit:q.lbm,prefix:F.NONE[""]},le.us.TEMPERATURE={unit:q.degF,prefix:F.NONE[""]},le.us.FORCE={unit:q.lbf,prefix:F.NONE[""]},le.us.ENERGY={unit:q.BTU,prefix:F.BTU[""]},le.us.POWER={unit:q.hp,prefix:F.NONE[""]},le.us.PRESSURE={unit:q.psi,prefix:F.NONE[""]},le.auto=JSON.parse(JSON.stringify(le.si));var pe=le.auto;g.setUnitSystem=function(z){if(Pt(le,z))pe=le[z];else throw new Error("Unit system "+z+" does not exist. Choices are: "+Object.keys(le).join(", "))},g.getUnitSystem=function(){for(var z in le)if(Pt(le,z)&&le[z]===pe)return z},g.typeConverters={BigNumber:function(U){return U!=null&&U.isFraction?new v(U.n).div(U.d).times(U.s):new v(U+"")},Fraction:function(U){return new A(U)},Complex:function(U){return U},number:function(U){return U!=null&&U.isFraction?h(U):U}},g.prototype._numberConverter=function(){var z=g.typeConverters[this.valueType()];if(z)return z;throw new TypeError('Unsupported Unit value type "'+this.valueType()+'"')},g._getNumberConverter=function(z){if(!g.typeConverters[z])throw new TypeError('Unsupported type "'+z+'"');return g.typeConverters[z]};for(var ae in q)if(Pt(q,ae)){var oe=q[ae];oe.dimensions=oe.base.dimensions}for(var ue in ie)if(Pt(ie,ue)){var Se=q[ie[ue]],H={};for(var ye in Se)Pt(Se,ye)&&(H[ye]=Se[ye]);H.name=ue,q[ue]=H}g.isValidAlpha=function(U){return/^[a-zA-Z]$/.test(U)};function ne(z){for(var U=0;U<z.length;U++){if(y=z.charAt(U),U===0&&!g.isValidAlpha(y))throw new Error('Invalid unit name (must begin with alpha character): "'+z+'"');if(U>0&&!(g.isValidAlpha(y)||D(y)))throw new Error('Invalid unit name (only alphanumeric characters are allowed): "'+z+'"')}}return g.createUnit=function(z,U){if(typeof z!="object")throw new TypeError("createUnit expects first parameter to be of type 'Object'");if(U&&U.override){for(var V in z)if(Pt(z,V)&&g.deleteUnit(V),z[V].aliases)for(var Y=0;Y<z[V].aliases.length;Y++)g.deleteUnit(z[V].aliases[Y])}var Z;for(var re in z)Pt(z,re)&&(Z=g.createUnitSingle(re,z[re]));return Z},g.createUnitSingle=function(z,U){if((typeof U>"u"||U===null)&&(U={}),typeof z!="string")throw new TypeError("createUnitSingle expects first parameter to be of type 'string'");if(Pt(q,z))throw new Error('Cannot create unit "'+z+'": a unit with that name already exists');ne(z);var V=null,Y=[],Z=0,re,he,fe;if(U&&U.type==="Unit")V=U.clone();else if(typeof U=="string")U!==""&&(re=U);else if(typeof U=="object")re=U.definition,he=U.prefixes,Z=U.offset,fe=U.baseName,U.aliases&&(Y=U.aliases.valueOf());else throw new TypeError('Cannot create unit "'+z+'" from "'+U.toString()+'": expecting "string" or "Unit" or "Object"');if(Y){for(var ke=0;ke<Y.length;ke++)if(Pt(q,Y[ke]))throw new Error('Cannot create alias "'+Y[ke]+'": a unit with that name already exists')}if(re&&typeof re=="string"&&!V)try{V=g.parse(re,{allowNoUnits:!0})}catch(K){throw K.message='Could not create unit "'+z+'" from "'+re+'": '+K.message,K}else re&&re.type==="Unit"&&(V=re.clone());Y=Y||[],Z=Z||0,he&&he.toUpperCase?he=F[he.toUpperCase()]||F.NONE:he=F.NONE;var se={};if(V){se={name:z,value:V.value,dimensions:V.dimensions.slice(0),prefixes:he,offset:Z};var Ye=!1;for(var ve in I)if(Pt(I,ve)){for(var Oe=!0,Te=0;Te<L.length;Te++)if(Math.abs((se.dimensions[Te]||0)-(I[ve].dimensions[Te]||0))>1e-12){Oe=!1;break}if(Oe){Ye=!0,se.base=I[ve];break}}if(!Ye){fe=fe||z+"_STUFF";var Ie={dimensions:V.dimensions.slice(0)};Ie.key=fe,I[fe]=Ie,pe[fe]={unit:se,prefix:F.NONE[""]},se.base=I[fe]}}else{if(fe=fe||z+"_STUFF",L.indexOf(fe)>=0)throw new Error('Cannot create new base unit "'+z+'": a base unit with that name already exists (and cannot be overridden)');L.push(fe);for(var Le in I)Pt(I,Le)&&(I[Le].dimensions[L.length-1]=0);for(var Ne={dimensions:[]},Ge=0;Ge<L.length;Ge++)Ne.dimensions[Ge]=0;Ne.dimensions[L.length-1]=1,Ne.key=fe,I[fe]=Ne,se={name:z,value:1,dimensions:I[fe].dimensions.slice(0),prefixes:he,offset:Z,base:I[fe]},pe[fe]={unit:se,prefix:F.NONE[""]}}g.UNITS[z]=se;for(var $e=0;$e<Y.length;$e++){var Ue=Y[$e],Qe={};for(var We in se)Pt(se,We)&&(Qe[We]=se[We]);Qe.name=Ue,g.UNITS[Ue]=Qe}return delete _.cache,new g(null,z)},g.deleteUnit=function(z){delete g.UNITS[z],delete _.cache},g.PREFIXES=F,g.BASE_DIMENSIONS=L,g.BASE_UNITS=I,g.UNIT_SYSTEMS=le,g.UNITS=q,g},{isClass:!0});var Vye="unit",alt=["typed","Unit"],I8=X(Vye,alt,e=>{var{typed:t,Unit:r}=e;return t(Vye,{Unit:function(i){return i.clone()},string:function(i){return r.isValuelessUnit(i)?new r(null,i):r.parse(i,{allowNoUnits:!0})},"number | BigNumber | Fraction | Complex, string | Unit":function(i,a){return new r(i,a)},"number | BigNumber | Fraction":function(i){return new r(i)},"Array | Matrix":t.referToSelf(n=>i=>Ut(i,n))})});var Gye="sparse",olt=["typed","SparseMatrix"],B8=X(Gye,olt,e=>{var{typed:t,SparseMatrix:r}=e;return t(Gye,{"":function(){return new r([])},string:function(i){return new r([],i)},"Array | Matrix":function(i){return new r(i)},"Array | Matrix, string":function(i,a){return new r(i,a)}})});var Wye="createUnit",slt=["typed","Unit"],L8=X(Wye,slt,e=>{var{typed:t,Unit:r}=e;return t(Wye,{"Object, Object":function(i,a){return r.createUnit(i,a)},Object:function(i){return r.createUnit(i,{})},"string, Unit | string | Object, Object":function(i,a,o){var s={};return s[i]=a,r.createUnit(s,o)},"string, Unit | string | Object":function(i,a){var o={};return o[i]=a,r.createUnit(o,{})},string:function(i){var a={};return a[i]={},r.createUnit(a,{})}})});var Qye="acos",llt=["typed","config","Complex"],R8=X(Qye,llt,e=>{var{typed:t,config:r,Complex:n}=e;return t(Qye,{number:function(a){return a>=-1&&a<=1||r.predictable?Math.acos(a):new n(a,0).acos()},Complex:function(a){return a.acos()},BigNumber:function(a){return a.acos()}})});var Yye="acosh",ult=["typed","config","Complex"],q8=X(Yye,ult,e=>{var{typed:t,config:r,Complex:n}=e;return t(Yye,{number:function(a){return a>=1||r.predictable?oZ(a):a<=-1?new n(Math.log(Math.sqrt(a*a-1)-a),Math.PI):new n(a,0).acosh()},Complex:function(a){return a.acosh()},BigNumber:function(a){return a.acosh()}})});var Xye="acot",clt=["typed","BigNumber"],$8=X(Xye,clt,e=>{var{typed:t,BigNumber:r}=e;return t(Xye,{number:sZ,Complex:function(i){return i.acot()},BigNumber:function(i){return new r(1).div(i).atan()}})});var Kye="acoth",flt=["typed","config","Complex","BigNumber"],z8=X(Kye,flt,e=>{var{typed:t,config:r,Complex:n,BigNumber:i}=e;return t(Kye,{number:function(o){return o>=1||o<=-1||r.predictable?lZ(o):new n(o,0).acoth()},Complex:function(o){return o.acoth()},BigNumber:function(o){return new i(1).div(o).atanh()}})});var Jye="acsc",dlt=["typed","config","Complex","BigNumber"],U8=X(Jye,dlt,e=>{var{typed:t,config:r,Complex:n,BigNumber:i}=e;return t(Jye,{number:function(o){return o<=-1||o>=1||r.predictable?uZ(o):new n(o,0).acsc()},Complex:function(o){return o.acsc()},BigNumber:function(o){return new i(1).div(o).asin()}})});var Zye="acsch",plt=["typed","BigNumber"],H8=X(Zye,plt,e=>{var{typed:t,BigNumber:r}=e;return t(Zye,{number:cZ,Complex:function(i){return i.acsch()},BigNumber:function(i){return new r(1).div(i).asinh()}})});var ebe="asec",mlt=["typed","config","Complex","BigNumber"],V8=X(ebe,mlt,e=>{var{typed:t,config:r,Complex:n,BigNumber:i}=e;return t(ebe,{number:function(o){return o<=-1||o>=1||r.predictable?fZ(o):new n(o,0).asec()},Complex:function(o){return o.asec()},BigNumber:function(o){return new i(1).div(o).acos()}})});var tbe="asech",hlt=["typed","config","Complex","BigNumber"],G8=X(tbe,hlt,e=>{var{typed:t,config:r,Complex:n,BigNumber:i}=e;return t(tbe,{number:function(o){if(o<=1&&o>=-1||r.predictable){var s=1/o;if(s>0||r.predictable)return dZ(o);var l=Math.sqrt(s*s-1);return new n(Math.log(l-s),Math.PI)}return new n(o,0).asech()},Complex:function(o){return o.asech()},BigNumber:function(o){return new i(1).div(o).acosh()}})});var rbe="asin",glt=["typed","config","Complex"],W8=X(rbe,glt,e=>{var{typed:t,config:r,Complex:n}=e;return t(rbe,{number:function(a){return a>=-1&&a<=1||r.predictable?Math.asin(a):new n(a,0).asin()},Complex:function(a){return a.asin()},BigNumber:function(a){return a.asin()}})});var Alt="asinh",vlt=["typed"],Q8=X(Alt,vlt,e=>{var{typed:t}=e;return t("asinh",{number:pZ,Complex:function(n){return n.asinh()},BigNumber:function(n){return n.asinh()}})});var ylt="atan",blt=["typed"],Y8=X(ylt,blt,e=>{var{typed:t}=e;return t("atan",{number:function(n){return Math.atan(n)},Complex:function(n){return n.atan()},BigNumber:function(n){return n.atan()}})});var nbe="atan2",xlt=["typed","matrix","equalScalar","BigNumber","DenseMatrix","concat"],X8=X(nbe,xlt,e=>{var{typed:t,matrix:r,equalScalar:n,BigNumber:i,DenseMatrix:a,concat:o}=e,s=Zo({typed:t,equalScalar:n}),l=ra({typed:t}),u=tB({typed:t,equalScalar:n}),c=wi({typed:t,equalScalar:n}),f=zn({typed:t,DenseMatrix:a}),d=Pr({typed:t,matrix:r,concat:o});return t(nbe,{"number, number":Math.atan2,"BigNumber, BigNumber":(p,h)=>i.atan2(p,h)},d({scalar:"number | BigNumber",SS:u,DS:l,SD:s,Ss:c,sS:f}))});var ibe="atanh",wlt=["typed","config","Complex"],K8=X(ibe,wlt,e=>{var{typed:t,config:r,Complex:n}=e;return t(ibe,{number:function(a){return a<=1&&a>=-1||r.predictable?mZ(a):new n(a,0).atanh()},Complex:function(a){return a.atanh()},BigNumber:function(a){return a.atanh()}})});var Kp=X("trigUnit",["typed"],e=>{var{typed:t}=e;return{Unit:t.referToSelf(r=>n=>{if(!n.hasBase(n.constructor.BASE_UNITS.ANGLE))throw new TypeError("Unit in function cot is no angle");return t.find(r,n.valueType())(n.value)})}});var abe="cos",Slt=["typed"],J8=X(abe,Slt,e=>{var{typed:t}=e,r=Kp({typed:t});return t(abe,{number:Math.cos,"Complex | BigNumber":n=>n.cos()},r)});var obe="cosh",Elt=["typed"],Z8=X(obe,Elt,e=>{var{typed:t}=e;return t(obe,{number:PI,"Complex | BigNumber":r=>r.cosh()})});var sbe="cot",klt=["typed","BigNumber"],e9=X(sbe,klt,e=>{var{typed:t,BigNumber:r}=e,n=Kp({typed:t});return t(sbe,{number:hZ,Complex:i=>i.cot(),BigNumber:i=>new r(1).div(i.tan())},n)});var lbe="coth",Clt=["typed","BigNumber"],t9=X(lbe,Clt,e=>{var{typed:t,BigNumber:r}=e;return t(lbe,{number:gZ,Complex:n=>n.coth(),BigNumber:n=>new r(1).div(n.tanh())})});var ube="csc",Dlt=["typed","BigNumber"],r9=X(ube,Dlt,e=>{var{typed:t,BigNumber:r}=e,n=Kp({typed:t});return t(ube,{number:AZ,Complex:i=>i.csc(),BigNumber:i=>new r(1).div(i.sin())},n)});var cbe="csch",Tlt=["typed","BigNumber"],n9=X(cbe,Tlt,e=>{var{typed:t,BigNumber:r}=e;return t(cbe,{number:vZ,Complex:n=>n.csch(),BigNumber:n=>new r(1).div(n.sinh())})});var fbe="sec",Nlt=["typed","BigNumber"],i9=X(fbe,Nlt,e=>{var{typed:t,BigNumber:r}=e,n=Kp({typed:t});return t(fbe,{number:yZ,Complex:i=>i.sec(),BigNumber:i=>new r(1).div(i.cos())},n)});var dbe="sech",Mlt=["typed","BigNumber"],a9=X(dbe,Mlt,e=>{var{typed:t,BigNumber:r}=e;return t(dbe,{number:bZ,Complex:n=>n.sech(),BigNumber:n=>new r(1).div(n.cosh())})});var pbe="sin",Olt=["typed"],o9=X(pbe,Olt,e=>{var{typed:t}=e,r=Kp({typed:t});return t(pbe,{number:Math.sin,"Complex | BigNumber":n=>n.sin()},r)});var mbe="sinh",Flt=["typed"],s9=X(mbe,Flt,e=>{var{typed:t}=e;return t(mbe,{number:xZ,"Complex | BigNumber":r=>r.sinh()})});var hbe="tan",jlt=["typed"],l9=X(hbe,jlt,e=>{var{typed:t}=e,r=Kp({typed:t});return t(hbe,{number:Math.tan,"Complex | BigNumber":n=>n.tan()},r)});var Plt="tanh",_lt=["typed"],u9=X(Plt,_lt,e=>{var{typed:t}=e;return t("tanh",{number:_I,"Complex | BigNumber":r=>r.tanh()})});var gbe="setCartesian",Ilt=["typed","size","subset","compareNatural","Index","DenseMatrix"],c9=X(gbe,Ilt,e=>{var{typed:t,size:r,subset:n,compareNatural:i,Index:a,DenseMatrix:o}=e;return t(gbe,{"Array | Matrix, Array | Matrix":function(l,u){var c=[];if(n(r(l),new a(0))!==0&&n(r(u),new a(0))!==0){var f=qr(Array.isArray(l)?l:l.toArray()).sort(i),d=qr(Array.isArray(u)?u:u.toArray()).sort(i);c=[];for(var p=0;p<f.length;p++)for(var h=0;h<d.length;h++)c.push([f[p],d[h]])}return Array.isArray(l)&&Array.isArray(u)?c:new o(c)}})});var Abe="setDifference",Blt=["typed","size","subset","compareNatural","Index","DenseMatrix"],f9=X(Abe,Blt,e=>{var{typed:t,size:r,subset:n,compareNatural:i,Index:a,DenseMatrix:o}=e;return t(Abe,{"Array | Matrix, Array | Matrix":function(l,u){var c;if(n(r(l),new a(0))===0)c=[];else{if(n(r(u),new a(0))===0)return qr(l.toArray());var f=D0(qr(Array.isArray(l)?l:l.toArray()).sort(i)),d=D0(qr(Array.isArray(u)?u:u.toArray()).sort(i));c=[];for(var p,h=0;h<f.length;h++){p=!1;for(var m=0;m<d.length;m++)if(i(f[h].value,d[m].value)===0&&f[h].identifier===d[m].identifier){p=!0;break}p||c.push(f[h])}}return Array.isArray(l)&&Array.isArray(u)?ik(c):new o(ik(c))}})});var vbe="setDistinct",Llt=["typed","size","subset","compareNatural","Index","DenseMatrix"],d9=X(vbe,Llt,e=>{var{typed:t,size:r,subset:n,compareNatural:i,Index:a,DenseMatrix:o}=e;return t(vbe,{"Array | Matrix":function(l){var u;if(n(r(l),new a(0))===0)u=[];else{var c=qr(Array.isArray(l)?l:l.toArray()).sort(i);u=[],u.push(c[0]);for(var f=1;f<c.length;f++)i(c[f],c[f-1])!==0&&u.push(c[f])}return Array.isArray(l)?u:new o(u)}})});var ybe="setIntersect",Rlt=["typed","size","subset","compareNatural","Index","DenseMatrix"],p9=X(ybe,Rlt,e=>{var{typed:t,size:r,subset:n,compareNatural:i,Index:a,DenseMatrix:o}=e;return t(ybe,{"Array | Matrix, Array | Matrix":function(l,u){var c;if(n(r(l),new a(0))===0||n(r(u),new a(0))===0)c=[];else{var f=D0(qr(Array.isArray(l)?l:l.toArray()).sort(i)),d=D0(qr(Array.isArray(u)?u:u.toArray()).sort(i));c=[];for(var p=0;p<f.length;p++)for(var h=0;h<d.length;h++)if(i(f[p].value,d[h].value)===0&&f[p].identifier===d[h].identifier){c.push(f[p]);break}}return Array.isArray(l)&&Array.isArray(u)?ik(c):new o(ik(c))}})});var bbe="setIsSubset",qlt=["typed","size","subset","compareNatural","Index"],m9=X(bbe,qlt,e=>{var{typed:t,size:r,subset:n,compareNatural:i,Index:a}=e;return t(bbe,{"Array | Matrix, Array | Matrix":function(s,l){if(n(r(s),new a(0))===0)return!0;if(n(r(l),new a(0))===0)return!1;for(var u=D0(qr(Array.isArray(s)?s:s.toArray()).sort(i)),c=D0(qr(Array.isArray(l)?l:l.toArray()).sort(i)),f,d=0;d<u.length;d++){f=!1;for(var p=0;p<c.length;p++)if(i(u[d].value,c[p].value)===0&&u[d].identifier===c[p].identifier){f=!0;break}if(f===!1)return!1}return!0}})});var xbe="setMultiplicity",$lt=["typed","size","subset","compareNatural","Index"],h9=X(xbe,$lt,e=>{var{typed:t,size:r,subset:n,compareNatural:i,Index:a}=e;return t(xbe,{"number | BigNumber | Fraction | Complex, Array | Matrix":function(s,l){if(n(r(l),new a(0))===0)return 0;for(var u=qr(Array.isArray(l)?l:l.toArray()),c=0,f=0;f<u.length;f++)i(u[f],s)===0&&c++;return c}})});var wbe="setPowerset",zlt=["typed","size","subset","compareNatural","Index"],g9=X(wbe,zlt,e=>{var{typed:t,size:r,subset:n,compareNatural:i,Index:a}=e;return t(wbe,{"Array | Matrix":function(u){if(n(r(u),new a(0))===0)return[];for(var c=qr(Array.isArray(u)?u:u.toArray()).sort(i),f=[],d=0;d.toString(2).length<=c.length;)f.push(o(c,d.toString(2).split("").reverse())),d++;return s(f)}});function o(l,u){for(var c=[],f=0;f<u.length;f++)u[f]==="1"&&c.push(l[f]);return c}function s(l){for(var u=[],c=l.length-1;c>0;c--)for(var f=0;f<c;f++)l[f].length>l[f+1].length&&(u=l[f],l[f]=l[f+1],l[f+1]=u);return l}});var Sbe="setSize",Ult=["typed","compareNatural"],A9=X(Sbe,Ult,e=>{var{typed:t,compareNatural:r}=e;return t(Sbe,{"Array | Matrix":function(i){return Array.isArray(i)?qr(i).length:qr(i.toArray()).length},"Array | Matrix, boolean":function(i,a){if(a===!1||i.length===0)return Array.isArray(i)?qr(i).length:qr(i.toArray()).length;for(var o=qr(Array.isArray(i)?i:i.toArray()).sort(r),s=1,l=1;l<o.length;l++)r(o[l],o[l-1])!==0&&s++;return s}})});var Ebe="setSymDifference",Hlt=["typed","size","concat","subset","setDifference","Index"],v9=X(Ebe,Hlt,e=>{var{typed:t,size:r,concat:n,subset:i,setDifference:a,Index:o}=e;return t(Ebe,{"Array | Matrix, Array | Matrix":function(l,u){if(i(r(l),new o(0))===0)return qr(u);if(i(r(u),new o(0))===0)return qr(l);var c=qr(l),f=qr(u);return n(a(c,f),a(f,c))}})});var kbe="setUnion",Vlt=["typed","size","concat","subset","setIntersect","setSymDifference","Index"],y9=X(kbe,Vlt,e=>{var{typed:t,size:r,concat:n,subset:i,setIntersect:a,setSymDifference:o,Index:s}=e;return t(kbe,{"Array | Matrix, Array | Matrix":function(u,c){if(i(r(u),new s(0))===0)return qr(c);if(i(r(c),new s(0))===0)return qr(u);var f=qr(u),d=qr(c);return n(o(f,d),a(f,d))}})});var Cbe="add",Glt=["typed","matrix","addScalar","equalScalar","DenseMatrix","SparseMatrix","concat"],b9=X(Cbe,Glt,e=>{var{typed:t,matrix:r,addScalar:n,equalScalar:i,DenseMatrix:a,SparseMatrix:o,concat:s}=e,l=oc({typed:t}),u=ck({typed:t,equalScalar:i}),c=qf({typed:t,DenseMatrix:a}),f=Pr({typed:t,matrix:r,concat:s});return t(Cbe,{"any, any":n,"any, any, ...any":t.referToSelf(d=>(p,h,m)=>{for(var v=d(p,h),A=0;A<m.length;A++)v=d(v,m[A]);return v})},f({elop:n,DS:l,SS:u,Ss:c}))});var Dbe="hypot",Wlt=["typed","abs","addScalar","divideScalar","multiplyScalar","sqrt","smaller","isPositive"],x9=X(Dbe,Wlt,e=>{var{typed:t,abs:r,addScalar:n,divideScalar:i,multiplyScalar:a,sqrt:o,smaller:s,isPositive:l}=e;return t(Dbe,{"... number | BigNumber":u,Array:u,Matrix:c=>u(qr(c.toArray()))});function u(c){for(var f=0,d=0,p=0;p<c.length;p++){if(ol(c[p]))throw new TypeError("Unexpected type of argument to hypot");var h=r(c[p]);s(d,h)?(f=a(f,a(i(d,h),i(d,h))),f=n(f,1),d=h):f=n(f,l(h)?a(i(h,d),i(h,d)):h)}return a(d,o(f))}});var Tbe="norm",Qlt=["typed","abs","add","pow","conj","sqrt","multiply","equalScalar","larger","smaller","matrix","ctranspose","eigs"],w9=X(Tbe,Qlt,e=>{var{typed:t,abs:r,add:n,pow:i,conj:a,sqrt:o,multiply:s,equalScalar:l,larger:u,smaller:c,matrix:f,ctranspose:d,eigs:p}=e;return t(Tbe,{number:Math.abs,Complex:function(T){return T.abs()},BigNumber:function(T){return T.abs()},boolean:function(T){return Math.abs(T)},Array:function(T){return y(f(T),2)},Matrix:function(T){return y(T,2)},"Array, number | BigNumber | string":function(T,D){return y(f(T),D)},"Matrix, number | BigNumber | string":function(T,D){return y(T,D)}});function h(S){var T=0;return S.forEach(function(D){var k=r(D);u(k,T)&&(T=k)},!0),T}function m(S){var T;return S.forEach(function(D){var k=r(D);(!T||c(k,T))&&(T=k)},!0),T||0}function v(S,T){if(T===Number.POSITIVE_INFINITY||T==="inf")return h(S);if(T===Number.NEGATIVE_INFINITY||T==="-inf")return m(S);if(T==="fro")return y(S,2);if(typeof T=="number"&&!isNaN(T)){if(!l(T,0)){var D=0;return S.forEach(function(k){D=n(i(r(k),T),D)},!0),i(D,1/T)}return Number.POSITIVE_INFINITY}throw new Error("Unsupported parameter value")}function A(S){var T=0;return S.forEach(function(D,k){T=n(T,s(D,a(D)))}),r(o(T))}function x(S){var T=[],D=0;return S.forEach(function(k,M){var E=M[1],O=n(T[E]||0,r(k));u(O,D)&&(D=O),T[E]=O},!0),D}function g(S){var T=S.size();if(T[0]!==T[1])throw new RangeError("Invalid matrix dimensions");var D=d(S),k=s(D,S),M=p(k).values.toArray(),E=M[M.length-1];return r(o(E))}function w(S){var T=[],D=0;return S.forEach(function(k,M){var E=M[0],O=n(T[E]||0,r(k));u(O,D)&&(D=O),T[E]=O},!0),D}function b(S,T){if(T===1)return x(S);if(T===Number.POSITIVE_INFINITY||T==="inf")return w(S);if(T==="fro")return A(S);if(T===2)return g(S);throw new Error("Unsupported parameter value "+T)}function y(S,T){var D=S.size();if(D.length===1)return v(S,T);if(D.length===2){if(D[0]&&D[1])return b(S,T);throw new RangeError("Invalid matrix dimensions")}}});var Nbe="dot",Ylt=["typed","addScalar","multiplyScalar","conj","size"],S9=X(Nbe,Ylt,e=>{var{typed:t,addScalar:r,multiplyScalar:n,conj:i,size:a}=e;return t(Nbe,{"Array | DenseMatrix, Array | DenseMatrix":s,"SparseMatrix, SparseMatrix":l});function o(c,f){var d=u(c),p=u(f),h,m;if(d.length===1)h=d[0];else if(d.length===2&&d[1]===1)h=d[0];else throw new RangeError("Expected a column vector, instead got a matrix of size ("+d.join(", ")+")");if(p.length===1)m=p[0];else if(p.length===2&&p[1]===1)m=p[0];else throw new RangeError("Expected a column vector, instead got a matrix of size ("+p.join(", ")+")");if(h!==m)throw new RangeError("Vectors must have equal length ("+h+" != "+m+")");if(h===0)throw new RangeError("Cannot calculate the dot product of empty vectors");return h}function s(c,f){var d=o(c,f),p=jt(c)?c._data:c,h=jt(c)?c._datatype||c.getDataType():void 0,m=jt(f)?f._data:f,v=jt(f)?f._datatype||f.getDataType():void 0,A=u(c).length===2,x=u(f).length===2,g=r,w=n;if(h&&v&&h===v&&typeof h=="string"&&h!=="mixed"){var b=h;g=t.find(r,[b,b]),w=t.find(n,[b,b])}if(!A&&!x){for(var y=w(i(p[0]),m[0]),S=1;S<d;S++)y=g(y,w(i(p[S]),m[S]));return y}if(!A&&x){for(var T=w(i(p[0]),m[0][0]),D=1;D<d;D++)T=g(T,w(i(p[D]),m[D][0]));return T}if(A&&!x){for(var k=w(i(p[0][0]),m[0]),M=1;M<d;M++)k=g(k,w(i(p[M][0]),m[M]));return k}if(A&&x){for(var E=w(i(p[0][0]),m[0][0]),O=1;O<d;O++)E=g(E,w(i(p[O][0]),m[O][0]));return E}}function l(c,f){o(c,f);for(var d=c._index,p=c._values,h=f._index,m=f._values,v=0,A=r,x=n,g=0,w=0;g<d.length&&w<h.length;){var b=d[g],y=h[w];if(b<y){g++;continue}if(b>y){w++;continue}b===y&&(v=A(v,x(p[g],m[w])),g++,w++)}return v}function u(c){return jt(c)?c.size():a(c)}});var Xlt="trace",Klt=["typed","matrix","add"],E9=X(Xlt,Klt,e=>{var{typed:t,matrix:r,add:n}=e;return t("trace",{Array:function(s){return i(r(s))},SparseMatrix:a,DenseMatrix:i,any:nr});function i(o){var s=o._size,l=o._data;switch(s.length){case 1:if(s[0]===1)return nr(l[0]);throw new RangeError("Matrix must be square (size: "+Er(s)+")");case 2:{var u=s[0],c=s[1];if(u===c){for(var f=0,d=0;d<u;d++)f=n(f,l[d][d]);return f}else throw new RangeError("Matrix must be square (size: "+Er(s)+")")}default:throw new RangeError("Matrix must be two dimensional (size: "+Er(s)+")")}}function a(o){var s=o._values,l=o._index,u=o._ptr,c=o._size,f=c[0],d=c[1];if(f===d){var p=0;if(s.length>0)for(var h=0;h<d;h++)for(var m=u[h],v=u[h+1],A=m;A<v;A++){var x=l[A];if(x===h){p=n(p,s[A]);break}if(x>h)break}return p}throw new RangeError("Matrix must be square (size: "+Er(c)+")")}});var Mbe="index",Jlt=["typed","Index"],k9=X(Mbe,Jlt,e=>{var{typed:t,Index:r}=e;return t(Mbe,{"...number | string | BigNumber | Range | Array | Matrix":function(i){var a=i.map(function(s){return er(s)?s.toNumber():mn(s)||jt(s)?s.map(function(l){return er(l)?l.toNumber():l}):s}),o=new r;return r.apply(o,a),o}})});var C9=new Set(["end"]);var Zlt="Node",eut=["mathWithTransform"],D9=X(Zlt,eut,e=>{var{mathWithTransform:t}=e;function r(i){for(var a of[...C9])if(i.has(a))throw new Error('Scope contains an illegal symbol, "'+a+'" is a reserved keyword')}class n{get type(){return"Node"}get isNode(){return!0}evaluate(a){return this.compile().evaluate(a)}compile(){var a=this._compile(t,{}),o={},s=null;function l(u){var c=k0(u);return r(c),a(c,o,s)}return{evaluate:l}}_compile(a,o){throw new Error("Method _compile must be implemented by type "+this.type)}forEach(a){throw new Error("Cannot run forEach on a Node interface")}map(a){throw new Error("Cannot run map on a Node interface")}_ifNode(a){if(!an(a))throw new TypeError("Callback function must return a Node");return a}traverse(a){a(this,null,null);function o(s,l){s.forEach(function(u,c,f){l(u,c,f),o(u,l)})}o(this,a)}transform(a){function o(s,l,u){var c=a(s,l,u);return c!==s?c:s.map(o)}return o(this,null,null)}filter(a){var o=[];return this.traverse(function(s,l,u){a(s,l,u)&&o.push(s)}),o}clone(){throw new Error("Cannot clone a Node interface")}cloneDeep(){return this.map(function(a){return a.cloneDeep()})}equals(a){return a?this.type===a.type&&eh(this,a):!1}toString(a){var o=this._getCustomString(a);return typeof o<"u"?o:this._toString(a)}_toString(){throw new Error("_toString not implemented for "+this.type)}toJSON(){throw new Error("Cannot serialize object: toJSON not implemented by "+this.type)}toHTML(a){var o=this._getCustomString(a);return typeof o<"u"?o:this._toHTML(a)}_toHTML(){throw new Error("_toHTML not implemented for "+this.type)}toTex(a){var o=this._getCustomString(a);return typeof o<"u"?o:this._toTex(a)}_toTex(a){throw new Error("_toTex not implemented for "+this.type)}_getCustomString(a){if(a&&typeof a=="object")switch(typeof a.handler){case"object":case"undefined":return;case"function":return a.handler(this,a);default:throw new TypeError("Object or function expected as callback")}}getIdentifier(){return this.type}getContent(){return this}}return n},{isClass:!0,isNode:!0});function na(e){return e&&e.isIndexError?new fl(e.index+1,e.min+1,e.max!==void 0?e.max+1:void 0):e}function T9(e){var{subset:t}=e;return function(n,i){try{if(Array.isArray(n))return t(n,i);if(n&&typeof n.subset=="function")return n.subset(i);if(typeof n=="string")return t(n,i);if(typeof n=="object"){if(!i.isObjectProperty())throw new TypeError("Cannot apply a numeric index as object property");return Oa(n,i.getObjectProperty())}else throw new TypeError("Cannot apply index: unsupported type of object")}catch(a){throw na(a)}}}var N9="AccessorNode",tut=["subset","Node"],M9=X(N9,tut,e=>{var{subset:t,Node:r}=e,n=T9({subset:t});function i(o){return!(Yc(o)||sl(o)||Hr(o)||du(o)||vg(o)||ll(o)||Oi(o))}class a extends r{constructor(s,l){if(super(),!an(s))throw new TypeError('Node expected for parameter "object"');if(!If(l))throw new TypeError('IndexNode expected for parameter "index"');this.object=s,this.index=l}get name(){return this.index?this.index.isObjectProperty()?this.index.getObjectProperty():"":this.object.name||""}get type(){return N9}get isAccessorNode(){return!0}_compile(s,l){var u=this.object._compile(s,l),c=this.index._compile(s,l);if(this.index.isObjectProperty()){var f=this.index.getObjectProperty();return function(p,h,m){return Oa(u(p,h,m),f)}}else return function(p,h,m){var v=u(p,h,m),A=c(p,h,v);return n(v,A)}}forEach(s){s(this.object,"object",this),s(this.index,"index",this)}map(s){return new a(this._ifNode(s(this.object,"object",this)),this._ifNode(s(this.index,"index",this)))}clone(){return new a(this.object,this.index)}_toString(s){var l=this.object.toString(s);return i(this.object)&&(l="("+l+")"),l+this.index.toString(s)}_toHTML(s){var l=this.object.toHTML(s);return i(this.object)&&(l='<span class="math-parenthesis math-round-parenthesis">(</span>'+l+'<span class="math-parenthesis math-round-parenthesis">)</span>'),l+this.index.toHTML(s)}_toTex(s){var l=this.object.toTex(s);return i(this.object)&&(l="\\left(' + object + '\\right)"),l+this.index.toTex(s)}toJSON(){return{mathjs:N9,object:this.object,index:this.index}}static fromJSON(s){return new a(s.object,s.index)}}return ai(a,"name",N9),a},{isClass:!0,isNode:!0});var O9="ArrayNode",rut=["Node"],F9=X(O9,rut,e=>{var{Node:t}=e;class r extends t{constructor(i){if(super(),this.items=i||[],!Array.isArray(this.items)||!this.items.every(an))throw new TypeError("Array containing Nodes expected")}get type(){return O9}get isArrayNode(){return!0}_compile(i,a){var o=Lf(this.items,function(u){return u._compile(i,a)}),s=i.config.matrix!=="Array";if(s){var l=i.matrix;return function(c,f,d){return l(Lf(o,function(p){return p(c,f,d)}))}}else return function(c,f,d){return Lf(o,function(p){return p(c,f,d)})}}forEach(i){for(var a=0;a<this.items.length;a++){var o=this.items[a];i(o,"items["+a+"]",this)}}map(i){for(var a=[],o=0;o<this.items.length;o++)a[o]=this._ifNode(i(this.items[o],"items["+o+"]",this));return new r(a)}clone(){return new r(this.items.slice(0))}_toString(i){var a=this.items.map(function(o){return o.toString(i)});return"["+a.join(", ")+"]"}toJSON(){return{mathjs:O9,items:this.items}}static fromJSON(i){return new r(i.items)}_toHTML(i){var a=this.items.map(function(o){return o.toHTML(i)});return'<span class="math-parenthesis math-square-parenthesis">[</span>'+a.join('<span class="math-separator">,</span>')+'<span class="math-parenthesis math-square-parenthesis">]</span>'}_toTex(i){function a(o,s){var l=o.some(sl)&&!o.every(sl),u=s||l,c=u?"&":"\\\\",f=o.map(function(d){return d.items?a(d.items,!s):d.toTex(i)}).join(c);return l||!u||u&&!s?"\\begin{bmatrix}"+f+"\\end{bmatrix}":f}return a(this.items,!1)}}return ai(r,"name",O9),r},{isClass:!0,isNode:!0});function Obe(e){var{subset:t,matrix:r}=e;return function(i,a,o){try{if(Array.isArray(i)){var s=r(i).subset(a,o).valueOf();return s.forEach((l,u)=>{i[u]=l}),i}else{if(i&&typeof i.subset=="function")return i.subset(a,o);if(typeof i=="string")return t(i,a,o);if(typeof i=="object"){if(!a.isObjectProperty())throw TypeError("Cannot apply a numeric index as object property");return yg(i,a.getObjectProperty(),o),i}else throw new TypeError("Cannot apply index: unsupported type of object")}}catch(l){throw na(l)}}}var Jp=[{AssignmentNode:{},FunctionAssignmentNode:{}},{ConditionalNode:{latexLeftParens:!1,latexRightParens:!1,latexParens:!1}},{"OperatorNode:or":{op:"or",associativity:"left",associativeWith:[]}},{"OperatorNode:xor":{op:"xor",associativity:"left",associativeWith:[]}},{"OperatorNode:and":{op:"and",associativity:"left",associativeWith:[]}},{"OperatorNode:bitOr":{op:"|",associativity:"left",associativeWith:[]}},{"OperatorNode:bitXor":{op:"^|",associativity:"left",associativeWith:[]}},{"OperatorNode:bitAnd":{op:"&",associativity:"left",associativeWith:[]}},{"OperatorNode:equal":{op:"==",associativity:"left",associativeWith:[]},"OperatorNode:unequal":{op:"!=",associativity:"left",associativeWith:[]},"OperatorNode:smaller":{op:"<",associativity:"left",associativeWith:[]},"OperatorNode:larger":{op:">",associativity:"left",associativeWith:[]},"OperatorNode:smallerEq":{op:"<=",associativity:"left",associativeWith:[]},"OperatorNode:largerEq":{op:">=",associativity:"left",associativeWith:[]},RelationalNode:{associativity:"left",associativeWith:[]}},{"OperatorNode:leftShift":{op:"<<",associativity:"left",associativeWith:[]},"OperatorNode:rightArithShift":{op:">>",associativity:"left",associativeWith:[]},"OperatorNode:rightLogShift":{op:">>>",associativity:"left",associativeWith:[]}},{"OperatorNode:to":{op:"to",associativity:"left",associativeWith:[]}},{RangeNode:{}},{"OperatorNode:add":{op:"+",associativity:"left",associativeWith:["OperatorNode:add","OperatorNode:subtract"]},"OperatorNode:subtract":{op:"-",associativity:"left",associativeWith:[]}},{"OperatorNode:multiply":{op:"*",associativity:"left",associativeWith:["OperatorNode:multiply","OperatorNode:divide","Operator:dotMultiply","Operator:dotDivide"]},"OperatorNode:divide":{op:"/",associativity:"left",associativeWith:[],latexLeftParens:!1,latexRightParens:!1,latexParens:!1},"OperatorNode:dotMultiply":{op:".*",associativity:"left",associativeWith:["OperatorNode:multiply","OperatorNode:divide","OperatorNode:dotMultiply","OperatorNode:doDivide"]},"OperatorNode:dotDivide":{op:"./",associativity:"left",associativeWith:[]},"OperatorNode:mod":{op:"mod",associativity:"left",associativeWith:[]}},{"OperatorNode:multiply":{associativity:"left",associativeWith:["OperatorNode:multiply","OperatorNode:divide","Operator:dotMultiply","Operator:dotDivide"]}},{"OperatorNode:unaryPlus":{op:"+",associativity:"right"},"OperatorNode:unaryMinus":{op:"-",associativity:"right"},"OperatorNode:bitNot":{op:"~",associativity:"right"},"OperatorNode:not":{op:"not",associativity:"right"}},{"OperatorNode:pow":{op:"^",associativity:"right",associativeWith:[],latexRightParens:!1},"OperatorNode:dotPow":{op:".^",associativity:"right",associativeWith:[]}},{"OperatorNode:factorial":{op:"!",associativity:"left"}},{"OperatorNode:ctranspose":{op:"'",associativity:"left"}}];function j9(e,t){if(!t||t!=="auto")return e;for(var r=e;ll(r);)r=r.content;return r}function hi(e,t,r,n){var i=e;t!=="keep"&&(i=e.getContent());for(var a=i.getIdentifier(),o=null,s=0;s<Jp.length;s++)if(a in Jp[s]){o=s;break}if(a==="OperatorNode:multiply"&&i.implicit&&r!=="show"){var l=j9(i.args[0],t);!(Hr(l)&&n&&n.getIdentifier()==="OperatorNode:divide"&&l3(j9(n.args[0],t)))&&!(l.getIdentifier()==="OperatorNode:divide"&&l3(j9(l.args[0],t))&&Hr(j9(l.args[1])))&&(o+=1)}return o}function Mk(e,t){var r=e;t!=="keep"&&(r=e.getContent());var n=r.getIdentifier(),i=hi(r,t);if(i===null)return null;var a=Jp[i][n];if(Pt(a,"associativity")){if(a.associativity==="left")return"left";if(a.associativity==="right")return"right";throw Error("'"+n+"' has the invalid associativity '"+a.associativity+"'.")}return null}function P9(e,t,r){var n=r!=="keep"?e.getContent():e,i=r!=="keep"?e.getContent():t,a=n.getIdentifier(),o=i.getIdentifier(),s=hi(n,r);if(s===null)return null;var l=Jp[s][a];if(Pt(l,"associativeWith")&&l.associativeWith instanceof Array){for(var u=0;u<l.associativeWith.length;u++)if(l.associativeWith[u]===o)return!0;return!1}return null}function Fbe(e){var t="OperatorNode:"+e;for(var r of Jp)if(t in r)return r[t].op;return null}var _9="AssignmentNode",nut=["subset","?matrix","Node"],I9=X(_9,nut,e=>{var{subset:t,matrix:r,Node:n}=e,i=T9({subset:t}),a=Obe({subset:t,matrix:r});function o(l,u,c){u||(u="keep");var f=hi(l,u,c),d=hi(l.value,u,c);return u==="all"||d!==null&&d<=f}class s extends n{constructor(u,c,f){if(super(),this.object=u,this.index=f?c:null,this.value=f||c,!Oi(u)&&!Yc(u))throw new TypeError('SymbolNode or AccessorNode expected as "object"');if(Oi(u)&&u.name==="end")throw new Error('Cannot assign to symbol "end"');if(this.index&&!If(this.index))throw new TypeError('IndexNode expected as "index"');if(!an(this.value))throw new TypeError('Node expected as "value"')}get name(){return this.index?this.index.isObjectProperty()?this.index.getObjectProperty():"":this.object.name||""}get type(){return _9}get isAssignmentNode(){return!0}_compile(u,c){var f=this.object._compile(u,c),d=this.index?this.index._compile(u,c):null,p=this.value._compile(u,c),h=this.object.name;if(this.index)if(this.index.isObjectProperty()){var m=this.index.getObjectProperty();return function(w,b,y){var S=f(w,b,y),T=p(w,b,y);return yg(S,m,T),T}}else{if(Oi(this.object))return function(w,b,y){var S=f(w,b,y),T=p(w,b,y),D=d(w,b,S);return w.set(h,a(S,D,T)),T};var v=this.object.object._compile(u,c);if(this.object.index.isObjectProperty()){var A=this.object.index.getObjectProperty();return function(w,b,y){var S=v(w,b,y),T=Oa(S,A),D=d(w,b,T),k=p(w,b,y);return yg(S,A,a(T,D,k)),k}}else{var x=this.object.index._compile(u,c);return function(w,b,y){var S=v(w,b,y),T=x(w,b,S),D=i(S,T),k=d(w,b,D),M=p(w,b,y);return a(S,T,a(D,k,M)),M}}}else{if(!Oi(this.object))throw new TypeError("SymbolNode expected as object");return function(w,b,y){var S=p(w,b,y);return w.set(h,S),S}}}forEach(u){u(this.object,"object",this),this.index&&u(this.index,"index",this),u(this.value,"value",this)}map(u){var c=this._ifNode(u(this.object,"object",this)),f=this.index?this._ifNode(u(this.index,"index",this)):null,d=this._ifNode(u(this.value,"value",this));return new s(c,f,d)}clone(){return new s(this.object,this.index,this.value)}_toString(u){var c=this.object.toString(u),f=this.index?this.index.toString(u):"",d=this.value.toString(u);return o(this,u&&u.parenthesis,u&&u.implicit)&&(d="("+d+")"),c+f+" = "+d}toJSON(){return{mathjs:_9,object:this.object,index:this.index,value:this.value}}static fromJSON(u){return new s(u.object,u.index,u.value)}_toHTML(u){var c=this.object.toHTML(u),f=this.index?this.index.toHTML(u):"",d=this.value.toHTML(u);return o(this,u&&u.parenthesis,u&&u.implicit)&&(d='<span class="math-paranthesis math-round-parenthesis">(</span>'+d+'<span class="math-paranthesis math-round-parenthesis">)</span>'),c+f+'<span class="math-operator math-assignment-operator math-variable-assignment-operator math-binary-operator">=</span>'+d}_toTex(u){var c=this.object.toTex(u),f=this.index?this.index.toTex(u):"",d=this.value.toTex(u);return o(this,u&&u.parenthesis,u&&u.implicit)&&(d="\\left(".concat(d,"\\right)")),c+f+"="+d}}return ai(s,"name",_9),s},{isClass:!0,isNode:!0});var B9="BlockNode",iut=["ResultSet","Node"],L9=X(B9,iut,e=>{var{ResultSet:t,Node:r}=e;class n extends r{constructor(a){if(super(),!Array.isArray(a))throw new Error("Array expected");this.blocks=a.map(function(o){var s=o&&o.node,l=o&&o.visible!==void 0?o.visible:!0;if(!an(s))throw new TypeError('Property "node" must be a Node');if(typeof l!="boolean")throw new TypeError('Property "visible" must be a boolean');return{node:s,visible:l}})}get type(){return B9}get isBlockNode(){return!0}_compile(a,o){var s=Lf(this.blocks,function(l){return{evaluate:l.node._compile(a,o),visible:l.visible}});return function(u,c,f){var d=[];return F1(s,function(h){var m=h.evaluate(u,c,f);h.visible&&d.push(m)}),new t(d)}}forEach(a){for(var o=0;o<this.blocks.length;o++)a(this.blocks[o].node,"blocks["+o+"].node",this)}map(a){for(var o=[],s=0;s<this.blocks.length;s++){var l=this.blocks[s],u=this._ifNode(a(l.node,"blocks["+s+"].node",this));o[s]={node:u,visible:l.visible}}return new n(o)}clone(){var a=this.blocks.map(function(o){return{node:o.node,visible:o.visible}});return new n(a)}_toString(a){return this.blocks.map(function(o){return o.node.toString(a)+(o.visible?"":";")}).join(`

Callers 1

LxFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected