@abi-software/simulationvuer 2.0.18-demo.0 → 2.0.18-demo.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -75,6 +75,6 @@ q: `+this.q.toString():"")+`
|
|
|
75
75
|
`),n.seealso&&n.seealso.length&&(a+="See also: "+n.seealso.join(", ")+`
|
|
76
76
|
`),a},t.prototype.toJSON=function(){var n=Fe(this.doc);return n.mathjs="Help",n},t.fromJSON=function(n){var a={};return Object.keys(n).filter(i=>i!=="mathjs").forEach(i=>{a[i]=n[i]}),new t(a)},t.prototype.valueOf=t.prototype.toString,t},{isClass:!0}),a6="Chain",i6=["?on","math","typed"],o6=P(a6,i6,e=>{var{on:r,math:t,typed:n}=e;function a(s){if(!(this instanceof a))throw new SyntaxError("Constructor must be called with the new operator");du(s)?this.value=s.value:this.value=s}a.prototype.type="Chain",a.prototype.isChain=!0,a.prototype.done=function(){return this.value},a.prototype.valueOf=function(){return this.value},a.prototype.toString=function(){return Ve(this.value)},a.prototype.toJSON=function(){return{mathjs:"Chain",value:this.value}},a.fromJSON=function(s){return new a(s.value)};function i(s,c){typeof c=="function"&&(a.prototype[s]=l(c))}function o(s,c){Xi(a.prototype,s,function(){var d=c();if(typeof d=="function")return l(d)})}function l(s){return function(){if(arguments.length===0)return new a(s(this.value));for(var c=[this.value],f=0;f<arguments.length;f++)c[f+1]=arguments[f];if(n.isTypedFunction(s)){var d=n.resolve(s,c);if(d.params.length===1)throw new Error("chain function "+s.name+" cannot match rest parameter between chain value and additional arguments.");return new a(d.implementation.apply(s,c))}return new a(s.apply(s,c))}}a.createProxy=function(s,c){if(typeof s=="string")i(s,c);else{var f=function(v){De(s,v)&&u[v]===void 0&&o(v,()=>s[v])};for(var d in s)f(d)}};var u={expression:!0,docs:!0,type:!0,classes:!0,json:!0,error:!0,isChain:!0};return a.createProxy(t),r&&r("import",function(s,c,f){f||o(s,c)}),a},{isClass:!0}),tg={name:"e",category:"Constants",syntax:["e"],description:"Euler's number, the base of the natural logarithm. Approximately equal to 2.71828",examples:["e","e ^ 2","exp(2)","log(e)"],seealso:["exp"]},s6={name:"false",category:"Constants",syntax:["false"],description:"Boolean value false",examples:["false"],seealso:["true"]},u6={name:"i",category:"Constants",syntax:["i"],description:"Imaginary unit, defined as i*i=-1. A complex number is described as a + b*i, where a is the real part, and b is the imaginary part.",examples:["i","i * i","sqrt(-1)"],seealso:[]},l6={name:"Infinity",category:"Constants",syntax:["Infinity"],description:"Infinity, a number which is larger than the maximum number that can be handled by a floating point number.",examples:["Infinity","1 / 0"],seealso:[]},c6={name:"LN10",category:"Constants",syntax:["LN10"],description:"Returns the natural logarithm of 10, approximately equal to 2.302",examples:["LN10","log(10)"],seealso:[]},f6={name:"LN2",category:"Constants",syntax:["LN2"],description:"Returns the natural logarithm of 2, approximately equal to 0.693",examples:["LN2","log(2)"],seealso:[]},d6={name:"LOG10E",category:"Constants",syntax:["LOG10E"],description:"Returns the base-10 logarithm of E, approximately equal to 0.434",examples:["LOG10E","log(e, 10)"],seealso:[]},m6={name:"LOG2E",category:"Constants",syntax:["LOG2E"],description:"Returns the base-2 logarithm of E, approximately equal to 1.442",examples:["LOG2E","log(e, 2)"],seealso:[]},p6={name:"NaN",category:"Constants",syntax:["NaN"],description:"Not a number",examples:["NaN","0 / 0"],seealso:[]},v6={name:"null",category:"Constants",syntax:["null"],description:"Value null",examples:["null"],seealso:["true","false"]},h6={name:"phi",category:"Constants",syntax:["phi"],description:"Phi is the golden ratio. Two quantities are in the golden ratio if their ratio is the same as the ratio of their sum to the larger of the two quantities. Phi is defined as `(1 + sqrt(5)) / 2` and is approximately 1.618034...",examples:["phi"],seealso:[]},ng={name:"pi",category:"Constants",syntax:["pi"],description:"The number pi is a mathematical constant that is the ratio of a circle's circumference to its diameter, and is approximately equal to 3.14159",examples:["pi","sin(pi/2)"],seealso:["tau"]},g6={name:"SQRT1_2",category:"Constants",syntax:["SQRT1_2"],description:"Returns the square root of 1/2, approximately equal to 0.707",examples:["SQRT1_2","sqrt(1/2)"],seealso:[]},y6={name:"SQRT2",category:"Constants",syntax:["SQRT2"],description:"Returns the square root of 2, approximately equal to 1.414",examples:["SQRT2","sqrt(2)"],seealso:[]},b6={name:"tau",category:"Constants",syntax:["tau"],description:"Tau is the ratio constant of a circle's circumference to radius, equal to 2 * pi, approximately 6.2832.",examples:["tau","2 * pi"],seealso:["pi"]},w6={name:"true",category:"Constants",syntax:["true"],description:"Boolean value true",examples:["true"],seealso:["false"]},x6={name:"version",category:"Constants",syntax:["version"],description:"A string with the version number of math.js",examples:["version"],seealso:[]},N6={name:"bignumber",category:"Construction",syntax:["bignumber(x)"],description:"Create a big number from a number or string.",examples:["0.1 + 0.2","bignumber(0.1) + bignumber(0.2)",'bignumber("7.2")','bignumber("7.2e500")',"bignumber([0.1, 0.2, 0.3])"],seealso:["boolean","bigint","complex","fraction","index","matrix","string","unit"]},A6={name:"bigint",category:"Construction",syntax:["bigint(x)"],description:"Create a bigint, an integer with an arbitrary number of digits, from a number or string.",examples:["123123123123123123 # a large number will lose digits",'bigint("123123123123123123")','bignumber(["1", "3", "5"])'],seealso:["boolean","bignumber","number","complex","fraction","index","matrix","string","unit"]},E6={name:"boolean",category:"Construction",syntax:["x","boolean(x)"],description:"Convert a string or number into a boolean.",examples:["boolean(0)","boolean(1)","boolean(3)",'boolean("true")','boolean("false")',"boolean([1, 0, 1, 1])"],seealso:["bignumber","complex","index","matrix","number","string","unit"]},D6={name:"complex",category:"Construction",syntax:["complex()","complex(re, im)","complex(string)"],description:"Create a complex number.",examples:["complex()","complex(2, 3)",'complex("7 - 2i")'],seealso:["bignumber","boolean","index","matrix","number","string","unit"]},S6={name:"createUnit",category:"Construction",syntax:["createUnit(definitions)","createUnit(name, definition)"],description:"Create a user-defined unit and register it with the Unit type.",examples:['createUnit("foo")','createUnit("knot", {definition: "0.514444444 m/s", aliases: ["knots", "kt", "kts"]})','createUnit("mph", "1 mile/hour")'],seealso:["unit","splitUnit"]},C6={name:"fraction",category:"Construction",syntax:["fraction(num)","fraction(matrix)","fraction(num,den)","fraction({n: num, d: den})"],description:"Create a fraction from a number or from integer numerator and denominator.",examples:["fraction(0.125)","fraction(1, 3) + fraction(2, 5)","fraction({n: 333, d: 53})","fraction([sqrt(9), sqrt(10), sqrt(11)])"],seealso:["bignumber","boolean","complex","index","matrix","string","unit"]},M6={name:"index",category:"Construction",syntax:["[start]","[start:end]","[start:step:end]","[start1, start 2, ...]","[start1:end1, start2:end2, ...]","[start1:step1:end1, start2:step2:end2, ...]"],description:"Create an index to get or replace a subset of a matrix",examples:["A = [1, 2, 3; 4, 5, 6]","A[1, :]","A[1, 2] = 50","A[1:2, 1:2] = 1","B = [1, 2, 3]","B[B>1 and B<3]"],seealso:["bignumber","boolean","complex","matrix,","number","range","string","unit"]},_6={name:"matrix",category:"Construction",syntax:["[]","[a1, b1, ...; a2, b2, ...]","matrix()",'matrix("dense")',"matrix([...])"],description:"Create a matrix.",examples:["[]","[1, 2, 3]","[1, 2, 3; 4, 5, 6]","matrix()","matrix([3, 4])",'matrix([3, 4; 5, 6], "sparse")','matrix([3, 4; 5, 6], "sparse", "number")'],seealso:["bignumber","boolean","complex","index","number","string","unit","sparse"]},T6={name:"number",category:"Construction",syntax:["x","number(x)","number(unit, valuelessUnit)"],description:"Create a number or convert a string or boolean into a number.",examples:["2","2e3","4.05","number(2)",'number("7.2")',"number(true)","number([true, false, true, true])",'number(unit("52cm"), "m")'],seealso:["bignumber","bigint","boolean","complex","fraction","index","matrix","string","unit"]},F6={name:"sparse",category:"Construction",syntax:["sparse()","sparse([a1, b1, ...; a1, b2, ...])",'sparse([a1, b1, ...; a1, b2, ...], "number")'],description:"Create a sparse matrix.",examples:["sparse()","sparse([3, 4; 5, 6])",'sparse([3, 0; 5, 0], "number")'],seealso:["bignumber","boolean","complex","index","number","string","unit","matrix"]},B6={name:"splitUnit",category:"Construction",syntax:["splitUnit(unit: Unit, parts: Unit[])"],description:"Split a unit in an array of units whose sum is equal to the original unit.",examples:['splitUnit(1 m, ["feet", "inch"])'],seealso:["unit","createUnit"]},O6={name:"string",category:"Construction",syntax:['"text"',"string(x)"],description:"Create a string or convert a value to a string",examples:['"Hello World!"',"string(4.2)","string(3 + 2i)"],seealso:["bignumber","boolean","complex","index","matrix","number","unit"]},$6={name:"unit",category:"Construction",syntax:["value unit","unit(value, unit)","unit(string)"],description:"Create a unit.",examples:["5.5 mm","3 inch",'unit(7.1, "kilogram")','unit("23 deg")'],seealso:["bignumber","boolean","complex","index","matrix","number","string"]},I6={name:"config",category:"Core",syntax:["config()","config(options)"],description:"Get configuration or change configuration.",examples:["config()","1/3 + 1/4",'config({number: "Fraction"})',"1/3 + 1/4"],seealso:[]},R6={name:"import",category:"Core",syntax:["import(functions)","import(functions, options)"],description:"Import functions or constants from an object.",examples:["import({myFn: f(x)=x^2, myConstant: 32 })","myFn(2)","myConstant"],seealso:[]},z6={name:"typed",category:"Core",syntax:["typed(signatures)","typed(name, signatures)"],description:"Create a typed function.",examples:['double = typed({ "number": f(x)=x+x, "string": f(x)=concat(x,x) })',"double(2)",'double("hello")'],seealso:[]},P6={name:"derivative",category:"Algebra",syntax:["derivative(expr, variable)","derivative(expr, variable, {simplify: boolean})"],description:"Takes the derivative of an expression expressed in parser Nodes. The derivative will be taken over the supplied variable in the second parameter. If there are multiple variables in the expression, it will return a partial derivative.",examples:['derivative("2x^3", "x")','derivative("2x^3", "x", {simplify: false})','derivative("2x^2 + 3x + 4", "x")','derivative("sin(2x)", "x")','f = parse("x^2 + x")','x = parse("x")',"df = derivative(f, x)","df.evaluate({x: 3})"],seealso:["simplify","parse","evaluate"]},k6={name:"leafCount",category:"Algebra",syntax:["leafCount(expr)"],description:"Computes the number of leaves in the parse tree of the given expression",examples:['leafCount("e^(i*pi)-1")','leafCount(parse("{a: 22/7, b: 10^(1/2)}"))'],seealso:["simplify"]},q6={name:"lsolve",category:"Algebra",syntax:["x=lsolve(L, b)"],description:"Finds one solution of the linear system L * x = b where L is an [n x n] lower triangular matrix and b is a [n] column vector.",examples:["a = [-2, 3; 2, 1]","b = [11, 9]","x = lsolve(a, b)"],seealso:["lsolveAll","lup","lusolve","usolve","matrix","sparse"]},L6={name:"lsolveAll",category:"Algebra",syntax:["x=lsolveAll(L, b)"],description:"Finds all solutions of the linear system L * x = b where L is an [n x n] lower triangular matrix and b is a [n] column vector.",examples:["a = [-2, 3; 2, 1]","b = [11, 9]","x = lsolve(a, b)"],seealso:["lsolve","lup","lusolve","usolve","matrix","sparse"]},V6={name:"lup",category:"Algebra",syntax:["lup(m)"],description:"Calculate the Matrix LU decomposition with partial pivoting. Matrix A is decomposed in three matrices (L, U, P) where P * A = L * U",examples:["lup([[2, 1], [1, 4]])","lup(matrix([[2, 1], [1, 4]]))","lup(sparse([[2, 1], [1, 4]]))"],seealso:["lusolve","lsolve","usolve","matrix","sparse","slu","qr"]},U6={name:"lusolve",category:"Algebra",syntax:["x=lusolve(A, b)","x=lusolve(lu, b)"],description:"Solves the linear system A * x = b where A is an [n x n] matrix and b is a [n] column vector.",examples:["a = [-2, 3; 2, 1]","b = [11, 9]","x = lusolve(a, b)"],seealso:["lup","slu","lsolve","usolve","matrix","sparse"]},H6={name:"polynomialRoot",category:"Algebra",syntax:["x=polynomialRoot(-6, 3)","x=polynomialRoot(4, -4, 1)","x=polynomialRoot(-8, 12, -6, 1)"],description:"Finds the roots of a univariate polynomial given by its coefficients starting from constant, linear, and so on, increasing in degree.",examples:["a = polynomialRoot(-6, 11, -6, 1)"],seealso:["cbrt","sqrt"]},Z6={name:"qr",category:"Algebra",syntax:["qr(A)"],description:"Calculates the Matrix QR decomposition. Matrix `A` is decomposed in two matrices (`Q`, `R`) where `Q` is an orthogonal matrix and `R` is an upper triangular matrix.",examples:["qr([[1, -1, 4], [1, 4, -2], [1, 4, 2], [1, -1, 0]])"],seealso:["lup","slu","matrix"]},G6={name:"rationalize",category:"Algebra",syntax:["rationalize(expr)","rationalize(expr, scope)","rationalize(expr, scope, detailed)"],description:"Transform a rationalizable expression in a rational fraction. If rational fraction is one variable polynomial then converts the numerator and denominator in canonical form, with decreasing exponents, returning the coefficients of numerator.",examples:['rationalize("2x/y - y/(x+1)")','rationalize("2x/y - y/(x+1)", true)'],seealso:["simplify"]},W6={name:"resolve",category:"Algebra",syntax:["resolve(node, scope)"],description:"Recursively substitute variables in an expression tree.",examples:['resolve(parse("1 + x"), { x: 7 })','resolve(parse("size(text)"), { text: "Hello World" })','resolve(parse("x + y"), { x: parse("3z") })','resolve(parse("3x"), { x: parse("y+z"), z: parse("w^y") })'],seealso:["simplify","evaluate"],mayThrow:["ReferenceError"]},j6={name:"simplify",category:"Algebra",syntax:["simplify(expr)","simplify(expr, rules)"],description:"Simplify an expression tree.",examples:['simplify("3 + 2 / 4")','simplify("2x + x")','f = parse("x * (x + 2 + x)")',"simplified = simplify(f)","simplified.evaluate({x: 2})"],seealso:["simplifyCore","derivative","evaluate","parse","rationalize","resolve"]},K6={name:"simplifyConstant",category:"Algebra",syntax:["simplifyConstant(expr)","simplifyConstant(expr, options)"],description:"Replace constant subexpressions of node with their values.",examples:['simplifyConstant("(3-3)*x")','simplifyConstant(parse("z-cos(tau/8)"))'],seealso:["simplify","simplifyCore","evaluate"]},J6={name:"simplifyCore",category:"Algebra",syntax:["simplifyCore(node)"],description:"Perform simple one-pass simplifications on an expression tree.",examples:['simplifyCore(parse("0*x"))','simplifyCore(parse("(x+0)*2"))'],seealso:["simplify","simplifyConstant","evaluate"]},Y6={name:"slu",category:"Algebra",syntax:["slu(A, order, threshold)"],description:"Calculate the Matrix LU decomposition with full pivoting. Matrix A is decomposed in two matrices (L, U) and two permutation vectors (pinv, q) where P * A * Q = L * U",examples:["slu(sparse([4.5, 0, 3.2, 0; 3.1, 2.9, 0, 0.9; 0, 1.7, 3, 0; 3.5, 0.4, 0, 1]), 1, 0.001)"],seealso:["lusolve","lsolve","usolve","matrix","sparse","lup","qr"]},X6={name:"symbolicEqual",category:"Algebra",syntax:["symbolicEqual(expr1, expr2)","symbolicEqual(expr1, expr2, options)"],description:"Returns true if the difference of the expressions simplifies to 0",examples:['symbolicEqual("x*y","y*x")','symbolicEqual("abs(x^2)", "x^2")','symbolicEqual("abs(x)", "x", {context: {abs: {trivial: true}}})'],seealso:["simplify","evaluate"]},Q6={name:"usolve",category:"Algebra",syntax:["x=usolve(U, b)"],description:"Finds one solution of the linear system U * x = b where U is an [n x n] upper triangular matrix and b is a [n] column vector.",examples:["x=usolve(sparse([1, 1, 1, 1; 0, 1, 1, 1; 0, 0, 1, 1; 0, 0, 0, 1]), [1; 2; 3; 4])"],seealso:["usolveAll","lup","lusolve","lsolve","matrix","sparse"]},e$={name:"usolveAll",category:"Algebra",syntax:["x=usolve(U, b)"],description:"Finds all solutions of the linear system U * x = b where U is an [n x n] upper triangular matrix and b is a [n] column vector.",examples:["x=usolve(sparse([1, 1, 1, 1; 0, 1, 1, 1; 0, 0, 1, 1; 0, 0, 0, 1]), [1; 2; 3; 4])"],seealso:["usolve","lup","lusolve","lsolve","matrix","sparse"]},r$={name:"abs",category:"Arithmetic",syntax:["abs(x)"],description:"Compute the absolute value.",examples:["abs(3.5)","abs(-4.2)"],seealso:["sign"]},t$={name:"add",category:"Operators",syntax:["x + y","add(x, y)"],description:"Add two values.",examples:["a = 2.1 + 3.6","a - 3.6","3 + 2i","3 cm + 2 inch",'"2.3" + "4"'],seealso:["subtract"]},n$={name:"cbrt",category:"Arithmetic",syntax:["cbrt(x)","cbrt(x, allRoots)"],description:"Compute the cubic root value. If x = y * y * y, then y is the cubic root of x. When `x` is a number or complex number, an optional second argument `allRoots` can be provided to return all three cubic roots. If not provided, the principal root is returned",examples:["cbrt(64)","cube(4)","cbrt(-8)","cbrt(2 + 3i)","cbrt(8i)","cbrt(8i, true)","cbrt(27 m^3)"],seealso:["square","sqrt","cube","multiply"]},a$={name:"ceil",category:"Arithmetic",syntax:["ceil(x)"],description:"Round a value towards plus infinity. If x is complex, both real and imaginary part are rounded towards plus infinity.",examples:["ceil(3.2)","ceil(3.8)","ceil(-4.2)"],seealso:["floor","fix","round"]},i$={name:"cube",category:"Arithmetic",syntax:["cube(x)"],description:"Compute the cube of a value. The cube of x is x * x * x.",examples:["cube(2)","2^3","2 * 2 * 2"],seealso:["multiply","square","pow"]},o$={name:"divide",category:"Operators",syntax:["x / y","divide(x, y)"],description:"Divide two values.",examples:["a = 2 / 3","a * 3","4.5 / 2","3 + 4 / 2","(3 + 4) / 2","18 km / 4.5"],seealso:["multiply"]},s$={name:"dotDivide",category:"Operators",syntax:["x ./ y","dotDivide(x, y)"],description:"Divide two values element wise.",examples:["a = [1, 2, 3; 4, 5, 6]","b = [2, 1, 1; 3, 2, 5]","a ./ b"],seealso:["multiply","dotMultiply","divide"]},u$={name:"dotMultiply",category:"Operators",syntax:["x .* y","dotMultiply(x, y)"],description:"Multiply two values element wise.",examples:["a = [1, 2, 3; 4, 5, 6]","b = [2, 1, 1; 3, 2, 5]","a .* b"],seealso:["multiply","divide","dotDivide"]},l$={name:"dotPow",category:"Operators",syntax:["x .^ y","dotPow(x, y)"],description:"Calculates the power of x to y element wise.",examples:["a = [1, 2, 3; 4, 5, 6]","a .^ 2"],seealso:["pow"]},c$={name:"exp",category:"Arithmetic",syntax:["exp(x)"],description:"Calculate the exponent of a value.",examples:["exp(1.3)","e ^ 1.3","log(exp(1.3))","x = 2.4","(exp(i*x) == cos(x) + i*sin(x)) # Euler's formula"],seealso:["expm","expm1","pow","log"]},f$={name:"expm",category:"Arithmetic",syntax:["exp(x)"],description:"Compute the matrix exponential, expm(A) = e^A. The matrix must be square. Not to be confused with exp(a), which performs element-wise exponentiation.",examples:["expm([[0,2],[0,0]])"],seealso:["exp"]},d$={name:"expm1",category:"Arithmetic",syntax:["expm1(x)"],description:"Calculate the value of subtracting 1 from the exponential value.",examples:["expm1(2)","pow(e, 2) - 1","log(expm1(2) + 1)"],seealso:["exp","pow","log"]},m$={name:"fix",category:"Arithmetic",syntax:["fix(x)"],description:"Round a value towards zero. If x is complex, both real and imaginary part are rounded towards zero.",examples:["fix(3.2)","fix(3.8)","fix(-4.2)","fix(-4.8)"],seealso:["ceil","floor","round"]},p$={name:"floor",category:"Arithmetic",syntax:["floor(x)"],description:"Round a value towards minus infinity.If x is complex, both real and imaginary part are rounded towards minus infinity.",examples:["floor(3.2)","floor(3.8)","floor(-4.2)"],seealso:["ceil","fix","round"]},v$={name:"gcd",category:"Arithmetic",syntax:["gcd(a, b)","gcd(a, b, c, ...)"],description:"Compute the greatest common divisor.",examples:["gcd(8, 12)","gcd(-4, 6)","gcd(25, 15, -10)"],seealso:["lcm","xgcd"]},h$={name:"hypot",category:"Arithmetic",syntax:["hypot(a, b, c, ...)","hypot([a, b, c, ...])"],description:"Calculate the hypotenuse of a list with values.",examples:["hypot(3, 4)","sqrt(3^2 + 4^2)","hypot(-2)","hypot([3, 4, 5])"],seealso:["abs","norm"]},g$={name:"invmod",category:"Arithmetic",syntax:["invmod(a, b)"],description:"Calculate the (modular) multiplicative inverse of a modulo b. Solution to the equation ax ≣ 1 (mod b)",examples:["invmod(8, 12)","invmod(7, 13)","invmod(15151, 15122)"],seealso:["gcd","xgcd"]},y$={name:"lcm",category:"Arithmetic",syntax:["lcm(x, y)"],description:"Compute the least common multiple.",examples:["lcm(4, 6)","lcm(6, 21)","lcm(6, 21, 5)"],seealso:["gcd"]},b$={name:"log",category:"Arithmetic",syntax:["log(x)","log(x, base)"],description:"Compute the logarithm of a value. If no base is provided, the natural logarithm of x is calculated. If base if provided, the logarithm is calculated for the specified base. log(x, base) is defined as log(x) / log(base).",examples:["log(3.5)","a = log(2.4)","exp(a)","10 ^ 4","log(10000, 10)","log(10000) / log(10)","b = log(1024, 2)","2 ^ b"],seealso:["exp","log1p","log2","log10"]},w$={name:"log10",category:"Arithmetic",syntax:["log10(x)"],description:"Compute the 10-base logarithm of a value.",examples:["log10(0.00001)","log10(10000)","10 ^ 4","log(10000) / log(10)","log(10000, 10)"],seealso:["exp","log"]},x$={name:"log1p",category:"Arithmetic",syntax:["log1p(x)","log1p(x, base)"],description:"Calculate the logarithm of a `value+1`",examples:["log1p(2.5)","exp(log1p(1.4))","pow(10, 4)","log1p(9999, 10)","log1p(9999) / log(10)"],seealso:["exp","log","log2","log10"]},N$={name:"log2",category:"Arithmetic",syntax:["log2(x)"],description:"Calculate the 2-base of a value. This is the same as calculating `log(x, 2)`.",examples:["log2(0.03125)","log2(16)","log2(16) / log2(2)","pow(2, 4)"],seealso:["exp","log1p","log","log10"]},A$={name:"mod",category:"Operators",syntax:["x % y","x mod y","mod(x, y)"],description:"Calculates the modulus, the remainder of an integer division.",examples:["7 % 3","11 % 2","10 mod 4","isOdd(x) = x % 2","isOdd(2)","isOdd(3)"],seealso:["divide"]},E$={name:"multiply",category:"Operators",syntax:["x * y","multiply(x, y)"],description:"multiply two values.",examples:["a = 2.1 * 3.4","a / 3.4","2 * 3 + 4","2 * (3 + 4)","3 * 2.1 km"],seealso:["divide"]},D$={name:"norm",category:"Arithmetic",syntax:["norm(x)","norm(x, p)"],description:"Calculate the norm of a number, vector or matrix.",examples:["abs(-3.5)","norm(-3.5)","norm(3 - 4i)","norm([1, 2, -3], Infinity)","norm([1, 2, -3], -Infinity)","norm([3, 4], 2)","norm([[1, 2], [3, 4]], 1)",'norm([[1, 2], [3, 4]], "inf")','norm([[1, 2], [3, 4]], "fro")']},S$={name:"nthRoot",category:"Arithmetic",syntax:["nthRoot(a)","nthRoot(a, root)"],description:'Calculate the nth root of a value. The principal nth root of a positive real number A, is the positive real solution of the equation "x^root = A".',examples:["4 ^ 3","nthRoot(64, 3)","nthRoot(9, 2)","sqrt(9)"],seealso:["nthRoots","pow","sqrt"]},C$={name:"nthRoots",category:"Arithmetic",syntax:["nthRoots(A)","nthRoots(A, root)"],description:'Calculate the nth roots of a value. An nth root of a positive real number A, is a positive real solution of the equation "x^root = A". This function returns an array of complex values.',examples:["nthRoots(1)","nthRoots(1, 3)"],seealso:["sqrt","pow","nthRoot"]},M$={name:"pow",category:"Operators",syntax:["x ^ y","pow(x, y)"],description:"Calculates the power of x to y, x^y.",examples:["2^3","2*2*2","1 + e ^ (pi * i)","pow([[1, 2], [4, 3]], 2)","pow([[1, 2], [4, 3]], -1)"],seealso:["multiply","nthRoot","nthRoots","sqrt"]},_$={name:"round",category:"Arithmetic",syntax:["round(x)","round(x, n)","round(unit, valuelessUnit)","round(unit, n, valuelessUnit)"],description:"round a value towards the nearest integer.If x is complex, both real and imaginary part are rounded towards the nearest integer. When n is specified, the value is rounded to n decimals.",examples:["round(3.2)","round(3.8)","round(-4.2)","round(-4.8)","round(pi, 3)","round(123.45678, 2)","round(3.241cm, 2, cm)","round([3.2, 3.8, -4.7])"],seealso:["ceil","floor","fix"]},T$={name:"sign",category:"Arithmetic",syntax:["sign(x)"],description:"Compute the sign of a value. The sign of a value x is 1 when x>1, -1 when x<0, and 0 when x=0.",examples:["sign(3.5)","sign(-4.2)","sign(0)"],seealso:["abs"]},F$={name:"sqrt",category:"Arithmetic",syntax:["sqrt(x)"],description:"Compute the square root value. If x = y * y, then y is the square root of x.",examples:["sqrt(25)","5 * 5","sqrt(-1)"],seealso:["square","sqrtm","multiply","nthRoot","nthRoots","pow"]},B$={name:"sqrtm",category:"Arithmetic",syntax:["sqrtm(x)"],description:"Calculate the principal square root of a square matrix. The principal square root matrix `X` of another matrix `A` is such that `X * X = A`.",examples:["sqrtm([[33, 24], [48, 57]])"],seealso:["sqrt","abs","square","multiply"]},O$={name:"sylvester",category:"Algebra",syntax:["sylvester(A,B,C)"],description:"Solves the real-valued Sylvester equation AX+XB=C for X",examples:["sylvester([[-1, -2], [1, 1]], [[-2, 1], [-1, 2]], [[-3, 2], [3, 0]])","A = [[-1, -2], [1, 1]]; B = [[2, -1], [1, -2]]; C = [[-3, 2], [3, 0]]","sylvester(A, B, C)"],seealso:["schur","lyap"]},$$={name:"schur",category:"Algebra",syntax:["schur(A)"],description:"Performs a real Schur decomposition of the real matrix A = UTU'",examples:["schur([[1, 0], [-4, 3]])","A = [[1, 0], [-4, 3]]","schur(A)"],seealso:["lyap","sylvester"]},I$={name:"lyap",category:"Algebra",syntax:["lyap(A,Q)"],description:"Solves the Continuous-time Lyapunov equation AP+PA'+Q=0 for P",examples:["lyap([[-2, 0], [1, -4]], [[3, 1], [1, 3]])","A = [[-2, 0], [1, -4]]","Q = [[3, 1], [1, 3]]","lyap(A,Q)"],seealso:["schur","sylvester"]},R$={name:"square",category:"Arithmetic",syntax:["square(x)"],description:"Compute the square of a value. The square of x is x * x.",examples:["square(3)","sqrt(9)","3^2","3 * 3"],seealso:["multiply","pow","sqrt","cube"]},z$={name:"subtract",category:"Operators",syntax:["x - y","subtract(x, y)"],description:"subtract two values.",examples:["a = 5.3 - 2","a + 2","2/3 - 1/6","2 * 3 - 3","2.1 km - 500m"],seealso:["add"]},P$={name:"unaryMinus",category:"Operators",syntax:["-x","unaryMinus(x)"],description:"Inverse the sign of a value. Converts booleans and strings to numbers.",examples:["-4.5","-(-5.6)",'-"22"'],seealso:["add","subtract","unaryPlus"]},k$={name:"unaryPlus",category:"Operators",syntax:["+x","unaryPlus(x)"],description:"Converts booleans and strings to numbers.",examples:["+true",'+"2"'],seealso:["add","subtract","unaryMinus"]},q$={name:"xgcd",category:"Arithmetic",syntax:["xgcd(a, b)"],description:"Calculate the extended greatest common divisor for two values. The result is an array [d, x, y] with 3 entries, where d is the greatest common divisor, and d = x * a + y * b.",examples:["xgcd(8, 12)","gcd(8, 12)","xgcd(36163, 21199)"],seealso:["gcd","lcm"]},L$={name:"bitAnd",category:"Bitwise",syntax:["x & y","bitAnd(x, y)"],description:"Bitwise AND operation. Performs the logical AND operation on each pair of the corresponding bits of the two given values by multiplying them. If both bits in the compared position are 1, the bit in the resulting binary representation is 1, otherwise, the result is 0",examples:["5 & 3","bitAnd(53, 131)","[1, 12, 31] & 42"],seealso:["bitNot","bitOr","bitXor","leftShift","rightArithShift","rightLogShift"]},V$={name:"bitNot",category:"Bitwise",syntax:["~x","bitNot(x)"],description:"Bitwise NOT operation. Performs a logical negation on each bit of the given value. Bits that are 0 become 1, and those that are 1 become 0.",examples:["~1","~2","bitNot([2, -3, 4])"],seealso:["bitAnd","bitOr","bitXor","leftShift","rightArithShift","rightLogShift"]},U$={name:"bitOr",category:"Bitwise",syntax:["x | y","bitOr(x, y)"],description:"Bitwise OR operation. Performs the logical inclusive OR operation on each pair of corresponding bits of the two given values. The result in each position is 1 if the first bit is 1 or the second bit is 1 or both bits are 1, otherwise, the result is 0.",examples:["5 | 3","bitOr([1, 2, 3], 4)"],seealso:["bitAnd","bitNot","bitXor","leftShift","rightArithShift","rightLogShift"]},H$={name:"bitXor",category:"Bitwise",syntax:["bitXor(x, y)"],description:"Bitwise XOR operation, exclusive OR. Performs the logical exclusive OR operation on each pair of corresponding bits of the two given values. The result in each position is 1 if only the first bit is 1 or only the second bit is 1, but will be 0 if both are 0 or both are 1.",examples:["bitOr(1, 2)","bitXor([2, 3, 4], 4)"],seealso:["bitAnd","bitNot","bitOr","leftShift","rightArithShift","rightLogShift"]},Z$={name:"leftShift",category:"Bitwise",syntax:["x << y","leftShift(x, y)"],description:"Bitwise left logical shift of a value x by y number of bits.",examples:["4 << 1","8 >> 1"],seealso:["bitAnd","bitNot","bitOr","bitXor","rightArithShift","rightLogShift"]},G$={name:"rightArithShift",category:"Bitwise",syntax:["x >> y","rightArithShift(x, y)"],description:"Bitwise right arithmetic shift of a value x by y number of bits.",examples:["8 >> 1","4 << 1","-12 >> 2"],seealso:["bitAnd","bitNot","bitOr","bitXor","leftShift","rightLogShift"]},W$={name:"rightLogShift",category:"Bitwise",syntax:["x >>> y","rightLogShift(x, y)"],description:"Bitwise right logical shift of a value x by y number of bits.",examples:["8 >>> 1","4 << 1","-12 >>> 2"],seealso:["bitAnd","bitNot","bitOr","bitXor","leftShift","rightArithShift"]},j$={name:"bellNumbers",category:"Combinatorics",syntax:["bellNumbers(n)"],description:"The Bell Numbers count the number of partitions of a set. A partition is a pairwise disjoint subset of S whose union is S. `bellNumbers` only takes integer arguments. The following condition must be enforced: n >= 0.",examples:["bellNumbers(3)","bellNumbers(8)"],seealso:["stirlingS2"]},K$={name:"catalan",category:"Combinatorics",syntax:["catalan(n)"],description:"The Catalan Numbers enumerate combinatorial structures of many different types. catalan only takes integer arguments. The following condition must be enforced: n >= 0.",examples:["catalan(3)","catalan(8)"],seealso:["bellNumbers"]},J$={name:"composition",category:"Combinatorics",syntax:["composition(n, k)"],description:"The composition counts of n into k parts. composition only takes integer arguments. The following condition must be enforced: k <= n.",examples:["composition(5, 3)"],seealso:["combinations"]},Y$={name:"stirlingS2",category:"Combinatorics",syntax:["stirlingS2(n, k)"],description:"he Stirling numbers of the second kind, counts the number of ways to partition a set of n labelled objects into k nonempty unlabelled subsets. `stirlingS2` only takes integer arguments. The following condition must be enforced: k <= n. If n = k or k = 1, then s(n,k) = 1.",examples:["stirlingS2(5, 3)"],seealso:["bellNumbers"]},X$={name:"arg",category:"Complex",syntax:["arg(x)"],description:"Compute the argument of a complex value. If x = a+bi, the argument is computed as atan2(b, a).",examples:["arg(2 + 2i)","atan2(3, 2)","arg(2 + 3i)"],seealso:["re","im","conj","abs"]},Q$={name:"conj",category:"Complex",syntax:["conj(x)"],description:"Compute the complex conjugate of a complex value. If x = a+bi, the complex conjugate is a-bi.",examples:["conj(2 + 3i)","conj(2 - 3i)","conj(-5.2i)"],seealso:["re","im","abs","arg"]},e9={name:"im",category:"Complex",syntax:["im(x)"],description:"Get the imaginary part of a complex number.",examples:["im(2 + 3i)","re(2 + 3i)","im(-5.2i)","im(2.4)"],seealso:["re","conj","abs","arg"]},r9={name:"re",category:"Complex",syntax:["re(x)"],description:"Get the real part of a complex number.",examples:["re(2 + 3i)","im(2 + 3i)","re(-5.2i)","re(2.4)"],seealso:["im","conj","abs","arg"]},t9={name:"evaluate",category:"Expression",syntax:["evaluate(expression)","evaluate(expression, scope)","evaluate([expr1, expr2, expr3, ...])","evaluate([expr1, expr2, expr3, ...], scope)"],description:"Evaluate an expression or an array with expressions.",examples:['evaluate("2 + 3")','evaluate("sqrt(16)")','evaluate("2 inch to cm")','evaluate("sin(x * pi)", { "x": 1/2 })','evaluate(["width=2", "height=4","width*height"])'],seealso:[]},n9={name:"help",category:"Expression",syntax:["help(object)","help(string)"],description:"Display documentation on a function or data type.",examples:["help(sqrt)",'help("complex")'],seealso:[]},a9={name:"distance",category:"Geometry",syntax:["distance([x1, y1], [x2, y2])","distance([[x1, y1], [x2, y2]])"],description:"Calculates the Euclidean distance between two points.",examples:["distance([0,0], [4,4])","distance([[0,0], [4,4]])"],seealso:[]},i9={name:"intersect",category:"Geometry",syntax:["intersect(expr1, expr2, expr3, expr4)","intersect(expr1, expr2, expr3)"],description:"Computes the intersection point of lines and/or planes.",examples:["intersect([0, 0], [10, 10], [10, 0], [0, 10])","intersect([1, 0, 1], [4, -2, 2], [1, 1, 1, 6])"],seealso:[]},o9={name:"and",category:"Logical",syntax:["x and y","and(x, y)"],description:"Logical and. Test whether two values are both defined with a nonzero/nonempty value.",examples:["true and false","true and true","2 and 4"],seealso:["not","or","xor"]},s9={name:"not",category:"Logical",syntax:["not x","not(x)"],description:"Logical not. Flips the boolean value of given argument.",examples:["not true","not false","not 2","not 0"],seealso:["and","or","xor"]},u9={name:"or",category:"Logical",syntax:["x or y","or(x, y)"],description:"Logical or. Test if at least one value is defined with a nonzero/nonempty value.",examples:["true or false","false or false","0 or 4"],seealso:["not","and","xor"]},l9={name:"xor",category:"Logical",syntax:["x xor y","xor(x, y)"],description:"Logical exclusive or, xor. Test whether one and only one value is defined with a nonzero/nonempty value.",examples:["true xor false","false xor false","true xor true","0 xor 4"],seealso:["not","and","or"]},c9={name:"column",category:"Matrix",syntax:["column(x, index)"],description:"Return a column from a matrix or array.",examples:["A = [[1, 2], [3, 4]]","column(A, 1)","column(A, 2)"],seealso:["row","matrixFromColumns"]},f9={name:"concat",category:"Matrix",syntax:["concat(A, B, C, ...)","concat(A, B, C, ..., dim)"],description:"Concatenate matrices. By default, the matrices are concatenated by the last dimension. The dimension on which to concatenate can be provided as last argument.",examples:["A = [1, 2; 5, 6]","B = [3, 4; 7, 8]","concat(A, B)","concat(A, B, 1)","concat(A, B, 2)"],seealso:["det","diag","identity","inv","ones","range","size","squeeze","subset","trace","transpose","zeros"]},d9={name:"count",category:"Matrix",syntax:["count(x)"],description:"Count the number of elements of a matrix, array or string.",examples:["a = [1, 2; 3, 4; 5, 6]","count(a)","size(a)",'count("hello world")'],seealso:["size"]},m9={name:"cross",category:"Matrix",syntax:["cross(A, B)"],description:"Calculate the cross product for two vectors in three dimensional space.",examples:["cross([1, 1, 0], [0, 1, 1])","cross([3, -3, 1], [4, 9, 2])","cross([2, 3, 4], [5, 6, 7])"],seealso:["multiply","dot"]},p9={name:"ctranspose",category:"Matrix",syntax:["x'","ctranspose(x)"],description:"Complex Conjugate and Transpose a matrix",examples:["a = [1, 2, 3; 4, 5, 6]","a'","ctranspose(a)"],seealso:["concat","det","diag","identity","inv","ones","range","size","squeeze","subset","trace","zeros"]},v9={name:"det",category:"Matrix",syntax:["det(x)"],description:"Calculate the determinant of a matrix",examples:["det([1, 2; 3, 4])","det([-2, 2, 3; -1, 1, 3; 2, 0, -1])"],seealso:["concat","diag","identity","inv","ones","range","size","squeeze","subset","trace","transpose","zeros"]},h9={name:"diag",category:"Matrix",syntax:["diag(x)","diag(x, k)"],description:"Create a diagonal matrix or retrieve the diagonal of a matrix. When x is a vector, a matrix with the vector values on the diagonal will be returned. When x is a matrix, a vector with the diagonal values of the matrix is returned. When k is provided, the k-th diagonal will be filled in or retrieved, if k is positive, the values are placed on the super diagonal. When k is negative, the values are placed on the sub diagonal.",examples:["diag(1:3)","diag(1:3, 1)","a = [1, 2, 3; 4, 5, 6; 7, 8, 9]","diag(a)"],seealso:["concat","det","identity","inv","ones","range","size","squeeze","subset","trace","transpose","zeros"]},g9={name:"diff",category:"Matrix",syntax:["diff(arr)","diff(arr, dim)"],description:["Create a new matrix or array with the difference of the passed matrix or array.","Dim parameter is optional and used to indicate the dimension of the array/matrix to apply the difference","If no dimension parameter is passed it is assumed as dimension 0","Dimension is zero-based in javascript and one-based in the parser","Arrays must be 'rectangular' meaning arrays like [1, 2]","If something is passed as a matrix it will be returned as a matrix but other than that all matrices are converted to arrays"],examples:["A = [1, 2, 4, 7, 0]","diff(A)","diff(A, 1)","B = [[1, 2], [3, 4]]","diff(B)","diff(B, 1)","diff(B, 2)","diff(B, bignumber(2))","diff([[1, 2], matrix([3, 4])], 2)"],seealso:["subtract","partitionSelect"]},y9={name:"dot",category:"Matrix",syntax:["dot(A, B)","A * B"],description:"Calculate the dot product of two vectors. The dot product of A = [a1, a2, a3, ..., an] and B = [b1, b2, b3, ..., bn] is defined as dot(A, B) = a1 * b1 + a2 * b2 + a3 * b3 + ... + an * bn",examples:["dot([2, 4, 1], [2, 2, 3])","[2, 4, 1] * [2, 2, 3]"],seealso:["multiply","cross"]},b9={name:"eigs",category:"Matrix",syntax:["eigs(x)"],description:"Calculate the eigenvalues and optionally eigenvectors of a square matrix",examples:["eigs([[5, 2.3], [2.3, 1]])","eigs([[1, 2, 3], [4, 5, 6], [7, 8, 9]], { precision: 1e-6, eigenvectors: false })"],seealso:["inv"]},w9={name:"filter",category:"Matrix",syntax:["filter(x, test)"],description:"Filter items in a matrix.",examples:["isPositive(x) = x > 0","filter([6, -2, -1, 4, 3], isPositive)","filter([6, -2, 0, 1, 0], x != 0)"],seealso:["sort","map","forEach"]},x9={name:"flatten",category:"Matrix",syntax:["flatten(x)"],description:"Flatten a multi dimensional matrix into a single dimensional matrix.",examples:["a = [1, 2, 3; 4, 5, 6]","size(a)","b = flatten(a)","size(b)"],seealso:["concat","resize","size","squeeze"]},N9={name:"forEach",category:"Matrix",syntax:["forEach(x, callback)"],description:"Iterates over all elements of a matrix/array, and executes the given callback function.",examples:["numberOfPets = {}","addPet(n) = numberOfPets[n] = (numberOfPets[n] ? numberOfPets[n]:0 ) + 1;",'forEach(["Dog","Cat","Cat"], addPet)',"numberOfPets"],seealso:["map","sort","filter"]},A9={name:"getMatrixDataType",category:"Matrix",syntax:["getMatrixDataType(x)"],description:'Find the data type of all elements in a matrix or array, for example "number" if all items are a number and "Complex" if all values are complex numbers. If a matrix contains more than one data type, it will return "mixed".',examples:["getMatrixDataType([1, 2, 3])","getMatrixDataType([[5 cm], [2 inch]])",'getMatrixDataType([1, "text"])',"getMatrixDataType([1, bignumber(4)])"],seealso:["matrix","sparse","typeOf"]},E9={name:"identity",category:"Matrix",syntax:["identity(n)","identity(m, n)","identity([m, n])"],description:"Returns the identity matrix with size m-by-n. The matrix has ones on the diagonal and zeros elsewhere.",examples:["identity(3)","identity(3, 5)","a = [1, 2, 3; 4, 5, 6]","identity(size(a))"],seealso:["concat","det","diag","inv","ones","range","size","squeeze","subset","trace","transpose","zeros"]},D9={name:"inv",category:"Matrix",syntax:["inv(x)"],description:"Calculate the inverse of a matrix",examples:["inv([1, 2; 3, 4])","inv(4)","1 / 4"],seealso:["concat","det","diag","identity","ones","range","size","squeeze","subset","trace","transpose","zeros"]},S9={name:"pinv",category:"Matrix",syntax:["pinv(x)"],description:"Calculate the Moore–Penrose inverse of a matrix",examples:["pinv([1, 2; 3, 4])","pinv([[1, 0], [0, 1], [0, 1]])","pinv(4)"],seealso:["inv"]},C9={name:"kron",category:"Matrix",syntax:["kron(x, y)"],description:"Calculates the Kronecker product of 2 matrices or vectors.",examples:["kron([[1, 0], [0, 1]], [[1, 2], [3, 4]])","kron([1,1], [2,3,4])"],seealso:["multiply","dot","cross"]},M9={name:"map",category:"Matrix",syntax:["map(x, callback)","map(x, y, ..., callback)"],description:"Create a new matrix or array with the results of the callback function executed on each entry of the matrix/array or the matrices/arrays.",examples:["map([1, 2, 3], square)","map([1, 2], [3, 4], f(a,b) = a + b)"],seealso:["filter","forEach"]},_9={name:"matrixFromColumns",category:"Matrix",syntax:["matrixFromColumns(...arr)","matrixFromColumns(row1, row2)","matrixFromColumns(row1, row2, row3)"],description:"Create a dense matrix from vectors as individual columns.",examples:["matrixFromColumns([1, 2, 3], [[4],[5],[6]])"],seealso:["matrix","matrixFromRows","matrixFromFunction","zeros"]},T9={name:"matrixFromFunction",category:"Matrix",syntax:["matrixFromFunction(size, fn)","matrixFromFunction(size, fn, format)","matrixFromFunction(size, fn, format, datatype)","matrixFromFunction(size, format, fn)","matrixFromFunction(size, format, datatype, fn)"],description:"Create a matrix by evaluating a generating function at each index.",examples:["f(I) = I[1] - I[2]","matrixFromFunction([3,3], f)","g(I) = I[1] - I[2] == 1 ? 4 : 0",'matrixFromFunction([100, 100], "sparse", g)',"matrixFromFunction([5], random)"],seealso:["matrix","matrixFromRows","matrixFromColumns","zeros"]},F9={name:"matrixFromRows",category:"Matrix",syntax:["matrixFromRows(...arr)","matrixFromRows(row1, row2)","matrixFromRows(row1, row2, row3)"],description:"Create a dense matrix from vectors as individual rows.",examples:["matrixFromRows([1, 2, 3], [[4],[5],[6]])"],seealso:["matrix","matrixFromColumns","matrixFromFunction","zeros"]},B9={name:"ones",category:"Matrix",syntax:["ones(m)","ones(m, n)","ones(m, n, p, ...)","ones([m])","ones([m, n])","ones([m, n, p, ...])"],description:"Create a matrix containing ones.",examples:["ones(3)","ones(3, 5)","ones([2,3]) * 4.5","a = [1, 2, 3; 4, 5, 6]","ones(size(a))"],seealso:["concat","det","diag","identity","inv","range","size","squeeze","subset","trace","transpose","zeros"]},O9={name:"partitionSelect",category:"Matrix",syntax:["partitionSelect(x, k)","partitionSelect(x, k, compare)"],description:"Partition-based selection of an array or 1D matrix. Will find the kth smallest value, and mutates the input array. Uses Quickselect.",examples:["partitionSelect([5, 10, 1], 2)",'partitionSelect(["C", "B", "A", "D"], 1, compareText)',"arr = [5, 2, 1]","partitionSelect(arr, 0) # returns 1, arr is now: [1, 2, 5]","arr","partitionSelect(arr, 1, 'desc') # returns 2, arr is now: [5, 2, 1]","arr"],seealso:["sort"]},$9={name:"range",category:"Type",syntax:["start:end","start:step:end","range(start, end)","range(start, end, step)","range(string)"],description:"Create a range. Lower bound of the range is included, upper bound is excluded.",examples:["1:5","3:-1:-3","range(3, 7)","range(0, 12, 2)",'range("4:10")',"range(1m, 1m, 3m)","a = [1, 2, 3, 4; 5, 6, 7, 8]","a[1:2, 1:2]"],seealso:["concat","det","diag","identity","inv","ones","size","squeeze","subset","trace","transpose","zeros"]},I9={name:"reshape",category:"Matrix",syntax:["reshape(x, sizes)"],description:"Reshape a multi dimensional array to fit the specified dimensions.",examples:["reshape([1, 2, 3, 4, 5, 6], [2, 3])","reshape([[1, 2], [3, 4]], [1, 4])","reshape([[1, 2], [3, 4]], [4])","reshape([1, 2, 3, 4], [-1, 2])"],seealso:["size","squeeze","resize"]},R9={name:"resize",category:"Matrix",syntax:["resize(x, size)","resize(x, size, defaultValue)"],description:"Resize a matrix.",examples:["resize([1,2,3,4,5], [3])","resize([1,2,3], [5])","resize([1,2,3], [5], -1)","resize(2, [2, 3])",'resize("hello", [8], "!")'],seealso:["size","subset","squeeze","reshape"]},z9={name:"rotate",category:"Matrix",syntax:["rotate(w, theta)","rotate(w, theta, v)"],description:"Returns a 2-D rotation matrix (2x2) for a given angle (in radians). Returns a 2-D rotation matrix (3x3) of a given angle (in radians) around given axis.",examples:["rotate([1, 0], pi / 2)",'rotate(matrix([1, 0]), unit("35deg"))','rotate([1, 0, 0], unit("90deg"), [0, 0, 1])','rotate(matrix([1, 0, 0]), unit("90deg"), matrix([0, 0, 1]))'],seealso:["matrix","rotationMatrix"]},P9={name:"rotationMatrix",category:"Matrix",syntax:["rotationMatrix(theta)","rotationMatrix(theta, v)","rotationMatrix(theta, v, format)"],description:"Returns a 2-D rotation matrix (2x2) for a given angle (in radians). Returns a 2-D rotation matrix (3x3) of a given angle (in radians) around given axis.",examples:["rotationMatrix(pi / 2)",'rotationMatrix(unit("45deg"), [0, 0, 1])','rotationMatrix(1, matrix([0, 0, 1]), "sparse")'],seealso:["cos","sin"]},k9={name:"row",category:"Matrix",syntax:["row(x, index)"],description:"Return a row from a matrix or array.",examples:["A = [[1, 2], [3, 4]]","row(A, 1)","row(A, 2)"],seealso:["column","matrixFromRows"]},q9={name:"size",category:"Matrix",syntax:["size(x)"],description:"Calculate the size of a matrix.",examples:["size(2.3)",'size("hello world")',"a = [1, 2; 3, 4; 5, 6]","size(a)","size(1:6)"],seealso:["concat","count","det","diag","identity","inv","ones","range","squeeze","subset","trace","transpose","zeros"]},L9={name:"sort",category:"Matrix",syntax:["sort(x)","sort(x, compare)"],description:'Sort the items in a matrix. Compare can be a string "asc", "desc", "natural", or a custom sort function.',examples:["sort([5, 10, 1])",'sort(["C", "B", "A", "D"], "natural")',"sortByLength(a, b) = size(a)[1] - size(b)[1]",'sort(["Langdon", "Tom", "Sara"], sortByLength)','sort(["10", "1", "2"], "natural")'],seealso:["map","filter","forEach"]},V9={name:"squeeze",category:"Matrix",syntax:["squeeze(x)"],description:"Remove inner and outer singleton dimensions from a matrix.",examples:["a = zeros(3,2,1)","size(squeeze(a))","b = zeros(1,1,3)","size(squeeze(b))"],seealso:["concat","det","diag","identity","inv","ones","range","size","subset","trace","transpose","zeros"]},U9={name:"subset",category:"Matrix",syntax:["value(index)","value(index) = replacement","subset(value, [index])","subset(value, [index], replacement)"],description:"Get or set a subset of the entries of a matrix or characters of a string. Indexes are one-based. There should be one index specification for each dimension of the target. Each specification can be a single index, a list of indices, or a range in colon notation `l:u`. In a range, both the lower bound l and upper bound u are included; and if a bound is omitted it defaults to the most extreme valid value. The cartesian product of the indices specified in each dimension determines the target of the operation.",examples:["d = [1, 2; 3, 4]","e = []","e[1, 1:2] = [5, 6]","e[2, :] = [7, 8]","f = d * e","f[2, 1]","f[:, 1]","f[[1,2], [1,3]] = [9, 10; 11, 12]","f"],seealso:["concat","det","diag","identity","inv","ones","range","size","squeeze","trace","transpose","zeros"]},H9={name:"trace",category:"Matrix",syntax:["trace(A)"],description:"Calculate the trace of a matrix: the sum of the elements on the main diagonal of a square matrix.",examples:["A = [1, 2, 3; -1, 2, 3; 2, 0, 3]","trace(A)"],seealso:["concat","det","diag","identity","inv","ones","range","size","squeeze","subset","transpose","zeros"]},Z9={name:"transpose",category:"Matrix",syntax:["x'","transpose(x)"],description:"Transpose a matrix",examples:["a = [1, 2, 3; 4, 5, 6]","a'","transpose(a)"],seealso:["concat","det","diag","identity","inv","ones","range","size","squeeze","subset","trace","zeros"]},G9={name:"zeros",category:"Matrix",syntax:["zeros(m)","zeros(m, n)","zeros(m, n, p, ...)","zeros([m])","zeros([m, n])","zeros([m, n, p, ...])"],description:"Create a matrix containing zeros.",examples:["zeros(3)","zeros(3, 5)","a = [1, 2, 3; 4, 5, 6]","zeros(size(a))"],seealso:["concat","det","diag","identity","inv","ones","range","size","squeeze","subset","trace","transpose"]},W9={name:"fft",category:"Matrix",syntax:["fft(x)"],description:"Calculate N-dimensional Fourier transform",examples:["fft([[1, 0], [1, 0]])"],seealso:["ifft"]},j9={name:"ifft",category:"Matrix",syntax:["ifft(x)"],description:"Calculate N-dimensional inverse Fourier transform",examples:["ifft([[2, 2], [0, 0]])"],seealso:["fft"]},K9={name:"combinations",category:"Probability",syntax:["combinations(n, k)"],description:"Compute the number of combinations of n items taken k at a time",examples:["combinations(7, 5)"],seealso:["combinationsWithRep","permutations","factorial"]},J9={name:"combinationsWithRep",category:"Probability",syntax:["combinationsWithRep(n, k)"],description:"Compute the number of combinations of n items taken k at a time with replacements.",examples:["combinationsWithRep(7, 5)"],seealso:["combinations","permutations","factorial"]},Y9={name:"factorial",category:"Probability",syntax:["n!","factorial(n)"],description:"Compute the factorial of a value",examples:["5!","5 * 4 * 3 * 2 * 1","3!"],seealso:["combinations","combinationsWithRep","permutations","gamma"]},X9={name:"gamma",category:"Probability",syntax:["gamma(n)"],description:"Compute the gamma function. For small values, the Lanczos approximation is used, and for large values the extended Stirling approximation.",examples:["gamma(4)","3!","gamma(1/2)","sqrt(pi)"],seealso:["factorial"]},Q9={name:"lgamma",category:"Probability",syntax:["lgamma(n)"],description:"Logarithm of the gamma function for real, positive numbers and complex numbers, using Lanczos approximation for numbers and Stirling series for complex numbers.",examples:["lgamma(4)","lgamma(1/2)","lgamma(i)","lgamma(complex(1.1, 2))"],seealso:["gamma"]},eI={name:"kldivergence",category:"Probability",syntax:["kldivergence(x, y)"],description:"Calculate the Kullback-Leibler (KL) divergence between two distributions.",examples:["kldivergence([0.7,0.5,0.4], [0.2,0.9,0.5])"],seealso:[]},rI={name:"multinomial",category:"Probability",syntax:["multinomial(A)"],description:"Multinomial Coefficients compute the number of ways of picking a1, a2, ..., ai unordered outcomes from `n` possibilities. multinomial takes one array of integers as an argument. The following condition must be enforced: every ai > 0.",examples:["multinomial([1, 2, 1])"],seealso:["combinations","factorial"]},tI={name:"permutations",category:"Probability",syntax:["permutations(n)","permutations(n, k)"],description:"Compute the number of permutations of n items taken k at a time",examples:["permutations(5)","permutations(5, 3)"],seealso:["combinations","combinationsWithRep","factorial"]},nI={name:"pickRandom",category:"Probability",syntax:["pickRandom(array)","pickRandom(array, number)","pickRandom(array, weights)","pickRandom(array, number, weights)","pickRandom(array, weights, number)"],description:"Pick a random entry from a given array.",examples:["pickRandom(0:10)","pickRandom([1, 3, 1, 6])","pickRandom([1, 3, 1, 6], 2)","pickRandom([1, 3, 1, 6], [2, 3, 2, 1])","pickRandom([1, 3, 1, 6], 2, [2, 3, 2, 1])","pickRandom([1, 3, 1, 6], [2, 3, 2, 1], 2)"],seealso:["random","randomInt"]},aI={name:"random",category:"Probability",syntax:["random()","random(max)","random(min, max)","random(size)","random(size, max)","random(size, min, max)"],description:"Return a random number.",examples:["random()","random(10, 20)","random([2, 3])"],seealso:["pickRandom","randomInt"]},iI={name:"randomInt",category:"Probability",syntax:["randomInt(max)","randomInt(min, max)","randomInt(size)","randomInt(size, max)","randomInt(size, min, max)"],description:"Return a random integer number",examples:["randomInt(10, 20)","randomInt([2, 3], 10)"],seealso:["pickRandom","random"]},oI={name:"compare",category:"Relational",syntax:["compare(x, y)"],description:"Compare two values. Returns 1 when x > y, -1 when x < y, and 0 when x == y.",examples:["compare(2, 3)","compare(3, 2)","compare(2, 2)","compare(5cm, 40mm)","compare(2, [1, 2, 3])"],seealso:["equal","unequal","smaller","smallerEq","largerEq","compareNatural","compareText"]},sI={name:"compareNatural",category:"Relational",syntax:["compareNatural(x, y)"],description:"Compare two values of any type in a deterministic, natural way. Returns 1 when x > y, -1 when x < y, and 0 when x == y.",examples:["compareNatural(2, 3)","compareNatural(3, 2)","compareNatural(2, 2)","compareNatural(5cm, 40mm)",'compareNatural("2", "10")',"compareNatural(2 + 3i, 2 + 4i)","compareNatural([1, 2, 4], [1, 2, 3])","compareNatural([1, 5], [1, 2, 3])","compareNatural([1, 2], [1, 2])","compareNatural({a: 2}, {a: 4})"],seealso:["equal","unequal","smaller","smallerEq","largerEq","compare","compareText"]},uI={name:"compareText",category:"Relational",syntax:["compareText(x, y)"],description:"Compare two strings lexically. Comparison is case sensitive. Returns 1 when x > y, -1 when x < y, and 0 when x == y.",examples:['compareText("B", "A")','compareText("A", "B")','compareText("A", "A")','compareText("2", "10")','compare("2", "10")',"compare(2, 10)",'compareNatural("2", "10")','compareText("B", ["A", "B", "C"])'],seealso:["compare","compareNatural"]},lI={name:"deepEqual",category:"Relational",syntax:["deepEqual(x, y)"],description:"Check equality of two matrices element wise. Returns true if the size of both matrices is equal and when and each of the elements are equal.",examples:["deepEqual([1,3,4], [1,3,4])","deepEqual([1,3,4], [1,3])"],seealso:["equal","unequal","smaller","larger","smallerEq","largerEq","compare"]},cI={name:"equal",category:"Relational",syntax:["x == y","equal(x, y)"],description:"Check equality of two values. Returns true if the values are equal, and false if not.",examples:["2+2 == 3","2+2 == 4","a = 3.2","b = 6-2.8","a == b","50cm == 0.5m"],seealso:["unequal","smaller","larger","smallerEq","largerEq","compare","deepEqual","equalText"]},fI={name:"equalText",category:"Relational",syntax:["equalText(x, y)"],description:"Check equality of two strings. Comparison is case sensitive. Returns true if the values are equal, and false if not.",examples:['equalText("Hello", "Hello")','equalText("a", "A")','equal("2e3", "2000")','equalText("2e3", "2000")','equalText("B", ["A", "B", "C"])'],seealso:["compare","compareNatural","compareText","equal"]},dI={name:"larger",category:"Relational",syntax:["x > y","larger(x, y)"],description:"Check if value x is larger than y. Returns true if x is larger than y, and false if not.",examples:["2 > 3","5 > 2*2","a = 3.3","b = 6-2.8","(a > b)","(b < a)","5 cm > 2 inch"],seealso:["equal","unequal","smaller","smallerEq","largerEq","compare"]},mI={name:"largerEq",category:"Relational",syntax:["x >= y","largerEq(x, y)"],description:"Check if value x is larger or equal to y. Returns true if x is larger or equal to y, and false if not.",examples:["2 >= 1+1","2 > 1+1","a = 3.2","b = 6-2.8","(a >= b)"],seealso:["equal","unequal","smallerEq","smaller","compare"]},pI={name:"smaller",category:"Relational",syntax:["x < y","smaller(x, y)"],description:"Check if value x is smaller than value y. Returns true if x is smaller than y, and false if not.",examples:["2 < 3","5 < 2*2","a = 3.3","b = 6-2.8","(a < b)","5 cm < 2 inch"],seealso:["equal","unequal","larger","smallerEq","largerEq","compare"]},vI={name:"smallerEq",category:"Relational",syntax:["x <= y","smallerEq(x, y)"],description:"Check if value x is smaller or equal to value y. Returns true if x is smaller than y, and false if not.",examples:["2 <= 1+1","2 < 1+1","a = 3.2","b = 6-2.8","(a <= b)"],seealso:["equal","unequal","larger","smaller","largerEq","compare"]},hI={name:"unequal",category:"Relational",syntax:["x != y","unequal(x, y)"],description:"Check unequality of two values. Returns true if the values are unequal, and false if they are equal.",examples:["2+2 != 3","2+2 != 4","a = 3.2","b = 6-2.8","a != b","50cm != 0.5m","5 cm != 2 inch"],seealso:["equal","smaller","larger","smallerEq","largerEq","compare","deepEqual"]},gI={name:"setCartesian",category:"Set",syntax:["setCartesian(set1, set2)"],description:"Create the cartesian product of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays and the values will be sorted in ascending order before the operation.",examples:["setCartesian([1, 2], [3, 4])"],seealso:["setUnion","setIntersect","setDifference","setPowerset"]},yI={name:"setDifference",category:"Set",syntax:["setDifference(set1, set2)"],description:"Create the difference of two (multi)sets: every element of set1, that is not the element of set2. Multi-dimension arrays will be converted to single-dimension arrays before the operation.",examples:["setDifference([1, 2, 3, 4], [3, 4, 5, 6])","setDifference([[1, 2], [3, 4]], [[3, 4], [5, 6]])"],seealso:["setUnion","setIntersect","setSymDifference"]},bI={name:"setDistinct",category:"Set",syntax:["setDistinct(set)"],description:"Collect the distinct elements of a multiset. A multi-dimension array will be converted to a single-dimension array before the operation.",examples:["setDistinct([1, 1, 1, 2, 2, 3])"],seealso:["setMultiplicity"]},wI={name:"setIntersect",category:"Set",syntax:["setIntersect(set1, set2)"],description:"Create the intersection of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays before the operation.",examples:["setIntersect([1, 2, 3, 4], [3, 4, 5, 6])","setIntersect([[1, 2], [3, 4]], [[3, 4], [5, 6]])"],seealso:["setUnion","setDifference"]},xI={name:"setIsSubset",category:"Set",syntax:["setIsSubset(set1, set2)"],description:"Check whether a (multi)set is a subset of another (multi)set: every element of set1 is the element of set2. Multi-dimension arrays will be converted to single-dimension arrays before the operation.",examples:["setIsSubset([1, 2], [3, 4, 5, 6])","setIsSubset([3, 4], [3, 4, 5, 6])"],seealso:["setUnion","setIntersect","setDifference"]},NI={name:"setMultiplicity",category:"Set",syntax:["setMultiplicity(element, set)"],description:"Count the multiplicity of an element in a multiset. A multi-dimension array will be converted to a single-dimension array before the operation.",examples:["setMultiplicity(1, [1, 2, 2, 4])","setMultiplicity(2, [1, 2, 2, 4])"],seealso:["setDistinct","setSize"]},AI={name:"setPowerset",category:"Set",syntax:["setPowerset(set)"],description:"Create the powerset of a (multi)set: the powerset contains very possible subsets of a (multi)set. A multi-dimension array will be converted to a single-dimension array before the operation.",examples:["setPowerset([1, 2, 3])"],seealso:["setCartesian"]},EI={name:"setSize",category:"Set",syntax:["setSize(set)","setSize(set, unique)"],description:'Count the number of elements of a (multi)set. When the second parameter "unique" is true, count only the unique values. A multi-dimension array will be converted to a single-dimension array before the operation.',examples:["setSize([1, 2, 2, 4])","setSize([1, 2, 2, 4], true)"],seealso:["setUnion","setIntersect","setDifference"]},DI={name:"setSymDifference",category:"Set",syntax:["setSymDifference(set1, set2)"],description:"Create the symmetric difference of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays before the operation.",examples:["setSymDifference([1, 2, 3, 4], [3, 4, 5, 6])","setSymDifference([[1, 2], [3, 4]], [[3, 4], [5, 6]])"],seealso:["setUnion","setIntersect","setDifference"]},SI={name:"setUnion",category:"Set",syntax:["setUnion(set1, set2)"],description:"Create the union of two (multi)sets. Multi-dimension arrays will be converted to single-dimension arrays before the operation.",examples:["setUnion([1, 2, 3, 4], [3, 4, 5, 6])","setUnion([[1, 2], [3, 4]], [[3, 4], [5, 6]])"],seealso:["setIntersect","setDifference"]},CI={name:"zpk2tf",category:"Signal",syntax:["zpk2tf(z, p, k)"],description:"Compute the transfer function of a zero-pole-gain model.",examples:["zpk2tf([1, 2], [-1, -2], 1)","zpk2tf([1, 2], [-1, -2])","zpk2tf([1 - 3i, 2 + 2i], [-1, -2])"],seealso:[]},MI={name:"freqz",category:"Signal",syntax:["freqz(b, a)","freqz(b, a, w)"],description:"Calculates the frequency response of a filter given its numerator and denominator coefficients.",examples:["freqz([1, 2], [1, 2, 3])","freqz([1, 2], [1, 2, 3], [0, 1])","freqz([1, 2], [1, 2, 3], 512)"],seealso:[]},_I={name:"erf",category:"Special",syntax:["erf(x)"],description:"Compute the erf function of a value using a rational Chebyshev approximations for different intervals of x",examples:["erf(0.2)","erf(-0.5)","erf(4)"],seealso:[]},TI={name:"zeta",category:"Special",syntax:["zeta(s)"],description:"Compute the Riemann Zeta Function using an infinite series and Riemann's Functional Equation for the entire complex plane",examples:["zeta(0.2)","zeta(-0.5)","zeta(4)"],seealso:[]},FI={name:"mad",category:"Statistics",syntax:["mad(a, b, c, ...)","mad(A)"],description:"Compute the median absolute deviation of a matrix or a list with values. The median absolute deviation is defined as the median of the absolute deviations from the median.",examples:["mad(10, 20, 30)","mad([1, 2, 3])"],seealso:["mean","median","std","abs"]},BI={name:"max",category:"Statistics",syntax:["max(a, b, c, ...)","max(A)","max(A, dimension)"],description:"Compute the maximum value of a list of values.",examples:["max(2, 3, 4, 1)","max([2, 3, 4, 1])","max([2, 5; 4, 3])","max([2, 5; 4, 3], 1)","max([2, 5; 4, 3], 2)","max(2.7, 7.1, -4.5, 2.0, 4.1)","min(2.7, 7.1, -4.5, 2.0, 4.1)"],seealso:["mean","median","min","prod","std","sum","variance"]},OI={name:"mean",category:"Statistics",syntax:["mean(a, b, c, ...)","mean(A)","mean(A, dimension)"],description:"Compute the arithmetic mean of a list of values.",examples:["mean(2, 3, 4, 1)","mean([2, 3, 4, 1])","mean([2, 5; 4, 3])","mean([2, 5; 4, 3], 1)","mean([2, 5; 4, 3], 2)","mean([1.0, 2.7, 3.2, 4.0])"],seealso:["max","median","min","prod","std","sum","variance"]},$I={name:"median",category:"Statistics",syntax:["median(a, b, c, ...)","median(A)"],description:"Compute the median of all values. The values are sorted and the middle value is returned. In case of an even number of values, the average of the two middle values is returned.",examples:["median(5, 2, 7)","median([3, -1, 5, 7])"],seealso:["max","mean","min","prod","std","sum","variance","quantileSeq"]},II={name:"min",category:"Statistics",syntax:["min(a, b, c, ...)","min(A)","min(A, dimension)"],description:"Compute the minimum value of a list of values.",examples:["min(2, 3, 4, 1)","min([2, 3, 4, 1])","min([2, 5; 4, 3])","min([2, 5; 4, 3], 1)","min([2, 5; 4, 3], 2)","min(2.7, 7.1, -4.5, 2.0, 4.1)","max(2.7, 7.1, -4.5, 2.0, 4.1)"],seealso:["max","mean","median","prod","std","sum","variance"]},RI={name:"mode",category:"Statistics",syntax:["mode(a, b, c, ...)","mode(A)","mode(A, a, b, B, c, ...)"],description:"Computes the mode of all values as an array. In case mode being more than one, multiple values are returned in an array.",examples:["mode(2, 1, 4, 3, 1)","mode([1, 2.7, 3.2, 4, 2.7])","mode(1, 4, 6, 1, 6)"],seealso:["max","mean","min","median","prod","std","sum","variance"]},zI={name:"prod",category:"Statistics",syntax:["prod(a, b, c, ...)","prod(A)"],description:"Compute the product of all values.",examples:["prod(2, 3, 4)","prod([2, 3, 4])","prod([2, 5; 4, 3])"],seealso:["max","mean","min","median","min","std","sum","variance"]},PI={name:"quantileSeq",category:"Statistics",syntax:["quantileSeq(A, prob[, sorted])","quantileSeq(A, [prob1, prob2, ...][, sorted])","quantileSeq(A, N[, sorted])"],description:`Compute the prob order quantile of a matrix or a list with values. The sequence is sorted and the middle value is returned. Supported types of sequence values are: Number, BigNumber, Unit Supported types of probability are: Number, BigNumber.
|
|
77
77
|
|
|
78
|
-
In case of a (multi dimensional) array or matrix, the prob order quantile of all elements will be calculated.`,examples:["quantileSeq([3, -1, 5, 7], 0.5)","quantileSeq([3, -1, 5, 7], [1/3, 2/3])","quantileSeq([3, -1, 5, 7], 2)","quantileSeq([-1, 3, 5, 7], 0.5, true)"],seealso:["mean","median","min","max","prod","std","sum","variance"]},kI={name:"std",category:"Statistics",syntax:["std(a, b, c, ...)","std(A)","std(A, dimension)","std(A, normalization)","std(A, dimension, normalization)"],description:'Compute the standard deviation of all values, defined as std(A) = sqrt(variance(A)). Optional parameter normalization can be "unbiased" (default), "uncorrected", or "biased".',examples:["std(2, 4, 6)","std([2, 4, 6, 8])",'std([2, 4, 6, 8], "uncorrected")','std([2, 4, 6, 8], "biased")',"std([1, 2, 3; 4, 5, 6])"],seealso:["max","mean","min","median","prod","sum","variance"]},qI={name:"cumsum",category:"Statistics",syntax:["cumsum(a, b, c, ...)","cumsum(A)"],description:"Compute the cumulative sum of all values.",examples:["cumsum(2, 3, 4, 1)","cumsum([2, 3, 4, 1])","cumsum([1, 2; 3, 4])","cumsum([1, 2; 3, 4], 1)","cumsum([1, 2; 3, 4], 2)"],seealso:["max","mean","median","min","prod","std","sum","variance"]},LI={name:"sum",category:"Statistics",syntax:["sum(a, b, c, ...)","sum(A)","sum(A, dimension)"],description:"Compute the sum of all values.",examples:["sum(2, 3, 4, 1)","sum([2, 3, 4, 1])","sum([2, 5; 4, 3])"],seealso:["max","mean","median","min","prod","std","sum","variance"]},VI={name:"variance",category:"Statistics",syntax:["variance(a, b, c, ...)","variance(A)","variance(A, dimension)","variance(A, normalization)","variance(A, dimension, normalization)"],description:'Compute the variance of all values. Optional parameter normalization can be "unbiased" (default), "uncorrected", or "biased".',examples:["variance(2, 4, 6)","variance([2, 4, 6, 8])",'variance([2, 4, 6, 8], "uncorrected")','variance([2, 4, 6, 8], "biased")',"variance([1, 2, 3; 4, 5, 6])"],seealso:["max","mean","min","median","min","prod","std","sum"]},UI={name:"corr",category:"Statistics",syntax:["corr(A,B)"],description:"Compute the correlation coefficient of a two list with values, For matrices, the matrix correlation coefficient is calculated.",examples:["corr([2, 4, 6, 8],[1, 2, 3, 6])","corr(matrix([[1, 2.2, 3, 4.8, 5], [1, 2, 3, 4, 5]]), matrix([[4, 5.3, 6.6, 7, 8], [1, 2, 3, 4, 5]]))"],seealso:["max","mean","min","median","min","prod","std","sum"]},HI={name:"acos",category:"Trigonometry",syntax:["acos(x)"],description:"Compute the inverse cosine of a value in radians.",examples:["acos(0.5)","acos(cos(2.3))"],seealso:["cos","atan","asin"]},ZI={name:"acosh",category:"Trigonometry",syntax:["acosh(x)"],description:"Calculate the hyperbolic arccos of a value, defined as `acosh(x) = ln(sqrt(x^2 - 1) + x)`.",examples:["acosh(1.5)"],seealso:["cosh","asinh","atanh"]},GI={name:"acot",category:"Trigonometry",syntax:["acot(x)"],description:"Calculate the inverse cotangent of a value.",examples:["acot(0.5)","acot(cot(0.5))","acot(2)"],seealso:["cot","atan"]},WI={name:"acoth",category:"Trigonometry",syntax:["acoth(x)"],description:"Calculate the inverse hyperbolic tangent of a value, defined as `acoth(x) = (ln((x+1)/x) + ln(x/(x-1))) / 2`.",examples:["acoth(2)","acoth(0.5)"],seealso:["acsch","asech"]},jI={name:"acsc",category:"Trigonometry",syntax:["acsc(x)"],description:"Calculate the inverse cotangent of a value.",examples:["acsc(2)","acsc(csc(0.5))","acsc(0.5)"],seealso:["csc","asin","asec"]},KI={name:"acsch",category:"Trigonometry",syntax:["acsch(x)"],description:"Calculate the inverse hyperbolic cosecant of a value, defined as `acsch(x) = ln(1/x + sqrt(1/x^2 + 1))`.",examples:["acsch(0.5)"],seealso:["asech","acoth"]},JI={name:"asec",category:"Trigonometry",syntax:["asec(x)"],description:"Calculate the inverse secant of a value.",examples:["asec(0.5)","asec(sec(0.5))","asec(2)"],seealso:["acos","acot","acsc"]},YI={name:"asech",category:"Trigonometry",syntax:["asech(x)"],description:"Calculate the inverse secant of a value.",examples:["asech(0.5)"],seealso:["acsch","acoth"]},XI={name:"asin",category:"Trigonometry",syntax:["asin(x)"],description:"Compute the inverse sine of a value in radians.",examples:["asin(0.5)","asin(sin(0.5))"],seealso:["sin","acos","atan"]},QI={name:"asinh",category:"Trigonometry",syntax:["asinh(x)"],description:"Calculate the hyperbolic arcsine of a value, defined as `asinh(x) = ln(x + sqrt(x^2 + 1))`.",examples:["asinh(0.5)"],seealso:["acosh","atanh"]},eR={name:"atan",category:"Trigonometry",syntax:["atan(x)"],description:"Compute the inverse tangent of a value in radians.",examples:["atan(0.5)","atan(tan(0.5))"],seealso:["tan","acos","asin"]},rR={name:"atan2",category:"Trigonometry",syntax:["atan2(y, x)"],description:"Computes the principal value of the arc tangent of y/x in radians.",examples:["atan2(2, 2) / pi","angle = 60 deg in rad","x = cos(angle)","y = sin(angle)","atan2(y, x)"],seealso:["sin","cos","tan"]},tR={name:"atanh",category:"Trigonometry",syntax:["atanh(x)"],description:"Calculate the hyperbolic arctangent of a value, defined as `atanh(x) = ln((1 + x)/(1 - x)) / 2`.",examples:["atanh(0.5)"],seealso:["acosh","asinh"]},nR={name:"cos",category:"Trigonometry",syntax:["cos(x)"],description:"Compute the cosine of x in radians.",examples:["cos(2)","cos(pi / 4) ^ 2","cos(180 deg)","cos(60 deg)","sin(0.2)^2 + cos(0.2)^2"],seealso:["acos","sin","tan"]},aR={name:"cosh",category:"Trigonometry",syntax:["cosh(x)"],description:"Compute the hyperbolic cosine of x in radians.",examples:["cosh(0.5)"],seealso:["sinh","tanh","coth"]},iR={name:"cot",category:"Trigonometry",syntax:["cot(x)"],description:"Compute the cotangent of x in radians. Defined as 1/tan(x)",examples:["cot(2)","1 / tan(2)"],seealso:["sec","csc","tan"]},oR={name:"coth",category:"Trigonometry",syntax:["coth(x)"],description:"Compute the hyperbolic cotangent of x in radians.",examples:["coth(2)","1 / tanh(2)"],seealso:["sech","csch","tanh"]},sR={name:"csc",category:"Trigonometry",syntax:["csc(x)"],description:"Compute the cosecant of x in radians. Defined as 1/sin(x)",examples:["csc(2)","1 / sin(2)"],seealso:["sec","cot","sin"]},uR={name:"csch",category:"Trigonometry",syntax:["csch(x)"],description:"Compute the hyperbolic cosecant of x in radians. Defined as 1/sinh(x)",examples:["csch(2)","1 / sinh(2)"],seealso:["sech","coth","sinh"]},lR={name:"sec",category:"Trigonometry",syntax:["sec(x)"],description:"Compute the secant of x in radians. Defined as 1/cos(x)",examples:["sec(2)","1 / cos(2)"],seealso:["cot","csc","cos"]},cR={name:"sech",category:"Trigonometry",syntax:["sech(x)"],description:"Compute the hyperbolic secant of x in radians. Defined as 1/cosh(x)",examples:["sech(2)","1 / cosh(2)"],seealso:["coth","csch","cosh"]},fR={name:"sin",category:"Trigonometry",syntax:["sin(x)"],description:"Compute the sine of x in radians.",examples:["sin(2)","sin(pi / 4) ^ 2","sin(90 deg)","sin(30 deg)","sin(0.2)^2 + cos(0.2)^2"],seealso:["asin","cos","tan"]},dR={name:"sinh",category:"Trigonometry",syntax:["sinh(x)"],description:"Compute the hyperbolic sine of x in radians.",examples:["sinh(0.5)"],seealso:["cosh","tanh"]},mR={name:"tan",category:"Trigonometry",syntax:["tan(x)"],description:"Compute the tangent of x in radians.",examples:["tan(0.5)","sin(0.5) / cos(0.5)","tan(pi / 4)","tan(45 deg)"],seealso:["atan","sin","cos"]},pR={name:"tanh",category:"Trigonometry",syntax:["tanh(x)"],description:"Compute the hyperbolic tangent of x in radians.",examples:["tanh(0.5)","sinh(0.5) / cosh(0.5)"],seealso:["sinh","cosh"]},vR={name:"to",category:"Units",syntax:["x to unit","to(x, unit)"],description:"Change the unit of a value.",examples:["5 inch to cm","3.2kg to g","16 bytes in bits"],seealso:[]},hR={name:"bin",category:"Utils",syntax:["bin(value)"],description:"Format a number as binary",examples:["bin(2)"],seealso:["oct","hex"]},gR={name:"clone",category:"Utils",syntax:["clone(x)"],description:"Clone a variable. Creates a copy of primitive variables, and a deep copy of matrices",examples:["clone(3.5)","clone(2 - 4i)","clone(45 deg)","clone([1, 2; 3, 4])",'clone("hello world")'],seealso:[]},yR={name:"format",category:"Utils",syntax:["format(value)","format(value, precision)"],description:"Format a value of any type as string.",examples:["format(2.3)","format(3 - 4i)","format([])","format(pi, 3)"],seealso:["print"]},bR={name:"hasNumericValue",category:"Utils",syntax:["hasNumericValue(x)"],description:"Test whether a value is an numeric value. In case of a string, true is returned if the string contains a numeric value.",examples:["hasNumericValue(2)",'hasNumericValue("2")','isNumeric("2")',"hasNumericValue(0)","hasNumericValue(bignumber(500))","hasNumericValue(fraction(0.125))","hasNumericValue(2 + 3i)",'hasNumericValue([2.3, "foo", false])'],seealso:["isInteger","isZero","isNegative","isPositive","isNaN","isNumeric"]},wR={name:"hex",category:"Utils",syntax:["hex(value)"],description:"Format a number as hexadecimal",examples:["hex(240)"],seealso:["bin","oct"]},xR={name:"isInteger",category:"Utils",syntax:["isInteger(x)"],description:"Test whether a value is an integer number.",examples:["isInteger(2)","isInteger(3.5)","isInteger([3, 0.5, -2])"],seealso:["isNegative","isNumeric","isPositive","isZero"]},NR={name:"isNaN",category:"Utils",syntax:["isNaN(x)"],description:"Test whether a value is NaN (not a number)",examples:["isNaN(2)","isNaN(0 / 0)","isNaN(NaN)","isNaN(Infinity)"],seealso:["isNegative","isNumeric","isPositive","isZero"]},AR={name:"isNegative",category:"Utils",syntax:["isNegative(x)"],description:"Test whether a value is negative: smaller than zero.",examples:["isNegative(2)","isNegative(0)","isNegative(-4)","isNegative([3, 0.5, -2])"],seealso:["isInteger","isNumeric","isPositive","isZero"]},ER={name:"isNumeric",category:"Utils",syntax:["isNumeric(x)"],description:"Test whether a value is a numeric value. Returns true when the input is a number, BigNumber, Fraction, or boolean.",examples:["isNumeric(2)",'isNumeric("2")','hasNumericValue("2")',"isNumeric(0)","isNumeric(bignumber(500))","isNumeric(fraction(0.125))","isNumeric(2 + 3i)",'isNumeric([2.3, "foo", false])'],seealso:["isInteger","isZero","isNegative","isPositive","isNaN","hasNumericValue"]},DR={name:"isPositive",category:"Utils",syntax:["isPositive(x)"],description:"Test whether a value is positive: larger than zero.",examples:["isPositive(2)","isPositive(0)","isPositive(-4)","isPositive([3, 0.5, -2])"],seealso:["isInteger","isNumeric","isNegative","isZero"]},SR={name:"isPrime",category:"Utils",syntax:["isPrime(x)"],description:"Test whether a value is prime: has no divisors other than itself and one.",examples:["isPrime(3)","isPrime(-2)","isPrime([2, 17, 100])"],seealso:["isInteger","isNumeric","isNegative","isZero"]},CR={name:"isZero",category:"Utils",syntax:["isZero(x)"],description:"Test whether a value is zero.",examples:["isZero(2)","isZero(0)","isZero(-4)","isZero([3, 0, -2, 0])"],seealso:["isInteger","isNumeric","isNegative","isPositive"]},MR={name:"numeric",category:"Utils",syntax:["numeric(x)"],description:"Convert a numeric input to a specific numeric type: number, BigNumber, bigint, or Fraction.",examples:['numeric("4")','numeric("4", "number")','numeric("4", "bigint")','numeric("4", "BigNumber")','numeric("4", "Fraction")','numeric(4, "Fraction")','numeric(fraction(2, 5), "number")'],seealso:["number","bigint","fraction","bignumber","string","format"]},_R={name:"oct",category:"Utils",syntax:["oct(value)"],description:"Format a number as octal",examples:["oct(56)"],seealso:["bin","hex"]},TR={name:"print",category:"Utils",syntax:["print(template, values)","print(template, values, precision)"],description:"Interpolate values into a string template.",examples:['print("Lucy is $age years old", {age: 5})','print("The value of pi is $pi", {pi: pi}, 3)','print("Hello, $user.name!", {user: {name: "John"}})','print("Values: $1, $2, $3", [6, 9, 4])'],seealso:["format"]},FR={name:"typeOf",category:"Utils",syntax:["typeOf(x)"],description:"Get the type of a variable.",examples:["typeOf(3.5)","typeOf(2 - 4i)","typeOf(45 deg)",'typeOf("hello world")'],seealso:["getMatrixDataType"]},BR={name:"solveODE",category:"Numeric",syntax:["solveODE(func, tspan, y0)","solveODE(func, tspan, y0, options)"],description:"Numerical Integration of Ordinary Differential Equations.",examples:["f(t,y) = y","tspan = [0, 4]","solveODE(f, tspan, 1)","solveODE(f, tspan, [1, 2])",'solveODE(f, tspan, 1, { method:"RK23", maxStep:0.1 })'],seealso:["derivative","simplifyCore"]},OR={bignumber:N6,bigint:A6,boolean:E6,complex:D6,createUnit:S6,fraction:C6,index:M6,matrix:_6,number:T6,sparse:F6,splitUnit:B6,string:O6,unit:$6,e:tg,E:tg,false:s6,i:u6,Infinity:l6,LN2:f6,LN10:c6,LOG2E:m6,LOG10E:d6,NaN:p6,null:v6,pi:ng,PI:ng,phi:h6,SQRT1_2:g6,SQRT2:y6,tau:b6,true:w6,version:x6,speedOfLight:{description:"Speed of light in vacuum",examples:["speedOfLight"]},gravitationConstant:{description:"Newtonian constant of gravitation",examples:["gravitationConstant"]},planckConstant:{description:"Planck constant",examples:["planckConstant"]},reducedPlanckConstant:{description:"Reduced Planck constant",examples:["reducedPlanckConstant"]},magneticConstant:{description:"Magnetic constant (vacuum permeability)",examples:["magneticConstant"]},electricConstant:{description:"Electric constant (vacuum permeability)",examples:["electricConstant"]},vacuumImpedance:{description:"Characteristic impedance of vacuum",examples:["vacuumImpedance"]},coulomb:{description:"Coulomb's constant",examples:["coulomb"]},elementaryCharge:{description:"Elementary charge",examples:["elementaryCharge"]},bohrMagneton:{description:"Bohr magneton",examples:["bohrMagneton"]},conductanceQuantum:{description:"Conductance quantum",examples:["conductanceQuantum"]},inverseConductanceQuantum:{description:"Inverse conductance quantum",examples:["inverseConductanceQuantum"]},magneticFluxQuantum:{description:"Magnetic flux quantum",examples:["magneticFluxQuantum"]},nuclearMagneton:{description:"Nuclear magneton",examples:["nuclearMagneton"]},klitzing:{description:"Von Klitzing constant",examples:["klitzing"]},bohrRadius:{description:"Bohr radius",examples:["bohrRadius"]},classicalElectronRadius:{description:"Classical electron radius",examples:["classicalElectronRadius"]},electronMass:{description:"Electron mass",examples:["electronMass"]},fermiCoupling:{description:"Fermi coupling constant",examples:["fermiCoupling"]},fineStructure:{description:"Fine-structure constant",examples:["fineStructure"]},hartreeEnergy:{description:"Hartree energy",examples:["hartreeEnergy"]},protonMass:{description:"Proton mass",examples:["protonMass"]},deuteronMass:{description:"Deuteron Mass",examples:["deuteronMass"]},neutronMass:{description:"Neutron mass",examples:["neutronMass"]},quantumOfCirculation:{description:"Quantum of circulation",examples:["quantumOfCirculation"]},rydberg:{description:"Rydberg constant",examples:["rydberg"]},thomsonCrossSection:{description:"Thomson cross section",examples:["thomsonCrossSection"]},weakMixingAngle:{description:"Weak mixing angle",examples:["weakMixingAngle"]},efimovFactor:{description:"Efimov factor",examples:["efimovFactor"]},atomicMass:{description:"Atomic mass constant",examples:["atomicMass"]},avogadro:{description:"Avogadro's number",examples:["avogadro"]},boltzmann:{description:"Boltzmann constant",examples:["boltzmann"]},faraday:{description:"Faraday constant",examples:["faraday"]},firstRadiation:{description:"First radiation constant",examples:["firstRadiation"]},loschmidt:{description:"Loschmidt constant at T=273.15 K and p=101.325 kPa",examples:["loschmidt"]},gasConstant:{description:"Gas constant",examples:["gasConstant"]},molarPlanckConstant:{description:"Molar Planck constant",examples:["molarPlanckConstant"]},molarVolume:{description:"Molar volume of an ideal gas at T=273.15 K and p=101.325 kPa",examples:["molarVolume"]},sackurTetrode:{description:"Sackur-Tetrode constant at T=1 K and p=101.325 kPa",examples:["sackurTetrode"]},secondRadiation:{description:"Second radiation constant",examples:["secondRadiation"]},stefanBoltzmann:{description:"Stefan-Boltzmann constant",examples:["stefanBoltzmann"]},wienDisplacement:{description:"Wien displacement law constant",examples:["wienDisplacement"]},molarMass:{description:"Molar mass constant",examples:["molarMass"]},molarMassC12:{description:"Molar mass constant of carbon-12",examples:["molarMassC12"]},gravity:{description:"Standard acceleration of gravity (standard acceleration of free-fall on Earth)",examples:["gravity"]},planckLength:{description:"Planck length",examples:["planckLength"]},planckMass:{description:"Planck mass",examples:["planckMass"]},planckTime:{description:"Planck time",examples:["planckTime"]},planckCharge:{description:"Planck charge",examples:["planckCharge"]},planckTemperature:{description:"Planck temperature",examples:["planckTemperature"]},derivative:P6,lsolve:q6,lsolveAll:L6,lup:V6,lusolve:U6,leafCount:k6,polynomialRoot:H6,resolve:W6,simplify:j6,simplifyConstant:K6,simplifyCore:J6,symbolicEqual:X6,rationalize:G6,slu:Y6,usolve:Q6,usolveAll:e$,qr:Z6,abs:r$,add:t$,cbrt:n$,ceil:a$,cube:i$,divide:o$,dotDivide:s$,dotMultiply:u$,dotPow:l$,exp:c$,expm:f$,expm1:d$,fix:m$,floor:p$,gcd:v$,hypot:h$,lcm:y$,log:b$,log2:N$,log1p:x$,log10:w$,mod:A$,multiply:E$,norm:D$,nthRoot:S$,nthRoots:C$,pow:M$,round:_$,sign:T$,sqrt:F$,sqrtm:B$,square:R$,subtract:z$,unaryMinus:P$,unaryPlus:k$,xgcd:q$,invmod:g$,bitAnd:L$,bitNot:V$,bitOr:U$,bitXor:H$,leftShift:Z$,rightArithShift:G$,rightLogShift:W$,bellNumbers:j$,catalan:K$,composition:J$,stirlingS2:Y$,config:I6,import:R6,typed:z6,arg:X$,conj:Q$,re:r9,im:e9,evaluate:t9,help:n9,distance:a9,intersect:i9,and:o9,not:s9,or:u9,xor:l9,concat:f9,count:d9,cross:m9,column:c9,ctranspose:p9,det:v9,diag:h9,diff:g9,dot:y9,getMatrixDataType:A9,identity:E9,filter:w9,flatten:x9,forEach:N9,inv:D9,pinv:S9,eigs:b9,kron:C9,matrixFromFunction:T9,matrixFromRows:F9,matrixFromColumns:_9,map:M9,ones:B9,partitionSelect:O9,range:$9,resize:R9,reshape:I9,rotate:z9,rotationMatrix:P9,row:k9,size:q9,sort:L9,squeeze:V9,subset:U9,trace:H9,transpose:Z9,zeros:G9,fft:W9,ifft:j9,sylvester:O$,schur:$$,lyap:I$,solveODE:BR,combinations:K9,combinationsWithRep:J9,factorial:Y9,gamma:X9,kldivergence:eI,lgamma:Q9,multinomial:rI,permutations:tI,pickRandom:nI,random:aI,randomInt:iI,compare:oI,compareNatural:sI,compareText:uI,deepEqual:lI,equal:cI,equalText:fI,larger:dI,largerEq:mI,smaller:pI,smallerEq:vI,unequal:hI,setCartesian:gI,setDifference:yI,setDistinct:bI,setIntersect:wI,setIsSubset:xI,setMultiplicity:NI,setPowerset:AI,setSize:EI,setSymDifference:DI,setUnion:SI,zpk2tf:CI,freqz:MI,erf:_I,zeta:TI,cumsum:qI,mad:FI,max:BI,mean:OI,median:$I,min:II,mode:RI,prod:zI,quantileSeq:PI,std:kI,sum:LI,variance:VI,corr:UI,acos:HI,acosh:ZI,acot:GI,acoth:WI,acsc:jI,acsch:KI,asec:JI,asech:YI,asin:XI,asinh:QI,atan:eR,atanh:tR,atan2:rR,cos:nR,cosh:aR,cot:iR,coth:oR,csc:sR,csch:uR,sec:lR,sech:cR,sin:fR,sinh:dR,tan:mR,tanh:pR,to:vR,clone:gR,format:yR,bin:hR,oct:_R,hex:wR,isNaN:NR,isInteger:xR,isNegative:AR,isNumeric:ER,hasNumericValue:bR,isPositive:DR,isPrime:SR,isZero:CR,print:TR,typeOf:FR,numeric:MR},ag="help",$R=["typed","mathWithTransform","Help"],IR=P(ag,$R,e=>{var{typed:r,mathWithTransform:t,Help:n}=e;return r(ag,{any:function(i){var o,l=i;if(typeof i!="string"){for(o in t)if(De(t,o)&&i===t[o]){l=o;break}}var u=Pr(OR,l);if(!u){var s=typeof l=="function"?l.name:l;throw new Error('No documentation found on "'+s+'"')}return new n(u)}})}),ig="chain",RR=["typed","Chain"],zR=P(ig,RR,e=>{var{typed:r,Chain:t}=e;return r(ig,{"":function(){return new t},any:function(a){return new t(a)}})}),og="det",PR=["typed","matrix","subtractScalar","multiply","divideScalar","isZero","unaryMinus"],kR=P(og,PR,e=>{var{typed:r,matrix:t,subtractScalar:n,multiply:a,divideScalar:i,isZero:o,unaryMinus:l}=e;return r(og,{any:function(c){return Fe(c)},"Array | Matrix":function(c){var f;switch(_e(c)?f=c.size():Array.isArray(c)?(c=t(c),f=c.size()):f=[],f.length){case 0:return Fe(c);case 1:if(f[0]===1)return Fe(c.valueOf()[0]);if(f[0]===0)return 1;throw new RangeError("Matrix must be square (size: "+Ve(f)+")");case 2:{var d=f[0],p=f[1];if(d===p)return u(c.clone().valueOf(),d);if(p===0)return 1;throw new RangeError("Matrix must be square (size: "+Ve(f)+")")}default:throw new RangeError("Matrix must be two dimensional (size: "+Ve(f)+")")}}});function u(s,c,f){if(c===1)return Fe(s[0][0]);if(c===2)return n(a(s[0][0],s[1][1]),a(s[1][0],s[0][1]));for(var d=!1,p=new Array(c).fill(0).map((D,S)=>S),v=0;v<c;v++){var h=p[v];if(o(s[h][v])){var w=void 0;for(w=v+1;w<c;w++)if(!o(s[p[w]][v])){h=p[w],p[w]=p[v],p[v]=h,d=!d;break}if(w===c)return s[h][v]}for(var b=s[h][v],A=v===0?1:s[p[v-1]][v-1],g=v+1;g<c;g++)for(var N=p[g],x=v+1;x<c;x++)s[N][x]=i(n(a(s[N][x],b),a(s[N][v],s[h][x])),A)}var y=s[p[c-1]][c-1];return d?l(y):y}}),sg="inv",qR=["typed","matrix","divideScalar","addScalar","multiply","unaryMinus","det","identity","abs"],LR=P(sg,qR,e=>{var{typed:r,matrix:t,divideScalar:n,addScalar:a,multiply:i,unaryMinus:o,det:l,identity:u,abs:s}=e;return r(sg,{"Array | Matrix":function(d){var p=_e(d)?d.size():$e(d);switch(p.length){case 1:if(p[0]===1)return _e(d)?t([n(1,d.valueOf()[0])]):[n(1,d[0])];throw new RangeError("Matrix must be square (size: "+Ve(p)+")");case 2:{var v=p[0],h=p[1];if(v===h)return _e(d)?t(c(d.valueOf(),v,h),d.storage()):c(d,v,h);throw new RangeError("Matrix must be square (size: "+Ve(p)+")")}default:throw new RangeError("Matrix must be two dimensional (size: "+Ve(p)+")")}},any:function(d){return n(1,d)}});function c(f,d,p){var v,h,w,b,A;if(d===1){if(b=f[0][0],b===0)throw Error("Cannot calculate inverse, determinant is zero");return[[n(1,b)]]}else if(d===2){var g=l(f);if(g===0)throw Error("Cannot calculate inverse, determinant is zero");return[[n(f[1][1],g),n(o(f[0][1]),g)],[n(o(f[1][0]),g),n(f[0][0],g)]]}else{var N=f.concat();for(v=0;v<d;v++)N[v]=N[v].concat();for(var x=u(d).valueOf(),y=0;y<p;y++){var D=s(N[y][y]),S=y;for(v=y+1;v<d;)s(N[v][y])>D&&(D=s(N[v][y]),S=v),v++;if(D===0)throw Error("Cannot calculate inverse, determinant is zero");v=S,v!==y&&(A=N[y],N[y]=N[v],N[v]=A,A=x[y],x[y]=x[v],x[v]=A);var E=N[y],C=x[y];for(v=0;v<d;v++){var _=N[v],F=x[v];if(v!==y){if(_[y]!==0){for(w=n(o(_[y]),E[y]),h=y;h<p;h++)_[h]=a(_[h],i(w,E[h]));for(h=0;h<p;h++)F[h]=a(F[h],i(w,C[h]))}}else{for(w=E[y],h=y;h<p;h++)_[h]=n(_[h],w);for(h=0;h<p;h++)F[h]=n(F[h],w)}}}return x}}}),ug="pinv",VR=["typed","matrix","inv","deepEqual","equal","dotDivide","dot","ctranspose","divideScalar","multiply","add","Complex"],UR=P(ug,VR,e=>{var{typed:r,matrix:t,inv:n,deepEqual:a,equal:i,dotDivide:o,dot:l,ctranspose:u,divideScalar:s,multiply:c,add:f,Complex:d}=e;return r(ug,{"Array | Matrix":function(g){var N=_e(g)?g.size():$e(g);switch(N.length){case 1:return b(g)?u(g):N[0]===1?n(g):o(u(g),l(g,g));case 2:{if(b(g))return u(g);var x=N[0],y=N[1];if(x===y)try{return n(g)}catch(D){if(!(D instanceof Error&&D.message.match(/Cannot calculate inverse, determinant is zero/)))throw D}return _e(g)?t(p(g.valueOf(),x,y),g.storage()):p(g,x,y)}default:throw new RangeError("Matrix must be two dimensional (size: "+Ve(N)+")")}},any:function(g){return i(g,0)?Fe(g):s(1,g)}});function p(A,g,N){var{C:x,F:y}=h(A,g,N),D=c(n(c(u(x),x)),u(x)),S=c(u(y),n(c(y,u(y))));return c(S,D)}function v(A,g,N){for(var x=Fe(A),y=0,D=0;D<g;D++){if(N<=y)return x;for(var S=D;w(x[S][y]);)if(S++,g===S&&(S=D,y++,N===y))return x;[x[S],x[D]]=[x[D],x[S]];for(var E=x[D][y],C=0;C<N;C++)x[D][C]=o(x[D][C],E);for(var _=0;_<g;_++)if(_!==D){E=x[_][y];for(var F=0;F<N;F++)x[_][F]=f(x[_][F],c(-1,c(E,x[D][F])))}y++}return x}function h(A,g,N){var x=v(A,g,N),y=A.map((S,E)=>S.filter((C,_)=>_<g&&!w(l(x[_],x[_])))),D=x.filter((S,E)=>!w(l(x[E],x[E])));return{C:y,F:D}}function w(A){return i(f(A,d(1,1)),f(0,d(1,1)))}function b(A){return a(f(A,d(1,1)),f(c(A,0),d(1,1)))}});function HR(e){var{addScalar:r,subtract:t,flatten:n,multiply:a,multiplyScalar:i,divideScalar:o,sqrt:l,abs:u,bignumber:s,diag:c,size:f,reshape:d,inv:p,qr:v,usolve:h,usolveAll:w,equal:b,complex:A,larger:g,smaller:N,matrixFromColumns:x,dot:y}=e;function D(U,z,Q,se){var re=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,q=S(U,z,Q,se,re);E(U,z,Q,se,re,q);var{values:Z,C:j}=C(U,z,Q,se,re);if(re){var Y=_(U,z,j,q,Z,Q,se);return{values:Z,eigenvectors:Y}}return{values:Z}}function S(U,z,Q,se,re){var q=se==="BigNumber",Z=se==="Complex",j=q?s(0):0,Y=q?s(1):Z?A(1):1,ee=q?s(1):1,te=q?s(10):2,oe=i(te,te),ve;re&&(ve=Array(z).fill(Y));for(var L=!1;!L;){L=!0;for(var H=0;H<z;H++){for(var ne=j,ie=j,me=0;me<z;me++)H!==me&&(ne=r(ne,u(U[me][H])),ie=r(ie,u(U[H][me])));if(!b(ne,0)&&!b(ie,0)){for(var de=ee,be=ne,Ne=o(ie,te),V=i(ie,te);N(be,Ne);)be=i(be,oe),de=i(de,te);for(;g(be,V);)be=o(be,oe),de=o(de,te);var K=N(o(r(be,ie),de),i(r(ne,ie),.95));if(K){L=!1;for(var G=o(1,de),ae=0;ae<z;ae++)H!==ae&&(U[H][ae]=i(U[H][ae],G),U[ae][H]=i(U[ae][H],de));re&&(ve[H]=i(ve[H],G))}}}}return re?c(ve):null}function E(U,z,Q,se,re,q){var Z=se==="BigNumber",j=se==="Complex",Y=Z?s(0):j?A(0):0;Z&&(Q=s(Q));for(var ee=0;ee<z-2;ee++){for(var te=0,oe=Y,ve=ee+1;ve<z;ve++){var L=U[ve][ee];N(u(oe),u(L))&&(oe=L,te=ve)}if(!N(u(oe),Q)){if(te!==ee+1){var H=U[te];U[te]=U[ee+1],U[ee+1]=H;for(var ne=0;ne<z;ne++){var ie=U[ne][te];U[ne][te]=U[ne][ee+1],U[ne][ee+1]=ie}if(re){var me=q[te];q[te]=q[ee+1],q[ee+1]=me}}for(var de=ee+2;de<z;de++){var be=o(U[de][ee],oe);if(be!==0){for(var Ne=0;Ne<z;Ne++)U[de][Ne]=t(U[de][Ne],i(be,U[ee+1][Ne]));for(var V=0;V<z;V++)U[V][ee+1]=r(U[V][ee+1],i(be,U[V][de]));if(re)for(var K=0;K<z;K++)q[de][K]=t(q[de][K],i(be,q[ee+1][K]))}}}}return q}function C(U,z,Q,se,re){var q=se==="BigNumber",Z=se==="Complex",j=q?s(1):Z?A(1):1;q&&(Q=s(Q));for(var Y=Fe(U),ee=[],te=z,oe=[],ve=re?c(Array(z).fill(j)):void 0,L=re?c(Array(te).fill(j)):void 0,H=0;H<=100;){H+=1;for(var ne=Y[te-1][te-1],ie=0;ie<te;ie++)Y[ie][ie]=t(Y[ie][ie],ne);var{Q:me,R:de}=v(Y);Y=a(de,me);for(var be=0;be<te;be++)Y[be][be]=r(Y[be][be],ne);if(re&&(L=a(L,me)),te===1||N(u(Y[te-1][te-2]),Q)){H=0,ee.push(Y[te-1][te-1]),re&&(oe.unshift([[1]]),R(L,z),ve=a(ve,L),te>1&&(L=c(Array(te-1).fill(j)))),te-=1,Y.pop();for(var Ne=0;Ne<te;Ne++)Y[Ne].pop()}else if(te===2||N(u(Y[te-2][te-3]),Q)){H=0;var V=F(Y[te-2][te-2],Y[te-2][te-1],Y[te-1][te-2],Y[te-1][te-1]);ee.push(...V),re&&(oe.unshift(I(Y[te-2][te-2],Y[te-2][te-1],Y[te-1][te-2],Y[te-1][te-1],V[0],V[1],Q,se)),R(L,z),ve=a(ve,L),te>2&&(L=c(Array(te-2).fill(j)))),te-=2,Y.pop(),Y.pop();for(var K=0;K<te;K++)Y[K].pop(),Y[K].pop()}if(te===0)break}if(ee.sort((ce,fe)=>+t(u(ce),u(fe))),H>100){var G=Error("The eigenvalues failed to converge. Only found these eigenvalues: "+ee.join(", "));throw G.values=ee,G.vectors=[],G}var ae=re?a(ve,$(oe,z)):void 0;return{values:ee,C:ae}}function _(U,z,Q,se,re,q,Z){var j=p(Q),Y=a(j,U,Q),ee=Z==="BigNumber",te=Z==="Complex",oe=ee?s(0):te?A(0):0,ve=ee?s(1):te?A(1):1,L=[],H=[];for(var ne of re){var ie=M(L,ne,b);ie===-1?(L.push(ne),H.push(1)):H[ie]+=1}for(var me=[],de=L.length,be=Array(z).fill(oe),Ne=c(Array(z).fill(ve)),V=function(){var ae=L[K],ce=t(Y,a(ae,Ne)),fe=w(ce,be);for(fe.shift();fe.length<H[K];){var xe=T(ce,z,fe,q,Z);if(xe===null)break;fe.push(xe)}var ye=a(p(se),Q);fe=fe.map(Ae=>a(ye,Ae)),me.push(...fe.map(Ae=>({value:ae,vector:n(Ae)})))},K=0;K<de;K++)V();return me}function F(U,z,Q,se){var re=r(U,se),q=t(i(U,se),i(z,Q)),Z=i(re,.5),j=i(l(t(i(re,re),i(4,q))),.5);return[r(Z,j),t(Z,j)]}function I(U,z,Q,se,re,q,Z,j){var Y=j==="BigNumber",ee=j==="Complex",te=Y?s(0):ee?A(0):0,oe=Y?s(1):ee?A(1):1;if(N(u(Q),Z))return[[oe,te],[te,oe]];if(g(u(t(re,q)),Z))return[[t(re,se),t(q,se)],[Q,Q]];var ve=t(U,re),L=t(se,re);return N(u(z),Z)&&N(u(L),Z)?[[ve,oe],[Q,te]]:[[z,te],[L,oe]]}function R(U,z){for(var Q=0;Q<U.length;Q++)U[Q].push(...Array(z-U[Q].length).fill(0));for(var se=U.length;se<z;se++)U.push(Array(z).fill(0)),U[se][se]=1;return U}function $(U,z){for(var Q=[],se=0;se<z;se++)Q[se]=Array(z).fill(0);var re=0;for(var q of U){for(var Z=q.length,j=0;j<Z;j++)for(var Y=0;Y<Z;Y++)Q[re+j][re+Y]=q[j][Y];re+=Z}return Q}function M(U,z,Q){for(var se=0;se<U.length;se++)if(Q(U[se],z))return se;return-1}function T(U,z,Q,se,re){for(var q=re==="BigNumber"?s(1e3):1e3,Z,j=0;j<5;++j){Z=k(z,Q,re);try{Z=h(U,Z)}catch{continue}if(g(W(Z),q))break}if(j>=5)return null;for(j=0;;){var Y=h(U,Z);if(N(W(O(Z,[Y])),se))break;if(++j>=10)return null;Z=X(Y)}return Z}function k(U,z,Q){var se=Q==="BigNumber",re=Q==="Complex",q=Array(U).fill(0).map(Z=>2*Math.random()-1);return se&&(q=q.map(Z=>s(Z))),re&&(q=q.map(Z=>A(Z))),q=O(q,z),X(q,Q)}function O(U,z){var Q=f(U);for(var se of z)se=d(se,Q),U=t(U,a(o(y(se,U),y(se,se)),se));return U}function W(U){return u(l(y(U,U)))}function X(U,z){var Q=z==="BigNumber",se=z==="Complex",re=Q?s(1):se?A(1):1;return a(o(re,W(U)),U)}return D}function ZR(e){var{config:r,addScalar:t,subtract:n,abs:a,atan:i,cos:o,sin:l,multiplyScalar:u,inv:s,bignumber:c,multiply:f,add:d}=e;function p(E,C){var _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:r.relTol,F=arguments.length>3?arguments[3]:void 0,I=arguments.length>4?arguments[4]:void 0;if(F==="number")return v(E,_,I);if(F==="BigNumber")return h(E,_,I);throw TypeError("Unsupported data type: "+F)}function v(E,C,_){var F=E.length,I=Math.abs(C/F),R,$;if(_){$=new Array(F);for(var M=0;M<F;M++)$[M]=Array(F).fill(0),$[M][M]=1}for(var T=y(E);Math.abs(T[1])>=Math.abs(I);){var k=T[0][0],O=T[0][1];R=w(E[k][k],E[O][O],E[k][O]),E=x(E,R,k,O),_&&($=A($,R,k,O)),T=y(E)}for(var W=Array(F).fill(0),X=0;X<F;X++)W[X]=E[X][X];return S(Fe(W),$,_)}function h(E,C,_){var F=E.length,I=a(C/F),R,$;if(_){$=new Array(F);for(var M=0;M<F;M++)$[M]=Array(F).fill(0),$[M][M]=1}for(var T=D(E);a(T[1])>=a(I);){var k=T[0][0],O=T[0][1];R=b(E[k][k],E[O][O],E[k][O]),E=N(E,R,k,O),_&&($=g($,R,k,O)),T=D(E)}for(var W=Array(F).fill(0),X=0;X<F;X++)W[X]=E[X][X];return S(Fe(W),$,_)}function w(E,C,_){var F=C-E;return Math.abs(F)<=r.relTol?Math.PI/4:.5*Math.atan(2*_/(C-E))}function b(E,C,_){var F=n(C,E);return a(F)<=r.relTol?c(-1).acos().div(4):u(.5,i(f(2,_,s(F))))}function A(E,C,_,F){for(var I=E.length,R=Math.cos(C),$=Math.sin(C),M=Array(I).fill(0),T=Array(I).fill(0),k=0;k<I;k++)M[k]=R*E[k][_]-$*E[k][F],T[k]=$*E[k][_]+R*E[k][F];for(var O=0;O<I;O++)E[O][_]=M[O],E[O][F]=T[O];return E}function g(E,C,_,F){for(var I=E.length,R=o(C),$=l(C),M=Array(I).fill(c(0)),T=Array(I).fill(c(0)),k=0;k<I;k++)M[k]=n(u(R,E[k][_]),u($,E[k][F])),T[k]=t(u($,E[k][_]),u(R,E[k][F]));for(var O=0;O<I;O++)E[O][_]=M[O],E[O][F]=T[O];return E}function N(E,C,_,F){for(var I=E.length,R=c(o(C)),$=c(l(C)),M=u(R,R),T=u($,$),k=Array(I).fill(c(0)),O=Array(I).fill(c(0)),W=f(c(2),R,$,E[_][F]),X=t(n(u(M,E[_][_]),W),u(T,E[F][F])),U=d(u(T,E[_][_]),W,u(M,E[F][F])),z=0;z<I;z++)k[z]=n(u(R,E[_][z]),u($,E[F][z])),O[z]=t(u($,E[_][z]),u(R,E[F][z]));E[_][_]=X,E[F][F]=U,E[_][F]=c(0),E[F][_]=c(0);for(var Q=0;Q<I;Q++)Q!==_&&Q!==F&&(E[_][Q]=k[Q],E[Q][_]=k[Q],E[F][Q]=O[Q],E[Q][F]=O[Q]);return E}function x(E,C,_,F){for(var I=E.length,R=Math.cos(C),$=Math.sin(C),M=R*R,T=$*$,k=Array(I).fill(0),O=Array(I).fill(0),W=M*E[_][_]-2*R*$*E[_][F]+T*E[F][F],X=T*E[_][_]+2*R*$*E[_][F]+M*E[F][F],U=0;U<I;U++)k[U]=R*E[_][U]-$*E[F][U],O[U]=$*E[_][U]+R*E[F][U];E[_][_]=W,E[F][F]=X,E[_][F]=0,E[F][_]=0;for(var z=0;z<I;z++)z!==_&&z!==F&&(E[_][z]=k[z],E[z][_]=k[z],E[F][z]=O[z],E[z][F]=O[z]);return E}function y(E){for(var C=E.length,_=0,F=[0,1],I=0;I<C;I++)for(var R=I+1;R<C;R++)Math.abs(_)<Math.abs(E[I][R])&&(_=Math.abs(E[I][R]),F=[I,R]);return[F,_]}function D(E){for(var C=E.length,_=0,F=[0,1],I=0;I<C;I++)for(var R=I+1;R<C;R++)a(_)<a(E[I][R])&&(_=a(E[I][R]),F=[I,R]);return[F,_]}function S(E,C,_){var F=E.length,I=Array(F),R;if(_){R=Array(F);for(var $=0;$<F;$++)R[$]=Array(F)}for(var M=0;M<F;M++){for(var T=0,k=E[0],O=0;O<E.length;O++)a(E[O])<a(k)&&(T=O,k=E[T]);if(I[M]=E.splice(T,1)[0],_)for(var W=0;W<F;W++)R[M][W]=C[W][T],C[W].splice(T,1)}if(!_)return{values:I};var X=R.map((U,z)=>({value:I[z],vector:U}));return{values:I,eigenvectors:X}}return p}var GR="eigs",WR=["config","typed","matrix","addScalar","equal","subtract","abs","atan","cos","sin","multiplyScalar","divideScalar","inv","bignumber","multiply","add","larger","column","flatten","number","complex","sqrt","diag","size","reshape","qr","usolve","usolveAll","im","re","smaller","matrixFromColumns","dot"],jR=P(GR,WR,e=>{var{config:r,typed:t,matrix:n,addScalar:a,subtract:i,equal:o,abs:l,atan:u,cos:s,sin:c,multiplyScalar:f,divideScalar:d,inv:p,bignumber:v,multiply:h,add:w,larger:b,column:A,flatten:g,number:N,complex:x,sqrt:y,diag:D,size:S,reshape:E,qr:C,usolve:_,usolveAll:F,im:I,re:R,smaller:$,matrixFromColumns:M,dot:T}=e,k=ZR({config:r,addScalar:a,subtract:i,abs:l,atan:u,cos:s,sin:c,multiplyScalar:f,inv:p,bignumber:v,multiply:h,add:w}),O=HR({addScalar:a,subtract:i,multiply:h,multiplyScalar:f,flatten:g,divideScalar:d,sqrt:y,abs:l,bignumber:v,diag:D,size:S,reshape:E,qr:C,inv:p,usolve:_,usolveAll:F,equal:o,complex:x,larger:b,smaller:$,matrixFromColumns:M,dot:T});return t("eigs",{Array:function(q){return W(n(q))},"Array, number|BigNumber":function(q,Z){return W(n(q),{precision:Z})},"Array, Object"(re,q){return W(n(re),q)},Matrix:function(q){return W(q,{matricize:!0})},"Matrix, number|BigNumber":function(q,Z){return W(q,{precision:Z,matricize:!0})},"Matrix, Object":function(q,Z){var j={matricize:!0};return Br(j,Z),W(q,j)}});function W(re){var q,Z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},j="eigenvectors"in Z?Z.eigenvectors:!0,Y=(q=Z.precision)!==null&&q!==void 0?q:r.relTol,ee=X(re,Y,j);return Z.matricize&&(ee.values=n(ee.values),j&&(ee.eigenvectors=ee.eigenvectors.map(te=>{var{value:oe,vector:ve}=te;return{value:oe,vector:n(ve)}}))),j&&Object.defineProperty(ee,"vectors",{enumerable:!1,get:()=>{throw new Error("eigs(M).vectors replaced with eigs(M).eigenvectors")}}),ee}function X(re,q,Z){var j=re.toArray(),Y=re.size();if(Y.length!==2||Y[0]!==Y[1])throw new RangeError("Matrix must be square (size: ".concat(Ve(Y),")"));var ee=Y[0];if(z(j,ee,q)&&(Q(j,ee),U(j,ee,q))){var te=se(re,j,ee);return k(j,ee,q,te,Z)}var oe=se(re,j,ee);return O(j,ee,q,oe,Z)}function U(re,q,Z){for(var j=0;j<q;j++)for(var Y=j;Y<q;Y++)if(b(v(l(i(re[j][Y],re[Y][j]))),Z))return!1;return!0}function z(re,q,Z){for(var j=0;j<q;j++)for(var Y=0;Y<q;Y++)if(b(v(l(I(re[j][Y]))),Z))return!1;return!0}function Q(re,q){for(var Z=0;Z<q;Z++)for(var j=0;j<q;j++)re[Z][j]=R(re[Z][j])}function se(re,q,Z){var j=re.datatype();if(j==="number"||j==="BigNumber"||j==="Complex")return j;for(var Y=!1,ee=!1,te=!1,oe=0;oe<Z;oe++)for(var ve=0;ve<Z;ve++){var L=q[oe][ve];if(Re(L)||zn(L))Y=!0;else if(Ie(L))ee=!0;else if(gt(L))te=!0;else throw TypeError("Unsupported type in Matrix: "+tr(L))}if(ee&&te&&console.warn("Complex BigNumbers not supported, this operation will lose precission."),te){for(var H=0;H<Z;H++)for(var ne=0;ne<Z;ne++)q[H][ne]=x(q[H][ne]);return"Complex"}if(ee){for(var ie=0;ie<Z;ie++)for(var me=0;me<Z;me++)q[ie][me]=v(q[ie][me]);return"BigNumber"}if(Y){for(var de=0;de<Z;de++)for(var be=0;be<Z;be++)q[de][be]=N(q[de][be]);return"number"}else throw TypeError("Matrix contains unsupported types only.")}}),lg="expm",KR=["typed","abs","add","identity","inv","multiply"],JR=P(lg,KR,e=>{var{typed:r,abs:t,add:n,identity:a,inv:i,multiply:o}=e;return r(lg,{Matrix:function(f){var d=f.size();if(d.length!==2||d[0]!==d[1])throw new RangeError("Matrix must be square (size: "+Ve(d)+")");for(var p=d[0],v=1e-15,h=l(f),w=u(h,v),b=w.q,A=w.j,g=o(f,Math.pow(2,-A)),N=a(p),x=a(p),y=1,D=g,S=-1,E=1;E<=b;E++)E>1&&(D=o(D,g),S=-S),y=y*(b-E+1)/((2*b-E+1)*E),N=n(N,o(y,D)),x=n(x,o(y*S,D));for(var C=o(i(x),N),_=0;_<A;_++)C=o(C,C);return cn(f)?f.createSparseMatrix(C):C}});function l(c){for(var f=c.size()[0],d=0,p=0;p<f;p++){for(var v=0,h=0;h<f;h++)v+=t(c.get([p,h]));d=Math.max(v,d)}return d}function u(c,f){for(var d=30,p=0;p<d;p++)for(var v=0;v<=p;v++){var h=p-v;if(s(c,v,h)<f)return{q:v,j:h}}throw new Error("Could not find acceptable parameters to compute the matrix exponential (try increasing maxSearchSize in expm.js)")}function s(c,f,d){for(var p=1,v=2;v<=f;v++)p*=v;for(var h=p,w=f+1;w<=2*f;w++)h*=w;var b=h*(2*f+1);return 8*Math.pow(c/Math.pow(2,d),2*f)*p*p/(h*b)}}),cg="sqrtm",YR=["typed","abs","add","multiply","map","sqrt","subtract","inv","size","max","identity"],XR=P(cg,YR,e=>{var{typed:r,abs:t,add:n,multiply:a,map:i,sqrt:o,subtract:l,inv:u,size:s,max:c,identity:f}=e,d=1e3,p=1e-6;function v(h){var w,b=0,A=h,g=f(s(h));do{var N=A;if(A=a(.5,n(N,u(g))),g=a(.5,n(g,u(N))),w=c(t(l(A,N))),w>p&&++b>d)throw new Error("computing square root of matrix: iterative method could not converge")}while(w>p);return A}return r(cg,{"Array | Matrix":function(w){var b=_e(w)?w.size():$e(w);switch(b.length){case 1:if(b[0]===1)return i(w,o);throw new RangeError("Matrix must be square (size: "+Ve(b)+")");case 2:{var A=b[0],g=b[1];if(A===g)return v(w);throw new RangeError("Matrix must be square (size: "+Ve(b)+")")}default:throw new RangeError("Matrix must be at most two dimensional (size: "+Ve(b)+")")}}})}),fg="sylvester",QR=["typed","schur","matrixFromColumns","matrix","multiply","range","concat","transpose","index","subset","add","subtract","identity","lusolve","abs"],ez=P(fg,QR,e=>{var{typed:r,schur:t,matrixFromColumns:n,matrix:a,multiply:i,range:o,concat:l,transpose:u,index:s,subset:c,add:f,subtract:d,identity:p,lusolve:v,abs:h}=e;return r(fg,{"Matrix, Matrix, Matrix":w,"Array, Matrix, Matrix":function(A,g,N){return w(a(A),g,N)},"Array, Array, Matrix":function(A,g,N){return w(a(A),a(g),N)},"Array, Matrix, Array":function(A,g,N){return w(a(A),g,a(N))},"Matrix, Array, Matrix":function(A,g,N){return w(A,a(g),N)},"Matrix, Array, Array":function(A,g,N){return w(A,a(g),a(N))},"Matrix, Matrix, Array":function(A,g,N){return w(A,g,a(N))},"Array, Array, Array":function(A,g,N){return w(a(A),a(g),a(N)).toArray()}});function w(b,A,g){for(var N=A.size()[0],x=b.size()[0],y=t(b),D=y.T,S=y.U,E=t(i(-1,A)),C=E.T,_=E.U,F=i(i(u(S),g),_),I=o(0,x),R=[],$=(te,oe)=>l(te,oe,1),M=(te,oe)=>l(te,oe,0),T=0;T<N;T++)if(T<N-1&&h(c(C,s(T+1,T)))>1e-5){for(var k=M(c(F,s(I,T)),c(F,s(I,T+1))),O=0;O<T;O++)k=f(k,M(i(R[O],c(C,s(O,T))),i(R[O],c(C,s(O,T+1)))));var W=i(p(x),i(-1,c(C,s(T,T)))),X=i(p(x),i(-1,c(C,s(T+1,T)))),U=i(p(x),i(-1,c(C,s(T,T+1)))),z=i(p(x),i(-1,c(C,s(T+1,T+1)))),Q=M($(f(D,W),X),$(U,f(D,z))),se=v(Q,k);R[T]=se.subset(s(o(0,x),0)),R[T+1]=se.subset(s(o(x,2*x),0)),T++}else{for(var re=c(F,s(I,T)),q=0;q<T;q++)re=f(re,i(R[q],c(C,s(q,T))));var Z=c(C,s(T,T)),j=d(D,i(Z,p(x)));R[T]=v(j,re)}var Y=a(n(...R)),ee=i(S,i(Y,u(_)));return ee}}),dg="schur",rz=["typed","matrix","identity","multiply","qr","norm","subtract"],tz=P(dg,rz,e=>{var{typed:r,matrix:t,identity:n,multiply:a,qr:i,norm:o,subtract:l}=e;return r(dg,{Array:function(c){var f=u(t(c));return{U:f.U.valueOf(),T:f.T.valueOf()}},Matrix:function(c){return u(c)}});function u(s){var c=s.size()[0],f=s,d=n(c),p=0,v;do{v=f;var h=i(f),w=h.Q,b=h.R;if(f=a(b,w),d=a(d,w),p++>100)break}while(o(l(f,v))>1e-4);return{U:d,T:f}}}),mg="lyap",nz=["typed","matrix","sylvester","multiply","transpose"],az=P(mg,nz,e=>{var{typed:r,matrix:t,sylvester:n,multiply:a,transpose:i}=e;return r(mg,{"Matrix, Matrix":function(l,u){return n(l,i(l),a(-1,u))},"Array, Matrix":function(l,u){return n(t(l),i(t(l)),a(-1,u))},"Matrix, Array":function(l,u){return n(l,i(t(l)),t(a(-1,u)))},"Array, Array":function(l,u){return n(t(l),i(t(l)),t(a(-1,u))).toArray()}})}),iz="divide",oz=["typed","matrix","multiply","equalScalar","divideScalar","inv"],sz=P(iz,oz,e=>{var{typed:r,matrix:t,multiply:n,equalScalar:a,divideScalar:i,inv:o}=e,l=Tr({typed:r,equalScalar:a}),u=wt({typed:r});return r("divide",Id({"Array | Matrix, Array | Matrix":function(c,f){return n(c,o(f))},"DenseMatrix, any":function(c,f){return u(c,f,i,!1)},"SparseMatrix, any":function(c,f){return l(c,f,i,!1)},"Array, any":function(c,f){return u(t(c),f,i,!1).valueOf()},"any, Array | Matrix":function(c,f){return n(c,o(f))}},i.signatures))}),pg="distance",uz=["typed","addScalar","subtractScalar","divideScalar","multiplyScalar","deepEqual","sqrt","abs"],lz=P(pg,uz,e=>{var{typed:r,addScalar:t,subtractScalar:n,multiplyScalar:a,divideScalar:i,deepEqual:o,sqrt:l,abs:u}=e;return r(pg,{"Array, Array, Array":function(x,y,D){if(x.length===2&&y.length===2&&D.length===2){if(!c(x))throw new TypeError("Array with 2 numbers or BigNumbers expected for first argument");if(!c(y))throw new TypeError("Array with 2 numbers or BigNumbers expected for second argument");if(!c(D))throw new TypeError("Array with 2 numbers or BigNumbers expected for third argument");if(o(y,D))throw new TypeError("LinePoint1 should not be same with LinePoint2");var S=n(D[1],y[1]),E=n(y[0],D[0]),C=n(a(D[0],y[1]),a(y[0],D[1]));return w(x[0],x[1],S,E,C)}else throw new TypeError("Invalid Arguments: Try again")},"Object, Object, Object":function(x,y,D){if(Object.keys(x).length===2&&Object.keys(y).length===2&&Object.keys(D).length===2){if(!c(x))throw new TypeError("Values of pointX and pointY should be numbers or BigNumbers");if(!c(y))throw new TypeError("Values of lineOnePtX and lineOnePtY should be numbers or BigNumbers");if(!c(D))throw new TypeError("Values of lineTwoPtX and lineTwoPtY should be numbers or BigNumbers");if(o(v(y),v(D)))throw new TypeError("LinePoint1 should not be same with LinePoint2");if("pointX"in x&&"pointY"in x&&"lineOnePtX"in y&&"lineOnePtY"in y&&"lineTwoPtX"in D&&"lineTwoPtY"in D){var S=n(D.lineTwoPtY,y.lineOnePtY),E=n(y.lineOnePtX,D.lineTwoPtX),C=n(a(D.lineTwoPtX,y.lineOnePtY),a(y.lineOnePtX,D.lineTwoPtY));return w(x.pointX,x.pointY,S,E,C)}else throw new TypeError("Key names do not match")}else throw new TypeError("Invalid Arguments: Try again")},"Array, Array":function(x,y){if(x.length===2&&y.length===3){if(!c(x))throw new TypeError("Array with 2 numbers or BigNumbers expected for first argument");if(!f(y))throw new TypeError("Array with 3 numbers or BigNumbers expected for second argument");return w(x[0],x[1],y[0],y[1],y[2])}else if(x.length===3&&y.length===6){if(!f(x))throw new TypeError("Array with 3 numbers or BigNumbers expected for first argument");if(!p(y))throw new TypeError("Array with 6 numbers or BigNumbers expected for second argument");return b(x[0],x[1],x[2],y[0],y[1],y[2],y[3],y[4],y[5])}else if(x.length===y.length&&x.length>0){if(!d(x))throw new TypeError("All values of an array should be numbers or BigNumbers");if(!d(y))throw new TypeError("All values of an array should be numbers or BigNumbers");return A(x,y)}else throw new TypeError("Invalid Arguments: Try again")},"Object, Object":function(x,y){if(Object.keys(x).length===2&&Object.keys(y).length===3){if(!c(x))throw new TypeError("Values of pointX and pointY should be numbers or BigNumbers");if(!f(y))throw new TypeError("Values of xCoeffLine, yCoeffLine and constant should be numbers or BigNumbers");if("pointX"in x&&"pointY"in x&&"xCoeffLine"in y&&"yCoeffLine"in y&&"constant"in y)return w(x.pointX,x.pointY,y.xCoeffLine,y.yCoeffLine,y.constant);throw new TypeError("Key names do not match")}else if(Object.keys(x).length===3&&Object.keys(y).length===6){if(!f(x))throw new TypeError("Values of pointX, pointY and pointZ should be numbers or BigNumbers");if(!p(y))throw new TypeError("Values of x0, y0, z0, a, b and c should be numbers or BigNumbers");if("pointX"in x&&"pointY"in x&&"x0"in y&&"y0"in y&&"z0"in y&&"a"in y&&"b"in y&&"c"in y)return b(x.pointX,x.pointY,x.pointZ,y.x0,y.y0,y.z0,y.a,y.b,y.c);throw new TypeError("Key names do not match")}else if(Object.keys(x).length===2&&Object.keys(y).length===2){if(!c(x))throw new TypeError("Values of pointOneX and pointOneY should be numbers or BigNumbers");if(!c(y))throw new TypeError("Values of pointTwoX and pointTwoY should be numbers or BigNumbers");if("pointOneX"in x&&"pointOneY"in x&&"pointTwoX"in y&&"pointTwoY"in y)return A([x.pointOneX,x.pointOneY],[y.pointTwoX,y.pointTwoY]);throw new TypeError("Key names do not match")}else if(Object.keys(x).length===3&&Object.keys(y).length===3){if(!f(x))throw new TypeError("Values of pointOneX, pointOneY and pointOneZ should be numbers or BigNumbers");if(!f(y))throw new TypeError("Values of pointTwoX, pointTwoY and pointTwoZ should be numbers or BigNumbers");if("pointOneX"in x&&"pointOneY"in x&&"pointOneZ"in x&&"pointTwoX"in y&&"pointTwoY"in y&&"pointTwoZ"in y)return A([x.pointOneX,x.pointOneY,x.pointOneZ],[y.pointTwoX,y.pointTwoY,y.pointTwoZ]);throw new TypeError("Key names do not match")}else throw new TypeError("Invalid Arguments: Try again")},Array:function(x){if(!h(x))throw new TypeError("Incorrect array format entered for pairwise distance calculation");return g(x)}});function s(N){return typeof N=="number"||Ie(N)}function c(N){return N.constructor!==Array&&(N=v(N)),s(N[0])&&s(N[1])}function f(N){return N.constructor!==Array&&(N=v(N)),s(N[0])&&s(N[1])&&s(N[2])}function d(N){return Array.isArray(N)||(N=v(N)),N.every(s)}function p(N){return N.constructor!==Array&&(N=v(N)),s(N[0])&&s(N[1])&&s(N[2])&&s(N[3])&&s(N[4])&&s(N[5])}function v(N){for(var x=Object.keys(N),y=[],D=0;D<x.length;D++)y.push(N[x[D]]);return y}function h(N){if(N[0].length===2&&s(N[0][0])&&s(N[0][1])){if(N.some(x=>x.length!==2||!s(x[0])||!s(x[1])))return!1}else if(N[0].length===3&&s(N[0][0])&&s(N[0][1])&&s(N[0][2])){if(N.some(x=>x.length!==3||!s(x[0])||!s(x[1])||!s(x[2])))return!1}else return!1;return!0}function w(N,x,y,D,S){var E=u(t(t(a(y,N),a(D,x)),S)),C=l(t(a(y,y),a(D,D)));return i(E,C)}function b(N,x,y,D,S,E,C,_,F){var I=[n(a(n(S,x),F),a(n(E,y),_)),n(a(n(E,y),C),a(n(D,N),F)),n(a(n(D,N),_),a(n(S,x),C))];I=l(t(t(a(I[0],I[0]),a(I[1],I[1])),a(I[2],I[2])));var R=l(t(t(a(C,C),a(_,_)),a(F,F)));return i(I,R)}function A(N,x){for(var y=N.length,D=0,S=0,E=0;E<y;E++)S=n(N[E],x[E]),D=t(a(S,S),D);return l(D)}function g(N){for(var x=[],y=[],D=[],S=0;S<N.length-1;S++)for(var E=S+1;E<N.length;E++)N[0].length===2?(y=[N[S][0],N[S][1]],D=[N[E][0],N[E][1]]):N[0].length===3&&(y=[N[S][0],N[S][1],N[S][2]],D=[N[E][0],N[E][1],N[E][2]]),x.push(A(y,D));return x}}),cz="intersect",fz=["typed","config","abs","add","addScalar","matrix","multiply","multiplyScalar","divideScalar","subtract","smaller","equalScalar","flatten","isZero","isNumeric"],dz=P(cz,fz,e=>{var{typed:r,config:t,abs:n,add:a,addScalar:i,matrix:o,multiply:l,multiplyScalar:u,divideScalar:s,subtract:c,smaller:f,equalScalar:d,flatten:p,isZero:v,isNumeric:h}=e;return r("intersect",{"Array, Array, Array":w,"Array, Array, Array, Array":b,"Matrix, Matrix, Matrix":function(_,F,I){var R=w(_.valueOf(),F.valueOf(),I.valueOf());return R===null?null:o(R)},"Matrix, Matrix, Matrix, Matrix":function(_,F,I,R){var $=b(_.valueOf(),F.valueOf(),I.valueOf(),R.valueOf());return $===null?null:o($)}});function w(C,_,F){if(C=A(C),_=A(_),F=A(F),!N(C))throw new TypeError("Array with 3 numbers or BigNumbers expected for first argument");if(!N(_))throw new TypeError("Array with 3 numbers or BigNumbers expected for second argument");if(!x(F))throw new TypeError("Array with 4 numbers expected as third argument");return E(C[0],C[1],C[2],_[0],_[1],_[2],F[0],F[1],F[2],F[3])}function b(C,_,F,I){if(C=A(C),_=A(_),F=A(F),I=A(I),C.length===2){if(!g(C))throw new TypeError("Array with 2 numbers or BigNumbers expected for first argument");if(!g(_))throw new TypeError("Array with 2 numbers or BigNumbers expected for second argument");if(!g(F))throw new TypeError("Array with 2 numbers or BigNumbers expected for third argument");if(!g(I))throw new TypeError("Array with 2 numbers or BigNumbers expected for fourth argument");return y(C,_,F,I)}else if(C.length===3){if(!N(C))throw new TypeError("Array with 3 numbers or BigNumbers expected for first argument");if(!N(_))throw new TypeError("Array with 3 numbers or BigNumbers expected for second argument");if(!N(F))throw new TypeError("Array with 3 numbers or BigNumbers expected for third argument");if(!N(I))throw new TypeError("Array with 3 numbers or BigNumbers expected for fourth argument");return S(C[0],C[1],C[2],_[0],_[1],_[2],F[0],F[1],F[2],I[0],I[1],I[2])}else throw new TypeError("Arrays with two or thee dimensional points expected")}function A(C){return C.length===1?C[0]:C.length>1&&Array.isArray(C[0])&&C.every(_=>Array.isArray(_)&&_.length===1)?p(C):C}function g(C){return C.length===2&&h(C[0])&&h(C[1])}function N(C){return C.length===3&&h(C[0])&&h(C[1])&&h(C[2])}function x(C){return C.length===4&&h(C[0])&&h(C[1])&&h(C[2])&&h(C[3])}function y(C,_,F,I){var R=C,$=F,M=c(R,_),T=c($,I),k=c(u(M[0],T[1]),u(T[0],M[1]));if(v(k)||f(n(k),t.relTol))return null;var O=u(T[0],R[1]),W=u(T[1],R[0]),X=u(T[0],$[1]),U=u(T[1],$[0]),z=s(i(c(c(O,W),X),U),k);return a(l(M,z),R)}function D(C,_,F,I,R,$,M,T,k,O,W,X){var U=u(c(C,_),c(F,I)),z=u(c(R,$),c(M,T)),Q=u(c(k,O),c(W,X));return i(i(U,z),Q)}function S(C,_,F,I,R,$,M,T,k,O,W,X){var U=D(C,M,O,M,_,T,W,T,F,k,X,k),z=D(O,M,I,C,W,T,R,_,X,k,$,F),Q=D(C,M,I,C,_,T,R,_,F,k,$,F),se=D(O,M,O,M,W,T,W,T,X,k,X,k),re=D(I,C,I,C,R,_,R,_,$,F,$,F),q=c(u(U,z),u(Q,se)),Z=c(u(re,se),u(z,z));if(v(Z))return null;var j=s(q,Z),Y=s(i(U,u(j,z)),se),ee=i(C,u(j,c(I,C))),te=i(_,u(j,c(R,_))),oe=i(F,u(j,c($,F))),ve=i(M,u(Y,c(O,M))),L=i(T,u(Y,c(W,T))),H=i(k,u(Y,c(X,k)));return d(ee,ve)&&d(te,L)&&d(oe,H)?[ee,te,oe]:null}function E(C,_,F,I,R,$,M,T,k,O){var W=u(C,M),X=u(I,M),U=u(_,T),z=u(R,T),Q=u(F,k),se=u($,k),re=c(c(c(O,W),U),Q),q=c(c(c(i(i(X,z),se),W),U),Q),Z=s(re,q),j=i(C,u(Z,c(I,C))),Y=i(_,u(Z,c(R,_))),ee=i(F,u(Z,c($,F)));return[j,Y,ee]}}),vg="sum",mz=["typed","config","add","numeric"],hg=P(vg,mz,e=>{var{typed:r,config:t,add:n,numeric:a}=e;return r(vg,{"Array | Matrix":i,"Array | Matrix, number | BigNumber":o,"...":function(u){if(Aa(u))throw new TypeError("Scalar values expected in function sum");return i(u)}});function i(l){var u;return Jt(l,function(s){try{u=u===void 0?s:n(u,s)}catch(c){throw qr(c,"sum",s)}}),u===void 0&&(u=a(0,t.number)),typeof u=="string"&&(u=a(u,dn(u,t))),u}function o(l,u){try{var s=go(l,u,n);return s}catch(c){throw qr(c,"sum")}}}),Ko="cumsum",pz=["typed","add","unaryPlus"],gg=P(Ko,pz,e=>{var{typed:r,add:t,unaryPlus:n}=e;return r(Ko,{Array:a,Matrix:function(s){return s.create(a(s.valueOf(),s.datatype()))},"Array, number | BigNumber":o,"Matrix, number | BigNumber":function(s,c){return s.create(o(s.valueOf(),c),s.datatype())},"...":function(s){if(Aa(s))throw new TypeError("All values expected to be scalar in function cumsum");return a(s)}});function a(u){try{return i(u)}catch(s){throw qr(s,Ko)}}function i(u){if(u.length===0)return[];for(var s=[n(u[0])],c=1;c<u.length;++c)s.push(t(s[c-1],u[c]));return s}function o(u,s){var c=$e(u);if(s<0||s>=c.length)throw new ft(s,c.length);try{return l(u,s)}catch(f){throw qr(f,Ko)}}function l(u,s){var c,f,d;if(s<=0){var p=u[0][0];if(Array.isArray(p)){for(d=Tm(u),f=[],c=0;c<d.length;c++)f[c]=l(d[c],s-1);return f}else return i(u)}else{for(f=[],c=0;c<u.length;c++)f[c]=l(u[c],s-1);return f}}}),yg="mean",vz=["typed","add","divide"],bg=P(yg,vz,e=>{var{typed:r,add:t,divide:n}=e;return r(yg,{"Array | Matrix":i,"Array | Matrix, number | BigNumber":a,"...":function(l){if(Aa(l))throw new TypeError("Scalar values expected in function mean");return i(l)}});function a(o,l){try{var u=go(o,l,t),s=Array.isArray(o)?$e(o):o.size();return n(u,s[l])}catch(c){throw qr(c,"mean")}}function i(o){var l,u=0;if(Jt(o,function(s){try{l=l===void 0?s:t(l,s),u++}catch(c){throw qr(c,"mean",s)}}),u===0)throw new Error("Cannot calculate the mean of an empty array");return n(l,u)}}),wg="median",hz=["typed","add","divide","compare","partitionSelect"],gz=P(wg,hz,e=>{var{typed:r,add:t,divide:n,compare:a,partitionSelect:i}=e;function o(s){try{s=We(s.valueOf());var c=s.length;if(c===0)throw new Error("Cannot calculate median of an empty array");if(c%2===0){for(var f=c/2-1,d=i(s,f+1),p=s[f],v=0;v<f;++v)a(s[v],p)>0&&(p=s[v]);return u(p,d)}else{var h=i(s,(c-1)/2);return l(h)}}catch(w){throw qr(w,"median")}}var l=r({"number | BigNumber | Complex | Unit":function(c){return c}}),u=r({"number | BigNumber | Complex | Unit, number | BigNumber | Complex | Unit":function(c,f){return n(t(c,f),2)}});return r(wg,{"Array | Matrix":o,"Array | Matrix, number | BigNumber":function(c,f){throw new Error("median(A, dim) is not yet supported")},"...":function(c){if(Aa(c))throw new TypeError("Scalar values expected in function median");return o(c)}})}),xg="mad",yz=["typed","abs","map","median","subtract"],bz=P(xg,yz,e=>{var{typed:r,abs:t,map:n,median:a,subtract:i}=e;return r(xg,{"Array | Matrix":o,"...":function(u){return o(u)}});function o(l){if(l=We(l.valueOf()),l.length===0)throw new Error("Cannot calculate median absolute deviation (mad) of an empty array");try{var u=a(l);return a(n(l,function(s){return t(i(s,u))}))}catch(s){throw s instanceof TypeError&&s.message.includes("median")?new TypeError(s.message.replace("median","mad")):qr(s,"mad")}}}),rl="unbiased",Ng="variance",wz=["typed","add","subtract","multiply","divide","apply","isNaN"],Ag=P(Ng,wz,e=>{var{typed:r,add:t,subtract:n,multiply:a,divide:i,apply:o,isNaN:l}=e;return r(Ng,{"Array | Matrix":function(f){return u(f,rl)},"Array | Matrix, string":u,"Array | Matrix, number | BigNumber":function(f,d){return s(f,d,rl)},"Array | Matrix, number | BigNumber, string":s,"...":function(f){return u(f,rl)}});function u(c,f){var d,p=0;if(c.length===0)throw new SyntaxError("Function variance requires one or more parameters (0 provided)");if(Jt(c,function(w){try{d=d===void 0?w:t(d,w),p++}catch(b){throw qr(b,"variance",w)}}),p===0)throw new Error("Cannot calculate variance of an empty array");var v=i(d,p);if(d=void 0,Jt(c,function(w){var b=n(w,v);d=d===void 0?a(b,b):t(d,a(b,b))}),l(d))return d;switch(f){case"uncorrected":return i(d,p);case"biased":return i(d,p+1);case"unbiased":{var h=Ie(d)?d.mul(0):0;return p===1?h:i(d,p-1)}default:throw new Error('Unknown normalization "'+f+'". Choose "unbiased" (default), "uncorrected", or "biased".')}}function s(c,f,d){try{if(c.length===0)throw new SyntaxError("Function variance requires one or more parameters (0 provided)");return o(c,f,p=>u(p,d))}catch(p){throw qr(p,"variance")}}}),Eg="quantileSeq",xz=["typed","?bignumber","add","subtract","divide","multiply","partitionSelect","compare","isInteger","smaller","smallerEq","larger"],Dg=P(Eg,xz,e=>{var{typed:r,bignumber:t,add:n,subtract:a,divide:i,multiply:o,partitionSelect:l,compare:u,isInteger:s,smaller:c,smallerEq:f,larger:d}=e,p=Ru({typed:r,isInteger:s});return r(Eg,{"Array | Matrix, number | BigNumber":(A,g)=>h(A,g,!1),"Array | Matrix, number | BigNumber, number":(A,g,N)=>v(A,g,!1,N,h),"Array | Matrix, number | BigNumber, boolean":h,"Array | Matrix, number | BigNumber, boolean, number":(A,g,N,x)=>v(A,g,N,x,h),"Array | Matrix, Array | Matrix":(A,g)=>w(A,g,!1),"Array | Matrix, Array | Matrix, number":(A,g,N)=>v(A,g,!1,N,w),"Array | Matrix, Array | Matrix, boolean":w,"Array | Matrix, Array | Matrix, boolean, number":(A,g,N,x)=>v(A,g,N,x,w)});function v(A,g,N,x,y){return p(A,x,D=>y(D,g,N))}function h(A,g,N){var x,y=A.valueOf();if(c(g,0))throw new Error("N/prob must be non-negative");if(f(g,1))return Re(g)?b(y,g,N):t(b(y,g,N));if(d(g,1)){if(!s(g))throw new Error("N must be a positive integer");if(d(g,4294967295))throw new Error("N must be less than or equal to 2^32-1, as that is the maximum length of an Array");var D=n(g,1);x=[];for(var S=0;c(S,g);S++){var E=i(S+1,D);x.push(b(y,E,N))}return Re(g)?x:t(x)}}function w(A,g,N){for(var x=A.valueOf(),y=g.valueOf(),D=[],S=0;S<y.length;++S)D.push(b(x,y[S],N));return D}function b(A,g,N){var x=We(A),y=x.length;if(y===0)throw new Error("Cannot calculate quantile of an empty sequence");var D=Re(g)?g*(y-1):g.times(y-1),S=Re(g)?Math.floor(D):D.floor().toNumber(),E=Re(g)?D%1:D.minus(S);if(s(D))return N?x[D]:l(x,Re(g)?D:D.valueOf());var C,_;if(N)C=x[S],_=x[S+1];else{_=l(x,S+1),C=x[S];for(var F=0;F<S;++F)u(x[F],C)>0&&(C=x[F])}return n(o(C,a(1,E)),o(_,E))}}),Sg="std",Nz=["typed","map","sqrt","variance"],Cg=P(Sg,Nz,e=>{var{typed:r,map:t,sqrt:n,variance:a}=e;return r(Sg,{"Array | Matrix":i,"Array | Matrix, string":i,"Array | Matrix, number | BigNumber":i,"Array | Matrix, number | BigNumber, string":i,"...":function(l){return i(l)}});function i(o,l){if(o.length===0)throw new SyntaxError("Function std requires one or more parameters (0 provided)");try{var u=a.apply(null,arguments);return Xr(u)?t(u,n):n(u)}catch(s){throw s instanceof TypeError&&s.message.includes(" variance")?new TypeError(s.message.replace(" variance"," std")):s}}}),Mg="corr",Az=["typed","matrix","mean","sqrt","sum","add","subtract","multiply","pow","divide"],Ez=P(Mg,Az,e=>{var{typed:r,matrix:t,sqrt:n,sum:a,add:i,subtract:o,multiply:l,pow:u,divide:s}=e;return r(Mg,{"Array, Array":function(p,v){return c(p,v)},"Matrix, Matrix":function(p,v){var h=c(p.toArray(),v.toArray());return Array.isArray(h)?t(h):h}});function c(d,p){var v=[];if(Array.isArray(d[0])&&Array.isArray(p[0])){if(d.length!==p.length)throw new SyntaxError("Dimension mismatch. Array A and B must have the same length.");for(var h=0;h<d.length;h++){if(d[h].length!==p[h].length)throw new SyntaxError("Dimension mismatch. Array A and B must have the same number of elements.");v.push(f(d[h],p[h]))}return v}else{if(d.length!==p.length)throw new SyntaxError("Dimension mismatch. Array A and B must have the same number of elements.");return f(d,p)}}function f(d,p){var v=d.length,h=a(d),w=a(p),b=d.reduce((y,D,S)=>i(y,l(D,p[S])),0),A=a(d.map(y=>u(y,2))),g=a(p.map(y=>u(y,2))),N=o(l(v,b),l(h,w)),x=n(l(o(l(v,A),u(h,2)),o(l(v,g),u(w,2))));return s(N,x)}}),_g="combinations",Dz=["typed"],Sz=P(_g,Dz,e=>{var{typed:r}=e;return r(_g,{"number, number":tp,"BigNumber, BigNumber":function(n,a){var i=n.constructor,o,l,u=n.minus(a),s=new i(1);if(!Tg(n)||!Tg(a))throw new TypeError("Positive integer value expected in function combinations");if(a.gt(n))throw new TypeError("k must be less than n in function combinations");if(o=s,a.lt(u))for(l=s;l.lte(u);l=l.plus(s))o=o.times(a.plus(l)).dividedBy(l);else for(l=s;l.lte(a);l=l.plus(s))o=o.times(u.plus(l)).dividedBy(l);return o}})});function Tg(e){return e.isInteger()&&e.gte(0)}var Fg="combinationsWithRep",Cz=["typed"],Mz=P(Fg,Cz,e=>{var{typed:r}=e;return r(Fg,{"number, number":function(n,a){if(!Ce(n)||n<0)throw new TypeError("Positive integer value expected in function combinationsWithRep");if(!Ce(a)||a<0)throw new TypeError("Positive integer value expected in function combinationsWithRep");if(n<1)throw new TypeError("k must be less than or equal to n + k - 1");if(a<n-1){var i=Yt(n,n+a-1);return i/Yt(1,a)}var o=Yt(a+1,n+a-1);return o/Yt(1,n-1)},"BigNumber, BigNumber":function(n,a){var i=n.constructor,o,l,u=new i(1),s=n.minus(u);if(!Bg(n)||!Bg(a))throw new TypeError("Positive integer value expected in function combinationsWithRep");if(n.lt(u))throw new TypeError("k must be less than or equal to n + k - 1 in function combinationsWithRep");if(o=u,a.lt(s))for(l=u;l.lte(s);l=l.plus(u))o=o.times(a.plus(l)).dividedBy(l);else for(l=u;l.lte(a);l=l.plus(u))o=o.times(s.plus(l)).dividedBy(l);return o}})});function Bg(e){return e.isInteger()&&e.gte(0)}var Og="gamma",_z=["typed","config","multiplyScalar","pow","BigNumber","Complex"],Tz=P(Og,_z,e=>{var{typed:r,config:t,multiplyScalar:n,pow:a,BigNumber:i,Complex:o}=e;function l(s){if(s.im===0)return bo(s.re);if(s.re<.5){var c=new o(1-s.re,-s.im),f=new o(Math.PI*s.re,Math.PI*s.im);return new o(Math.PI).div(f.sin()).div(l(c))}s=new o(s.re-1,s.im);for(var d=new o(Sa[0],0),p=1;p<Sa.length;++p){var v=new o(Sa[p],0);d=d.add(v.div(s.add(p)))}var h=new o(s.re+ap+.5,s.im),w=Math.sqrt(2*Math.PI),b=h.pow(s.add(.5)),A=h.neg().exp();return d.mul(w).mul(b).mul(A)}return r(Og,{number:bo,Complex:l,BigNumber:function(c){if(c.isInteger())return c.isNegative()||c.isZero()?new i(1/0):u(c.minus(1));if(!c.isFinite())return new i(c.isNegative()?NaN:1/0);throw new Error("Integer BigNumber expected")}});function u(s){if(s<8)return new i([1,1,2,6,24,120,720,5040][s]);var c=t.precision+(Math.log(s.toNumber())|0),f=i.clone({precision:c});if(s%2===1)return s.times(u(new i(s-1)));for(var d=s,p=new f(s),v=s.toNumber();d>2;)d-=2,v+=d,p=p.times(v);return new i(p.toPrecision(i.precision))}}),$g="lgamma",Fz=["Complex","typed"],Bz=P($g,Fz,e=>{var{Complex:r,typed:t}=e,n=7,a=7,i=[-.029550653594771242,.00641025641025641,-.0019175269175269176,.0008417508417508417,-.0005952380952380953,.0007936507936507937,-.002777777777777778,.08333333333333333];return t($g,{number:wo,Complex:o,BigNumber:function(){throw new Error("mathjs doesn't yet provide an implementation of the algorithm lgamma for BigNumber")}});function o(s){var c=6.283185307179586,f=1.1447298858494002,d=.1;if(s.isNaN())return new r(NaN,NaN);if(s.im===0)return new r(wo(s.re),0);if(s.re>=n||Math.abs(s.im)>=a)return l(s);if(s.re<=d){var p=SS(c,s.im)*Math.floor(.5*s.re+.25),v=s.mul(Math.PI).sin().log(),h=o(new r(1-s.re,-s.im));return new r(f,p).sub(v).sub(h)}else return s.im>=0?u(s):u(s.conjugate()).conjugate()}function l(s){for(var c=s.sub(.5).mul(s.log()).sub(s).add(ip),f=new r(1,0).div(s),d=f.div(s),p=i[0],v=i[1],h=2*d.re,w=d.re*d.re+d.im*d.im,b=2;b<8;b++){var A=v;v=-w*p+i[b],p=h*p+A}var g=f.mul(d.mul(p).add(v));return c.add(g)}function u(s){var c=0,f=0,d=s;for(s=s.add(1);s.re<=n;){d=d.mul(s);var p=d.im<0?1:0;p!==0&&f===0&&c++,f=p,s=s.add(1)}return l(s).sub(d.log()).sub(new r(0,c*2*Math.PI*1))}}),Ig="factorial",Oz=["typed","gamma"],$z=P(Ig,Oz,e=>{var{typed:r,gamma:t}=e;return r(Ig,{number:function(a){if(a<0)throw new Error("Value must be non-negative");return t(a+1)},BigNumber:function(a){if(a.isNegative())throw new Error("Value must be non-negative");return t(a.plus(1))},"Array | Matrix":r.referToSelf(n=>a=>Le(a,n))})}),Rg="kldivergence",Iz=["typed","matrix","divide","sum","multiply","map","dotDivide","log","isNumeric"],Rz=P(Rg,Iz,e=>{var{typed:r,matrix:t,divide:n,sum:a,multiply:i,map:o,dotDivide:l,log:u,isNumeric:s}=e;return r(Rg,{"Array, Array":function(d,p){return c(t(d),t(p))},"Matrix, Array":function(d,p){return c(d,t(p))},"Array, Matrix":function(d,p){return c(t(d),p)},"Matrix, Matrix":function(d,p){return c(d,p)}});function c(f,d){var p=d.size().length,v=f.size().length;if(p>1)throw new Error("first object must be one dimensional");if(v>1)throw new Error("second object must be one dimensional");if(p!==v)throw new Error("Length of two vectors must be equal");var h=a(f);if(h===0)throw new Error("Sum of elements in first object must be non zero");var w=a(d);if(w===0)throw new Error("Sum of elements in second object must be non zero");var b=n(f,a(f)),A=n(d,a(d)),g=a(i(b,o(l(b,A),N=>u(N))));return s(g)?g:Number.NaN}}),zg="multinomial",zz=["typed","add","divide","multiply","factorial","isInteger","isPositive"],Pz=P(zg,zz,e=>{var{typed:r,add:t,divide:n,multiply:a,factorial:i,isInteger:o,isPositive:l}=e;return r(zg,{"Array | Matrix":function(s){var c=0,f=1;return Jt(s,function(d){if(!o(d)||!l(d))throw new TypeError("Positive integer value expected in function multinomial");c=t(c,d),f=a(f,i(d))}),n(i(c),f)}})}),Pg="permutations",kz=["typed","factorial"],qz=P(Pg,kz,e=>{var{typed:r,factorial:t}=e;return r(Pg,{"number | BigNumber":t,"number, number":function(a,i){if(!Ce(a)||a<0)throw new TypeError("Positive integer value expected in function permutations");if(!Ce(i)||i<0)throw new TypeError("Positive integer value expected in function permutations");if(i>a)throw new TypeError("second argument k must be less than or equal to first argument n");return Yt(a-i+1,a)},"BigNumber, BigNumber":function(a,i){var o,l;if(!kg(a)||!kg(i))throw new TypeError("Positive integer value expected in function permutations");if(i.gt(a))throw new TypeError("second argument k must be less than or equal to first argument n");var u=a.mul(0).add(1);for(o=u,l=a.minus(i).plus(1);l.lte(a);l=l.plus(1))o=o.times(l);return o}})});function kg(e){return e.isInteger()&&e.gte(0)}var tl={exports:{}};tl.exports,function(e){(function(r,t,n){function a(u){var s=this,c=l();s.next=function(){var f=2091639*s.s0+s.c*23283064365386963e-26;return s.s0=s.s1,s.s1=s.s2,s.s2=f-(s.c=f|0)},s.c=1,s.s0=c(" "),s.s1=c(" "),s.s2=c(" "),s.s0-=c(u),s.s0<0&&(s.s0+=1),s.s1-=c(u),s.s1<0&&(s.s1+=1),s.s2-=c(u),s.s2<0&&(s.s2+=1),c=null}function i(u,s){return s.c=u.c,s.s0=u.s0,s.s1=u.s1,s.s2=u.s2,s}function o(u,s){var c=new a(u),f=s&&s.state,d=c.next;return d.int32=function(){return c.next()*4294967296|0},d.double=function(){return d()+(d()*2097152|0)*11102230246251565e-32},d.quick=d,f&&(typeof f=="object"&&i(f,c),d.state=function(){return i(c,{})}),d}function l(){var u=4022871197,s=function(c){c=String(c);for(var f=0;f<c.length;f++){u+=c.charCodeAt(f);var d=.02519603282416938*u;u=d>>>0,d-=u,d*=u,u=d>>>0,d-=u,u+=d*4294967296}return(u>>>0)*23283064365386963e-26};return s}t&&t.exports?t.exports=o:this.alea=o})(Rn,e)}(tl);var Lz=tl.exports,nl={exports:{}};nl.exports,function(e){(function(r,t,n){function a(l){var u=this,s="";u.x=0,u.y=0,u.z=0,u.w=0,u.next=function(){var f=u.x^u.x<<11;return u.x=u.y,u.y=u.z,u.z=u.w,u.w^=u.w>>>19^f^f>>>8},l===(l|0)?u.x=l:s+=l;for(var c=0;c<s.length+64;c++)u.x^=s.charCodeAt(c)|0,u.next()}function i(l,u){return u.x=l.x,u.y=l.y,u.z=l.z,u.w=l.w,u}function o(l,u){var s=new a(l),c=u&&u.state,f=function(){return(s.next()>>>0)/4294967296};return f.double=function(){do var d=s.next()>>>11,p=(s.next()>>>0)/4294967296,v=(d+p)/(1<<21);while(v===0);return v},f.int32=s.next,f.quick=f,c&&(typeof c=="object"&&i(c,s),f.state=function(){return i(s,{})}),f}t&&t.exports?t.exports=o:this.xor128=o})(Rn,e)}(nl);var Vz=nl.exports,al={exports:{}};al.exports,function(e){(function(r,t,n){function a(l){var u=this,s="";u.next=function(){var f=u.x^u.x>>>2;return u.x=u.y,u.y=u.z,u.z=u.w,u.w=u.v,(u.d=u.d+362437|0)+(u.v=u.v^u.v<<4^(f^f<<1))|0},u.x=0,u.y=0,u.z=0,u.w=0,u.v=0,l===(l|0)?u.x=l:s+=l;for(var c=0;c<s.length+64;c++)u.x^=s.charCodeAt(c)|0,c==s.length&&(u.d=u.x<<10^u.x>>>4),u.next()}function i(l,u){return u.x=l.x,u.y=l.y,u.z=l.z,u.w=l.w,u.v=l.v,u.d=l.d,u}function o(l,u){var s=new a(l),c=u&&u.state,f=function(){return(s.next()>>>0)/4294967296};return f.double=function(){do var d=s.next()>>>11,p=(s.next()>>>0)/4294967296,v=(d+p)/(1<<21);while(v===0);return v},f.int32=s.next,f.quick=f,c&&(typeof c=="object"&&i(c,s),f.state=function(){return i(s,{})}),f}t&&t.exports?t.exports=o:this.xorwow=o})(Rn,e)}(al);var Uz=al.exports,il={exports:{}};il.exports,function(e){(function(r,t,n){function a(l){var u=this;u.next=function(){var c=u.x,f=u.i,d,p;return d=c[f],d^=d>>>7,p=d^d<<24,d=c[f+1&7],p^=d^d>>>10,d=c[f+3&7],p^=d^d>>>3,d=c[f+4&7],p^=d^d<<7,d=c[f+7&7],d=d^d<<13,p^=d^d<<9,c[f]=p,u.i=f+1&7,p};function s(c,f){var d,p=[];if(f===(f|0))p[0]=f;else for(f=""+f,d=0;d<f.length;++d)p[d&7]=p[d&7]<<15^f.charCodeAt(d)+p[d+1&7]<<13;for(;p.length<8;)p.push(0);for(d=0;d<8&&p[d]===0;++d);for(d==8?p[7]=-1:p[d],c.x=p,c.i=0,d=256;d>0;--d)c.next()}s(u,l)}function i(l,u){return u.x=l.x.slice(),u.i=l.i,u}function o(l,u){l==null&&(l=+new Date);var s=new a(l),c=u&&u.state,f=function(){return(s.next()>>>0)/4294967296};return f.double=function(){do var d=s.next()>>>11,p=(s.next()>>>0)/4294967296,v=(d+p)/(1<<21);while(v===0);return v},f.int32=s.next,f.quick=f,c&&(c.x&&i(c,s),f.state=function(){return i(s,{})}),f}t&&t.exports?t.exports=o:this.xorshift7=o})(Rn,e)}(il);var Hz=il.exports,ol={exports:{}};ol.exports,function(e){(function(r,t,n){function a(l){var u=this;u.next=function(){var c=u.w,f=u.X,d=u.i,p,v;return u.w=c=c+1640531527|0,v=f[d+34&127],p=f[d=d+1&127],v^=v<<13,p^=p<<17,v^=v>>>15,p^=p>>>12,v=f[d]=v^p,u.i=d,v+(c^c>>>16)|0};function s(c,f){var d,p,v,h,w,b=[],A=128;for(f===(f|0)?(p=f,f=null):(f=f+"\0",p=0,A=Math.max(A,f.length)),v=0,h=-32;h<A;++h)f&&(p^=f.charCodeAt((h+32)%f.length)),h===0&&(w=p),p^=p<<10,p^=p>>>15,p^=p<<4,p^=p>>>13,h>=0&&(w=w+1640531527|0,d=b[h&127]^=p+w,v=d==0?v+1:0);for(v>=128&&(b[(f&&f.length||0)&127]=-1),v=127,h=4*128;h>0;--h)p=b[v+34&127],d=b[v=v+1&127],p^=p<<13,d^=d<<17,p^=p>>>15,d^=d>>>12,b[v]=p^d;c.w=w,c.X=b,c.i=v}s(u,l)}function i(l,u){return u.i=l.i,u.w=l.w,u.X=l.X.slice(),u}function o(l,u){l==null&&(l=+new Date);var s=new a(l),c=u&&u.state,f=function(){return(s.next()>>>0)/4294967296};return f.double=function(){do var d=s.next()>>>11,p=(s.next()>>>0)/4294967296,v=(d+p)/(1<<21);while(v===0);return v},f.int32=s.next,f.quick=f,c&&(c.X&&i(c,s),f.state=function(){return i(s,{})}),f}t&&t.exports?t.exports=o:this.xor4096=o})(Rn,e)}(ol);var Zz=ol.exports,sl={exports:{}};sl.exports,function(e){(function(r,t,n){function a(l){var u=this,s="";u.next=function(){var f=u.b,d=u.c,p=u.d,v=u.a;return f=f<<25^f>>>7^d,d=d-p|0,p=p<<24^p>>>8^v,v=v-f|0,u.b=f=f<<20^f>>>12^d,u.c=d=d-p|0,u.d=p<<16^d>>>16^v,u.a=v-f|0},u.a=0,u.b=0,u.c=-1640531527,u.d=1367130551,l===Math.floor(l)?(u.a=l/4294967296|0,u.b=l|0):s+=l;for(var c=0;c<s.length+20;c++)u.b^=s.charCodeAt(c)|0,u.next()}function i(l,u){return u.a=l.a,u.b=l.b,u.c=l.c,u.d=l.d,u}function o(l,u){var s=new a(l),c=u&&u.state,f=function(){return(s.next()>>>0)/4294967296};return f.double=function(){do var d=s.next()>>>11,p=(s.next()>>>0)/4294967296,v=(d+p)/(1<<21);while(v===0);return v},f.int32=s.next,f.quick=f,c&&(typeof c=="object"&&i(c,s),f.state=function(){return i(s,{})}),f}t&&t.exports?t.exports=o:this.tychei=o})(Rn,e)}(sl);var Gz=sl.exports,qg={exports:{}};const Wz=LE(Object.freeze(Object.defineProperty({__proto__:null,default:{}},Symbol.toStringTag,{value:"Module"})));(function(e){(function(r,t,n){var a=256,i=6,o=52,l="random",u=n.pow(a,i),s=n.pow(2,o),c=s*2,f=a-1,d;function p(N,x,y){var D=[];x=x==!0?{entropy:!0}:x||{};var S=b(w(x.entropy?[N,g(t)]:N??A(),3),D),E=new v(D),C=function(){for(var _=E.g(i),F=u,I=0;_<s;)_=(_+I)*a,F*=a,I=E.g(1);for(;_>=c;)_/=2,F/=2,I>>>=1;return(_+I)/F};return C.int32=function(){return E.g(4)|0},C.quick=function(){return E.g(4)/4294967296},C.double=C,b(g(E.S),t),(x.pass||y||function(_,F,I,R){return R&&(R.S&&h(R,E),_.state=function(){return h(E,{})}),I?(n[l]=_,F):_})(C,S,"global"in x?x.global:this==n,x.state)}function v(N){var x,y=N.length,D=this,S=0,E=D.i=D.j=0,C=D.S=[];for(y||(N=[y++]);S<a;)C[S]=S++;for(S=0;S<a;S++)C[S]=C[E=f&E+N[S%y]+(x=C[S])],C[E]=x;(D.g=function(_){for(var F,I=0,R=D.i,$=D.j,M=D.S;_--;)F=M[R=f&R+1],I=I*a+M[f&(M[R]=M[$=f&$+F])+(M[$]=F)];return D.i=R,D.j=$,I})(a)}function h(N,x){return x.i=N.i,x.j=N.j,x.S=N.S.slice(),x}function w(N,x){var y=[],D=typeof N,S;if(x&&D=="object")for(S in N)try{y.push(w(N[S],x-1))}catch{}return y.length?y:D=="string"?N:N+"\0"}function b(N,x){for(var y=N+"",D,S=0;S<y.length;)x[f&S]=f&(D^=x[f&S]*19)+y.charCodeAt(S++);return g(x)}function A(){try{var N;return d&&(N=d.randomBytes)?N=N(a):(N=new Uint8Array(a),(r.crypto||r.msCrypto).getRandomValues(N)),g(N)}catch{var x=r.navigator,y=x&&x.plugins;return[+new Date,r,y,r.screen,g(t)]}}function g(N){return String.fromCharCode.apply(0,N)}if(b(n.random(),t),e.exports){e.exports=p;try{d=Wz}catch{}}else n["seed"+l]=p})(typeof self<"u"?self:Rn,[],Math)})(qg);var jz=qg.exports,Kz=Lz,Jz=Vz,Yz=Uz,Xz=Hz,Qz=Zz,eP=Gz,Zn=jz;Zn.alea=Kz,Zn.xor128=Jz,Zn.xorwow=Yz,Zn.xorshift7=Xz,Zn.xor4096=Qz,Zn.tychei=eP;var rP=Zn;const Lg=Zi(rP);var tP=Lg(Date.now());function Ba(e){var r;function t(a){r=a===null?tP:Lg(String(a))}t(e);function n(){return r()}return n}var Vg="pickRandom",nP=["typed","config","?on"],aP=P(Vg,nP,e=>{var{typed:r,config:t,on:n}=e,a=Ba(t.randomSeed);return n&&n("config",function(o,l){o.randomSeed!==l.randomSeed&&(a=Ba(o.randomSeed))}),r(Vg,{"Array | Matrix":function(l){return i(l,{})},"Array | Matrix, Object":function(l,u){return i(l,u)},"Array | Matrix, number":function(l,u){return i(l,{number:u})},"Array | Matrix, Array | Matrix":function(l,u){return i(l,{weights:u})},"Array | Matrix, Array | Matrix, number":function(l,u,s){return i(l,{number:s,weights:u})},"Array | Matrix, number, Array | Matrix":function(l,u,s){return i(l,{number:u,weights:s})}});function i(o,l){var{number:u,weights:s,elementWise:c=!0}=l,f=typeof u>"u";f&&(u=1);var d=_e(o)?o.create:_e(s)?s.create:null;o=o.valueOf(),s&&(s=s.valueOf()),c===!0&&(o=We(o),s=We(s));var p=0;if(typeof s<"u"){if(s.length!==o.length)throw new Error("Weights must have the same length as possibles");for(var v=0,h=s.length;v<h;v++){if(!Re(s[v])||s[v]<0)throw new Error("Weights must be an array of positive numbers");p+=s[v]}}for(var w=o.length,b=[],A;b.length<u;){if(typeof s>"u")A=o[Math.floor(a()*w)];else for(var g=a()*p,N=0,x=o.length;N<x;N++)if(g-=s[N],g<0){A=o[N];break}b.push(A)}return f?b[0]:d?d(b):b}});function ul(e,r){var t=[];if(e=e.slice(0),e.length>1)for(var n=0,a=e.shift();n<a;n++)t.push(ul(e,r));else for(var i=0,o=e.shift();i<o;i++)t.push(r());return t}var Ug="random",iP=["typed","config","?on"],oP=P(Ug,iP,e=>{var{typed:r,config:t,on:n}=e,a=Ba(t.randomSeed);return n&&n("config",function(l,u){l.randomSeed!==u.randomSeed&&(a=Ba(l.randomSeed))}),r(Ug,{"":()=>o(0,1),number:l=>o(0,l),"number, number":(l,u)=>o(l,u),"Array | Matrix":l=>i(l,0,1),"Array | Matrix, number":(l,u)=>i(l,0,u),"Array | Matrix, number, number":(l,u,s)=>i(l,u,s)});function i(l,u,s){var c=ul(l.valueOf(),()=>o(u,s));return _e(l)?l.create(c,"number"):c}function o(l,u){return l+a()*(u-l)}}),Hg="randomInt",sP=["typed","config","?on"],uP=P(Hg,sP,e=>{var{typed:r,config:t,on:n}=e,a=Ba(t.randomSeed);return n&&n("config",function(l,u){l.randomSeed!==u.randomSeed&&(a=Ba(l.randomSeed))}),r(Hg,{"":()=>o(0,1),number:l=>o(0,l),"number, number":(l,u)=>o(l,u),"Array | Matrix":l=>i(l,0,1),"Array | Matrix, number":(l,u)=>i(l,0,u),"Array | Matrix, number, number":(l,u,s)=>i(l,u,s)});function i(l,u,s){var c=ul(l.valueOf(),()=>o(u,s));return _e(l)?l.create(c,"number"):c}function o(l,u){return Math.floor(l+a()*(u-l))}}),Zg="stirlingS2",lP=["typed","addScalar","subtractScalar","multiplyScalar","divideScalar","pow","factorial","combinations","isNegative","isInteger","number","?bignumber","larger"],cP=P(Zg,lP,e=>{var{typed:r,addScalar:t,subtractScalar:n,multiplyScalar:a,divideScalar:i,pow:o,factorial:l,combinations:u,isNegative:s,isInteger:c,number:f,bignumber:d,larger:p}=e,v=[],h=[];return r(Zg,{"number | BigNumber, number | BigNumber":function(b,A){if(!c(b)||s(b)||!c(A)||s(A))throw new TypeError("Non-negative integer value expected in function stirlingS2");if(p(A,b))throw new TypeError("k must be less than or equal to n in function stirlingS2");var g=!(Re(b)&&Re(A)),N=g?h:v,x=g?d:f,y=f(b),D=f(A);if(N[y]&&N[y].length>D)return N[y][D];for(var S=0;S<=y;++S)if(N[S]||(N[S]=[x(S===0?1:0)]),S!==0)for(var E=N[S],C=N[S-1],_=E.length;_<=S&&_<=D;++_)_===S?E[_]=1:E[_]=t(a(x(_),C[_]),C[_-1]);return N[y][D]}})}),Gg="bellNumbers",fP=["typed","addScalar","isNegative","isInteger","stirlingS2"],dP=P(Gg,fP,e=>{var{typed:r,addScalar:t,isNegative:n,isInteger:a,stirlingS2:i}=e;return r(Gg,{"number | BigNumber":function(l){if(!a(l)||n(l))throw new TypeError("Non-negative integer value expected in function bellNumbers");for(var u=0,s=0;s<=l;s++)u=t(u,i(l,s));return u}})}),Wg="catalan",mP=["typed","addScalar","divideScalar","multiplyScalar","combinations","isNegative","isInteger"],pP=P(Wg,mP,e=>{var{typed:r,addScalar:t,divideScalar:n,multiplyScalar:a,combinations:i,isNegative:o,isInteger:l}=e;return r(Wg,{"number | BigNumber":function(s){if(!l(s)||o(s))throw new TypeError("Non-negative integer value expected in function catalan");return n(i(a(s,2),s),t(s,1))}})}),jg="composition",vP=["typed","addScalar","combinations","isNegative","isPositive","isInteger","larger"],hP=P(jg,vP,e=>{var{typed:r,addScalar:t,combinations:n,isPositive:a,isNegative:i,isInteger:o,larger:l}=e;return r(jg,{"number | BigNumber, number | BigNumber":function(s,c){if(!o(s)||!a(s)||!o(c)||!a(c))throw new TypeError("Positive integer value expected in function composition");if(l(c,s))throw new TypeError("k must be less than or equal to n in function composition");return n(t(s,-1),t(c,-1))}})}),Kg="leafCount",gP=["parse","typed"],yP=P(Kg,gP,e=>{var{parse:r,typed:t}=e;function n(a){var i=0;return a.forEach(o=>{i+=n(o)}),i||1}return t(Kg,{Node:function(i){return n(i)}})});function Jg(e){return Ze(e)||pr(e)&&e.isUnary()&&Ze(e.args[0])}function Jo(e){return!!(Ze(e)||(Gt(e)||pr(e))&&e.args.every(Jo)||_t(e)&&Jo(e.content))}function Yg(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),t.push.apply(t,n)}return t}function ll(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};r%2?Yg(Object(t),!0).forEach(function(n){Nr(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Yg(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}var bP="simplifyUtil",wP=["FunctionNode","OperatorNode","SymbolNode"],cl=P(bP,wP,e=>{var{FunctionNode:r,OperatorNode:t,SymbolNode:n}=e,a=!0,i=!1,o="defaultF",l={add:{trivial:a,total:a,commutative:a,associative:a},unaryPlus:{trivial:a,total:a,commutative:a,associative:a},subtract:{trivial:i,total:a,commutative:i,associative:i},multiply:{trivial:a,total:a,commutative:a,associative:a},divide:{trivial:i,total:a,commutative:i,associative:i},paren:{trivial:a,total:a,commutative:a,associative:i},defaultF:{trivial:i,total:a,commutative:i,associative:i}},u={divide:{total:i},log:{total:i}},s={subtract:{total:i},abs:{trivial:a},log:{total:a}};function c(g,N){var x=arguments.length>2&&arguments[2]!==void 0?arguments[2]:l,y=o;if(typeof g=="string"?y=g:pr(g)?y=g.fn.toString():Gt(g)?y=g.name:_t(g)&&(y="paren"),De(x,y)){var D=x[y];if(De(D,N))return D[N];if(De(l,y))return l[y][N]}if(De(x,o)){var S=x[o];return De(S,N)?S[N]:l[o][N]}if(De(l,y)){var E=l[y];if(De(E,N))return E[N]}return l[o][N]}function f(g){var N=arguments.length>1&&arguments[1]!==void 0?arguments[1]:l;return c(g,"commutative",N)}function d(g){var N=arguments.length>1&&arguments[1]!==void 0?arguments[1]:l;return c(g,"associative",N)}function p(g,N){var x=ll({},g);for(var y in N)De(g,y)?x[y]=ll(ll({},N[y]),g[y]):x[y]=N[y];return x}function v(g,N){if(!g.args||g.args.length===0)return g;g.args=h(g,N);for(var x=0;x<g.args.length;x++)v(g.args[x],N)}function h(g,N){var x,y=[],D=function(E){for(var C=0;C<E.args.length;C++){var _=E.args[C];pr(_)&&x===_.op?D(_):y.push(_)}};return d(g,N)?(x=g.op,D(g),y):g.args}function w(g,N){if(!(!g.args||g.args.length===0)){for(var x=A(g),y=g.args.length,D=0;D<y;D++)w(g.args[D],N);if(y>2&&d(g,N)){for(var S=g.args.pop();g.args.length>0;)S=x([g.args.pop(),S]);g.args=S.args}}}function b(g,N){if(!(!g.args||g.args.length===0)){for(var x=A(g),y=g.args.length,D=0;D<y;D++)b(g.args[D],N);if(y>2&&d(g,N)){for(var S=g.args.shift();g.args.length>0;)S=x([S,g.args.shift()]);g.args=S.args}}}function A(g){return pr(g)?function(N){try{return new t(g.op,g.fn,N,g.implicit)}catch(x){return console.error(x),[]}}:function(N){return new r(new n(g.name),N)}}return{createMakeNodeFunction:A,hasProperty:c,isCommutative:f,isAssociative:d,mergeContext:p,flatten:v,allChildren:h,unflattenr:w,unflattenl:b,defaultContext:l,realContext:u,positiveContext:s}}),xP="simplify",NP=["typed","parse","equal","resolve","simplifyConstant","simplifyCore","AccessorNode","ArrayNode","ConstantNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","ParenthesisNode","SymbolNode"],AP=P(xP,NP,e=>{var{typed:r,parse:t,equal:n,resolve:a,simplifyConstant:i,simplifyCore:o,AccessorNode:l,ArrayNode:u,ConstantNode:s,FunctionNode:c,IndexNode:f,ObjectNode:d,OperatorNode:p,ParenthesisNode:v,SymbolNode:h}=e,{hasProperty:w,isCommutative:b,isAssociative:A,mergeContext:g,flatten:N,unflattenr:x,unflattenl:y,createMakeNodeFunction:D,defaultContext:S,realContext:E,positiveContext:C}=cl({FunctionNode:c,OperatorNode:p,SymbolNode:h});r.addConversion({from:"Object",to:"Map",convert:ca});var _=r("simplify",{Node:k,"Node, Map":(q,Z)=>k(q,!1,Z),"Node, Map, Object":(q,Z,j)=>k(q,!1,Z,j),"Node, Array":k,"Node, Array, Map":k,"Node, Array, Map, Object":k});r.removeConversion({from:"Object",to:"Map",convert:ca}),_.defaultContext=S,_.realContext=E,_.positiveContext=C;function F(q){return q.transform(function(Z){return _t(Z)?F(Z.content):Z})}var I={true:!0,false:!0,e:!0,i:!0,Infinity:!0,LN2:!0,LN10:!0,LOG2E:!0,LOG10E:!0,NaN:!0,phi:!0,pi:!0,SQRT1_2:!0,SQRT2:!0,tau:!0};_.rules=[o,{l:"log(e)",r:"1"},{s:"n-n1 -> n+-n1",assuming:{subtract:{total:!0}}},{s:"n-n -> 0",assuming:{subtract:{total:!1}}},{s:"-(cl*v) -> v * (-cl)",assuming:{multiply:{commutative:!0},subtract:{total:!0}}},{s:"-(cl*v) -> (-cl) * v",assuming:{multiply:{commutative:!1},subtract:{total:!0}}},{s:"-(v*cl) -> v * (-cl)",assuming:{multiply:{commutative:!1},subtract:{total:!0}}},{l:"-(n1/n2)",r:"-n1/n2"},{l:"-v",r:"v * (-1)"},{l:"(n1 + n2)*(-1)",r:"n1*(-1) + n2*(-1)",repeat:!0},{l:"n/n1^n2",r:"n*n1^-n2"},{l:"n/n1",r:"n*n1^-1"},{s:"(n1*n2)^n3 -> n1^n3 * n2^n3",assuming:{multiply:{commutative:!0}}},{s:"(n1*n2)^(-1) -> n2^(-1) * n1^(-1)",assuming:{multiply:{commutative:!1}}},{s:"(n ^ n1) ^ n2 -> n ^ (n1 * n2)",assuming:{divide:{total:!0}}},{l:" vd * ( vd * n1 + n2)",r:"vd^2 * n1 + vd * n2"},{s:" vd * (vd^n4 * n1 + n2) -> vd^(1+n4) * n1 + vd * n2",assuming:{divide:{total:!0}}},{s:"vd^n3 * ( vd * n1 + n2) -> vd^(n3+1) * n1 + vd^n3 * n2",assuming:{divide:{total:!0}}},{s:"vd^n3 * (vd^n4 * n1 + n2) -> vd^(n3+n4) * n1 + vd^n3 * n2",assuming:{divide:{total:!0}}},{l:"n*n",r:"n^2"},{s:"n * n^n1 -> n^(n1+1)",assuming:{divide:{total:!0}}},{s:"n^n1 * n^n2 -> n^(n1+n2)",assuming:{divide:{total:!0}}},i,{s:"n+n -> 2*n",assuming:{add:{total:!0}}},{l:"n+-n",r:"0"},{l:"vd*n + vd",r:"vd*(n+1)"},{l:"n3*n1 + n3*n2",r:"n3*(n1+n2)"},{l:"n3^(-n4)*n1 + n3 * n2",r:"n3^(-n4)*(n1 + n3^(n4+1) *n2)"},{l:"n3^(-n4)*n1 + n3^n5 * n2",r:"n3^(-n4)*(n1 + n3^(n4+n5)*n2)"},{s:"n*vd + vd -> (n+1)*vd",assuming:{multiply:{commutative:!1}}},{s:"vd + n*vd -> (1+n)*vd",assuming:{multiply:{commutative:!1}}},{s:"n1*n3 + n2*n3 -> (n1+n2)*n3",assuming:{multiply:{commutative:!1}}},{s:"n^n1 * n -> n^(n1+1)",assuming:{divide:{total:!0},multiply:{commutative:!1}}},{s:"n1*n3^(-n4) + n2 * n3 -> (n1 + n2*n3^(n4 + 1))*n3^(-n4)",assuming:{multiply:{commutative:!1}}},{s:"n1*n3^(-n4) + n2 * n3^n5 -> (n1 + n2*n3^(n4 + n5))*n3^(-n4)",assuming:{multiply:{commutative:!1}}},{l:"n*cd + cd",r:"(n+1)*cd"},{s:"cd*n + cd -> cd*(n+1)",assuming:{multiply:{commutative:!1}}},{s:"cd + cd*n -> cd*(1+n)",assuming:{multiply:{commutative:!1}}},i,{s:"(-n)*n1 -> -(n*n1)",assuming:{subtract:{total:!0}}},{s:"n1*(-n) -> -(n1*n)",assuming:{subtract:{total:!0},multiply:{commutative:!1}}},{s:"ce+ve -> ve+ce",assuming:{add:{commutative:!0}},imposeContext:{add:{commutative:!1}}},{s:"vd*cd -> cd*vd",assuming:{multiply:{commutative:!0}},imposeContext:{multiply:{commutative:!1}}},{l:"n+-n1",r:"n-n1"},{l:"n+-(n1)",r:"n-(n1)"},{s:"n*(n1^-1) -> n/n1",assuming:{multiply:{commutative:!0}}},{s:"n*n1^-n2 -> n/n1^n2",assuming:{multiply:{commutative:!0}}},{s:"n^-1 -> 1/n",assuming:{multiply:{commutative:!0}}},{l:"n^1",r:"n"},{s:"n*(n1/n2) -> (n*n1)/n2",assuming:{multiply:{associative:!0}}},{s:"n-(n1+n2) -> n-n1-n2",assuming:{addition:{associative:!0,commutative:!0}}},{l:"1*n",r:"n",imposeContext:{multiply:{commutative:!0}}},{s:"n1/(n2/n3) -> (n1*n3)/n2",assuming:{multiply:{associative:!0}}},{l:"n1/(-n2)",r:"-n1/n2"}];function R(q,Z){var j={};if(q.s){var Y=q.s.split("->");if(Y.length===2)j.l=Y[0],j.r=Y[1];else throw SyntaxError("Could not parse rule: "+q.s)}else j.l=q.l,j.r=q.r;j.l=F(t(j.l)),j.r=F(t(j.r));for(var ee of["imposeContext","repeat","assuming"])ee in q&&(j[ee]=q[ee]);if(q.evaluate&&(j.evaluate=t(q.evaluate)),A(j.l,Z)){var te=!b(j.l,Z),oe;te&&(oe=T());var ve=D(j.l),L=T();j.expanded={},j.expanded.l=ve([j.l,L]),N(j.expanded.l,Z),x(j.expanded.l,Z),j.expanded.r=ve([j.r,L]),te&&(j.expandedNC1={},j.expandedNC1.l=ve([oe,j.l]),j.expandedNC1.r=ve([oe,j.r]),j.expandedNC2={},j.expandedNC2.l=ve([oe,j.expanded.l]),j.expandedNC2.r=ve([oe,j.expanded.r]))}return j}function $(q,Z){for(var j=[],Y=0;Y<q.length;Y++){var ee=q[Y],te=void 0,oe=typeof ee;switch(oe){case"string":ee={s:ee};case"object":te=R(ee,Z);break;case"function":te=ee;break;default:throw TypeError("Unsupported type of rule: "+oe)}j.push(te)}return j}var M=0;function T(){return new h("_p"+M++)}function k(q,Z){var j=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ka(),Y=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},ee=Y.consoleDebug;Z=$(Z||_.rules,Y.context);var te=a(q,j);te=F(te);for(var oe={},ve=te.toString({parenthesis:"all"});!oe[ve];){oe[ve]=!0,M=0;var L=ve;ee&&console.log("Working on: ",ve);for(var H=0;H<Z.length;H++){var ne="";if(typeof Z[H]=="function"?(te=Z[H](te,Y),ee&&(ne=Z[H].name)):(N(te,Y.context),te=W(te,Z[H],Y.context),ee&&(ne="".concat(Z[H].l.toString()," -> ").concat(Z[H].r.toString()))),ee){var ie=te.toString({parenthesis:"all"});ie!==L&&(console.log("Applying",ne,"produced",ie),L=ie)}y(te,Y.context)}ve=te.toString({parenthesis:"all"})}return te}function O(q,Z,j){var Y=q;if(q)for(var ee=0;ee<q.length;++ee){var te=W(q[ee],Z,j);te!==q[ee]&&(Y===q&&(Y=q.slice()),Y[ee]=te)}return Y}function W(q,Z,j){if(Z.assuming){for(var Y in Z.assuming)for(var ee in Z.assuming[Y])if(w(Y,ee,j)!==Z.assuming[Y][ee])return q}var te=g(Z.imposeContext,j),oe=q;if(oe instanceof p||oe instanceof c){var ve=O(oe.args,Z,j);ve!==oe.args&&(oe=oe.clone(),oe.args=ve)}else if(oe instanceof v){if(oe.content){var L=W(oe.content,Z,j);L!==oe.content&&(oe=new v(L))}}else if(oe instanceof u){var H=O(oe.items,Z,j);H!==oe.items&&(oe=new u(H))}else if(oe instanceof l){var ne=oe.object;oe.object&&(ne=W(oe.object,Z,j));var ie=oe.index;oe.index&&(ie=W(oe.index,Z,j)),(ne!==oe.object||ie!==oe.index)&&(oe=new l(ne,ie))}else if(oe instanceof f){var me=O(oe.dimensions,Z,j);me!==oe.dimensions&&(oe=new f(me))}else if(oe instanceof d){var de=!1,be={};for(var Ne in oe.properties)be[Ne]=W(oe.properties[Ne],Z,j),be[Ne]!==oe.properties[Ne]&&(de=!0);de&&(oe=new d(be))}var V=Z.r,K=se(Z.l,oe,te)[0];if(!K&&Z.expanded&&(V=Z.expanded.r,K=se(Z.expanded.l,oe,te)[0]),!K&&Z.expandedNC1&&(V=Z.expandedNC1.r,K=se(Z.expandedNC1.l,oe,te)[0],K||(V=Z.expandedNC2.r,K=se(Z.expandedNC2.l,oe,te)[0])),K){var G=oe.implicit;oe=V.clone(),G&&"implicit"in V&&(oe.implicit=!0),oe=oe.transform(function(ae){return ae.isSymbolNode&&De(K.placeholders,ae.name)?K.placeholders[ae.name].clone():ae})}return Z.repeat&&oe!==q&&(oe=W(oe,Z,j)),oe}function X(q,Z){var j=[],Y,ee,te=D(q);if(b(q,Z))for(var oe=0;oe<q.args.length;oe++)ee=q.args.slice(0),ee.splice(oe,1),Y=ee.length===1?ee[0]:te(ee),j.push(te([q.args[oe],Y]));else for(var ve=1;ve<q.args.length;ve++){var L=q.args[0];ve>1&&(L=te(q.args.slice(0,ve))),ee=q.args.slice(ve),Y=ee.length===1?ee[0]:te(ee),j.push(te([L,Y]))}return j}function U(q,Z){var j={placeholders:{}};if(!q.placeholders&&!Z.placeholders)return j;if(q.placeholders){if(!Z.placeholders)return q}else return Z;for(var Y in q.placeholders)if(De(q.placeholders,Y)&&(j.placeholders[Y]=q.placeholders[Y],De(Z.placeholders,Y)&&!re(q.placeholders[Y],Z.placeholders[Y])))return null;for(var ee in Z.placeholders)De(Z.placeholders,ee)&&(j.placeholders[ee]=Z.placeholders[ee]);return j}function z(q,Z){var j=[];if(q.length===0||Z.length===0)return j;for(var Y,ee=0;ee<q.length;ee++)for(var te=0;te<Z.length;te++)Y=U(q[ee],Z[te]),Y&&j.push(Y);return j}function Q(q){if(q.length===0)return q;for(var Z=q.reduce(z),j=[],Y={},ee=0;ee<Z.length;ee++){var te=JSON.stringify(Z[ee]);Y[te]||(Y[te]=!0,j.push(Z[ee]))}return j}function se(q,Z,j,Y){var ee=[{placeholders:{}}];if(q instanceof p&&Z instanceof p||q instanceof c&&Z instanceof c){if(q instanceof p){if(q.op!==Z.op||q.fn!==Z.fn)return[]}else if(q instanceof c&&q.name!==Z.name)return[];if(Z.args.length===1&&q.args.length===1||!A(Z,j)&&Z.args.length===q.args.length||Y){for(var te=[],oe=0;oe<q.args.length;oe++){var ve=se(q.args[oe],Z.args[oe],j);if(ve.length===0)break;te.push(ve)}if(te.length!==q.args.length){if(!b(Z,j)||q.args.length===1)return[];if(q.args.length>2)throw new Error("permuting >2 commutative non-associative rule arguments not yet implemented");var L=se(q.args[0],Z.args[1],j);if(L.length===0)return[];var H=se(q.args[1],Z.args[0],j);if(H.length===0)return[];te=[L,H]}ee=Q(te)}else if(Z.args.length>=2&&q.args.length===2){for(var ne=X(Z,j),ie=[],me=0;me<ne.length;me++){var de=se(q,ne[me],j,!0);ie=ie.concat(de)}return ie}else{if(q.args.length>2)throw Error("Unexpected non-binary associative function: "+q.toString());return[]}}else if(q instanceof h){if(q.name.length===0)throw new Error("Symbol in rule has 0 length...!?");if(I[q.name]){if(q.name!==Z.name)return[]}else switch(q.name[1]>="a"&&q.name[1]<="z"?q.name.substring(0,2):q.name[0]){case"n":case"_p":ee[0].placeholders[q.name]=Z;break;case"c":case"cl":if(Ze(Z))ee[0].placeholders[q.name]=Z;else return[];break;case"v":if(!Ze(Z))ee[0].placeholders[q.name]=Z;else return[];break;case"vl":if(br(Z))ee[0].placeholders[q.name]=Z;else return[];break;case"cd":if(Jg(Z))ee[0].placeholders[q.name]=Z;else return[];break;case"vd":if(!Jg(Z))ee[0].placeholders[q.name]=Z;else return[];break;case"ce":if(Jo(Z))ee[0].placeholders[q.name]=Z;else return[];break;case"ve":if(!Jo(Z))ee[0].placeholders[q.name]=Z;else return[];break;default:throw new Error("Invalid symbol in rule: "+q.name)}}else if(q instanceof s){if(!n(q.value,Z.value))return[]}else return[];return ee}function re(q,Z){if(q instanceof s&&Z instanceof s){if(!n(q.value,Z.value))return!1}else if(q instanceof h&&Z instanceof h){if(q.name!==Z.name)return!1}else if(q instanceof p&&Z instanceof p||q instanceof c&&Z instanceof c){if(q instanceof p){if(q.op!==Z.op||q.fn!==Z.fn)return!1}else if(q instanceof c&&q.name!==Z.name)return!1;if(q.args.length!==Z.args.length)return!1;for(var j=0;j<q.args.length;j++)if(!re(q.args[j],Z.args[j]))return!1}else return!1;return!0}return _}),EP="simplifyConstant",DP=["typed","config","mathWithTransform","matrix","?fraction","?bignumber","AccessorNode","ArrayNode","ConstantNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","SymbolNode"],SP=P(EP,DP,e=>{var{typed:r,config:t,mathWithTransform:n,matrix:a,fraction:i,bignumber:o,AccessorNode:l,ArrayNode:u,ConstantNode:s,FunctionNode:c,IndexNode:f,ObjectNode:d,OperatorNode:p,SymbolNode:v}=e,{isCommutative:h,isAssociative:w,allChildren:b,createMakeNodeFunction:A}=cl({FunctionNode:c,OperatorNode:p,SymbolNode:v}),g=r("simplifyConstant",{Node:$=>D(R($,{})),"Node, Object":function(M,T){return D(R(M,T))}});function N($){return zn($)?$.valueOf():$ instanceof Array?$.map(N):_e($)?a(N($.valueOf())):$}function x($,M,T){try{return n[$].apply(null,M)}catch{return M=M.map(N),E(n[$].apply(null,M),T)}}var y=r({Fraction:_,number:function(M){return M<0?C(new s(-M)):new s(M)},BigNumber:function(M){return M<0?C(new s(-M)):new s(M)},bigint:function(M){return M<0n?C(new s(-M)):new s(M)},Complex:function(M){throw new Error("Cannot convert Complex number to Node")},string:function(M){return new s(M)},Matrix:function(M){return new u(M.valueOf().map(T=>y(T)))}});function D($){return Qe($)?$:y($)}function S($,M){var T=M&&M.exactFractions!==!1;if(T&&isFinite($)&&i){var k=i($),O=M&&typeof M.fractionsLimit=="number"?M.fractionsLimit:1/0;if(k.valueOf()===$&&k.n<O&&k.d<O)return k}return $}var E=r({"string, Object":function(M,T){var k=dn(M,t);if(k==="BigNumber")return o===void 0&&Zu(),o(M);if(k==="bigint")return BigInt(M);if(k==="Fraction")return i===void 0&&Hv(),i(M);var O=parseFloat(M);return S(O,T)},"Fraction, Object":function(M,T){return M},"BigNumber, Object":function(M,T){return M},"number, Object":function(M,T){return S(M,T)},"bigint, Object":function(M,T){return M},"Complex, Object":function(M,T){return M.im!==0?M:S(M.re,T)},"Matrix, Object":function(M,T){return a(S(M.valueOf()))},"Array, Object":function(M,T){return M.map(S)}});function C($){return new p("-","unaryMinus",[$])}function _($){var M,T=$.s*$.n;return T<0?M=new p("-","unaryMinus",[new s(-T)]):M=new s(T),$.d===1?M:new p("/","divide",[M,new s($.d)])}function F($,M,T){if(!kn(M))return new l(D($),D(M));if(Qr($)||_e($)){for(var k=Array.from(M.dimensions);k.length>0;)if(Ze(k[0])&&typeof k[0].value!="string"){var O=E(k.shift().value,T);Qr($)?$=$.items[O-1]:($=$.valueOf()[O-1],$ instanceof Array&&($=a($)))}else if(k.length>1&&Ze(k[1])&&typeof k[1].value!="string"){var W=E(k[1].value,T),X=[],U=Qr($)?$.items:$.valueOf();for(var z of U)if(Qr(z))X.push(z.items[W-1]);else if(_e($))X.push(z[W-1]);else break;if(X.length===U.length)Qr($)?$=new u(X):$=a(X),k.splice(1,1);else break}else break;return k.length===M.dimensions.length?new l(D($),M):k.length>0?(M=new f(k),new l(D($),M)):$}if(Xa($)&&M.dimensions.length===1&&Ze(M.dimensions[0])){var Q=M.dimensions[0].value;return Q in $.properties?$.properties[Q]:new s}return new l(D($),M)}function I($,M,T,k){var O=M.shift(),W=M.reduce((X,U)=>{if(!Qe(U)){var z=X.pop();if(Qe(z))return[z,U];try{return X.push(x($,[z,U],k)),X}catch{X.push(z)}}X.push(D(X.pop()));var Q=X.length===1?X[0]:T(X);return[T([Q,D(U)])]},[O]);return W.length===1?W[0]:T([W[0],y(W[1])])}function R($,M){switch($.type){case"SymbolNode":return $;case"ConstantNode":switch(typeof $.value){case"number":return E($.value,M);case"bigint":return E($.value,M);case"string":return $.value;default:if(!isNaN($.value))return E($.value,M)}return $;case"FunctionNode":if(n[$.name]&&n[$.name].rawArgs)return $;{var T=["add","multiply"];if(!T.includes($.name)){var k=$.args.map(ee=>R(ee,M));if(!k.some(Qe))try{return x($.name,k,M)}catch{}if($.name==="size"&&k.length===1&&Qr(k[0])){for(var O=[],W=k[0];Qr(W);)O.push(W.items.length),W=W.items[0];return a(O)}return new c($.name,k.map(D))}}case"OperatorNode":{var X=$.fn.toString(),U,z,Q=A($);if(pr($)&&$.isUnary())U=[R($.args[0],M)],Qe(U[0])?z=Q(U):z=x(X,U,M);else if(w($,M.context))if(U=b($,M.context),U=U.map(ee=>R(ee,M)),h(X,M.context)){for(var se=[],re=[],q=0;q<U.length;q++)Qe(U[q])?re.push(U[q]):se.push(U[q]);se.length>1?(z=I(X,se,Q,M),re.unshift(z),z=I(X,re,Q,M)):z=I(X,U,Q,M)}else z=I(X,U,Q,M);else U=$.args.map(ee=>R(ee,M)),z=I(X,U,Q,M);return z}case"ParenthesisNode":return R($.content,M);case"AccessorNode":return F(R($.object,M),R($.index,M),M);case"ArrayNode":{var Z=$.items.map(ee=>R(ee,M));return Z.some(Qe)?new u(Z.map(D)):a(Z)}case"IndexNode":return new f($.dimensions.map(ee=>g(ee,M)));case"ObjectNode":{var j={};for(var Y in $.properties)j[Y]=g($.properties[Y],M);return new d(j)}case"AssignmentNode":case"BlockNode":case"FunctionAssignmentNode":case"RangeNode":case"ConditionalNode":default:throw new Error("Unimplemented node type in simplifyConstant: ".concat($.type))}}return g}),Xg="simplifyCore",CP=["typed","parse","equal","isZero","add","subtract","multiply","divide","pow","AccessorNode","ArrayNode","ConstantNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","ParenthesisNode","SymbolNode"],MP=P(Xg,CP,e=>{var{typed:r,parse:t,equal:n,isZero:a,add:i,subtract:o,multiply:l,divide:u,pow:s,AccessorNode:c,ArrayNode:f,ConstantNode:d,FunctionNode:p,IndexNode:v,ObjectNode:h,OperatorNode:w,ParenthesisNode:b,SymbolNode:A}=e,g=new d(0),N=new d(1),x=new d(!0),y=new d(!1);function D(_){return pr(_)&&["and","not","or"].includes(_.op)}var{hasProperty:S,isCommutative:E}=cl({FunctionNode:p,OperatorNode:w,SymbolNode:A});function C(_){var F=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},I=F?F.context:void 0;if(S(_,"trivial",I)){if(Gt(_)&&_.args.length===1)return C(_.args[0],F);var R=!1,$=0;if(_.forEach(re=>{++$,$===1&&(R=C(re,F))}),$===1)return R}var M=_;if(Gt(M)){var T=B5(M.name);if(T){if(M.args.length>2&&S(M,"associative",I))for(;M.args.length>2;){var k=M.args.pop(),O=M.args.pop();M.args.push(new w(T,M.name,[k,O]))}M=new w(T,M.name,M.args)}else return new p(C(M.fn),M.args.map(re=>C(re,F)))}if(pr(M)&&M.isUnary()){var W=C(M.args[0],F);if(M.op==="~"&&pr(W)&&W.isUnary()&&W.op==="~"||M.op==="not"&&pr(W)&&W.isUnary()&&W.op==="not"&&D(W.args[0]))return W.args[0];var X=!0;if(M.op==="-"&&pr(W)&&(W.isBinary()&&W.fn==="subtract"&&(M=new w("-","subtract",[W.args[1],W.args[0]]),X=!1),W.isUnary()&&W.op==="-"))return W.args[0];if(X)return new w(M.op,M.fn,[W])}if(pr(M)&&M.isBinary()){var U=C(M.args[0],F),z=C(M.args[1],F);if(M.op==="+"){if(Ze(U)&&a(U.value))return z;if(Ze(z)&&a(z.value))return U;pr(z)&&z.isUnary()&&z.op==="-"&&(z=z.args[0],M=new w("-","subtract",[U,z]))}if(M.op==="-")return pr(z)&&z.isUnary()&&z.op==="-"?C(new w("+","add",[U,z.args[0]]),F):Ze(U)&&a(U.value)?C(new w("-","unaryMinus",[z])):Ze(z)&&a(z.value)?U:new w(M.op,M.fn,[U,z]);if(M.op==="*"){if(Ze(U)){if(a(U.value))return g;if(n(U.value,1))return z}if(Ze(z)){if(a(z.value))return g;if(n(z.value,1))return U;if(E(M,I))return new w(M.op,M.fn,[z,U],M.implicit)}return new w(M.op,M.fn,[U,z],M.implicit)}if(M.op==="/")return Ze(U)&&a(U.value)?g:Ze(z)&&n(z.value,1)?U:new w(M.op,M.fn,[U,z]);if(M.op==="^"&&Ze(z)){if(a(z.value))return N;if(n(z.value,1))return U}if(M.op==="and"){if(Ze(U))if(U.value){if(D(z))return z;if(Ze(z))return z.value?x:y}else return y;if(Ze(z))if(z.value){if(D(U))return U}else return y}if(M.op==="or"){if(Ze(U)){if(U.value)return x;if(D(z))return z}if(Ze(z)){if(z.value)return x;if(D(U))return U}}return new w(M.op,M.fn,[U,z])}if(pr(M))return new w(M.op,M.fn,M.args.map(re=>C(re,F)));if(Qr(M))return new f(M.items.map(re=>C(re,F)));if(fn(M))return new c(C(M.object,F),C(M.index,F));if(kn(M))return new v(M.dimensions.map(re=>C(re,F)));if(Xa(M)){var Q={};for(var se in M.properties)Q[se]=C(M.properties[se],F);return new h(Q)}return M}return r(Xg,{Node:C,"Node,Object":C})}),_P="resolve",TP=["typed","parse","ConstantNode","FunctionNode","OperatorNode","ParenthesisNode"],FP=P(_P,TP,e=>{var{typed:r,parse:t,ConstantNode:n,FunctionNode:a,OperatorNode:i,ParenthesisNode:o}=e;function l(u,s){var c=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Set;if(!s)return u;if(br(u)){if(c.has(u.name)){var f=Array.from(c).join(", ");throw new ReferenceError("recursive loop of variable definitions among {".concat(f,"}"))}var d=s.get(u.name);if(Qe(d)){var p=new Set(c);return p.add(u.name),l(d,s,p)}else return typeof d=="number"?t(String(d)):d!==void 0?new n(d):u}else if(pr(u)){var v=u.args.map(function(w){return l(w,s,c)});return new i(u.op,u.fn,v,u.implicit)}else{if(_t(u))return new o(l(u.content,s,c));if(Gt(u)){var h=u.args.map(function(w){return l(w,s,c)});return new a(u.name,h)}}return u.map(w=>l(w,s,c))}return r("resolve",{Node:l,"Node, Map | null | undefined":l,"Node, Object":(u,s)=>l(u,ca(s)),"Array | Matrix":r.referToSelf(u=>s=>s.map(c=>u(c))),"Array | Matrix, null | undefined":r.referToSelf(u=>s=>s.map(c=>u(c))),"Array, Object":r.referTo("Array,Map",u=>(s,c)=>u(s,ca(c))),"Matrix, Object":r.referTo("Matrix,Map",u=>(s,c)=>u(s,ca(c))),"Array | Matrix, Map":r.referToSelf(u=>(s,c)=>s.map(f=>u(f,c)))})}),Qg="symbolicEqual",BP=["parse","simplify","typed","OperatorNode"],OP=P(Qg,BP,e=>{var{parse:r,simplify:t,typed:n,OperatorNode:a}=e;function i(o,l){var u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=new a("-","subtract",[o,l]),c=t(s,{},u);return Ze(c)&&!c.value}return n(Qg,{"Node, Node":i,"Node, Node, Object":i})}),ey="derivative",$P=["typed","config","parse","simplify","equal","isZero","numeric","ConstantNode","FunctionNode","OperatorNode","ParenthesisNode","SymbolNode"],IP=P(ey,$P,e=>{var{typed:r,config:t,parse:n,simplify:a,equal:i,isZero:o,numeric:l,ConstantNode:u,FunctionNode:s,OperatorNode:c,ParenthesisNode:f,SymbolNode:d}=e;function p(N,x){var y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{simplify:!0},D={};b(D,N,x.name);var S=A(N,D);return y.simplify?a(S):S}function v(N){var x=n(N);if(!x.isSymbolNode)throw new TypeError("Invalid variable. "+"Cannot parse ".concat(JSON.stringify(N)," into a variable in function derivative"));return x}var h=r(ey,{"Node, SymbolNode":p,"Node, SymbolNode, Object":p,"Node, string":(N,x)=>p(N,v(x)),"Node, string, Object":(N,x,y)=>p(N,v(x),y)});h._simplify=!0,h.toTex=function(N){return w.apply(null,N.args)};var w=r("_derivTex",{"Node, SymbolNode":function(x,y){return Ze(x)&&tr(x.value)==="string"?w(n(x.value).toString(),y.toString(),1):w(x.toTex(),y.toString(),1)},"Node, ConstantNode":function(x,y){if(tr(y.value)==="string")return w(x,n(y.value));throw new Error("The second parameter to 'derivative' is a non-string constant")},"Node, SymbolNode, ConstantNode":function(x,y,D){return w(x.toString(),y.name,D.value)},"string, string, number":function(x,y,D){var S;return D===1?S="{d\\over d"+y+"}":S="{d^{"+D+"}\\over d"+y+"^{"+D+"}}",S+"\\left[".concat(x,"\\right]")}}),b=r("constTag",{"Object, ConstantNode, string":function(x,y){return x[y]=!0,!0},"Object, SymbolNode, string":function(x,y,D){return y.name!==D?(x[y]=!0,!0):!1},"Object, ParenthesisNode, string":function(x,y,D){return b(x,y.content,D)},"Object, FunctionAssignmentNode, string":function(x,y,D){return y.params.includes(D)?b(x,y.expr,D):(x[y]=!0,!0)},"Object, FunctionNode | OperatorNode, string":function(x,y,D){if(y.args.length>0){for(var S=b(x,y.args[0],D),E=1;E<y.args.length;++E)S=b(x,y.args[E],D)&&S;if(S)return x[y]=!0,!0}return!1}}),A=r("_derivative",{"ConstantNode, Object":function(x){return g(0)},"SymbolNode, Object":function(x,y){return y[x]!==void 0?g(0):g(1)},"ParenthesisNode, Object":function(x,y){return new f(A(x.content,y))},"FunctionAssignmentNode, Object":function(x,y){return y[x]!==void 0?g(0):A(x.expr,y)},"FunctionNode, Object":function(x,y){if(y[x]!==void 0)return g(0);var D=x.args[0],S,E=!1,C=!1,_;switch(x.name){case"cbrt":E=!0,_=new c("*","multiply",[g(3),new c("^","pow",[D,new c("/","divide",[g(2),g(3)])])]);break;case"sqrt":case"nthRoot":if(x.args.length===1)E=!0,_=new c("*","multiply",[g(2),new s("sqrt",[D])]);else if(x.args.length===2)return S=new c("/","divide",[g(1),x.args[1]]),y[S]=y[x.args[1]],A(new c("^","pow",[D,S]),y);break;case"log10":S=g(10);case"log":if(!S&&x.args.length===1)_=D.clone(),E=!0;else if(x.args.length===1&&S||x.args.length===2&&y[x.args[1]]!==void 0)_=new c("*","multiply",[D.clone(),new s("log",[S||x.args[1]])]),E=!0;else if(x.args.length===2)return A(new c("/","divide",[new s("log",[D]),new s("log",[x.args[1]])]),y);break;case"pow":if(x.args.length===2)return y[S]=y[x.args[1]],A(new c("^","pow",[D,x.args[1]]),y);break;case"exp":_=new s("exp",[D.clone()]);break;case"sin":_=new s("cos",[D.clone()]);break;case"cos":_=new c("-","unaryMinus",[new s("sin",[D.clone()])]);break;case"tan":_=new c("^","pow",[new s("sec",[D.clone()]),g(2)]);break;case"sec":_=new c("*","multiply",[x,new s("tan",[D.clone()])]);break;case"csc":C=!0,_=new c("*","multiply",[x,new s("cot",[D.clone()])]);break;case"cot":C=!0,_=new c("^","pow",[new s("csc",[D.clone()]),g(2)]);break;case"asin":E=!0,_=new s("sqrt",[new c("-","subtract",[g(1),new c("^","pow",[D.clone(),g(2)])])]);break;case"acos":E=!0,C=!0,_=new s("sqrt",[new c("-","subtract",[g(1),new c("^","pow",[D.clone(),g(2)])])]);break;case"atan":E=!0,_=new c("+","add",[new c("^","pow",[D.clone(),g(2)]),g(1)]);break;case"asec":E=!0,_=new c("*","multiply",[new s("abs",[D.clone()]),new s("sqrt",[new c("-","subtract",[new c("^","pow",[D.clone(),g(2)]),g(1)])])]);break;case"acsc":E=!0,C=!0,_=new c("*","multiply",[new s("abs",[D.clone()]),new s("sqrt",[new c("-","subtract",[new c("^","pow",[D.clone(),g(2)]),g(1)])])]);break;case"acot":E=!0,C=!0,_=new c("+","add",[new c("^","pow",[D.clone(),g(2)]),g(1)]);break;case"sinh":_=new s("cosh",[D.clone()]);break;case"cosh":_=new s("sinh",[D.clone()]);break;case"tanh":_=new c("^","pow",[new s("sech",[D.clone()]),g(2)]);break;case"sech":C=!0,_=new c("*","multiply",[x,new s("tanh",[D.clone()])]);break;case"csch":C=!0,_=new c("*","multiply",[x,new s("coth",[D.clone()])]);break;case"coth":C=!0,_=new c("^","pow",[new s("csch",[D.clone()]),g(2)]);break;case"asinh":E=!0,_=new s("sqrt",[new c("+","add",[new c("^","pow",[D.clone(),g(2)]),g(1)])]);break;case"acosh":E=!0,_=new s("sqrt",[new c("-","subtract",[new c("^","pow",[D.clone(),g(2)]),g(1)])]);break;case"atanh":E=!0,_=new c("-","subtract",[g(1),new c("^","pow",[D.clone(),g(2)])]);break;case"asech":E=!0,C=!0,_=new c("*","multiply",[D.clone(),new s("sqrt",[new c("-","subtract",[g(1),new c("^","pow",[D.clone(),g(2)])])])]);break;case"acsch":E=!0,C=!0,_=new c("*","multiply",[new s("abs",[D.clone()]),new s("sqrt",[new c("+","add",[new c("^","pow",[D.clone(),g(2)]),g(1)])])]);break;case"acoth":E=!0,C=!0,_=new c("-","subtract",[g(1),new c("^","pow",[D.clone(),g(2)])]);break;case"abs":_=new c("/","divide",[new s(new d("abs"),[D.clone()]),D.clone()]);break;case"gamma":default:throw new Error('Cannot process function "'+x.name+'" in derivative: the function is not supported, undefined, or the number of arguments passed to it are not supported')}var F,I;E?(F="/",I="divide"):(F="*",I="multiply");var R=A(D,y);return C&&(R=new c("-","unaryMinus",[R])),new c(F,I,[R,_])},"OperatorNode, Object":function(x,y){if(y[x]!==void 0)return g(0);if(x.op==="+")return new c(x.op,x.fn,x.args.map(function(M){return A(M,y)}));if(x.op==="-"){if(x.isUnary())return new c(x.op,x.fn,[A(x.args[0],y)]);if(x.isBinary())return new c(x.op,x.fn,[A(x.args[0],y),A(x.args[1],y)])}if(x.op==="*"){var D=x.args.filter(function(M){return y[M]!==void 0});if(D.length>0){var S=x.args.filter(function(M){return y[M]===void 0}),E=S.length===1?S[0]:new c("*","multiply",S),C=D.concat(A(E,y));return new c("*","multiply",C)}return new c("+","add",x.args.map(function(M){return new c("*","multiply",x.args.map(function(T){return T===M?A(T,y):T.clone()}))}))}if(x.op==="/"&&x.isBinary()){var _=x.args[0],F=x.args[1];return y[F]!==void 0?new c("/","divide",[A(_,y),F]):y[_]!==void 0?new c("*","multiply",[new c("-","unaryMinus",[_]),new c("/","divide",[A(F,y),new c("^","pow",[F.clone(),g(2)])])]):new c("/","divide",[new c("-","subtract",[new c("*","multiply",[A(_,y),F.clone()]),new c("*","multiply",[_.clone(),A(F,y)])]),new c("^","pow",[F.clone(),g(2)])])}if(x.op==="^"&&x.isBinary()){var I=x.args[0],R=x.args[1];if(y[I]!==void 0)return Ze(I)&&(o(I.value)||i(I.value,1))?g(0):new c("*","multiply",[x,new c("*","multiply",[new s("log",[I.clone()]),A(R.clone(),y)])]);if(y[R]!==void 0){if(Ze(R)){if(o(R.value))return g(0);if(i(R.value,1))return A(I,y)}var $=new c("^","pow",[I.clone(),new c("-","subtract",[R,g(1)])]);return new c("*","multiply",[R.clone(),new c("*","multiply",[A(I,y),$])])}return new c("*","multiply",[new c("^","pow",[I.clone(),R.clone()]),new c("+","add",[new c("*","multiply",[A(I,y),new c("/","divide",[R.clone(),I.clone()])]),new c("*","multiply",[A(R,y),new s("log",[I.clone()])])])])}throw new Error('Cannot process operator "'+x.op+'" in derivative: the operator is not supported, undefined, or the number of arguments passed to it are not supported')}});function g(N,x){return new u(l(N,dn(String(N),t)))}return h}),ry="rationalize",RP=["config","typed","equal","isZero","add","subtract","multiply","divide","pow","parse","simplifyConstant","simplifyCore","simplify","?bignumber","?fraction","mathWithTransform","matrix","AccessorNode","ArrayNode","ConstantNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","SymbolNode","ParenthesisNode"],zP=P(ry,RP,e=>{var{config:r,typed:t,equal:n,isZero:a,add:i,subtract:o,multiply:l,divide:u,pow:s,parse:c,simplifyConstant:f,simplifyCore:d,simplify:p,fraction:v,bignumber:h,mathWithTransform:w,matrix:b,AccessorNode:A,ArrayNode:g,ConstantNode:N,FunctionNode:x,IndexNode:y,ObjectNode:D,OperatorNode:S,SymbolNode:E,ParenthesisNode:C}=e;function _(M){var T=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,O=I(),W=F(M,T,!0,O.firstRules),X=W.variables.length,U={exactFractions:!1},z={exactFractions:!0};if(M=W.expression,X>=1){M=R(M);var Q,se,re=!0,q=!1;M=p(M,O.firstRules,{},U);for(var Z;se=re?O.distrDivRules:O.sucDivRules,M=p(M,se,{},z),re=!re,Z=M.toString(),Z!==Q;)q=!0,Q=Z;q&&(M=p(M,O.firstRulesAgain,{},U)),M=p(M,O.finalRules,{},U)}var j=[],Y={};return M.type==="OperatorNode"&&M.isBinary()&&M.op==="/"?(X===1&&(M.args[0]=$(M.args[0],j),M.args[1]=$(M.args[1])),k&&(Y.numerator=M.args[0],Y.denominator=M.args[1])):(X===1&&(M=$(M,j)),k&&(Y.numerator=M,Y.denominator=null)),k?(Y.coefficients=j,Y.variables=W.variables,Y.expression=M,Y):M}return t(ry,{Node:_,"Node, boolean":(M,T)=>_(M,{},T),"Node, Object":_,"Node, Object, boolean":_});function F(M,T,k,O){var W=[],X=p(M,O,T,{exactFractions:!1});k=!!k;var U="+-*"+(k?"/":"");Q(X);var z={};return z.expression=X,z.variables=W,z;function Q(se){var re=se.type;if(re==="FunctionNode")throw new Error("There is an unsolved function call");if(re==="OperatorNode")if(se.op==="^"){if(se.args[1].type!=="ConstantNode"||!Ce(parseFloat(se.args[1].value)))throw new Error("There is a non-integer exponent");Q(se.args[0])}else{if(!U.includes(se.op))throw new Error("Operator "+se.op+" invalid in polynomial expression");for(var q=0;q<se.args.length;q++)Q(se.args[q])}else if(re==="SymbolNode"){var Z=se.name,j=W.indexOf(Z);j===-1&&W.push(Z)}else if(re==="ParenthesisNode")Q(se.content);else if(re!=="ConstantNode")throw new Error("type "+re+" is not allowed in polynomial expression")}}function I(){var M=[d,{l:"n+n",r:"2*n"},{l:"n+-n",r:"0"},f,{l:"n*(n1^-1)",r:"n/n1"},{l:"n*n1^-n2",r:"n/n1^n2"},{l:"n1^-1",r:"1/n1"},{l:"n*(n1/n2)",r:"(n*n1)/n2"},{l:"1*n",r:"n"}],T=[{l:"(-n1)/(-n2)",r:"n1/n2"},{l:"(-n1)*(-n2)",r:"n1*n2"},{l:"n1--n2",r:"n1+n2"},{l:"n1-n2",r:"n1+(-n2)"},{l:"(n1+n2)*n3",r:"(n1*n3 + n2*n3)"},{l:"n1*(n2+n3)",r:"(n1*n2+n1*n3)"},{l:"c1*n + c2*n",r:"(c1+c2)*n"},{l:"c1*n + n",r:"(c1+1)*n"},{l:"c1*n - c2*n",r:"(c1-c2)*n"},{l:"c1*n - n",r:"(c1-1)*n"},{l:"v/c",r:"(1/c)*v"},{l:"v/-c",r:"-(1/c)*v"},{l:"-v*-c",r:"c*v"},{l:"-v*c",r:"-c*v"},{l:"v*-c",r:"-c*v"},{l:"v*c",r:"c*v"},{l:"-(-n1*n2)",r:"(n1*n2)"},{l:"-(n1*n2)",r:"(-n1*n2)"},{l:"-(-n1+n2)",r:"(n1-n2)"},{l:"-(n1+n2)",r:"(-n1-n2)"},{l:"(n1^n2)^n3",r:"(n1^(n2*n3))"},{l:"-(-n1/n2)",r:"(n1/n2)"},{l:"-(n1/n2)",r:"(-n1/n2)"}],k=[{l:"(n1/n2 + n3/n4)",r:"((n1*n4 + n3*n2)/(n2*n4))"},{l:"(n1/n2 + n3)",r:"((n1 + n3*n2)/n2)"},{l:"(n1 + n2/n3)",r:"((n1*n3 + n2)/n3)"}],O=[{l:"(n1/(n2/n3))",r:"((n1*n3)/n2)"},{l:"(n1/n2/n3)",r:"(n1/(n2*n3))"}],W={};return W.firstRules=M.concat(T,O),W.distrDivRules=k,W.sucDivRules=O,W.firstRulesAgain=M.concat(T),W.finalRules=[d,{l:"n*-n",r:"-n^2"},{l:"n*n",r:"n^2"},f,{l:"n*-n^n1",r:"-n^(n1+1)"},{l:"n*n^n1",r:"n^(n1+1)"},{l:"n^n1*-n^n2",r:"-n^(n1+n2)"},{l:"n^n1*n^n2",r:"n^(n1+n2)"},{l:"n^n1*-n",r:"-n^(n1+1)"},{l:"n^n1*n",r:"n^(n1+1)"},{l:"n^n1/-n",r:"-n^(n1-1)"},{l:"n^n1/n",r:"n^(n1-1)"},{l:"n/-n^n1",r:"-n^(1-n1)"},{l:"n/n^n1",r:"n^(1-n1)"},{l:"n^n1/-n^n2",r:"n^(n1-n2)"},{l:"n^n1/n^n2",r:"n^(n1-n2)"},{l:"n1+(-n2*n3)",r:"n1-n2*n3"},{l:"v*(-c)",r:"-c*v"},{l:"n1+-n2",r:"n1-n2"},{l:"v*c",r:"c*v"},{l:"(n1^n2)^n3",r:"(n1^(n2*n3))"}],W}function R(M,T,k){var O=M.type,W=arguments.length>1;if(O==="OperatorNode"&&M.isBinary()){var X=!1,U;if(M.op==="^"&&(M.args[0].type==="ParenthesisNode"||M.args[0].type==="OperatorNode")&&M.args[1].type==="ConstantNode"&&(U=parseFloat(M.args[1].value),X=U>=2&&Ce(U)),X){if(U>2){var z=M.args[0],Q=new S("^","pow",[M.args[0].cloneDeep(),new N(U-1)]);M=new S("*","multiply",[z,Q])}else M=new S("*","multiply",[M.args[0],M.args[0].cloneDeep()]);W&&(k==="content"?T.content=M:T.args[k]=M)}}if(O==="ParenthesisNode")R(M.content,M,"content");else if(O!=="ConstantNode"&&O!=="SymbolNode")for(var se=0;se<M.args.length;se++)R(M.args[se],M,se);if(!W)return M}function $(M,T){T===void 0&&(T=[]),T[0]=0;var k={};k.cte=1,k.oper="+",k.fire="";var O=0,W="";Z(M,null,k),O=T.length-1;for(var X=!0,U,z=O;z>=0;z--)if(T[z]!==0){var Q=new N(X?T[z]:Math.abs(T[z])),se=T[z]<0?"-":"+";if(z>0){var re=new E(W);if(z>1){var q=new N(z);re=new S("^","pow",[re,q])}T[z]===-1&&X?Q=new S("-","unaryMinus",[re]):Math.abs(T[z])===1?Q=re:Q=new S("*","multiply",[Q,re])}X?U=Q:se==="+"?U=new S("+","add",[U,Q]):U=new S("-","subtract",[U,Q]),X=!1}if(X)return new N(0);return U;function Z(j,Y,ee){var te=j.type;if(te==="FunctionNode")throw new Error("There is an unsolved function call");if(te==="OperatorNode"){if(!"+-*^".includes(j.op))throw new Error("Operator "+j.op+" invalid");if(Y!==null){if((j.fn==="unaryMinus"||j.fn==="pow")&&Y.fn!=="add"&&Y.fn!=="subtract"&&Y.fn!=="multiply")throw new Error("Invalid "+j.op+" placing");if((j.fn==="subtract"||j.fn==="add"||j.fn==="multiply")&&Y.fn!=="add"&&Y.fn!=="subtract")throw new Error("Invalid "+j.op+" placing");if((j.fn==="subtract"||j.fn==="add"||j.fn==="unaryMinus")&&ee.noFil!==0)throw new Error("Invalid "+j.op+" placing")}(j.op==="^"||j.op==="*")&&(ee.fire=j.op);for(var oe=0;oe<j.args.length;oe++)j.fn==="unaryMinus"&&(ee.oper="-"),(j.op==="+"||j.fn==="subtract")&&(ee.fire="",ee.cte=1,ee.oper=oe===0?"+":j.op),ee.noFil=oe,Z(j.args[oe],j,ee)}else if(te==="SymbolNode"){if(j.name!==W&&W!=="")throw new Error("There is more than one variable");if(W=j.name,Y===null){T[1]=1;return}if(Y.op==="^"&&ee.noFil!==0)throw new Error("In power the variable should be the first parameter");if(Y.op==="*"&&ee.noFil!==1)throw new Error("In multiply the variable should be the second parameter");(ee.fire===""||ee.fire==="*")&&(O<1&&(T[1]=0),T[1]+=ee.cte*(ee.oper==="+"?1:-1),O=Math.max(1,O))}else if(te==="ConstantNode"){var ve=parseFloat(j.value);if(Y===null){T[0]=ve;return}if(Y.op==="^"){if(ee.noFil!==1)throw new Error("Constant cannot be powered");if(!Ce(ve)||ve<=0)throw new Error("Non-integer exponent is not allowed");for(var L=O+1;L<ve;L++)T[L]=0;ve>O&&(T[ve]=0),T[ve]+=ee.cte*(ee.oper==="+"?1:-1),O=Math.max(ve,O);return}ee.cte=ve,ee.fire===""&&(T[0]+=ee.cte*(ee.oper==="+"?1:-1))}else throw new Error("Type "+te+" is not allowed")}}}),ty="zpk2tf",PP=["typed","add","multiply","Complex","number"],kP=P(ty,PP,e=>{var{typed:r,add:t,multiply:n,Complex:a,number:i}=e;return r(ty,{"Array,Array,number":function(s,c,f){return o(s,c,f)},"Array,Array":function(s,c){return o(s,c,1)},"Matrix,Matrix,number":function(s,c,f){return o(s.valueOf(),c.valueOf(),f)},"Matrix,Matrix":function(s,c){return o(s.valueOf(),c.valueOf(),1)}});function o(u,s,c){u.some(A=>A.type==="BigNumber")&&(u=u.map(A=>i(A))),s.some(A=>A.type==="BigNumber")&&(s=s.map(A=>i(A)));for(var f=[a(1,0)],d=[a(1,0)],p=0;p<u.length;p++){var v=u[p];typeof v=="number"&&(v=a(v,0)),f=l(f,[a(1,0),a(-v.re,-v.im)])}for(var h=0;h<s.length;h++){var w=s[h];typeof w=="number"&&(w=a(w,0)),d=l(d,[a(1,0),a(-w.re,-w.im)])}for(var b=0;b<f.length;b++)f[b]=n(f[b],c);return[f,d]}function l(u,s){for(var c=[],f=0;f<u.length+s.length-1;f++){c[f]=a(0,0);for(var d=0;d<u.length;d++)f-d>=0&&f-d<s.length&&(c[f]=t(c[f],n(u[d],s[f-d])))}return c}}),ny="freqz",qP=["typed","add","multiply","Complex","divide","matrix"],LP=P(ny,qP,e=>{var{typed:r,add:t,multiply:n,Complex:a,divide:i,matrix:o}=e;return r(ny,{"Array, Array":function(c,f){var d=u(512);return l(c,f,d)},"Array, Array, Array":function(c,f,d){return l(c,f,d)},"Array, Array, number":function(c,f,d){if(d<0)throw new Error("w must be a positive number");var p=u(d);return l(c,f,p)},"Matrix, Matrix":function(c,f){var d=u(512),{w:p,h:v}=l(c.valueOf(),f.valueOf(),d);return{w:o(p),h:o(v)}},"Matrix, Matrix, Matrix":function(c,f,d){var{h:p}=l(c.valueOf(),f.valueOf(),d.valueOf());return{h:o(p),w:o(d)}},"Matrix, Matrix, number":function(c,f,d){if(d<0)throw new Error("w must be a positive number");var p=u(d),{h:v}=l(c.valueOf(),f.valueOf(),p);return{h:o(v),w:o(p)}}});function l(s,c,f){for(var d=[],p=[],v=0;v<f.length;v++){for(var h=a(0,0),w=a(0,0),b=0;b<s.length;b++)h=t(h,n(s[b],a(Math.cos(-b*f[v]),Math.sin(-b*f[v]))));for(var A=0;A<c.length;A++)w=t(w,n(c[A],a(Math.cos(-A*f[v]),Math.sin(-A*f[v]))));d.push(h),p.push(w)}for(var g=[],N=0;N<d.length;N++)g.push(i(d[N],p[N]));return{h:g,w:f}}function u(s){for(var c=[],f=0;f<s;f++)c.push(f/s*Math.PI);return c}}),VP="reviver",UP=["classes"],HP=P(VP,UP,e=>{var{classes:r}=e;return function(n,a){var i=r[a&&a.mathjs];return i&&typeof i.fromJSON=="function"?i.fromJSON(a):a}}),ZP="replacer",GP=[],WP=P(ZP,GP,()=>function(r,t){return typeof t=="number"&&(!isFinite(t)||isNaN(t))?{mathjs:"number",value:String(t)}:typeof t=="bigint"?{mathjs:"bigint",value:String(t)}:t}),jP="13.2.3",KP=P("true",[],()=>!0),JP=P("false",[],()=>!1),YP=P("null",[],()=>null),XP=rt("Infinity",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t(1/0):1/0}),QP=rt("NaN",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t(NaN):NaN}),e7=rt("pi",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?ju(t):vM}),r7=rt("tau",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?R4(t):hM}),t7=rt("e",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?$4(t):gM}),n7=rt("phi",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?I4(t):yM}),a7=rt("LN2",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t(2).ln():Math.LN2}),i7=rt("LN10",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t(10).ln():Math.LN10}),o7=rt("LOG2E",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t(1).div(new t(2).ln()):Math.LOG2E}),s7=rt("LOG10E",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t(1).div(new t(10).ln()):Math.LOG10E}),u7=rt("SQRT1_2",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t("0.5").sqrt():Math.SQRT1_2}),l7=rt("SQRT2",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t(2).sqrt():Math.SQRT2}),c7=rt("i",["Complex"],e=>{var{Complex:r}=e;return r.I}),f7=P("PI",["pi"],e=>{var{pi:r}=e;return r}),d7=P("E",["e"],e=>{var{e:r}=e;return r}),m7=P("version",[],()=>jP);function rt(e,r,t){return P(e,r,t,{recreateOnConfigChange:!0})}var p7=Pe("speedOfLight","299792458","m s^-1"),v7=Pe("gravitationConstant","6.67430e-11","m^3 kg^-1 s^-2"),h7=Pe("planckConstant","6.62607015e-34","J s"),g7=Pe("reducedPlanckConstant","1.0545718176461565e-34","J s"),y7=Pe("magneticConstant","1.25663706212e-6","N A^-2"),b7=Pe("electricConstant","8.8541878128e-12","F m^-1"),w7=Pe("vacuumImpedance","376.730313667","ohm"),x7=Pe("coulomb","8.987551792261171e9","N m^2 C^-2"),N7=Pe("elementaryCharge","1.602176634e-19","C"),A7=Pe("bohrMagneton","9.2740100783e-24","J T^-1"),E7=Pe("conductanceQuantum","7.748091729863649e-5","S"),D7=Pe("inverseConductanceQuantum","12906.403729652257","ohm"),S7=Pe("magneticFluxQuantum","2.0678338484619295e-15","Wb"),C7=Pe("nuclearMagneton","5.0507837461e-27","J T^-1"),M7=Pe("klitzing","25812.807459304513","ohm"),_7=Pe("bohrRadius","5.29177210903e-11","m"),T7=Pe("classicalElectronRadius","2.8179403262e-15","m"),F7=Pe("electronMass","9.1093837015e-31","kg"),B7=Pe("fermiCoupling","1.1663787e-5","GeV^-2"),O7=Yo("fineStructure",.0072973525693),$7=Pe("hartreeEnergy","4.3597447222071e-18","J"),I7=Pe("protonMass","1.67262192369e-27","kg"),R7=Pe("deuteronMass","3.3435830926e-27","kg"),z7=Pe("neutronMass","1.6749271613e-27","kg"),P7=Pe("quantumOfCirculation","3.6369475516e-4","m^2 s^-1"),k7=Pe("rydberg","10973731.568160","m^-1"),q7=Pe("thomsonCrossSection","6.6524587321e-29","m^2"),L7=Yo("weakMixingAngle",.2229),V7=Yo("efimovFactor",22.7),U7=Pe("atomicMass","1.66053906660e-27","kg"),H7=Pe("avogadro","6.02214076e23","mol^-1"),Z7=Pe("boltzmann","1.380649e-23","J K^-1"),G7=Pe("faraday","96485.33212331001","C mol^-1"),W7=Pe("firstRadiation","3.7417718521927573e-16","W m^2"),j7=Pe("loschmidt","2.686780111798444e25","m^-3"),K7=Pe("gasConstant","8.31446261815324","J K^-1 mol^-1"),J7=Pe("molarPlanckConstant","3.990312712893431e-10","J s mol^-1"),Y7=Pe("molarVolume","0.022413969545014137","m^3 mol^-1"),X7=Yo("sackurTetrode",-1.16487052358),Q7=Pe("secondRadiation","0.014387768775039337","m K"),ek=Pe("stefanBoltzmann","5.67037441918443e-8","W m^-2 K^-4"),rk=Pe("wienDisplacement","2.897771955e-3","m K"),tk=Pe("molarMass","0.99999999965e-3","kg mol^-1"),nk=Pe("molarMassC12","11.9999999958e-3","kg mol^-1"),ak=Pe("gravity","9.80665","m s^-2"),ik=Pe("planckLength","1.616255e-35","m"),ok=Pe("planckMass","2.176435e-8","kg"),sk=Pe("planckTime","5.391245e-44","s"),uk=Pe("planckCharge","1.87554603778e-18","C"),lk=Pe("planckTemperature","1.416785e+32","K");function Pe(e,r,t){var n=["config","Unit","BigNumber"];return P(e,n,a=>{var{config:i,Unit:o,BigNumber:l}=a,u=i.number==="BigNumber"?new l(r):parseFloat(r),s=new o(u,t);return s.fixPrefix=!0,s})}function Yo(e,r){var t=["config","BigNumber"];return P(e,t,n=>{var{config:a,BigNumber:i}=n;return a.number==="BigNumber"?new i(r):r})}var ck="apply",fk=["typed","isInteger"],dk=P(ck,fk,e=>{var{typed:r,isInteger:t}=e,n=Ru({typed:r,isInteger:t});return r("apply",{"...any":function(i){var o=i[1];Re(o)?i[1]=o-1:Ie(o)&&(i[1]=o.minus(1));try{return n.apply(null,i)}catch(l){throw Lr(l)}}})},{isTransformFunction:!0}),mk="column",pk=["typed","Index","matrix","range"],vk=P(mk,pk,e=>{var{typed:r,Index:t,matrix:n,range:a}=e,i=Tv({typed:r,Index:t,matrix:n,range:a});return r("column",{"...any":function(l){var u=l.length-1,s=l[u];Re(s)&&(l[u]=s-1);try{return i.apply(null,l)}catch(c){throw Lr(c)}}})},{isTransformFunction:!0});function fl(e,r,t){var n=e.filter(function(u){return br(u)&&!(u.name in r)&&!t.has(u.name)})[0];if(!n)throw new Error('No undefined variable found in inline expression "'+e+'"');var a=n.name,i=new Map,o=new wd(t,i,new Set([a])),l=e.compile();return function(s){return i.set(a,s),l.evaluate(o)}}var hk="transformCallback",gk=["typed"],dl=P(hk,gk,e=>{var{typed:r}=e;return function(n,a){return r.isTypedFunction(n)?t(n,a):ay(n,n.length,a)};function t(n,a){var i=Object.fromEntries(Object.entries(n.signatures).map(o=>{var[l,u]=o,s=l.split(",").length;return r.isTypedFunction(u)?[l,t(u,a)]:[l,ay(u,s,a)]}));return typeof n.name=="string"?r(n.name,i):r(i)}});function ay(e,r,t){return r===t?e:r===t+1?function(){for(var n=arguments.length,a=new Array(n),i=0;i<n;i++)a[i]=arguments[i];var o=a.slice(0,t),l=iy(a[t]);return e(...o,l)}:r>t+1?function(){for(var n=arguments.length,a=new Array(n),i=0;i<n;i++)a[i]=arguments[i];var o=a.slice(0,t),l=iy(a[t]),u=a.slice(t+1);return e(...o,l,...u)}:e}function iy(e){return e.map(r=>r+1)}var yk="filter",bk=["typed"],wk=P(yk,bk,e=>{var{typed:r}=e;function t(a,i,o){var l=$v({typed:r}),u=dl({typed:r});if(a.length===0)return l();var s=a[0];if(a.length===1)return l(s);var c=a.length-1,f=a[c];return s&&(s=n(s,o)),f&&(br(f)||da(f)?f=n(f,o):f=fl(f,i,o)),l(s,u(f,c))}t.rawArgs=!0;function n(a,i){return a.compile().evaluate(i)}return t},{isTransformFunction:!0}),xk="forEach",Nk=["typed"],Ak=P(xk,Nk,e=>{var{typed:r}=e,t=zv({typed:r}),n=dl({typed:r});function a(o,l,u){if(o.length===0)return t();var s=o[0];if(o.length===1)return t(s);var c=o.length-1,f=o[c];return s&&(s=i(s,u)),f&&(br(f)||da(f)?f=i(f,u):f=fl(f,l,u)),t(s,n(f,c))}a.rawArgs=!0;function i(o,l){return o.compile().evaluate(l)}return a},{isTransformFunction:!0}),Ek="index",Dk=["Index","getMatrixDataType"],Sk=P(Ek,Dk,e=>{var{Index:r,getMatrixDataType:t}=e;return function(){for(var a=[],i=0,o=arguments.length;i<o;i++){var l=arguments[i];if(Yi(l))l.start--,l.end-=l.step>0?0:2;else if(l&&l.isSet===!0)l=l.map(function(s){return s-1});else if(Xe(l)||_e(l))t(l)!=="boolean"&&(l=l.map(function(s){return s-1}));else if(Re(l))l--;else if(Ie(l))l=l.toNumber()-1;else if(typeof l!="string")throw new TypeError("Dimension must be an Array, Matrix, number, string, or Range");a[i]=l}var u=new r;return r.apply(u,a),u}},{isTransformFunction:!0}),Ck="map",Mk=["typed"],_k=P(Ck,Mk,e=>{var{typed:r}=e,t=Lv({typed:r}),n=dl({typed:r});function a(i,o,l){if(i.length===0)return t();if(i.length===1)return t(i[0]);var u=i.length-1,s=i.slice(0,u),c=i[u];return s=s.map(d=>f(d,l)),c&&(br(c)||da(c)?c=f(c,l):c=fl(c,o,l)),t(...s,n(c,u));function f(d,p){return d.compile().evaluate(p)}}return a.rawArgs=!0,a},{isTransformFunction:!0});function Tk(e){return Re(e)?e-1:Ie(e)?e.minus(1):e}function Fk(e){return Re(e)||Ie(e)}function Nn(e){if(e.length===2&&Xr(e[0])){e=e.slice();var r=e[1];Fk(r)&&(e[1]=Tk(r))}return e}var Bk="max",Ok=["typed","config","numeric","larger"],$k=P(Bk,Ok,e=>{var{typed:r,config:t,numeric:n,larger:a}=e,i=Wh({typed:r,config:t,numeric:n,larger:a});return r("max",{"...any":function(l){l=Nn(l);try{return i.apply(null,l)}catch(u){throw Lr(u)}}})},{isTransformFunction:!0}),Ik="mean",Rk=["typed","add","divide"],zk=P(Ik,Rk,e=>{var{typed:r,add:t,divide:n}=e,a=bg({typed:r,add:t,divide:n});return r("mean",{"...any":function(o){o=Nn(o);try{return a.apply(null,o)}catch(l){throw Lr(l)}}})},{isTransformFunction:!0}),Pk="min",kk=["typed","config","numeric","smaller"],qk=P(Pk,kk,e=>{var{typed:r,config:t,numeric:n,smaller:a}=e,i=Kh({typed:r,config:t,numeric:n,smaller:a});return r("min",{"...any":function(l){l=Nn(l);try{return i.apply(null,l)}catch(u){throw Lr(u)}}})},{isTransformFunction:!0}),Lk="range",Vk=["typed","config","?matrix","?bignumber","smaller","smallerEq","larger","largerEq","add","isPositive"],Uk=P(Lk,Vk,e=>{var{typed:r,config:t,matrix:n,bignumber:a,smaller:i,smallerEq:o,larger:l,largerEq:u,add:s,isPositive:c}=e,f=Wv({typed:r,config:t,matrix:n,bignumber:a,smaller:i,smallerEq:o,larger:l,largerEq:u,add:s,isPositive:c});return r("range",{"...any":function(p){var v=p.length-1,h=p[v];return typeof h!="boolean"&&p.push(!0),f.apply(null,p)}})},{isTransformFunction:!0}),Hk="row",Zk=["typed","Index","matrix","range"],Gk=P(Hk,Zk,e=>{var{typed:r,Index:t,matrix:n,range:a}=e,i=Xv({typed:r,Index:t,matrix:n,range:a});return r("row",{"...any":function(l){var u=l.length-1,s=l[u];Re(s)&&(l[u]=s-1);try{return i.apply(null,l)}catch(c){throw Lr(c)}}})},{isTransformFunction:!0}),Wk="subset",jk=["typed","matrix","zeros","add"],Kk=P(Wk,jk,e=>{var{typed:r,matrix:t,zeros:n,add:a}=e,i=th({typed:r,matrix:t,zeros:n,add:a});return r("subset",{"...any":function(l){try{return i.apply(null,l)}catch(u){throw Lr(u)}}})},{isTransformFunction:!0}),Jk="concat",Yk=["typed","matrix","isInteger"],Xk=P(Jk,Yk,e=>{var{typed:r,matrix:t,isInteger:n}=e,a=Mv({typed:r,matrix:t,isInteger:n});return r("concat",{"...any":function(o){var l=o.length-1,u=o[l];Re(u)?o[l]=u-1:Ie(u)&&(o[l]=u.minus(1));try{return a.apply(null,o)}catch(s){throw Lr(s)}}})},{isTransformFunction:!0}),oy="diff",Qk=["typed","matrix","subtract","number","bignumber"],eq=P(oy,Qk,e=>{var{typed:r,matrix:t,subtract:n,number:a,bignumber:i}=e,o=Uv({typed:r,matrix:t,subtract:n,number:a,bignumber:i});return r(oy,{"...any":function(u){u=Nn(u);try{return o.apply(null,u)}catch(s){throw Lr(s)}}})},{isTransformFunction:!0}),rq="std",tq=["typed","map","sqrt","variance"],nq=P(rq,tq,e=>{var{typed:r,map:t,sqrt:n,variance:a}=e,i=Cg({typed:r,map:t,sqrt:n,variance:a});return r("std",{"...any":function(l){l=Nn(l);try{return i.apply(null,l)}catch(u){throw Lr(u)}}})},{isTransformFunction:!0}),sy="sum",aq=["typed","config","add","numeric"],iq=P(sy,aq,e=>{var{typed:r,config:t,add:n,numeric:a}=e,i=hg({typed:r,config:t,add:n,numeric:a});return r(sy,{"...any":function(l){l=Nn(l);try{return i.apply(null,l)}catch(u){throw Lr(u)}}})},{isTransformFunction:!0}),oq="quantileSeq",sq=["typed","bignumber","add","subtract","divide","multiply","partitionSelect","compare","isInteger","smaller","smallerEq","larger"],uq=P(oq,sq,e=>{var{typed:r,bignumber:t,add:n,subtract:a,divide:i,multiply:o,partitionSelect:l,compare:u,isInteger:s,smaller:c,smallerEq:f,larger:d}=e,p=Dg({typed:r,bignumber:t,add:n,subtract:a,divide:i,multiply:o,partitionSelect:l,compare:u,isInteger:s,smaller:c,smallerEq:f,larger:d});return r("quantileSeq",{"Array | Matrix, number | BigNumber":p,"Array | Matrix, number | BigNumber, number":(h,w,b)=>p(h,w,v(b)),"Array | Matrix, number | BigNumber, boolean":p,"Array | Matrix, number | BigNumber, boolean, number":(h,w,b,A)=>p(h,w,b,v(A)),"Array | Matrix, Array | Matrix":p,"Array | Matrix, Array | Matrix, number":(h,w,b)=>p(h,w,v(b)),"Array | Matrix, Array | Matrix, boolean":p,"Array | Matrix, Array | Matrix, boolean, number":(h,w,b,A)=>p(h,w,b,v(A))});function v(h){return Nn([[],h])[1]}},{isTransformFunction:!0}),uy="cumsum",lq=["typed","add","unaryPlus"],cq=P(uy,lq,e=>{var{typed:r,add:t,unaryPlus:n}=e,a=gg({typed:r,add:t,unaryPlus:n});return r(uy,{"...any":function(o){if(o.length===2&&Xr(o[0])){var l=o[1];Re(l)?o[1]=l-1:Ie(l)&&(o[1]=l.minus(1))}try{return a.apply(null,o)}catch(u){throw Lr(u)}}})},{isTransformFunction:!0}),ly="variance",fq=["typed","add","subtract","multiply","divide","apply","isNaN"],dq=P(ly,fq,e=>{var{typed:r,add:t,subtract:n,multiply:a,divide:i,apply:o,isNaN:l}=e,u=Ag({typed:r,add:t,subtract:n,multiply:a,divide:i,apply:o,isNaN:l});return r(ly,{"...any":function(c){c=Nn(c);try{return u.apply(null,c)}catch(f){throw Lr(f)}}})},{isTransformFunction:!0}),cy="print",mq=["typed","matrix","zeros","add"],pq=P(cy,mq,e=>{var{typed:r,matrix:t,zeros:n,add:a}=e,i=bh({typed:r,matrix:t,zeros:n,add:a});return r(cy,{"string, Object | Array":function(u,s){return i(o(u),s)},"string, Object | Array, number | Object":function(u,s,c){return i(o(u),s,c)}});function o(l){return l.replace(gh,u=>{var s=u.slice(1).split("."),c=s.map(function(f){return!isNaN(f)&&f.length>0?parseInt(f)-1:f});return"$"+c.join(".")})}},{isTransformFunction:!0}),vq="and",hq=["typed","matrix","zeros","add","equalScalar","not","concat"],gq=P(vq,hq,e=>{var{typed:r,matrix:t,equalScalar:n,zeros:a,not:i,concat:o}=e,l=kh({typed:r,matrix:t,equalScalar:n,zeros:a,not:i,concat:o});function u(s,c,f){var d=s[0].compile().evaluate(f);if(!Xr(d)&&!l(d,!0))return!1;var p=s[1].compile().evaluate(f);return l(d,p)}return u.rawArgs=!0,u},{isTransformFunction:!0}),yq="or",bq=["typed","matrix","equalScalar","DenseMatrix","concat"],wq=P(yq,bq,e=>{var{typed:r,matrix:t,equalScalar:n,DenseMatrix:a,concat:i}=e,o=Dv({typed:r,matrix:t,equalScalar:n,DenseMatrix:a,concat:i});function l(u,s,c){var f=u[0].compile().evaluate(c);if(!Xr(f)&&o(f,!1))return!0;var d=u[1].compile().evaluate(c);return o(f,d)}return l.rawArgs=!0,l},{isTransformFunction:!0}),xq="bitAnd",Nq=["typed","matrix","zeros","add","equalScalar","not","concat"],Aq=P(xq,Nq,e=>{var{typed:r,matrix:t,equalScalar:n,zeros:a,not:i,concat:o}=e,l=pv({typed:r,matrix:t,equalScalar:n,zeros:a,not:i,concat:o});function u(s,c,f){var d=s[0].compile().evaluate(f);if(!Xr(d)){if(isNaN(d))return NaN;if(d===0||d===!1)return 0}var p=s[1].compile().evaluate(f);return l(d,p)}return u.rawArgs=!0,u},{isTransformFunction:!0}),Eq="bitOr",Dq=["typed","matrix","equalScalar","DenseMatrix","concat"],Sq=P(Eq,Dq,e=>{var{typed:r,matrix:t,equalScalar:n,DenseMatrix:a,concat:i}=e,o=gv({typed:r,matrix:t,equalScalar:n,DenseMatrix:a,concat:i});function l(u,s,c){var f=u[0].compile().evaluate(c);if(!Xr(f)){if(isNaN(f))return NaN;if(f===-1)return-1;if(f===!0)return 1}var d=u[1].compile().evaluate(c);return o(f,d)}return l.rawArgs=!0,l},{isTransformFunction:!0}),fy=Object.freeze(Object.defineProperty({__proto__:null,createAbs:E_,createAccessorNode:M5,createAcos:W4,createAcosh:K4,createAcot:Y4,createAcoth:Q4,createAcsc:rO,createAcsch:nO,createAdd:d5,createAddScalar:M_,createAnd:kh,createAndTransform:gq,createApply:Ru,createApplyTransform:dk,createArg:mT,createArrayNode:T5,createAsec:iO,createAsech:sO,createAsin:lO,createAsinh:dO,createAssignmentNode:$5,createAtan:vO,createAtan2:gO,createAtanh:bO,createAtomicMass:U7,createAvogadro:H7,createBellNumbers:dP,createBigNumberClass:MC,createBigint:KM,createBignumber:t_,createBin:GF,createBitAnd:pv,createBitAndTransform:Aq,createBitNot:oT,createBitOr:gv,createBitOrTransform:Sq,createBitXor:fT,createBlockNode:R5,createBohrMagneton:A7,createBohrRadius:_7,createBoltzmann:Z7,createBoolean:QM,createCatalan:pP,createCbrt:B_,createCeil:L_,createChain:zR,createChainClass:o6,createClassicalElectronRadius:T7,createClone:cM,createColumn:Tv,createColumnTransform:vk,createCombinations:Sz,createCombinationsWithRep:Mz,createCompare:kB,createCompareNatural:UB,createCompareText:GB,createCompile:v8,createComplex:i_,createComplexClass:OC,createComposition:hP,createConcat:Mv,createConcatTransform:Xk,createConditionalNode:P5,createConductanceQuantum:E7,createConj:vT,createConstantNode:G5,createCorr:Ez,createCos:xO,createCosh:AO,createCot:DO,createCoth:CO,createCoulomb:x7,createCount:MT,createCreateUnit:Z4,createCross:TT,createCsc:_O,createCsch:FO,createCtranspose:yF,createCube:U_,createCumSum:gg,createCumSumTransform:cq,createDeepEqual:f4,createDenseMatrixClass:uM,createDerivative:IP,createDet:kR,createDeuteronMass:R7,createDiag:BT,createDiff:Uv,createDiffTransform:eq,createDistance:lz,createDivide:sz,createDivideScalar:oB,createDot:y5,createDotDivide:wB,createDotMultiply:X3,createDotPow:yB,createE:t7,createEfimovFactor:V7,createEigs:jR,createElectricConstant:b7,createElectronMass:F7,createElementaryCharge:N7,createEqual:jB,createEqualScalar:PM,createEqualText:YB,createErf:OF,createEvaluate:g8,createExp:Z_,createExpm:JR,createExpm1:W_,createFactorial:$z,createFalse:JP,createFaraday:G7,createFermiCoupling:B7,createFft:NF,createFibonacciHeapClass:_4,createFilter:$v,createFilterTransform:wk,createFineStructure:O7,createFirstRadiation:W7,createFix:J_,createFlatten:RT,createFloor:Jp,createForEach:zv,createForEachTransform:Ak,createFormat:HF,createFraction:u_,createFractionClass:LC,createFreqz:LP,createFunctionAssignmentNode:j5,createFunctionNode:f8,createGamma:Tz,createGasConstant:K7,createGcd:w3,createGetMatrixDataType:qT,createGravitationConstant:v7,createGravity:ak,createHartreeEnergy:$7,createHasNumericValue:CM,createHelp:IR,createHelpClass:n6,createHex:JF,createHypot:p5,createI:c7,createIdentity:VT,createIfft:EF,createIm:gT,createImmutableDenseMatrixClass:A4,createIndex:A5,createIndexClass:S4,createIndexNode:J5,createIndexTransform:Sk,createInfinity:XP,createIntersect:dz,createInv:LR,createInverseConductanceQuantum:D7,createInvmod:j3,createIsInteger:dM,createIsNaN:OM,createIsNegative:AM,createIsNumeric:DM,createIsPositive:_M,createIsPrime:rB,createIsZero:FM,createKldivergence:Rz,createKlitzing:M7,createKron:HT,createLN10:i7,createLN2:a7,createLOG10E:s7,createLOG2E:o7,createLarger:i4,createLargerEq:u4,createLcm:E3,createLeafCount:yP,createLeftShift:BB,createLgamma:Bz,createLog:dB,createLog10:S3,createLog1p:pB,createLog2:M3,createLoschmidt:j7,createLsolve:NB,createLsolveAll:SB,createLup:E8,createLusolve:X8,createLyap:az,createMad:bz,createMagneticConstant:y7,createMagneticFluxQuantum:S7,createMap:Lv,createMapTransform:_k,createMatrix:c_,createMatrixClass:WC,createMatrixFromColumns:h_,createMatrixFromFunction:d_,createMatrixFromRows:p_,createMax:Wh,createMaxTransform:$k,createMean:bg,createMeanTransform:zk,createMedian:gz,createMin:Kh,createMinTransform:qk,createMod:Xp,createMode:qF,createMolarMass:tk,createMolarMassC12:nk,createMolarPlanckConstant:J7,createMolarVolume:Y7,createMultinomial:Pz,createMultiply:O3,createMultiplyScalar:F3,createNaN:QP,createNeutronMass:z7,createNode:S5,createNorm:h5,createNot:xT,createNthRoot:I3,createNthRoots:hB,createNuclearMagneton:C7,createNull:YP,createNumber:GM,createNumeric:aB,createObjectNode:X5,createOct:jF,createOnes:KT,createOperatorNode:e8,createOr:Dv,createOrTransform:wq,createParenthesisNode:t8,createParse:m8,createParser:N8,createParserClass:w8,createPartitionSelect:h4,createPermutations:qz,createPhi:n7,createPi:e7,createPickRandom:aP,createPinv:UR,createPlanckCharge:uk,createPlanckConstant:h7,createPlanckLength:ik,createPlanckMass:ok,createPlanckTemperature:lk,createPlanckTime:sk,createPolynomialRoot:e6,createPow:uB,createPrint:bh,createPrintTransform:pq,createProd:VF,createProtonMass:I7,createQr:S8,createQuantileSeq:Dg,createQuantileSeqTransform:uq,createQuantumOfCirculation:P7,createRandom:oP,createRandomInt:uP,createRange:Wv,createRangeClass:HC,createRangeNode:a8,createRangeTransform:Uk,createRationalize:zP,createRe:bT,createReducedPlanckConstant:g7,createRelationalNode:o8,createReplacer:WP,createReshape:XT,createResize:rF,createResolve:FP,createResultSet:BS,createReviver:HP,createRightArithShift:$B,createRightLogShift:RB,createRotate:nF,createRotationMatrix:iF,createRound:cB,createRow:Xv,createRowTransform:Gk,createRydberg:k7,createSQRT1_2:u7,createSQRT2:l7,createSackurTetrode:X7,createSchur:tz,createSec:OO,createSech:IO,createSecondRadiation:Q7,createSetCartesian:GO,createSetDifference:jO,createSetDistinct:JO,createSetIntersect:XO,createSetIsSubset:e5,createSetMultiplicity:t5,createSetPowerset:a5,createSetSize:o5,createSetSymDifference:u5,createSetUnion:c5,createSign:z3,createSimplify:AP,createSimplifyConstant:SP,createSimplifyCore:MP,createSin:zO,createSinh:kO,createSize:uF,createSlu:J8,createSmaller:QB,createSmallerEq:t4,createSolveODE:TF,createSort:y4,createSpaClass:B4,createSparse:U4,createSparseMatrixClass:LM,createSpeedOfLight:p7,createSplitUnit:y_,createSqrt:q3,createSqrtm:XR,createSquare:V3,createSqueeze:cF,createStd:Cg,createStdTransform:nq,createStefanBoltzmann:ek,createStirlingS2:cP,createString:YM,createSubset:th,createSubsetTransform:Kk,createSubtract:H3,createSubtractScalar:T_,createSum:hg,createSumTransform:iq,createSylvester:ez,createSymbolNode:l8,createSymbolicEqual:OP,createTan:LO,createTanh:HO,createTau:r7,createThomsonCrossSection:q7,createTo:QF,createTrace:x5,createTranspose:hF,createTrue:KP,createTypeOf:IM,createTyped:MS,createUnaryMinus:w_,createUnaryPlus:N_,createUnequal:m4,createUnitClass:k4,createUnitFunction:L4,createUppercaseE:d7,createUppercasePi:f7,createUsolve:EB,createUsolveAll:MB,createVacuumImpedance:w7,createVariance:Ag,createVarianceTransform:dq,createVersion:m7,createWeakMixingAngle:L7,createWienDisplacement:rk,createXgcd:G3,createXor:ET,createZeros:wF,createZeta:PF,createZpk2tf:kP},Symbol.toStringTag,{value:"Module"})),ml={exports:{}};function pl(){}pl.prototype={on:function(e,r,t){var n=this.e||(this.e={});return(n[e]||(n[e]=[])).push({fn:r,ctx:t}),this},once:function(e,r,t){var n=this;function a(){n.off(e,a),r.apply(t,arguments)}return a._=r,this.on(e,a,t)},emit:function(e){var r=[].slice.call(arguments,1),t=((this.e||(this.e={}))[e]||[]).slice(),n=0,a=t.length;for(n;n<a;n++)t[n].fn.apply(t[n].ctx,r);return this},off:function(e,r){var t=this.e||(this.e={}),n=t[e],a=[];if(n&&r)for(var i=0,o=n.length;i<o;i++)n[i].fn!==r&&n[i].fn._!==r&&a.push(n[i]);return a.length?t[e]=a:delete t[e],this}},ml.exports=pl,ml.exports.TinyEmitter=pl;var Cq=ml.exports;const Mq=Zi(Cq);function _q(e){var r=new Mq;return e.on=r.on.bind(r),e.off=r.off.bind(r),e.once=r.once.bind(r),e.emit=r.emit.bind(r),e}function Tq(e,r,t,n){function a(w,b){var A=arguments.length;if(A!==1&&A!==2)throw new Xt("import",A,1,2);b||(b={});function g(D,S,E){if(Array.isArray(S))S.forEach(F=>g(D,F));else if(typeof S=="object")for(var C in S)De(S,C)&&g(D,S[C],C);else if(ei(S)||E!==void 0){var _=ei(S)?v(S)?S.fn+".transform":S.fn:E;if(De(D,_)&&D[_]!==S&&!b.silent)throw new Error('Cannot import "'+_+'" twice');D[_]=S}else if(!b.silent)throw new TypeError("Factory, Object, or Array expected")}var N={};g(N,w);for(var x in N)if(De(N,x)){var y=N[x];if(ei(y))s(y,b);else if(c(y))i(x,y,b);else if(!b.silent)throw new TypeError("Factory, Object, or Array expected")}}function i(w,b,A){if(A.wrap&&typeof b=="function"&&(b=u(b)),f(b)&&(b=e(w,{[b.signature]:b})),e.isTypedFunction(t[w])&&e.isTypedFunction(b)){A.override?b=e(w,b.signatures):b=e(t[w],b),t[w]=b,delete n[w],o(w,b),t.emit("import",w,function(){return b});return}if(t[w]===void 0||A.override){t[w]=b,delete n[w],o(w,b),t.emit("import",w,function(){return b});return}if(!A.silent)throw new Error('Cannot import "'+w+'": already exists')}function o(w,b){b&&typeof b.transform=="function"?(t.expression.transform[w]=b.transform,d(w)&&(t.expression.mathWithTransform[w]=b.transform)):(delete t.expression.transform[w],d(w)&&(t.expression.mathWithTransform[w]=b))}function l(w){delete t.expression.transform[w],d(w)?t.expression.mathWithTransform[w]=t[w]:delete t.expression.mathWithTransform[w]}function u(w){var b=function(){for(var g=[],N=0,x=arguments.length;N<x;N++){var y=arguments[N];g[N]=y&&y.valueOf()}return w.apply(t,g)};return w.transform&&(b.transform=w.transform),b}function s(w,b){var A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:w.fn;if(A.includes("."))throw new Error("Factory name should not contain a nested path. Name: "+JSON.stringify(A));var g=v(w)?t.expression.transform:t,N=A in t.expression.transform,x=De(g,A)?g[A]:void 0,y=function(){var S={};w.dependencies.map(Hd).forEach(C=>{if(C.includes("."))throw new Error("Factory dependency should not contain a nested path. Name: "+JSON.stringify(C));C==="math"?S.math=t:C==="mathWithTransform"?S.mathWithTransform=t.expression.mathWithTransform:C==="classes"?S.classes=t:S[C]=t[C]});var E=w(S);if(E&&typeof E.transform=="function")throw new Error('Transforms cannot be attached to factory functions. Please create a separate function for it with export const path = "expression.transform"');if(x===void 0||b.override)return E;if(e.isTypedFunction(x)&&e.isTypedFunction(E))return e(x,E);if(b.silent)return x;throw new Error('Cannot import "'+A+'": already exists')};!w.meta||w.meta.lazy!==!1?(Xi(g,A,y),x&&N?l(A):(v(w)||p(w))&&Xi(t.expression.mathWithTransform,A,()=>g[A])):(g[A]=y(),x&&N?l(A):(v(w)||p(w))&&Xi(t.expression.mathWithTransform,A,()=>g[A])),n[A]=w,t.emit("import",A,y)}function c(w){return typeof w=="function"||typeof w=="number"||typeof w=="string"||typeof w=="boolean"||w===null||Gr(w)||gt(w)||Ie(w)||zn(w)||_e(w)||Array.isArray(w)}function f(w){return typeof w=="function"&&typeof w.signature=="string"}function d(w){return!De(h,w)}function p(w){return!w.fn.includes(".")&&!De(h,w.fn)&&(!w.meta||!w.meta.isClass)}function v(w){return w!==void 0&&w.meta!==void 0&&w.meta.isTransformFunction===!0||!1}var h={expression:!0,type:!0,docs:!0,error:!0,json:!0,chain:!0};return a}function vl(e,r){var t=Br({},bd,r);if(typeof Object.create!="function")throw new Error("ES5 not supported by this JavaScript engine. Please load the es5-shim and es5-sham library for compatibility.");var n=_q({isNumber:Re,isComplex:gt,isBigNumber:Ie,isBigInt:Nd,isFraction:zn,isUnit:Gr,isString:Cr,isArray:Xe,isMatrix:_e,isCollection:Xr,isDenseMatrix:Ja,isSparseMatrix:cn,isRange:Yi,isIndex:Ya,isBoolean:Ad,isResultSet:Ed,isHelp:cu,isFunction:Dd,isDate:Sd,isRegExp:Cd,isObject:fa,isMap:Pn,isPartitionedMap:tS,isObjectWrappingMap:nS,isNull:Md,isUndefined:_d,isAccessorNode:fn,isArrayNode:Qr,isAssignmentNode:Td,isBlockNode:Fd,isConditionalNode:Bd,isConstantNode:Ze,isFunctionAssignmentNode:da,isFunctionNode:Gt,isIndexNode:kn,isNode:Qe,isObjectNode:Xa,isOperatorNode:pr,isParenthesisNode:_t,isRangeNode:Od,isRelationalNode:$d,isSymbolNode:br,isChain:du});n.config=uS(t,n.emit),n.expression={transform:{},mathWithTransform:{config:n.config}};var a=[],i=[];function o(c){if(ei(c))return c(n);var f=c[Object.keys(c)[0]];if(ei(f))return f(n);if(!oS(c))throw console.warn("Factory object with properties `type`, `name`, and `factory` expected",c),new Error("Factory object with properties `type`, `name`, and `factory` expected");var d=a.indexOf(c),p;return d===-1?(c.math===!0?p=c.factory(n.type,t,o,n.typed,n):p=c.factory(n.type,t,o,n.typed),a.push(c),i.push(p)):p=i[d],p}var l={};function u(){for(var c=arguments.length,f=new Array(c),d=0;d<c;d++)f[d]=arguments[d];return n.typed.apply(n.typed,f)}u.isTypedFunction=Qa.isTypedFunction;var s=Tq(u,o,n,l);return n.import=s,n.on("config",()=>{Object.values(l).forEach(c=>{c&&c.meta&&c.meta.recreateOnConfigChange&&s(c,{override:!0})})}),n.create=vl.bind(null,e),n.factory=P,n.import(Object.values(iS(e))),n.ArgumentsError=Xt,n.DimensionError=qe,n.IndexError=ft,n}const Fq=vl(fy,{}),dy="simcore/services/comp/opencor";function hl(e,r){let t=-1;const n=new Fq.parser;return e.simulationUiInfo.input.forEach(a=>{++t,n.set(a.id,e.$refs.simInput[t].vModel)}),n.evaluate(r)}function my(e){e.$nextTick(()=>{let r=-1;e.simulationUiInfo.input.forEach(t=>{++r,e.$refs.simInput[r].visible=t.visible===void 0?!0:hl(e,t.visible)}),e.libopencor!==void 0&&(e.userMessage="Running the model...",e.showUserMessage=!0,e.$nextTick(()=>{e.runSimulation()}))})}function py(e){if(!e.hasFinalisedUi&&e.isMounted&&e.hasValidSimulationUiInfo){e.$refs.output.classList.add("x"+e.simulationUiInfo.output.plots.length);let r=-1;e.simulationUiInfo.output.plots.forEach(()=>{e.simulationResults[++r]=[{x:[],y:[],type:"scatter"}]}),my(e),e.hasFinalisedUi=!0}}const vy=(e,r)=>{const t=e.__vccOpts||e;for(const[n,a]of r)t[n]=a;return t},Bq={name:"SimulationVuerInput",components:{ElInputNumber:au,ElOption:md,ElSelect:dd,ElSlider:hd},props:{defaultValue:{required:!0,type:Number},maximumValue:{type:Number},minimumValue:{type:Number},name:{required:!0,type:String},possibleValues:{type:Array},stepValue:{type:Number}},data:function(){return{isDiscrete:this.possibleValues!==void 0,labelClasses:"default "+(this.possibleValues!==void 0?"discrete":"scalar"),visible:!0,vModel:this.defaultValue}},methods:{updateUi:function(){my(this.$parent)}}},Oq={key:1,class:"sliders-and-fields"};function $q(e,r,t,n,a,i){const o=md,l=dd,u=hd,s=au;return m.withDirectives((m.openBlock(),m.createElementBlock("div",null,[m.createElementVNode("p",{class:m.normalizeClass(e.labelClasses)},m.toDisplayString(t.name),3),e.isDiscrete?(m.openBlock(),m.createBlock(l,{key:0,class:"discrete","popper-class":"discrete-popper",size:"small",modelValue:e.vModel,"onUpdate:modelValue":r[0]||(r[0]=c=>e.vModel=c),teleported:!0,onChange:r[1]||(r[1]=c=>i.updateUi())},{default:m.withCtx(()=>[(m.openBlock(!0),m.createElementBlock(m.Fragment,null,m.renderList(t.possibleValues,c=>(m.openBlock(),m.createBlock(o,{key:c.value,label:c.name,value:c.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])):m.createCommentVNode("",!0),e.isDiscrete?m.createCommentVNode("",!0):(m.openBlock(),m.createElementBlock("div",Oq,[m.createVNode(u,{modelValue:e.vModel,"onUpdate:modelValue":r[2]||(r[2]=c=>e.vModel=c),max:t.maximumValue,min:t.minimumValue,"show-input":!1,"show-tooltip":!1,step:t.stepValue,onInput:r[3]||(r[3]=c=>i.updateUi())},null,8,["modelValue","max","min","step"]),m.createVNode(s,{class:"scalar",size:"small",modelValue:e.vModel,"onUpdate:modelValue":r[4]||(r[4]=c=>e.vModel=c),controls:!1,max:t.maximumValue,min:t.minimumValue,step:t.stepValue,"step-strictly":!0,onInput:r[5]||(r[5]=c=>i.updateUi())},null,8,["modelValue","max","min","step"])]))],512)),[[m.vShow,e.visible]])}const hy=vy(Bq,[["render",$q],["__scopeId","data-v-8eac02a6"]]);var vr={},gl=vr.ValidationError=function(r,t,n,a,i,o){if(Array.isArray(a)?(this.path=a,this.property=a.reduce(function(u,s){return u+yy(s)},"instance")):a!==void 0&&(this.property=a),r&&(this.message=r),n){var l=n.$id||n.id;this.schema=l||n}t!==void 0&&(this.instance=t),this.name=i,this.argument=o,this.stack=this.toString()};gl.prototype.toString=function(){return this.property+" "+this.message};var Xo=vr.ValidatorResult=function(r,t,n,a){this.instance=r,this.schema=t,this.options=n,this.path=a.path,this.propertyPath=a.propertyPath,this.errors=[],this.throwError=n&&n.throwError,this.throwFirst=n&&n.throwFirst,this.throwAll=n&&n.throwAll,this.disableFormat=n&&n.disableFormat===!0};Xo.prototype.addError=function(r){var t;if(typeof r=="string")t=new gl(r,this.instance,this.schema,this.path);else{if(!r)throw new Error("Missing error detail");if(!r.message)throw new Error("Missing error message");if(!r.name)throw new Error("Missing validator type");t=new gl(r.message,this.instance,this.schema,this.path,r.name,r.argument)}if(this.errors.push(t),this.throwFirst)throw new Gn(this);if(this.throwError)throw t;return t},Xo.prototype.importErrors=function(r){typeof r=="string"||r&&r.validatorType?this.addError(r):r&&r.errors&&(this.errors=this.errors.concat(r.errors))};function Iq(e,r){return r+": "+e.toString()+`
|
|
78
|
+
In case of a (multi dimensional) array or matrix, the prob order quantile of all elements will be calculated.`,examples:["quantileSeq([3, -1, 5, 7], 0.5)","quantileSeq([3, -1, 5, 7], [1/3, 2/3])","quantileSeq([3, -1, 5, 7], 2)","quantileSeq([-1, 3, 5, 7], 0.5, true)"],seealso:["mean","median","min","max","prod","std","sum","variance"]},kI={name:"std",category:"Statistics",syntax:["std(a, b, c, ...)","std(A)","std(A, dimension)","std(A, normalization)","std(A, dimension, normalization)"],description:'Compute the standard deviation of all values, defined as std(A) = sqrt(variance(A)). Optional parameter normalization can be "unbiased" (default), "uncorrected", or "biased".',examples:["std(2, 4, 6)","std([2, 4, 6, 8])",'std([2, 4, 6, 8], "uncorrected")','std([2, 4, 6, 8], "biased")',"std([1, 2, 3; 4, 5, 6])"],seealso:["max","mean","min","median","prod","sum","variance"]},qI={name:"cumsum",category:"Statistics",syntax:["cumsum(a, b, c, ...)","cumsum(A)"],description:"Compute the cumulative sum of all values.",examples:["cumsum(2, 3, 4, 1)","cumsum([2, 3, 4, 1])","cumsum([1, 2; 3, 4])","cumsum([1, 2; 3, 4], 1)","cumsum([1, 2; 3, 4], 2)"],seealso:["max","mean","median","min","prod","std","sum","variance"]},LI={name:"sum",category:"Statistics",syntax:["sum(a, b, c, ...)","sum(A)","sum(A, dimension)"],description:"Compute the sum of all values.",examples:["sum(2, 3, 4, 1)","sum([2, 3, 4, 1])","sum([2, 5; 4, 3])"],seealso:["max","mean","median","min","prod","std","sum","variance"]},VI={name:"variance",category:"Statistics",syntax:["variance(a, b, c, ...)","variance(A)","variance(A, dimension)","variance(A, normalization)","variance(A, dimension, normalization)"],description:'Compute the variance of all values. Optional parameter normalization can be "unbiased" (default), "uncorrected", or "biased".',examples:["variance(2, 4, 6)","variance([2, 4, 6, 8])",'variance([2, 4, 6, 8], "uncorrected")','variance([2, 4, 6, 8], "biased")',"variance([1, 2, 3; 4, 5, 6])"],seealso:["max","mean","min","median","min","prod","std","sum"]},UI={name:"corr",category:"Statistics",syntax:["corr(A,B)"],description:"Compute the correlation coefficient of a two list with values, For matrices, the matrix correlation coefficient is calculated.",examples:["corr([2, 4, 6, 8],[1, 2, 3, 6])","corr(matrix([[1, 2.2, 3, 4.8, 5], [1, 2, 3, 4, 5]]), matrix([[4, 5.3, 6.6, 7, 8], [1, 2, 3, 4, 5]]))"],seealso:["max","mean","min","median","min","prod","std","sum"]},HI={name:"acos",category:"Trigonometry",syntax:["acos(x)"],description:"Compute the inverse cosine of a value in radians.",examples:["acos(0.5)","acos(cos(2.3))"],seealso:["cos","atan","asin"]},ZI={name:"acosh",category:"Trigonometry",syntax:["acosh(x)"],description:"Calculate the hyperbolic arccos of a value, defined as `acosh(x) = ln(sqrt(x^2 - 1) + x)`.",examples:["acosh(1.5)"],seealso:["cosh","asinh","atanh"]},GI={name:"acot",category:"Trigonometry",syntax:["acot(x)"],description:"Calculate the inverse cotangent of a value.",examples:["acot(0.5)","acot(cot(0.5))","acot(2)"],seealso:["cot","atan"]},WI={name:"acoth",category:"Trigonometry",syntax:["acoth(x)"],description:"Calculate the inverse hyperbolic tangent of a value, defined as `acoth(x) = (ln((x+1)/x) + ln(x/(x-1))) / 2`.",examples:["acoth(2)","acoth(0.5)"],seealso:["acsch","asech"]},jI={name:"acsc",category:"Trigonometry",syntax:["acsc(x)"],description:"Calculate the inverse cotangent of a value.",examples:["acsc(2)","acsc(csc(0.5))","acsc(0.5)"],seealso:["csc","asin","asec"]},KI={name:"acsch",category:"Trigonometry",syntax:["acsch(x)"],description:"Calculate the inverse hyperbolic cosecant of a value, defined as `acsch(x) = ln(1/x + sqrt(1/x^2 + 1))`.",examples:["acsch(0.5)"],seealso:["asech","acoth"]},JI={name:"asec",category:"Trigonometry",syntax:["asec(x)"],description:"Calculate the inverse secant of a value.",examples:["asec(0.5)","asec(sec(0.5))","asec(2)"],seealso:["acos","acot","acsc"]},YI={name:"asech",category:"Trigonometry",syntax:["asech(x)"],description:"Calculate the inverse secant of a value.",examples:["asech(0.5)"],seealso:["acsch","acoth"]},XI={name:"asin",category:"Trigonometry",syntax:["asin(x)"],description:"Compute the inverse sine of a value in radians.",examples:["asin(0.5)","asin(sin(0.5))"],seealso:["sin","acos","atan"]},QI={name:"asinh",category:"Trigonometry",syntax:["asinh(x)"],description:"Calculate the hyperbolic arcsine of a value, defined as `asinh(x) = ln(x + sqrt(x^2 + 1))`.",examples:["asinh(0.5)"],seealso:["acosh","atanh"]},eR={name:"atan",category:"Trigonometry",syntax:["atan(x)"],description:"Compute the inverse tangent of a value in radians.",examples:["atan(0.5)","atan(tan(0.5))"],seealso:["tan","acos","asin"]},rR={name:"atan2",category:"Trigonometry",syntax:["atan2(y, x)"],description:"Computes the principal value of the arc tangent of y/x in radians.",examples:["atan2(2, 2) / pi","angle = 60 deg in rad","x = cos(angle)","y = sin(angle)","atan2(y, x)"],seealso:["sin","cos","tan"]},tR={name:"atanh",category:"Trigonometry",syntax:["atanh(x)"],description:"Calculate the hyperbolic arctangent of a value, defined as `atanh(x) = ln((1 + x)/(1 - x)) / 2`.",examples:["atanh(0.5)"],seealso:["acosh","asinh"]},nR={name:"cos",category:"Trigonometry",syntax:["cos(x)"],description:"Compute the cosine of x in radians.",examples:["cos(2)","cos(pi / 4) ^ 2","cos(180 deg)","cos(60 deg)","sin(0.2)^2 + cos(0.2)^2"],seealso:["acos","sin","tan"]},aR={name:"cosh",category:"Trigonometry",syntax:["cosh(x)"],description:"Compute the hyperbolic cosine of x in radians.",examples:["cosh(0.5)"],seealso:["sinh","tanh","coth"]},iR={name:"cot",category:"Trigonometry",syntax:["cot(x)"],description:"Compute the cotangent of x in radians. Defined as 1/tan(x)",examples:["cot(2)","1 / tan(2)"],seealso:["sec","csc","tan"]},oR={name:"coth",category:"Trigonometry",syntax:["coth(x)"],description:"Compute the hyperbolic cotangent of x in radians.",examples:["coth(2)","1 / tanh(2)"],seealso:["sech","csch","tanh"]},sR={name:"csc",category:"Trigonometry",syntax:["csc(x)"],description:"Compute the cosecant of x in radians. Defined as 1/sin(x)",examples:["csc(2)","1 / sin(2)"],seealso:["sec","cot","sin"]},uR={name:"csch",category:"Trigonometry",syntax:["csch(x)"],description:"Compute the hyperbolic cosecant of x in radians. Defined as 1/sinh(x)",examples:["csch(2)","1 / sinh(2)"],seealso:["sech","coth","sinh"]},lR={name:"sec",category:"Trigonometry",syntax:["sec(x)"],description:"Compute the secant of x in radians. Defined as 1/cos(x)",examples:["sec(2)","1 / cos(2)"],seealso:["cot","csc","cos"]},cR={name:"sech",category:"Trigonometry",syntax:["sech(x)"],description:"Compute the hyperbolic secant of x in radians. Defined as 1/cosh(x)",examples:["sech(2)","1 / cosh(2)"],seealso:["coth","csch","cosh"]},fR={name:"sin",category:"Trigonometry",syntax:["sin(x)"],description:"Compute the sine of x in radians.",examples:["sin(2)","sin(pi / 4) ^ 2","sin(90 deg)","sin(30 deg)","sin(0.2)^2 + cos(0.2)^2"],seealso:["asin","cos","tan"]},dR={name:"sinh",category:"Trigonometry",syntax:["sinh(x)"],description:"Compute the hyperbolic sine of x in radians.",examples:["sinh(0.5)"],seealso:["cosh","tanh"]},mR={name:"tan",category:"Trigonometry",syntax:["tan(x)"],description:"Compute the tangent of x in radians.",examples:["tan(0.5)","sin(0.5) / cos(0.5)","tan(pi / 4)","tan(45 deg)"],seealso:["atan","sin","cos"]},pR={name:"tanh",category:"Trigonometry",syntax:["tanh(x)"],description:"Compute the hyperbolic tangent of x in radians.",examples:["tanh(0.5)","sinh(0.5) / cosh(0.5)"],seealso:["sinh","cosh"]},vR={name:"to",category:"Units",syntax:["x to unit","to(x, unit)"],description:"Change the unit of a value.",examples:["5 inch to cm","3.2kg to g","16 bytes in bits"],seealso:[]},hR={name:"bin",category:"Utils",syntax:["bin(value)"],description:"Format a number as binary",examples:["bin(2)"],seealso:["oct","hex"]},gR={name:"clone",category:"Utils",syntax:["clone(x)"],description:"Clone a variable. Creates a copy of primitive variables, and a deep copy of matrices",examples:["clone(3.5)","clone(2 - 4i)","clone(45 deg)","clone([1, 2; 3, 4])",'clone("hello world")'],seealso:[]},yR={name:"format",category:"Utils",syntax:["format(value)","format(value, precision)"],description:"Format a value of any type as string.",examples:["format(2.3)","format(3 - 4i)","format([])","format(pi, 3)"],seealso:["print"]},bR={name:"hasNumericValue",category:"Utils",syntax:["hasNumericValue(x)"],description:"Test whether a value is an numeric value. In case of a string, true is returned if the string contains a numeric value.",examples:["hasNumericValue(2)",'hasNumericValue("2")','isNumeric("2")',"hasNumericValue(0)","hasNumericValue(bignumber(500))","hasNumericValue(fraction(0.125))","hasNumericValue(2 + 3i)",'hasNumericValue([2.3, "foo", false])'],seealso:["isInteger","isZero","isNegative","isPositive","isNaN","isNumeric"]},wR={name:"hex",category:"Utils",syntax:["hex(value)"],description:"Format a number as hexadecimal",examples:["hex(240)"],seealso:["bin","oct"]},xR={name:"isInteger",category:"Utils",syntax:["isInteger(x)"],description:"Test whether a value is an integer number.",examples:["isInteger(2)","isInteger(3.5)","isInteger([3, 0.5, -2])"],seealso:["isNegative","isNumeric","isPositive","isZero"]},NR={name:"isNaN",category:"Utils",syntax:["isNaN(x)"],description:"Test whether a value is NaN (not a number)",examples:["isNaN(2)","isNaN(0 / 0)","isNaN(NaN)","isNaN(Infinity)"],seealso:["isNegative","isNumeric","isPositive","isZero"]},AR={name:"isNegative",category:"Utils",syntax:["isNegative(x)"],description:"Test whether a value is negative: smaller than zero.",examples:["isNegative(2)","isNegative(0)","isNegative(-4)","isNegative([3, 0.5, -2])"],seealso:["isInteger","isNumeric","isPositive","isZero"]},ER={name:"isNumeric",category:"Utils",syntax:["isNumeric(x)"],description:"Test whether a value is a numeric value. Returns true when the input is a number, BigNumber, Fraction, or boolean.",examples:["isNumeric(2)",'isNumeric("2")','hasNumericValue("2")',"isNumeric(0)","isNumeric(bignumber(500))","isNumeric(fraction(0.125))","isNumeric(2 + 3i)",'isNumeric([2.3, "foo", false])'],seealso:["isInteger","isZero","isNegative","isPositive","isNaN","hasNumericValue"]},DR={name:"isPositive",category:"Utils",syntax:["isPositive(x)"],description:"Test whether a value is positive: larger than zero.",examples:["isPositive(2)","isPositive(0)","isPositive(-4)","isPositive([3, 0.5, -2])"],seealso:["isInteger","isNumeric","isNegative","isZero"]},SR={name:"isPrime",category:"Utils",syntax:["isPrime(x)"],description:"Test whether a value is prime: has no divisors other than itself and one.",examples:["isPrime(3)","isPrime(-2)","isPrime([2, 17, 100])"],seealso:["isInteger","isNumeric","isNegative","isZero"]},CR={name:"isZero",category:"Utils",syntax:["isZero(x)"],description:"Test whether a value is zero.",examples:["isZero(2)","isZero(0)","isZero(-4)","isZero([3, 0, -2, 0])"],seealso:["isInteger","isNumeric","isNegative","isPositive"]},MR={name:"numeric",category:"Utils",syntax:["numeric(x)"],description:"Convert a numeric input to a specific numeric type: number, BigNumber, bigint, or Fraction.",examples:['numeric("4")','numeric("4", "number")','numeric("4", "bigint")','numeric("4", "BigNumber")','numeric("4", "Fraction")','numeric(4, "Fraction")','numeric(fraction(2, 5), "number")'],seealso:["number","bigint","fraction","bignumber","string","format"]},_R={name:"oct",category:"Utils",syntax:["oct(value)"],description:"Format a number as octal",examples:["oct(56)"],seealso:["bin","hex"]},TR={name:"print",category:"Utils",syntax:["print(template, values)","print(template, values, precision)"],description:"Interpolate values into a string template.",examples:['print("Lucy is $age years old", {age: 5})','print("The value of pi is $pi", {pi: pi}, 3)','print("Hello, $user.name!", {user: {name: "John"}})','print("Values: $1, $2, $3", [6, 9, 4])'],seealso:["format"]},FR={name:"typeOf",category:"Utils",syntax:["typeOf(x)"],description:"Get the type of a variable.",examples:["typeOf(3.5)","typeOf(2 - 4i)","typeOf(45 deg)",'typeOf("hello world")'],seealso:["getMatrixDataType"]},BR={name:"solveODE",category:"Numeric",syntax:["solveODE(func, tspan, y0)","solveODE(func, tspan, y0, options)"],description:"Numerical Integration of Ordinary Differential Equations.",examples:["f(t,y) = y","tspan = [0, 4]","solveODE(f, tspan, 1)","solveODE(f, tspan, [1, 2])",'solveODE(f, tspan, 1, { method:"RK23", maxStep:0.1 })'],seealso:["derivative","simplifyCore"]},OR={bignumber:N6,bigint:A6,boolean:E6,complex:D6,createUnit:S6,fraction:C6,index:M6,matrix:_6,number:T6,sparse:F6,splitUnit:B6,string:O6,unit:$6,e:tg,E:tg,false:s6,i:u6,Infinity:l6,LN2:f6,LN10:c6,LOG2E:m6,LOG10E:d6,NaN:p6,null:v6,pi:ng,PI:ng,phi:h6,SQRT1_2:g6,SQRT2:y6,tau:b6,true:w6,version:x6,speedOfLight:{description:"Speed of light in vacuum",examples:["speedOfLight"]},gravitationConstant:{description:"Newtonian constant of gravitation",examples:["gravitationConstant"]},planckConstant:{description:"Planck constant",examples:["planckConstant"]},reducedPlanckConstant:{description:"Reduced Planck constant",examples:["reducedPlanckConstant"]},magneticConstant:{description:"Magnetic constant (vacuum permeability)",examples:["magneticConstant"]},electricConstant:{description:"Electric constant (vacuum permeability)",examples:["electricConstant"]},vacuumImpedance:{description:"Characteristic impedance of vacuum",examples:["vacuumImpedance"]},coulomb:{description:"Coulomb's constant",examples:["coulomb"]},elementaryCharge:{description:"Elementary charge",examples:["elementaryCharge"]},bohrMagneton:{description:"Bohr magneton",examples:["bohrMagneton"]},conductanceQuantum:{description:"Conductance quantum",examples:["conductanceQuantum"]},inverseConductanceQuantum:{description:"Inverse conductance quantum",examples:["inverseConductanceQuantum"]},magneticFluxQuantum:{description:"Magnetic flux quantum",examples:["magneticFluxQuantum"]},nuclearMagneton:{description:"Nuclear magneton",examples:["nuclearMagneton"]},klitzing:{description:"Von Klitzing constant",examples:["klitzing"]},bohrRadius:{description:"Bohr radius",examples:["bohrRadius"]},classicalElectronRadius:{description:"Classical electron radius",examples:["classicalElectronRadius"]},electronMass:{description:"Electron mass",examples:["electronMass"]},fermiCoupling:{description:"Fermi coupling constant",examples:["fermiCoupling"]},fineStructure:{description:"Fine-structure constant",examples:["fineStructure"]},hartreeEnergy:{description:"Hartree energy",examples:["hartreeEnergy"]},protonMass:{description:"Proton mass",examples:["protonMass"]},deuteronMass:{description:"Deuteron Mass",examples:["deuteronMass"]},neutronMass:{description:"Neutron mass",examples:["neutronMass"]},quantumOfCirculation:{description:"Quantum of circulation",examples:["quantumOfCirculation"]},rydberg:{description:"Rydberg constant",examples:["rydberg"]},thomsonCrossSection:{description:"Thomson cross section",examples:["thomsonCrossSection"]},weakMixingAngle:{description:"Weak mixing angle",examples:["weakMixingAngle"]},efimovFactor:{description:"Efimov factor",examples:["efimovFactor"]},atomicMass:{description:"Atomic mass constant",examples:["atomicMass"]},avogadro:{description:"Avogadro's number",examples:["avogadro"]},boltzmann:{description:"Boltzmann constant",examples:["boltzmann"]},faraday:{description:"Faraday constant",examples:["faraday"]},firstRadiation:{description:"First radiation constant",examples:["firstRadiation"]},loschmidt:{description:"Loschmidt constant at T=273.15 K and p=101.325 kPa",examples:["loschmidt"]},gasConstant:{description:"Gas constant",examples:["gasConstant"]},molarPlanckConstant:{description:"Molar Planck constant",examples:["molarPlanckConstant"]},molarVolume:{description:"Molar volume of an ideal gas at T=273.15 K and p=101.325 kPa",examples:["molarVolume"]},sackurTetrode:{description:"Sackur-Tetrode constant at T=1 K and p=101.325 kPa",examples:["sackurTetrode"]},secondRadiation:{description:"Second radiation constant",examples:["secondRadiation"]},stefanBoltzmann:{description:"Stefan-Boltzmann constant",examples:["stefanBoltzmann"]},wienDisplacement:{description:"Wien displacement law constant",examples:["wienDisplacement"]},molarMass:{description:"Molar mass constant",examples:["molarMass"]},molarMassC12:{description:"Molar mass constant of carbon-12",examples:["molarMassC12"]},gravity:{description:"Standard acceleration of gravity (standard acceleration of free-fall on Earth)",examples:["gravity"]},planckLength:{description:"Planck length",examples:["planckLength"]},planckMass:{description:"Planck mass",examples:["planckMass"]},planckTime:{description:"Planck time",examples:["planckTime"]},planckCharge:{description:"Planck charge",examples:["planckCharge"]},planckTemperature:{description:"Planck temperature",examples:["planckTemperature"]},derivative:P6,lsolve:q6,lsolveAll:L6,lup:V6,lusolve:U6,leafCount:k6,polynomialRoot:H6,resolve:W6,simplify:j6,simplifyConstant:K6,simplifyCore:J6,symbolicEqual:X6,rationalize:G6,slu:Y6,usolve:Q6,usolveAll:e$,qr:Z6,abs:r$,add:t$,cbrt:n$,ceil:a$,cube:i$,divide:o$,dotDivide:s$,dotMultiply:u$,dotPow:l$,exp:c$,expm:f$,expm1:d$,fix:m$,floor:p$,gcd:v$,hypot:h$,lcm:y$,log:b$,log2:N$,log1p:x$,log10:w$,mod:A$,multiply:E$,norm:D$,nthRoot:S$,nthRoots:C$,pow:M$,round:_$,sign:T$,sqrt:F$,sqrtm:B$,square:R$,subtract:z$,unaryMinus:P$,unaryPlus:k$,xgcd:q$,invmod:g$,bitAnd:L$,bitNot:V$,bitOr:U$,bitXor:H$,leftShift:Z$,rightArithShift:G$,rightLogShift:W$,bellNumbers:j$,catalan:K$,composition:J$,stirlingS2:Y$,config:I6,import:R6,typed:z6,arg:X$,conj:Q$,re:r9,im:e9,evaluate:t9,help:n9,distance:a9,intersect:i9,and:o9,not:s9,or:u9,xor:l9,concat:f9,count:d9,cross:m9,column:c9,ctranspose:p9,det:v9,diag:h9,diff:g9,dot:y9,getMatrixDataType:A9,identity:E9,filter:w9,flatten:x9,forEach:N9,inv:D9,pinv:S9,eigs:b9,kron:C9,matrixFromFunction:T9,matrixFromRows:F9,matrixFromColumns:_9,map:M9,ones:B9,partitionSelect:O9,range:$9,resize:R9,reshape:I9,rotate:z9,rotationMatrix:P9,row:k9,size:q9,sort:L9,squeeze:V9,subset:U9,trace:H9,transpose:Z9,zeros:G9,fft:W9,ifft:j9,sylvester:O$,schur:$$,lyap:I$,solveODE:BR,combinations:K9,combinationsWithRep:J9,factorial:Y9,gamma:X9,kldivergence:eI,lgamma:Q9,multinomial:rI,permutations:tI,pickRandom:nI,random:aI,randomInt:iI,compare:oI,compareNatural:sI,compareText:uI,deepEqual:lI,equal:cI,equalText:fI,larger:dI,largerEq:mI,smaller:pI,smallerEq:vI,unequal:hI,setCartesian:gI,setDifference:yI,setDistinct:bI,setIntersect:wI,setIsSubset:xI,setMultiplicity:NI,setPowerset:AI,setSize:EI,setSymDifference:DI,setUnion:SI,zpk2tf:CI,freqz:MI,erf:_I,zeta:TI,cumsum:qI,mad:FI,max:BI,mean:OI,median:$I,min:II,mode:RI,prod:zI,quantileSeq:PI,std:kI,sum:LI,variance:VI,corr:UI,acos:HI,acosh:ZI,acot:GI,acoth:WI,acsc:jI,acsch:KI,asec:JI,asech:YI,asin:XI,asinh:QI,atan:eR,atanh:tR,atan2:rR,cos:nR,cosh:aR,cot:iR,coth:oR,csc:sR,csch:uR,sec:lR,sech:cR,sin:fR,sinh:dR,tan:mR,tanh:pR,to:vR,clone:gR,format:yR,bin:hR,oct:_R,hex:wR,isNaN:NR,isInteger:xR,isNegative:AR,isNumeric:ER,hasNumericValue:bR,isPositive:DR,isPrime:SR,isZero:CR,print:TR,typeOf:FR,numeric:MR},ag="help",$R=["typed","mathWithTransform","Help"],IR=P(ag,$R,e=>{var{typed:r,mathWithTransform:t,Help:n}=e;return r(ag,{any:function(i){var o,l=i;if(typeof i!="string"){for(o in t)if(De(t,o)&&i===t[o]){l=o;break}}var u=Pr(OR,l);if(!u){var s=typeof l=="function"?l.name:l;throw new Error('No documentation found on "'+s+'"')}return new n(u)}})}),ig="chain",RR=["typed","Chain"],zR=P(ig,RR,e=>{var{typed:r,Chain:t}=e;return r(ig,{"":function(){return new t},any:function(a){return new t(a)}})}),og="det",PR=["typed","matrix","subtractScalar","multiply","divideScalar","isZero","unaryMinus"],kR=P(og,PR,e=>{var{typed:r,matrix:t,subtractScalar:n,multiply:a,divideScalar:i,isZero:o,unaryMinus:l}=e;return r(og,{any:function(c){return Fe(c)},"Array | Matrix":function(c){var f;switch(_e(c)?f=c.size():Array.isArray(c)?(c=t(c),f=c.size()):f=[],f.length){case 0:return Fe(c);case 1:if(f[0]===1)return Fe(c.valueOf()[0]);if(f[0]===0)return 1;throw new RangeError("Matrix must be square (size: "+Ve(f)+")");case 2:{var d=f[0],p=f[1];if(d===p)return u(c.clone().valueOf(),d);if(p===0)return 1;throw new RangeError("Matrix must be square (size: "+Ve(f)+")")}default:throw new RangeError("Matrix must be two dimensional (size: "+Ve(f)+")")}}});function u(s,c,f){if(c===1)return Fe(s[0][0]);if(c===2)return n(a(s[0][0],s[1][1]),a(s[1][0],s[0][1]));for(var d=!1,p=new Array(c).fill(0).map((D,S)=>S),v=0;v<c;v++){var h=p[v];if(o(s[h][v])){var w=void 0;for(w=v+1;w<c;w++)if(!o(s[p[w]][v])){h=p[w],p[w]=p[v],p[v]=h,d=!d;break}if(w===c)return s[h][v]}for(var b=s[h][v],A=v===0?1:s[p[v-1]][v-1],g=v+1;g<c;g++)for(var N=p[g],x=v+1;x<c;x++)s[N][x]=i(n(a(s[N][x],b),a(s[N][v],s[h][x])),A)}var y=s[p[c-1]][c-1];return d?l(y):y}}),sg="inv",qR=["typed","matrix","divideScalar","addScalar","multiply","unaryMinus","det","identity","abs"],LR=P(sg,qR,e=>{var{typed:r,matrix:t,divideScalar:n,addScalar:a,multiply:i,unaryMinus:o,det:l,identity:u,abs:s}=e;return r(sg,{"Array | Matrix":function(d){var p=_e(d)?d.size():$e(d);switch(p.length){case 1:if(p[0]===1)return _e(d)?t([n(1,d.valueOf()[0])]):[n(1,d[0])];throw new RangeError("Matrix must be square (size: "+Ve(p)+")");case 2:{var v=p[0],h=p[1];if(v===h)return _e(d)?t(c(d.valueOf(),v,h),d.storage()):c(d,v,h);throw new RangeError("Matrix must be square (size: "+Ve(p)+")")}default:throw new RangeError("Matrix must be two dimensional (size: "+Ve(p)+")")}},any:function(d){return n(1,d)}});function c(f,d,p){var v,h,w,b,A;if(d===1){if(b=f[0][0],b===0)throw Error("Cannot calculate inverse, determinant is zero");return[[n(1,b)]]}else if(d===2){var g=l(f);if(g===0)throw Error("Cannot calculate inverse, determinant is zero");return[[n(f[1][1],g),n(o(f[0][1]),g)],[n(o(f[1][0]),g),n(f[0][0],g)]]}else{var N=f.concat();for(v=0;v<d;v++)N[v]=N[v].concat();for(var x=u(d).valueOf(),y=0;y<p;y++){var D=s(N[y][y]),S=y;for(v=y+1;v<d;)s(N[v][y])>D&&(D=s(N[v][y]),S=v),v++;if(D===0)throw Error("Cannot calculate inverse, determinant is zero");v=S,v!==y&&(A=N[y],N[y]=N[v],N[v]=A,A=x[y],x[y]=x[v],x[v]=A);var E=N[y],C=x[y];for(v=0;v<d;v++){var _=N[v],F=x[v];if(v!==y){if(_[y]!==0){for(w=n(o(_[y]),E[y]),h=y;h<p;h++)_[h]=a(_[h],i(w,E[h]));for(h=0;h<p;h++)F[h]=a(F[h],i(w,C[h]))}}else{for(w=E[y],h=y;h<p;h++)_[h]=n(_[h],w);for(h=0;h<p;h++)F[h]=n(F[h],w)}}}return x}}}),ug="pinv",VR=["typed","matrix","inv","deepEqual","equal","dotDivide","dot","ctranspose","divideScalar","multiply","add","Complex"],UR=P(ug,VR,e=>{var{typed:r,matrix:t,inv:n,deepEqual:a,equal:i,dotDivide:o,dot:l,ctranspose:u,divideScalar:s,multiply:c,add:f,Complex:d}=e;return r(ug,{"Array | Matrix":function(g){var N=_e(g)?g.size():$e(g);switch(N.length){case 1:return b(g)?u(g):N[0]===1?n(g):o(u(g),l(g,g));case 2:{if(b(g))return u(g);var x=N[0],y=N[1];if(x===y)try{return n(g)}catch(D){if(!(D instanceof Error&&D.message.match(/Cannot calculate inverse, determinant is zero/)))throw D}return _e(g)?t(p(g.valueOf(),x,y),g.storage()):p(g,x,y)}default:throw new RangeError("Matrix must be two dimensional (size: "+Ve(N)+")")}},any:function(g){return i(g,0)?Fe(g):s(1,g)}});function p(A,g,N){var{C:x,F:y}=h(A,g,N),D=c(n(c(u(x),x)),u(x)),S=c(u(y),n(c(y,u(y))));return c(S,D)}function v(A,g,N){for(var x=Fe(A),y=0,D=0;D<g;D++){if(N<=y)return x;for(var S=D;w(x[S][y]);)if(S++,g===S&&(S=D,y++,N===y))return x;[x[S],x[D]]=[x[D],x[S]];for(var E=x[D][y],C=0;C<N;C++)x[D][C]=o(x[D][C],E);for(var _=0;_<g;_++)if(_!==D){E=x[_][y];for(var F=0;F<N;F++)x[_][F]=f(x[_][F],c(-1,c(E,x[D][F])))}y++}return x}function h(A,g,N){var x=v(A,g,N),y=A.map((S,E)=>S.filter((C,_)=>_<g&&!w(l(x[_],x[_])))),D=x.filter((S,E)=>!w(l(x[E],x[E])));return{C:y,F:D}}function w(A){return i(f(A,d(1,1)),f(0,d(1,1)))}function b(A){return a(f(A,d(1,1)),f(c(A,0),d(1,1)))}});function HR(e){var{addScalar:r,subtract:t,flatten:n,multiply:a,multiplyScalar:i,divideScalar:o,sqrt:l,abs:u,bignumber:s,diag:c,size:f,reshape:d,inv:p,qr:v,usolve:h,usolveAll:w,equal:b,complex:A,larger:g,smaller:N,matrixFromColumns:x,dot:y}=e;function D(U,z,Q,se){var re=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,q=S(U,z,Q,se,re);E(U,z,Q,se,re,q);var{values:Z,C:j}=C(U,z,Q,se,re);if(re){var Y=_(U,z,j,q,Z,Q,se);return{values:Z,eigenvectors:Y}}return{values:Z}}function S(U,z,Q,se,re){var q=se==="BigNumber",Z=se==="Complex",j=q?s(0):0,Y=q?s(1):Z?A(1):1,ee=q?s(1):1,te=q?s(10):2,oe=i(te,te),ve;re&&(ve=Array(z).fill(Y));for(var L=!1;!L;){L=!0;for(var H=0;H<z;H++){for(var ne=j,ie=j,me=0;me<z;me++)H!==me&&(ne=r(ne,u(U[me][H])),ie=r(ie,u(U[H][me])));if(!b(ne,0)&&!b(ie,0)){for(var de=ee,be=ne,Ne=o(ie,te),V=i(ie,te);N(be,Ne);)be=i(be,oe),de=i(de,te);for(;g(be,V);)be=o(be,oe),de=o(de,te);var K=N(o(r(be,ie),de),i(r(ne,ie),.95));if(K){L=!1;for(var G=o(1,de),ae=0;ae<z;ae++)H!==ae&&(U[H][ae]=i(U[H][ae],G),U[ae][H]=i(U[ae][H],de));re&&(ve[H]=i(ve[H],G))}}}}return re?c(ve):null}function E(U,z,Q,se,re,q){var Z=se==="BigNumber",j=se==="Complex",Y=Z?s(0):j?A(0):0;Z&&(Q=s(Q));for(var ee=0;ee<z-2;ee++){for(var te=0,oe=Y,ve=ee+1;ve<z;ve++){var L=U[ve][ee];N(u(oe),u(L))&&(oe=L,te=ve)}if(!N(u(oe),Q)){if(te!==ee+1){var H=U[te];U[te]=U[ee+1],U[ee+1]=H;for(var ne=0;ne<z;ne++){var ie=U[ne][te];U[ne][te]=U[ne][ee+1],U[ne][ee+1]=ie}if(re){var me=q[te];q[te]=q[ee+1],q[ee+1]=me}}for(var de=ee+2;de<z;de++){var be=o(U[de][ee],oe);if(be!==0){for(var Ne=0;Ne<z;Ne++)U[de][Ne]=t(U[de][Ne],i(be,U[ee+1][Ne]));for(var V=0;V<z;V++)U[V][ee+1]=r(U[V][ee+1],i(be,U[V][de]));if(re)for(var K=0;K<z;K++)q[de][K]=t(q[de][K],i(be,q[ee+1][K]))}}}}return q}function C(U,z,Q,se,re){var q=se==="BigNumber",Z=se==="Complex",j=q?s(1):Z?A(1):1;q&&(Q=s(Q));for(var Y=Fe(U),ee=[],te=z,oe=[],ve=re?c(Array(z).fill(j)):void 0,L=re?c(Array(te).fill(j)):void 0,H=0;H<=100;){H+=1;for(var ne=Y[te-1][te-1],ie=0;ie<te;ie++)Y[ie][ie]=t(Y[ie][ie],ne);var{Q:me,R:de}=v(Y);Y=a(de,me);for(var be=0;be<te;be++)Y[be][be]=r(Y[be][be],ne);if(re&&(L=a(L,me)),te===1||N(u(Y[te-1][te-2]),Q)){H=0,ee.push(Y[te-1][te-1]),re&&(oe.unshift([[1]]),R(L,z),ve=a(ve,L),te>1&&(L=c(Array(te-1).fill(j)))),te-=1,Y.pop();for(var Ne=0;Ne<te;Ne++)Y[Ne].pop()}else if(te===2||N(u(Y[te-2][te-3]),Q)){H=0;var V=F(Y[te-2][te-2],Y[te-2][te-1],Y[te-1][te-2],Y[te-1][te-1]);ee.push(...V),re&&(oe.unshift(I(Y[te-2][te-2],Y[te-2][te-1],Y[te-1][te-2],Y[te-1][te-1],V[0],V[1],Q,se)),R(L,z),ve=a(ve,L),te>2&&(L=c(Array(te-2).fill(j)))),te-=2,Y.pop(),Y.pop();for(var K=0;K<te;K++)Y[K].pop(),Y[K].pop()}if(te===0)break}if(ee.sort((ce,fe)=>+t(u(ce),u(fe))),H>100){var G=Error("The eigenvalues failed to converge. Only found these eigenvalues: "+ee.join(", "));throw G.values=ee,G.vectors=[],G}var ae=re?a(ve,$(oe,z)):void 0;return{values:ee,C:ae}}function _(U,z,Q,se,re,q,Z){var j=p(Q),Y=a(j,U,Q),ee=Z==="BigNumber",te=Z==="Complex",oe=ee?s(0):te?A(0):0,ve=ee?s(1):te?A(1):1,L=[],H=[];for(var ne of re){var ie=M(L,ne,b);ie===-1?(L.push(ne),H.push(1)):H[ie]+=1}for(var me=[],de=L.length,be=Array(z).fill(oe),Ne=c(Array(z).fill(ve)),V=function(){var ae=L[K],ce=t(Y,a(ae,Ne)),fe=w(ce,be);for(fe.shift();fe.length<H[K];){var xe=T(ce,z,fe,q,Z);if(xe===null)break;fe.push(xe)}var ye=a(p(se),Q);fe=fe.map(Ae=>a(ye,Ae)),me.push(...fe.map(Ae=>({value:ae,vector:n(Ae)})))},K=0;K<de;K++)V();return me}function F(U,z,Q,se){var re=r(U,se),q=t(i(U,se),i(z,Q)),Z=i(re,.5),j=i(l(t(i(re,re),i(4,q))),.5);return[r(Z,j),t(Z,j)]}function I(U,z,Q,se,re,q,Z,j){var Y=j==="BigNumber",ee=j==="Complex",te=Y?s(0):ee?A(0):0,oe=Y?s(1):ee?A(1):1;if(N(u(Q),Z))return[[oe,te],[te,oe]];if(g(u(t(re,q)),Z))return[[t(re,se),t(q,se)],[Q,Q]];var ve=t(U,re),L=t(se,re);return N(u(z),Z)&&N(u(L),Z)?[[ve,oe],[Q,te]]:[[z,te],[L,oe]]}function R(U,z){for(var Q=0;Q<U.length;Q++)U[Q].push(...Array(z-U[Q].length).fill(0));for(var se=U.length;se<z;se++)U.push(Array(z).fill(0)),U[se][se]=1;return U}function $(U,z){for(var Q=[],se=0;se<z;se++)Q[se]=Array(z).fill(0);var re=0;for(var q of U){for(var Z=q.length,j=0;j<Z;j++)for(var Y=0;Y<Z;Y++)Q[re+j][re+Y]=q[j][Y];re+=Z}return Q}function M(U,z,Q){for(var se=0;se<U.length;se++)if(Q(U[se],z))return se;return-1}function T(U,z,Q,se,re){for(var q=re==="BigNumber"?s(1e3):1e3,Z,j=0;j<5;++j){Z=k(z,Q,re);try{Z=h(U,Z)}catch{continue}if(g(W(Z),q))break}if(j>=5)return null;for(j=0;;){var Y=h(U,Z);if(N(W(O(Z,[Y])),se))break;if(++j>=10)return null;Z=X(Y)}return Z}function k(U,z,Q){var se=Q==="BigNumber",re=Q==="Complex",q=Array(U).fill(0).map(Z=>2*Math.random()-1);return se&&(q=q.map(Z=>s(Z))),re&&(q=q.map(Z=>A(Z))),q=O(q,z),X(q,Q)}function O(U,z){var Q=f(U);for(var se of z)se=d(se,Q),U=t(U,a(o(y(se,U),y(se,se)),se));return U}function W(U){return u(l(y(U,U)))}function X(U,z){var Q=z==="BigNumber",se=z==="Complex",re=Q?s(1):se?A(1):1;return a(o(re,W(U)),U)}return D}function ZR(e){var{config:r,addScalar:t,subtract:n,abs:a,atan:i,cos:o,sin:l,multiplyScalar:u,inv:s,bignumber:c,multiply:f,add:d}=e;function p(E,C){var _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:r.relTol,F=arguments.length>3?arguments[3]:void 0,I=arguments.length>4?arguments[4]:void 0;if(F==="number")return v(E,_,I);if(F==="BigNumber")return h(E,_,I);throw TypeError("Unsupported data type: "+F)}function v(E,C,_){var F=E.length,I=Math.abs(C/F),R,$;if(_){$=new Array(F);for(var M=0;M<F;M++)$[M]=Array(F).fill(0),$[M][M]=1}for(var T=y(E);Math.abs(T[1])>=Math.abs(I);){var k=T[0][0],O=T[0][1];R=w(E[k][k],E[O][O],E[k][O]),E=x(E,R,k,O),_&&($=A($,R,k,O)),T=y(E)}for(var W=Array(F).fill(0),X=0;X<F;X++)W[X]=E[X][X];return S(Fe(W),$,_)}function h(E,C,_){var F=E.length,I=a(C/F),R,$;if(_){$=new Array(F);for(var M=0;M<F;M++)$[M]=Array(F).fill(0),$[M][M]=1}for(var T=D(E);a(T[1])>=a(I);){var k=T[0][0],O=T[0][1];R=b(E[k][k],E[O][O],E[k][O]),E=N(E,R,k,O),_&&($=g($,R,k,O)),T=D(E)}for(var W=Array(F).fill(0),X=0;X<F;X++)W[X]=E[X][X];return S(Fe(W),$,_)}function w(E,C,_){var F=C-E;return Math.abs(F)<=r.relTol?Math.PI/4:.5*Math.atan(2*_/(C-E))}function b(E,C,_){var F=n(C,E);return a(F)<=r.relTol?c(-1).acos().div(4):u(.5,i(f(2,_,s(F))))}function A(E,C,_,F){for(var I=E.length,R=Math.cos(C),$=Math.sin(C),M=Array(I).fill(0),T=Array(I).fill(0),k=0;k<I;k++)M[k]=R*E[k][_]-$*E[k][F],T[k]=$*E[k][_]+R*E[k][F];for(var O=0;O<I;O++)E[O][_]=M[O],E[O][F]=T[O];return E}function g(E,C,_,F){for(var I=E.length,R=o(C),$=l(C),M=Array(I).fill(c(0)),T=Array(I).fill(c(0)),k=0;k<I;k++)M[k]=n(u(R,E[k][_]),u($,E[k][F])),T[k]=t(u($,E[k][_]),u(R,E[k][F]));for(var O=0;O<I;O++)E[O][_]=M[O],E[O][F]=T[O];return E}function N(E,C,_,F){for(var I=E.length,R=c(o(C)),$=c(l(C)),M=u(R,R),T=u($,$),k=Array(I).fill(c(0)),O=Array(I).fill(c(0)),W=f(c(2),R,$,E[_][F]),X=t(n(u(M,E[_][_]),W),u(T,E[F][F])),U=d(u(T,E[_][_]),W,u(M,E[F][F])),z=0;z<I;z++)k[z]=n(u(R,E[_][z]),u($,E[F][z])),O[z]=t(u($,E[_][z]),u(R,E[F][z]));E[_][_]=X,E[F][F]=U,E[_][F]=c(0),E[F][_]=c(0);for(var Q=0;Q<I;Q++)Q!==_&&Q!==F&&(E[_][Q]=k[Q],E[Q][_]=k[Q],E[F][Q]=O[Q],E[Q][F]=O[Q]);return E}function x(E,C,_,F){for(var I=E.length,R=Math.cos(C),$=Math.sin(C),M=R*R,T=$*$,k=Array(I).fill(0),O=Array(I).fill(0),W=M*E[_][_]-2*R*$*E[_][F]+T*E[F][F],X=T*E[_][_]+2*R*$*E[_][F]+M*E[F][F],U=0;U<I;U++)k[U]=R*E[_][U]-$*E[F][U],O[U]=$*E[_][U]+R*E[F][U];E[_][_]=W,E[F][F]=X,E[_][F]=0,E[F][_]=0;for(var z=0;z<I;z++)z!==_&&z!==F&&(E[_][z]=k[z],E[z][_]=k[z],E[F][z]=O[z],E[z][F]=O[z]);return E}function y(E){for(var C=E.length,_=0,F=[0,1],I=0;I<C;I++)for(var R=I+1;R<C;R++)Math.abs(_)<Math.abs(E[I][R])&&(_=Math.abs(E[I][R]),F=[I,R]);return[F,_]}function D(E){for(var C=E.length,_=0,F=[0,1],I=0;I<C;I++)for(var R=I+1;R<C;R++)a(_)<a(E[I][R])&&(_=a(E[I][R]),F=[I,R]);return[F,_]}function S(E,C,_){var F=E.length,I=Array(F),R;if(_){R=Array(F);for(var $=0;$<F;$++)R[$]=Array(F)}for(var M=0;M<F;M++){for(var T=0,k=E[0],O=0;O<E.length;O++)a(E[O])<a(k)&&(T=O,k=E[T]);if(I[M]=E.splice(T,1)[0],_)for(var W=0;W<F;W++)R[M][W]=C[W][T],C[W].splice(T,1)}if(!_)return{values:I};var X=R.map((U,z)=>({value:I[z],vector:U}));return{values:I,eigenvectors:X}}return p}var GR="eigs",WR=["config","typed","matrix","addScalar","equal","subtract","abs","atan","cos","sin","multiplyScalar","divideScalar","inv","bignumber","multiply","add","larger","column","flatten","number","complex","sqrt","diag","size","reshape","qr","usolve","usolveAll","im","re","smaller","matrixFromColumns","dot"],jR=P(GR,WR,e=>{var{config:r,typed:t,matrix:n,addScalar:a,subtract:i,equal:o,abs:l,atan:u,cos:s,sin:c,multiplyScalar:f,divideScalar:d,inv:p,bignumber:v,multiply:h,add:w,larger:b,column:A,flatten:g,number:N,complex:x,sqrt:y,diag:D,size:S,reshape:E,qr:C,usolve:_,usolveAll:F,im:I,re:R,smaller:$,matrixFromColumns:M,dot:T}=e,k=ZR({config:r,addScalar:a,subtract:i,abs:l,atan:u,cos:s,sin:c,multiplyScalar:f,inv:p,bignumber:v,multiply:h,add:w}),O=HR({addScalar:a,subtract:i,multiply:h,multiplyScalar:f,flatten:g,divideScalar:d,sqrt:y,abs:l,bignumber:v,diag:D,size:S,reshape:E,qr:C,inv:p,usolve:_,usolveAll:F,equal:o,complex:x,larger:b,smaller:$,matrixFromColumns:M,dot:T});return t("eigs",{Array:function(q){return W(n(q))},"Array, number|BigNumber":function(q,Z){return W(n(q),{precision:Z})},"Array, Object"(re,q){return W(n(re),q)},Matrix:function(q){return W(q,{matricize:!0})},"Matrix, number|BigNumber":function(q,Z){return W(q,{precision:Z,matricize:!0})},"Matrix, Object":function(q,Z){var j={matricize:!0};return Br(j,Z),W(q,j)}});function W(re){var q,Z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},j="eigenvectors"in Z?Z.eigenvectors:!0,Y=(q=Z.precision)!==null&&q!==void 0?q:r.relTol,ee=X(re,Y,j);return Z.matricize&&(ee.values=n(ee.values),j&&(ee.eigenvectors=ee.eigenvectors.map(te=>{var{value:oe,vector:ve}=te;return{value:oe,vector:n(ve)}}))),j&&Object.defineProperty(ee,"vectors",{enumerable:!1,get:()=>{throw new Error("eigs(M).vectors replaced with eigs(M).eigenvectors")}}),ee}function X(re,q,Z){var j=re.toArray(),Y=re.size();if(Y.length!==2||Y[0]!==Y[1])throw new RangeError("Matrix must be square (size: ".concat(Ve(Y),")"));var ee=Y[0];if(z(j,ee,q)&&(Q(j,ee),U(j,ee,q))){var te=se(re,j,ee);return k(j,ee,q,te,Z)}var oe=se(re,j,ee);return O(j,ee,q,oe,Z)}function U(re,q,Z){for(var j=0;j<q;j++)for(var Y=j;Y<q;Y++)if(b(v(l(i(re[j][Y],re[Y][j]))),Z))return!1;return!0}function z(re,q,Z){for(var j=0;j<q;j++)for(var Y=0;Y<q;Y++)if(b(v(l(I(re[j][Y]))),Z))return!1;return!0}function Q(re,q){for(var Z=0;Z<q;Z++)for(var j=0;j<q;j++)re[Z][j]=R(re[Z][j])}function se(re,q,Z){var j=re.datatype();if(j==="number"||j==="BigNumber"||j==="Complex")return j;for(var Y=!1,ee=!1,te=!1,oe=0;oe<Z;oe++)for(var ve=0;ve<Z;ve++){var L=q[oe][ve];if(Re(L)||zn(L))Y=!0;else if(Ie(L))ee=!0;else if(gt(L))te=!0;else throw TypeError("Unsupported type in Matrix: "+tr(L))}if(ee&&te&&console.warn("Complex BigNumbers not supported, this operation will lose precission."),te){for(var H=0;H<Z;H++)for(var ne=0;ne<Z;ne++)q[H][ne]=x(q[H][ne]);return"Complex"}if(ee){for(var ie=0;ie<Z;ie++)for(var me=0;me<Z;me++)q[ie][me]=v(q[ie][me]);return"BigNumber"}if(Y){for(var de=0;de<Z;de++)for(var be=0;be<Z;be++)q[de][be]=N(q[de][be]);return"number"}else throw TypeError("Matrix contains unsupported types only.")}}),lg="expm",KR=["typed","abs","add","identity","inv","multiply"],JR=P(lg,KR,e=>{var{typed:r,abs:t,add:n,identity:a,inv:i,multiply:o}=e;return r(lg,{Matrix:function(f){var d=f.size();if(d.length!==2||d[0]!==d[1])throw new RangeError("Matrix must be square (size: "+Ve(d)+")");for(var p=d[0],v=1e-15,h=l(f),w=u(h,v),b=w.q,A=w.j,g=o(f,Math.pow(2,-A)),N=a(p),x=a(p),y=1,D=g,S=-1,E=1;E<=b;E++)E>1&&(D=o(D,g),S=-S),y=y*(b-E+1)/((2*b-E+1)*E),N=n(N,o(y,D)),x=n(x,o(y*S,D));for(var C=o(i(x),N),_=0;_<A;_++)C=o(C,C);return cn(f)?f.createSparseMatrix(C):C}});function l(c){for(var f=c.size()[0],d=0,p=0;p<f;p++){for(var v=0,h=0;h<f;h++)v+=t(c.get([p,h]));d=Math.max(v,d)}return d}function u(c,f){for(var d=30,p=0;p<d;p++)for(var v=0;v<=p;v++){var h=p-v;if(s(c,v,h)<f)return{q:v,j:h}}throw new Error("Could not find acceptable parameters to compute the matrix exponential (try increasing maxSearchSize in expm.js)")}function s(c,f,d){for(var p=1,v=2;v<=f;v++)p*=v;for(var h=p,w=f+1;w<=2*f;w++)h*=w;var b=h*(2*f+1);return 8*Math.pow(c/Math.pow(2,d),2*f)*p*p/(h*b)}}),cg="sqrtm",YR=["typed","abs","add","multiply","map","sqrt","subtract","inv","size","max","identity"],XR=P(cg,YR,e=>{var{typed:r,abs:t,add:n,multiply:a,map:i,sqrt:o,subtract:l,inv:u,size:s,max:c,identity:f}=e,d=1e3,p=1e-6;function v(h){var w,b=0,A=h,g=f(s(h));do{var N=A;if(A=a(.5,n(N,u(g))),g=a(.5,n(g,u(N))),w=c(t(l(A,N))),w>p&&++b>d)throw new Error("computing square root of matrix: iterative method could not converge")}while(w>p);return A}return r(cg,{"Array | Matrix":function(w){var b=_e(w)?w.size():$e(w);switch(b.length){case 1:if(b[0]===1)return i(w,o);throw new RangeError("Matrix must be square (size: "+Ve(b)+")");case 2:{var A=b[0],g=b[1];if(A===g)return v(w);throw new RangeError("Matrix must be square (size: "+Ve(b)+")")}default:throw new RangeError("Matrix must be at most two dimensional (size: "+Ve(b)+")")}}})}),fg="sylvester",QR=["typed","schur","matrixFromColumns","matrix","multiply","range","concat","transpose","index","subset","add","subtract","identity","lusolve","abs"],ez=P(fg,QR,e=>{var{typed:r,schur:t,matrixFromColumns:n,matrix:a,multiply:i,range:o,concat:l,transpose:u,index:s,subset:c,add:f,subtract:d,identity:p,lusolve:v,abs:h}=e;return r(fg,{"Matrix, Matrix, Matrix":w,"Array, Matrix, Matrix":function(A,g,N){return w(a(A),g,N)},"Array, Array, Matrix":function(A,g,N){return w(a(A),a(g),N)},"Array, Matrix, Array":function(A,g,N){return w(a(A),g,a(N))},"Matrix, Array, Matrix":function(A,g,N){return w(A,a(g),N)},"Matrix, Array, Array":function(A,g,N){return w(A,a(g),a(N))},"Matrix, Matrix, Array":function(A,g,N){return w(A,g,a(N))},"Array, Array, Array":function(A,g,N){return w(a(A),a(g),a(N)).toArray()}});function w(b,A,g){for(var N=A.size()[0],x=b.size()[0],y=t(b),D=y.T,S=y.U,E=t(i(-1,A)),C=E.T,_=E.U,F=i(i(u(S),g),_),I=o(0,x),R=[],$=(te,oe)=>l(te,oe,1),M=(te,oe)=>l(te,oe,0),T=0;T<N;T++)if(T<N-1&&h(c(C,s(T+1,T)))>1e-5){for(var k=M(c(F,s(I,T)),c(F,s(I,T+1))),O=0;O<T;O++)k=f(k,M(i(R[O],c(C,s(O,T))),i(R[O],c(C,s(O,T+1)))));var W=i(p(x),i(-1,c(C,s(T,T)))),X=i(p(x),i(-1,c(C,s(T+1,T)))),U=i(p(x),i(-1,c(C,s(T,T+1)))),z=i(p(x),i(-1,c(C,s(T+1,T+1)))),Q=M($(f(D,W),X),$(U,f(D,z))),se=v(Q,k);R[T]=se.subset(s(o(0,x),0)),R[T+1]=se.subset(s(o(x,2*x),0)),T++}else{for(var re=c(F,s(I,T)),q=0;q<T;q++)re=f(re,i(R[q],c(C,s(q,T))));var Z=c(C,s(T,T)),j=d(D,i(Z,p(x)));R[T]=v(j,re)}var Y=a(n(...R)),ee=i(S,i(Y,u(_)));return ee}}),dg="schur",rz=["typed","matrix","identity","multiply","qr","norm","subtract"],tz=P(dg,rz,e=>{var{typed:r,matrix:t,identity:n,multiply:a,qr:i,norm:o,subtract:l}=e;return r(dg,{Array:function(c){var f=u(t(c));return{U:f.U.valueOf(),T:f.T.valueOf()}},Matrix:function(c){return u(c)}});function u(s){var c=s.size()[0],f=s,d=n(c),p=0,v;do{v=f;var h=i(f),w=h.Q,b=h.R;if(f=a(b,w),d=a(d,w),p++>100)break}while(o(l(f,v))>1e-4);return{U:d,T:f}}}),mg="lyap",nz=["typed","matrix","sylvester","multiply","transpose"],az=P(mg,nz,e=>{var{typed:r,matrix:t,sylvester:n,multiply:a,transpose:i}=e;return r(mg,{"Matrix, Matrix":function(l,u){return n(l,i(l),a(-1,u))},"Array, Matrix":function(l,u){return n(t(l),i(t(l)),a(-1,u))},"Matrix, Array":function(l,u){return n(l,i(t(l)),t(a(-1,u)))},"Array, Array":function(l,u){return n(t(l),i(t(l)),t(a(-1,u))).toArray()}})}),iz="divide",oz=["typed","matrix","multiply","equalScalar","divideScalar","inv"],sz=P(iz,oz,e=>{var{typed:r,matrix:t,multiply:n,equalScalar:a,divideScalar:i,inv:o}=e,l=Tr({typed:r,equalScalar:a}),u=wt({typed:r});return r("divide",Id({"Array | Matrix, Array | Matrix":function(c,f){return n(c,o(f))},"DenseMatrix, any":function(c,f){return u(c,f,i,!1)},"SparseMatrix, any":function(c,f){return l(c,f,i,!1)},"Array, any":function(c,f){return u(t(c),f,i,!1).valueOf()},"any, Array | Matrix":function(c,f){return n(c,o(f))}},i.signatures))}),pg="distance",uz=["typed","addScalar","subtractScalar","divideScalar","multiplyScalar","deepEqual","sqrt","abs"],lz=P(pg,uz,e=>{var{typed:r,addScalar:t,subtractScalar:n,multiplyScalar:a,divideScalar:i,deepEqual:o,sqrt:l,abs:u}=e;return r(pg,{"Array, Array, Array":function(x,y,D){if(x.length===2&&y.length===2&&D.length===2){if(!c(x))throw new TypeError("Array with 2 numbers or BigNumbers expected for first argument");if(!c(y))throw new TypeError("Array with 2 numbers or BigNumbers expected for second argument");if(!c(D))throw new TypeError("Array with 2 numbers or BigNumbers expected for third argument");if(o(y,D))throw new TypeError("LinePoint1 should not be same with LinePoint2");var S=n(D[1],y[1]),E=n(y[0],D[0]),C=n(a(D[0],y[1]),a(y[0],D[1]));return w(x[0],x[1],S,E,C)}else throw new TypeError("Invalid Arguments: Try again")},"Object, Object, Object":function(x,y,D){if(Object.keys(x).length===2&&Object.keys(y).length===2&&Object.keys(D).length===2){if(!c(x))throw new TypeError("Values of pointX and pointY should be numbers or BigNumbers");if(!c(y))throw new TypeError("Values of lineOnePtX and lineOnePtY should be numbers or BigNumbers");if(!c(D))throw new TypeError("Values of lineTwoPtX and lineTwoPtY should be numbers or BigNumbers");if(o(v(y),v(D)))throw new TypeError("LinePoint1 should not be same with LinePoint2");if("pointX"in x&&"pointY"in x&&"lineOnePtX"in y&&"lineOnePtY"in y&&"lineTwoPtX"in D&&"lineTwoPtY"in D){var S=n(D.lineTwoPtY,y.lineOnePtY),E=n(y.lineOnePtX,D.lineTwoPtX),C=n(a(D.lineTwoPtX,y.lineOnePtY),a(y.lineOnePtX,D.lineTwoPtY));return w(x.pointX,x.pointY,S,E,C)}else throw new TypeError("Key names do not match")}else throw new TypeError("Invalid Arguments: Try again")},"Array, Array":function(x,y){if(x.length===2&&y.length===3){if(!c(x))throw new TypeError("Array with 2 numbers or BigNumbers expected for first argument");if(!f(y))throw new TypeError("Array with 3 numbers or BigNumbers expected for second argument");return w(x[0],x[1],y[0],y[1],y[2])}else if(x.length===3&&y.length===6){if(!f(x))throw new TypeError("Array with 3 numbers or BigNumbers expected for first argument");if(!p(y))throw new TypeError("Array with 6 numbers or BigNumbers expected for second argument");return b(x[0],x[1],x[2],y[0],y[1],y[2],y[3],y[4],y[5])}else if(x.length===y.length&&x.length>0){if(!d(x))throw new TypeError("All values of an array should be numbers or BigNumbers");if(!d(y))throw new TypeError("All values of an array should be numbers or BigNumbers");return A(x,y)}else throw new TypeError("Invalid Arguments: Try again")},"Object, Object":function(x,y){if(Object.keys(x).length===2&&Object.keys(y).length===3){if(!c(x))throw new TypeError("Values of pointX and pointY should be numbers or BigNumbers");if(!f(y))throw new TypeError("Values of xCoeffLine, yCoeffLine and constant should be numbers or BigNumbers");if("pointX"in x&&"pointY"in x&&"xCoeffLine"in y&&"yCoeffLine"in y&&"constant"in y)return w(x.pointX,x.pointY,y.xCoeffLine,y.yCoeffLine,y.constant);throw new TypeError("Key names do not match")}else if(Object.keys(x).length===3&&Object.keys(y).length===6){if(!f(x))throw new TypeError("Values of pointX, pointY and pointZ should be numbers or BigNumbers");if(!p(y))throw new TypeError("Values of x0, y0, z0, a, b and c should be numbers or BigNumbers");if("pointX"in x&&"pointY"in x&&"x0"in y&&"y0"in y&&"z0"in y&&"a"in y&&"b"in y&&"c"in y)return b(x.pointX,x.pointY,x.pointZ,y.x0,y.y0,y.z0,y.a,y.b,y.c);throw new TypeError("Key names do not match")}else if(Object.keys(x).length===2&&Object.keys(y).length===2){if(!c(x))throw new TypeError("Values of pointOneX and pointOneY should be numbers or BigNumbers");if(!c(y))throw new TypeError("Values of pointTwoX and pointTwoY should be numbers or BigNumbers");if("pointOneX"in x&&"pointOneY"in x&&"pointTwoX"in y&&"pointTwoY"in y)return A([x.pointOneX,x.pointOneY],[y.pointTwoX,y.pointTwoY]);throw new TypeError("Key names do not match")}else if(Object.keys(x).length===3&&Object.keys(y).length===3){if(!f(x))throw new TypeError("Values of pointOneX, pointOneY and pointOneZ should be numbers or BigNumbers");if(!f(y))throw new TypeError("Values of pointTwoX, pointTwoY and pointTwoZ should be numbers or BigNumbers");if("pointOneX"in x&&"pointOneY"in x&&"pointOneZ"in x&&"pointTwoX"in y&&"pointTwoY"in y&&"pointTwoZ"in y)return A([x.pointOneX,x.pointOneY,x.pointOneZ],[y.pointTwoX,y.pointTwoY,y.pointTwoZ]);throw new TypeError("Key names do not match")}else throw new TypeError("Invalid Arguments: Try again")},Array:function(x){if(!h(x))throw new TypeError("Incorrect array format entered for pairwise distance calculation");return g(x)}});function s(N){return typeof N=="number"||Ie(N)}function c(N){return N.constructor!==Array&&(N=v(N)),s(N[0])&&s(N[1])}function f(N){return N.constructor!==Array&&(N=v(N)),s(N[0])&&s(N[1])&&s(N[2])}function d(N){return Array.isArray(N)||(N=v(N)),N.every(s)}function p(N){return N.constructor!==Array&&(N=v(N)),s(N[0])&&s(N[1])&&s(N[2])&&s(N[3])&&s(N[4])&&s(N[5])}function v(N){for(var x=Object.keys(N),y=[],D=0;D<x.length;D++)y.push(N[x[D]]);return y}function h(N){if(N[0].length===2&&s(N[0][0])&&s(N[0][1])){if(N.some(x=>x.length!==2||!s(x[0])||!s(x[1])))return!1}else if(N[0].length===3&&s(N[0][0])&&s(N[0][1])&&s(N[0][2])){if(N.some(x=>x.length!==3||!s(x[0])||!s(x[1])||!s(x[2])))return!1}else return!1;return!0}function w(N,x,y,D,S){var E=u(t(t(a(y,N),a(D,x)),S)),C=l(t(a(y,y),a(D,D)));return i(E,C)}function b(N,x,y,D,S,E,C,_,F){var I=[n(a(n(S,x),F),a(n(E,y),_)),n(a(n(E,y),C),a(n(D,N),F)),n(a(n(D,N),_),a(n(S,x),C))];I=l(t(t(a(I[0],I[0]),a(I[1],I[1])),a(I[2],I[2])));var R=l(t(t(a(C,C),a(_,_)),a(F,F)));return i(I,R)}function A(N,x){for(var y=N.length,D=0,S=0,E=0;E<y;E++)S=n(N[E],x[E]),D=t(a(S,S),D);return l(D)}function g(N){for(var x=[],y=[],D=[],S=0;S<N.length-1;S++)for(var E=S+1;E<N.length;E++)N[0].length===2?(y=[N[S][0],N[S][1]],D=[N[E][0],N[E][1]]):N[0].length===3&&(y=[N[S][0],N[S][1],N[S][2]],D=[N[E][0],N[E][1],N[E][2]]),x.push(A(y,D));return x}}),cz="intersect",fz=["typed","config","abs","add","addScalar","matrix","multiply","multiplyScalar","divideScalar","subtract","smaller","equalScalar","flatten","isZero","isNumeric"],dz=P(cz,fz,e=>{var{typed:r,config:t,abs:n,add:a,addScalar:i,matrix:o,multiply:l,multiplyScalar:u,divideScalar:s,subtract:c,smaller:f,equalScalar:d,flatten:p,isZero:v,isNumeric:h}=e;return r("intersect",{"Array, Array, Array":w,"Array, Array, Array, Array":b,"Matrix, Matrix, Matrix":function(_,F,I){var R=w(_.valueOf(),F.valueOf(),I.valueOf());return R===null?null:o(R)},"Matrix, Matrix, Matrix, Matrix":function(_,F,I,R){var $=b(_.valueOf(),F.valueOf(),I.valueOf(),R.valueOf());return $===null?null:o($)}});function w(C,_,F){if(C=A(C),_=A(_),F=A(F),!N(C))throw new TypeError("Array with 3 numbers or BigNumbers expected for first argument");if(!N(_))throw new TypeError("Array with 3 numbers or BigNumbers expected for second argument");if(!x(F))throw new TypeError("Array with 4 numbers expected as third argument");return E(C[0],C[1],C[2],_[0],_[1],_[2],F[0],F[1],F[2],F[3])}function b(C,_,F,I){if(C=A(C),_=A(_),F=A(F),I=A(I),C.length===2){if(!g(C))throw new TypeError("Array with 2 numbers or BigNumbers expected for first argument");if(!g(_))throw new TypeError("Array with 2 numbers or BigNumbers expected for second argument");if(!g(F))throw new TypeError("Array with 2 numbers or BigNumbers expected for third argument");if(!g(I))throw new TypeError("Array with 2 numbers or BigNumbers expected for fourth argument");return y(C,_,F,I)}else if(C.length===3){if(!N(C))throw new TypeError("Array with 3 numbers or BigNumbers expected for first argument");if(!N(_))throw new TypeError("Array with 3 numbers or BigNumbers expected for second argument");if(!N(F))throw new TypeError("Array with 3 numbers or BigNumbers expected for third argument");if(!N(I))throw new TypeError("Array with 3 numbers or BigNumbers expected for fourth argument");return S(C[0],C[1],C[2],_[0],_[1],_[2],F[0],F[1],F[2],I[0],I[1],I[2])}else throw new TypeError("Arrays with two or thee dimensional points expected")}function A(C){return C.length===1?C[0]:C.length>1&&Array.isArray(C[0])&&C.every(_=>Array.isArray(_)&&_.length===1)?p(C):C}function g(C){return C.length===2&&h(C[0])&&h(C[1])}function N(C){return C.length===3&&h(C[0])&&h(C[1])&&h(C[2])}function x(C){return C.length===4&&h(C[0])&&h(C[1])&&h(C[2])&&h(C[3])}function y(C,_,F,I){var R=C,$=F,M=c(R,_),T=c($,I),k=c(u(M[0],T[1]),u(T[0],M[1]));if(v(k)||f(n(k),t.relTol))return null;var O=u(T[0],R[1]),W=u(T[1],R[0]),X=u(T[0],$[1]),U=u(T[1],$[0]),z=s(i(c(c(O,W),X),U),k);return a(l(M,z),R)}function D(C,_,F,I,R,$,M,T,k,O,W,X){var U=u(c(C,_),c(F,I)),z=u(c(R,$),c(M,T)),Q=u(c(k,O),c(W,X));return i(i(U,z),Q)}function S(C,_,F,I,R,$,M,T,k,O,W,X){var U=D(C,M,O,M,_,T,W,T,F,k,X,k),z=D(O,M,I,C,W,T,R,_,X,k,$,F),Q=D(C,M,I,C,_,T,R,_,F,k,$,F),se=D(O,M,O,M,W,T,W,T,X,k,X,k),re=D(I,C,I,C,R,_,R,_,$,F,$,F),q=c(u(U,z),u(Q,se)),Z=c(u(re,se),u(z,z));if(v(Z))return null;var j=s(q,Z),Y=s(i(U,u(j,z)),se),ee=i(C,u(j,c(I,C))),te=i(_,u(j,c(R,_))),oe=i(F,u(j,c($,F))),ve=i(M,u(Y,c(O,M))),L=i(T,u(Y,c(W,T))),H=i(k,u(Y,c(X,k)));return d(ee,ve)&&d(te,L)&&d(oe,H)?[ee,te,oe]:null}function E(C,_,F,I,R,$,M,T,k,O){var W=u(C,M),X=u(I,M),U=u(_,T),z=u(R,T),Q=u(F,k),se=u($,k),re=c(c(c(O,W),U),Q),q=c(c(c(i(i(X,z),se),W),U),Q),Z=s(re,q),j=i(C,u(Z,c(I,C))),Y=i(_,u(Z,c(R,_))),ee=i(F,u(Z,c($,F)));return[j,Y,ee]}}),vg="sum",mz=["typed","config","add","numeric"],hg=P(vg,mz,e=>{var{typed:r,config:t,add:n,numeric:a}=e;return r(vg,{"Array | Matrix":i,"Array | Matrix, number | BigNumber":o,"...":function(u){if(Aa(u))throw new TypeError("Scalar values expected in function sum");return i(u)}});function i(l){var u;return Jt(l,function(s){try{u=u===void 0?s:n(u,s)}catch(c){throw qr(c,"sum",s)}}),u===void 0&&(u=a(0,t.number)),typeof u=="string"&&(u=a(u,dn(u,t))),u}function o(l,u){try{var s=go(l,u,n);return s}catch(c){throw qr(c,"sum")}}}),Ko="cumsum",pz=["typed","add","unaryPlus"],gg=P(Ko,pz,e=>{var{typed:r,add:t,unaryPlus:n}=e;return r(Ko,{Array:a,Matrix:function(s){return s.create(a(s.valueOf(),s.datatype()))},"Array, number | BigNumber":o,"Matrix, number | BigNumber":function(s,c){return s.create(o(s.valueOf(),c),s.datatype())},"...":function(s){if(Aa(s))throw new TypeError("All values expected to be scalar in function cumsum");return a(s)}});function a(u){try{return i(u)}catch(s){throw qr(s,Ko)}}function i(u){if(u.length===0)return[];for(var s=[n(u[0])],c=1;c<u.length;++c)s.push(t(s[c-1],u[c]));return s}function o(u,s){var c=$e(u);if(s<0||s>=c.length)throw new ft(s,c.length);try{return l(u,s)}catch(f){throw qr(f,Ko)}}function l(u,s){var c,f,d;if(s<=0){var p=u[0][0];if(Array.isArray(p)){for(d=Tm(u),f=[],c=0;c<d.length;c++)f[c]=l(d[c],s-1);return f}else return i(u)}else{for(f=[],c=0;c<u.length;c++)f[c]=l(u[c],s-1);return f}}}),yg="mean",vz=["typed","add","divide"],bg=P(yg,vz,e=>{var{typed:r,add:t,divide:n}=e;return r(yg,{"Array | Matrix":i,"Array | Matrix, number | BigNumber":a,"...":function(l){if(Aa(l))throw new TypeError("Scalar values expected in function mean");return i(l)}});function a(o,l){try{var u=go(o,l,t),s=Array.isArray(o)?$e(o):o.size();return n(u,s[l])}catch(c){throw qr(c,"mean")}}function i(o){var l,u=0;if(Jt(o,function(s){try{l=l===void 0?s:t(l,s),u++}catch(c){throw qr(c,"mean",s)}}),u===0)throw new Error("Cannot calculate the mean of an empty array");return n(l,u)}}),wg="median",hz=["typed","add","divide","compare","partitionSelect"],gz=P(wg,hz,e=>{var{typed:r,add:t,divide:n,compare:a,partitionSelect:i}=e;function o(s){try{s=We(s.valueOf());var c=s.length;if(c===0)throw new Error("Cannot calculate median of an empty array");if(c%2===0){for(var f=c/2-1,d=i(s,f+1),p=s[f],v=0;v<f;++v)a(s[v],p)>0&&(p=s[v]);return u(p,d)}else{var h=i(s,(c-1)/2);return l(h)}}catch(w){throw qr(w,"median")}}var l=r({"number | BigNumber | Complex | Unit":function(c){return c}}),u=r({"number | BigNumber | Complex | Unit, number | BigNumber | Complex | Unit":function(c,f){return n(t(c,f),2)}});return r(wg,{"Array | Matrix":o,"Array | Matrix, number | BigNumber":function(c,f){throw new Error("median(A, dim) is not yet supported")},"...":function(c){if(Aa(c))throw new TypeError("Scalar values expected in function median");return o(c)}})}),xg="mad",yz=["typed","abs","map","median","subtract"],bz=P(xg,yz,e=>{var{typed:r,abs:t,map:n,median:a,subtract:i}=e;return r(xg,{"Array | Matrix":o,"...":function(u){return o(u)}});function o(l){if(l=We(l.valueOf()),l.length===0)throw new Error("Cannot calculate median absolute deviation (mad) of an empty array");try{var u=a(l);return a(n(l,function(s){return t(i(s,u))}))}catch(s){throw s instanceof TypeError&&s.message.includes("median")?new TypeError(s.message.replace("median","mad")):qr(s,"mad")}}}),rl="unbiased",Ng="variance",wz=["typed","add","subtract","multiply","divide","apply","isNaN"],Ag=P(Ng,wz,e=>{var{typed:r,add:t,subtract:n,multiply:a,divide:i,apply:o,isNaN:l}=e;return r(Ng,{"Array | Matrix":function(f){return u(f,rl)},"Array | Matrix, string":u,"Array | Matrix, number | BigNumber":function(f,d){return s(f,d,rl)},"Array | Matrix, number | BigNumber, string":s,"...":function(f){return u(f,rl)}});function u(c,f){var d,p=0;if(c.length===0)throw new SyntaxError("Function variance requires one or more parameters (0 provided)");if(Jt(c,function(w){try{d=d===void 0?w:t(d,w),p++}catch(b){throw qr(b,"variance",w)}}),p===0)throw new Error("Cannot calculate variance of an empty array");var v=i(d,p);if(d=void 0,Jt(c,function(w){var b=n(w,v);d=d===void 0?a(b,b):t(d,a(b,b))}),l(d))return d;switch(f){case"uncorrected":return i(d,p);case"biased":return i(d,p+1);case"unbiased":{var h=Ie(d)?d.mul(0):0;return p===1?h:i(d,p-1)}default:throw new Error('Unknown normalization "'+f+'". Choose "unbiased" (default), "uncorrected", or "biased".')}}function s(c,f,d){try{if(c.length===0)throw new SyntaxError("Function variance requires one or more parameters (0 provided)");return o(c,f,p=>u(p,d))}catch(p){throw qr(p,"variance")}}}),Eg="quantileSeq",xz=["typed","?bignumber","add","subtract","divide","multiply","partitionSelect","compare","isInteger","smaller","smallerEq","larger"],Dg=P(Eg,xz,e=>{var{typed:r,bignumber:t,add:n,subtract:a,divide:i,multiply:o,partitionSelect:l,compare:u,isInteger:s,smaller:c,smallerEq:f,larger:d}=e,p=Ru({typed:r,isInteger:s});return r(Eg,{"Array | Matrix, number | BigNumber":(A,g)=>h(A,g,!1),"Array | Matrix, number | BigNumber, number":(A,g,N)=>v(A,g,!1,N,h),"Array | Matrix, number | BigNumber, boolean":h,"Array | Matrix, number | BigNumber, boolean, number":(A,g,N,x)=>v(A,g,N,x,h),"Array | Matrix, Array | Matrix":(A,g)=>w(A,g,!1),"Array | Matrix, Array | Matrix, number":(A,g,N)=>v(A,g,!1,N,w),"Array | Matrix, Array | Matrix, boolean":w,"Array | Matrix, Array | Matrix, boolean, number":(A,g,N,x)=>v(A,g,N,x,w)});function v(A,g,N,x,y){return p(A,x,D=>y(D,g,N))}function h(A,g,N){var x,y=A.valueOf();if(c(g,0))throw new Error("N/prob must be non-negative");if(f(g,1))return Re(g)?b(y,g,N):t(b(y,g,N));if(d(g,1)){if(!s(g))throw new Error("N must be a positive integer");if(d(g,4294967295))throw new Error("N must be less than or equal to 2^32-1, as that is the maximum length of an Array");var D=n(g,1);x=[];for(var S=0;c(S,g);S++){var E=i(S+1,D);x.push(b(y,E,N))}return Re(g)?x:t(x)}}function w(A,g,N){for(var x=A.valueOf(),y=g.valueOf(),D=[],S=0;S<y.length;++S)D.push(b(x,y[S],N));return D}function b(A,g,N){var x=We(A),y=x.length;if(y===0)throw new Error("Cannot calculate quantile of an empty sequence");var D=Re(g)?g*(y-1):g.times(y-1),S=Re(g)?Math.floor(D):D.floor().toNumber(),E=Re(g)?D%1:D.minus(S);if(s(D))return N?x[D]:l(x,Re(g)?D:D.valueOf());var C,_;if(N)C=x[S],_=x[S+1];else{_=l(x,S+1),C=x[S];for(var F=0;F<S;++F)u(x[F],C)>0&&(C=x[F])}return n(o(C,a(1,E)),o(_,E))}}),Sg="std",Nz=["typed","map","sqrt","variance"],Cg=P(Sg,Nz,e=>{var{typed:r,map:t,sqrt:n,variance:a}=e;return r(Sg,{"Array | Matrix":i,"Array | Matrix, string":i,"Array | Matrix, number | BigNumber":i,"Array | Matrix, number | BigNumber, string":i,"...":function(l){return i(l)}});function i(o,l){if(o.length===0)throw new SyntaxError("Function std requires one or more parameters (0 provided)");try{var u=a.apply(null,arguments);return Xr(u)?t(u,n):n(u)}catch(s){throw s instanceof TypeError&&s.message.includes(" variance")?new TypeError(s.message.replace(" variance"," std")):s}}}),Mg="corr",Az=["typed","matrix","mean","sqrt","sum","add","subtract","multiply","pow","divide"],Ez=P(Mg,Az,e=>{var{typed:r,matrix:t,sqrt:n,sum:a,add:i,subtract:o,multiply:l,pow:u,divide:s}=e;return r(Mg,{"Array, Array":function(p,v){return c(p,v)},"Matrix, Matrix":function(p,v){var h=c(p.toArray(),v.toArray());return Array.isArray(h)?t(h):h}});function c(d,p){var v=[];if(Array.isArray(d[0])&&Array.isArray(p[0])){if(d.length!==p.length)throw new SyntaxError("Dimension mismatch. Array A and B must have the same length.");for(var h=0;h<d.length;h++){if(d[h].length!==p[h].length)throw new SyntaxError("Dimension mismatch. Array A and B must have the same number of elements.");v.push(f(d[h],p[h]))}return v}else{if(d.length!==p.length)throw new SyntaxError("Dimension mismatch. Array A and B must have the same number of elements.");return f(d,p)}}function f(d,p){var v=d.length,h=a(d),w=a(p),b=d.reduce((y,D,S)=>i(y,l(D,p[S])),0),A=a(d.map(y=>u(y,2))),g=a(p.map(y=>u(y,2))),N=o(l(v,b),l(h,w)),x=n(l(o(l(v,A),u(h,2)),o(l(v,g),u(w,2))));return s(N,x)}}),_g="combinations",Dz=["typed"],Sz=P(_g,Dz,e=>{var{typed:r}=e;return r(_g,{"number, number":tp,"BigNumber, BigNumber":function(n,a){var i=n.constructor,o,l,u=n.minus(a),s=new i(1);if(!Tg(n)||!Tg(a))throw new TypeError("Positive integer value expected in function combinations");if(a.gt(n))throw new TypeError("k must be less than n in function combinations");if(o=s,a.lt(u))for(l=s;l.lte(u);l=l.plus(s))o=o.times(a.plus(l)).dividedBy(l);else for(l=s;l.lte(a);l=l.plus(s))o=o.times(u.plus(l)).dividedBy(l);return o}})});function Tg(e){return e.isInteger()&&e.gte(0)}var Fg="combinationsWithRep",Cz=["typed"],Mz=P(Fg,Cz,e=>{var{typed:r}=e;return r(Fg,{"number, number":function(n,a){if(!Ce(n)||n<0)throw new TypeError("Positive integer value expected in function combinationsWithRep");if(!Ce(a)||a<0)throw new TypeError("Positive integer value expected in function combinationsWithRep");if(n<1)throw new TypeError("k must be less than or equal to n + k - 1");if(a<n-1){var i=Yt(n,n+a-1);return i/Yt(1,a)}var o=Yt(a+1,n+a-1);return o/Yt(1,n-1)},"BigNumber, BigNumber":function(n,a){var i=n.constructor,o,l,u=new i(1),s=n.minus(u);if(!Bg(n)||!Bg(a))throw new TypeError("Positive integer value expected in function combinationsWithRep");if(n.lt(u))throw new TypeError("k must be less than or equal to n + k - 1 in function combinationsWithRep");if(o=u,a.lt(s))for(l=u;l.lte(s);l=l.plus(u))o=o.times(a.plus(l)).dividedBy(l);else for(l=u;l.lte(a);l=l.plus(u))o=o.times(s.plus(l)).dividedBy(l);return o}})});function Bg(e){return e.isInteger()&&e.gte(0)}var Og="gamma",_z=["typed","config","multiplyScalar","pow","BigNumber","Complex"],Tz=P(Og,_z,e=>{var{typed:r,config:t,multiplyScalar:n,pow:a,BigNumber:i,Complex:o}=e;function l(s){if(s.im===0)return bo(s.re);if(s.re<.5){var c=new o(1-s.re,-s.im),f=new o(Math.PI*s.re,Math.PI*s.im);return new o(Math.PI).div(f.sin()).div(l(c))}s=new o(s.re-1,s.im);for(var d=new o(Sa[0],0),p=1;p<Sa.length;++p){var v=new o(Sa[p],0);d=d.add(v.div(s.add(p)))}var h=new o(s.re+ap+.5,s.im),w=Math.sqrt(2*Math.PI),b=h.pow(s.add(.5)),A=h.neg().exp();return d.mul(w).mul(b).mul(A)}return r(Og,{number:bo,Complex:l,BigNumber:function(c){if(c.isInteger())return c.isNegative()||c.isZero()?new i(1/0):u(c.minus(1));if(!c.isFinite())return new i(c.isNegative()?NaN:1/0);throw new Error("Integer BigNumber expected")}});function u(s){if(s<8)return new i([1,1,2,6,24,120,720,5040][s]);var c=t.precision+(Math.log(s.toNumber())|0),f=i.clone({precision:c});if(s%2===1)return s.times(u(new i(s-1)));for(var d=s,p=new f(s),v=s.toNumber();d>2;)d-=2,v+=d,p=p.times(v);return new i(p.toPrecision(i.precision))}}),$g="lgamma",Fz=["Complex","typed"],Bz=P($g,Fz,e=>{var{Complex:r,typed:t}=e,n=7,a=7,i=[-.029550653594771242,.00641025641025641,-.0019175269175269176,.0008417508417508417,-.0005952380952380953,.0007936507936507937,-.002777777777777778,.08333333333333333];return t($g,{number:wo,Complex:o,BigNumber:function(){throw new Error("mathjs doesn't yet provide an implementation of the algorithm lgamma for BigNumber")}});function o(s){var c=6.283185307179586,f=1.1447298858494002,d=.1;if(s.isNaN())return new r(NaN,NaN);if(s.im===0)return new r(wo(s.re),0);if(s.re>=n||Math.abs(s.im)>=a)return l(s);if(s.re<=d){var p=SS(c,s.im)*Math.floor(.5*s.re+.25),v=s.mul(Math.PI).sin().log(),h=o(new r(1-s.re,-s.im));return new r(f,p).sub(v).sub(h)}else return s.im>=0?u(s):u(s.conjugate()).conjugate()}function l(s){for(var c=s.sub(.5).mul(s.log()).sub(s).add(ip),f=new r(1,0).div(s),d=f.div(s),p=i[0],v=i[1],h=2*d.re,w=d.re*d.re+d.im*d.im,b=2;b<8;b++){var A=v;v=-w*p+i[b],p=h*p+A}var g=f.mul(d.mul(p).add(v));return c.add(g)}function u(s){var c=0,f=0,d=s;for(s=s.add(1);s.re<=n;){d=d.mul(s);var p=d.im<0?1:0;p!==0&&f===0&&c++,f=p,s=s.add(1)}return l(s).sub(d.log()).sub(new r(0,c*2*Math.PI*1))}}),Ig="factorial",Oz=["typed","gamma"],$z=P(Ig,Oz,e=>{var{typed:r,gamma:t}=e;return r(Ig,{number:function(a){if(a<0)throw new Error("Value must be non-negative");return t(a+1)},BigNumber:function(a){if(a.isNegative())throw new Error("Value must be non-negative");return t(a.plus(1))},"Array | Matrix":r.referToSelf(n=>a=>Le(a,n))})}),Rg="kldivergence",Iz=["typed","matrix","divide","sum","multiply","map","dotDivide","log","isNumeric"],Rz=P(Rg,Iz,e=>{var{typed:r,matrix:t,divide:n,sum:a,multiply:i,map:o,dotDivide:l,log:u,isNumeric:s}=e;return r(Rg,{"Array, Array":function(d,p){return c(t(d),t(p))},"Matrix, Array":function(d,p){return c(d,t(p))},"Array, Matrix":function(d,p){return c(t(d),p)},"Matrix, Matrix":function(d,p){return c(d,p)}});function c(f,d){var p=d.size().length,v=f.size().length;if(p>1)throw new Error("first object must be one dimensional");if(v>1)throw new Error("second object must be one dimensional");if(p!==v)throw new Error("Length of two vectors must be equal");var h=a(f);if(h===0)throw new Error("Sum of elements in first object must be non zero");var w=a(d);if(w===0)throw new Error("Sum of elements in second object must be non zero");var b=n(f,a(f)),A=n(d,a(d)),g=a(i(b,o(l(b,A),N=>u(N))));return s(g)?g:Number.NaN}}),zg="multinomial",zz=["typed","add","divide","multiply","factorial","isInteger","isPositive"],Pz=P(zg,zz,e=>{var{typed:r,add:t,divide:n,multiply:a,factorial:i,isInteger:o,isPositive:l}=e;return r(zg,{"Array | Matrix":function(s){var c=0,f=1;return Jt(s,function(d){if(!o(d)||!l(d))throw new TypeError("Positive integer value expected in function multinomial");c=t(c,d),f=a(f,i(d))}),n(i(c),f)}})}),Pg="permutations",kz=["typed","factorial"],qz=P(Pg,kz,e=>{var{typed:r,factorial:t}=e;return r(Pg,{"number | BigNumber":t,"number, number":function(a,i){if(!Ce(a)||a<0)throw new TypeError("Positive integer value expected in function permutations");if(!Ce(i)||i<0)throw new TypeError("Positive integer value expected in function permutations");if(i>a)throw new TypeError("second argument k must be less than or equal to first argument n");return Yt(a-i+1,a)},"BigNumber, BigNumber":function(a,i){var o,l;if(!kg(a)||!kg(i))throw new TypeError("Positive integer value expected in function permutations");if(i.gt(a))throw new TypeError("second argument k must be less than or equal to first argument n");var u=a.mul(0).add(1);for(o=u,l=a.minus(i).plus(1);l.lte(a);l=l.plus(1))o=o.times(l);return o}})});function kg(e){return e.isInteger()&&e.gte(0)}var tl={exports:{}};tl.exports,function(e){(function(r,t,n){function a(u){var s=this,c=l();s.next=function(){var f=2091639*s.s0+s.c*23283064365386963e-26;return s.s0=s.s1,s.s1=s.s2,s.s2=f-(s.c=f|0)},s.c=1,s.s0=c(" "),s.s1=c(" "),s.s2=c(" "),s.s0-=c(u),s.s0<0&&(s.s0+=1),s.s1-=c(u),s.s1<0&&(s.s1+=1),s.s2-=c(u),s.s2<0&&(s.s2+=1),c=null}function i(u,s){return s.c=u.c,s.s0=u.s0,s.s1=u.s1,s.s2=u.s2,s}function o(u,s){var c=new a(u),f=s&&s.state,d=c.next;return d.int32=function(){return c.next()*4294967296|0},d.double=function(){return d()+(d()*2097152|0)*11102230246251565e-32},d.quick=d,f&&(typeof f=="object"&&i(f,c),d.state=function(){return i(c,{})}),d}function l(){var u=4022871197,s=function(c){c=String(c);for(var f=0;f<c.length;f++){u+=c.charCodeAt(f);var d=.02519603282416938*u;u=d>>>0,d-=u,d*=u,u=d>>>0,d-=u,u+=d*4294967296}return(u>>>0)*23283064365386963e-26};return s}t&&t.exports?t.exports=o:this.alea=o})(Rn,e)}(tl);var Lz=tl.exports,nl={exports:{}};nl.exports,function(e){(function(r,t,n){function a(l){var u=this,s="";u.x=0,u.y=0,u.z=0,u.w=0,u.next=function(){var f=u.x^u.x<<11;return u.x=u.y,u.y=u.z,u.z=u.w,u.w^=u.w>>>19^f^f>>>8},l===(l|0)?u.x=l:s+=l;for(var c=0;c<s.length+64;c++)u.x^=s.charCodeAt(c)|0,u.next()}function i(l,u){return u.x=l.x,u.y=l.y,u.z=l.z,u.w=l.w,u}function o(l,u){var s=new a(l),c=u&&u.state,f=function(){return(s.next()>>>0)/4294967296};return f.double=function(){do var d=s.next()>>>11,p=(s.next()>>>0)/4294967296,v=(d+p)/(1<<21);while(v===0);return v},f.int32=s.next,f.quick=f,c&&(typeof c=="object"&&i(c,s),f.state=function(){return i(s,{})}),f}t&&t.exports?t.exports=o:this.xor128=o})(Rn,e)}(nl);var Vz=nl.exports,al={exports:{}};al.exports,function(e){(function(r,t,n){function a(l){var u=this,s="";u.next=function(){var f=u.x^u.x>>>2;return u.x=u.y,u.y=u.z,u.z=u.w,u.w=u.v,(u.d=u.d+362437|0)+(u.v=u.v^u.v<<4^(f^f<<1))|0},u.x=0,u.y=0,u.z=0,u.w=0,u.v=0,l===(l|0)?u.x=l:s+=l;for(var c=0;c<s.length+64;c++)u.x^=s.charCodeAt(c)|0,c==s.length&&(u.d=u.x<<10^u.x>>>4),u.next()}function i(l,u){return u.x=l.x,u.y=l.y,u.z=l.z,u.w=l.w,u.v=l.v,u.d=l.d,u}function o(l,u){var s=new a(l),c=u&&u.state,f=function(){return(s.next()>>>0)/4294967296};return f.double=function(){do var d=s.next()>>>11,p=(s.next()>>>0)/4294967296,v=(d+p)/(1<<21);while(v===0);return v},f.int32=s.next,f.quick=f,c&&(typeof c=="object"&&i(c,s),f.state=function(){return i(s,{})}),f}t&&t.exports?t.exports=o:this.xorwow=o})(Rn,e)}(al);var Uz=al.exports,il={exports:{}};il.exports,function(e){(function(r,t,n){function a(l){var u=this;u.next=function(){var c=u.x,f=u.i,d,p;return d=c[f],d^=d>>>7,p=d^d<<24,d=c[f+1&7],p^=d^d>>>10,d=c[f+3&7],p^=d^d>>>3,d=c[f+4&7],p^=d^d<<7,d=c[f+7&7],d=d^d<<13,p^=d^d<<9,c[f]=p,u.i=f+1&7,p};function s(c,f){var d,p=[];if(f===(f|0))p[0]=f;else for(f=""+f,d=0;d<f.length;++d)p[d&7]=p[d&7]<<15^f.charCodeAt(d)+p[d+1&7]<<13;for(;p.length<8;)p.push(0);for(d=0;d<8&&p[d]===0;++d);for(d==8?p[7]=-1:p[d],c.x=p,c.i=0,d=256;d>0;--d)c.next()}s(u,l)}function i(l,u){return u.x=l.x.slice(),u.i=l.i,u}function o(l,u){l==null&&(l=+new Date);var s=new a(l),c=u&&u.state,f=function(){return(s.next()>>>0)/4294967296};return f.double=function(){do var d=s.next()>>>11,p=(s.next()>>>0)/4294967296,v=(d+p)/(1<<21);while(v===0);return v},f.int32=s.next,f.quick=f,c&&(c.x&&i(c,s),f.state=function(){return i(s,{})}),f}t&&t.exports?t.exports=o:this.xorshift7=o})(Rn,e)}(il);var Hz=il.exports,ol={exports:{}};ol.exports,function(e){(function(r,t,n){function a(l){var u=this;u.next=function(){var c=u.w,f=u.X,d=u.i,p,v;return u.w=c=c+1640531527|0,v=f[d+34&127],p=f[d=d+1&127],v^=v<<13,p^=p<<17,v^=v>>>15,p^=p>>>12,v=f[d]=v^p,u.i=d,v+(c^c>>>16)|0};function s(c,f){var d,p,v,h,w,b=[],A=128;for(f===(f|0)?(p=f,f=null):(f=f+"\0",p=0,A=Math.max(A,f.length)),v=0,h=-32;h<A;++h)f&&(p^=f.charCodeAt((h+32)%f.length)),h===0&&(w=p),p^=p<<10,p^=p>>>15,p^=p<<4,p^=p>>>13,h>=0&&(w=w+1640531527|0,d=b[h&127]^=p+w,v=d==0?v+1:0);for(v>=128&&(b[(f&&f.length||0)&127]=-1),v=127,h=4*128;h>0;--h)p=b[v+34&127],d=b[v=v+1&127],p^=p<<13,d^=d<<17,p^=p>>>15,d^=d>>>12,b[v]=p^d;c.w=w,c.X=b,c.i=v}s(u,l)}function i(l,u){return u.i=l.i,u.w=l.w,u.X=l.X.slice(),u}function o(l,u){l==null&&(l=+new Date);var s=new a(l),c=u&&u.state,f=function(){return(s.next()>>>0)/4294967296};return f.double=function(){do var d=s.next()>>>11,p=(s.next()>>>0)/4294967296,v=(d+p)/(1<<21);while(v===0);return v},f.int32=s.next,f.quick=f,c&&(c.X&&i(c,s),f.state=function(){return i(s,{})}),f}t&&t.exports?t.exports=o:this.xor4096=o})(Rn,e)}(ol);var Zz=ol.exports,sl={exports:{}};sl.exports,function(e){(function(r,t,n){function a(l){var u=this,s="";u.next=function(){var f=u.b,d=u.c,p=u.d,v=u.a;return f=f<<25^f>>>7^d,d=d-p|0,p=p<<24^p>>>8^v,v=v-f|0,u.b=f=f<<20^f>>>12^d,u.c=d=d-p|0,u.d=p<<16^d>>>16^v,u.a=v-f|0},u.a=0,u.b=0,u.c=-1640531527,u.d=1367130551,l===Math.floor(l)?(u.a=l/4294967296|0,u.b=l|0):s+=l;for(var c=0;c<s.length+20;c++)u.b^=s.charCodeAt(c)|0,u.next()}function i(l,u){return u.a=l.a,u.b=l.b,u.c=l.c,u.d=l.d,u}function o(l,u){var s=new a(l),c=u&&u.state,f=function(){return(s.next()>>>0)/4294967296};return f.double=function(){do var d=s.next()>>>11,p=(s.next()>>>0)/4294967296,v=(d+p)/(1<<21);while(v===0);return v},f.int32=s.next,f.quick=f,c&&(typeof c=="object"&&i(c,s),f.state=function(){return i(s,{})}),f}t&&t.exports?t.exports=o:this.tychei=o})(Rn,e)}(sl);var Gz=sl.exports,qg={exports:{}};const Wz=LE(Object.freeze(Object.defineProperty({__proto__:null,default:{}},Symbol.toStringTag,{value:"Module"})));(function(e){(function(r,t,n){var a=256,i=6,o=52,l="random",u=n.pow(a,i),s=n.pow(2,o),c=s*2,f=a-1,d;function p(N,x,y){var D=[];x=x==!0?{entropy:!0}:x||{};var S=b(w(x.entropy?[N,g(t)]:N??A(),3),D),E=new v(D),C=function(){for(var _=E.g(i),F=u,I=0;_<s;)_=(_+I)*a,F*=a,I=E.g(1);for(;_>=c;)_/=2,F/=2,I>>>=1;return(_+I)/F};return C.int32=function(){return E.g(4)|0},C.quick=function(){return E.g(4)/4294967296},C.double=C,b(g(E.S),t),(x.pass||y||function(_,F,I,R){return R&&(R.S&&h(R,E),_.state=function(){return h(E,{})}),I?(n[l]=_,F):_})(C,S,"global"in x?x.global:this==n,x.state)}function v(N){var x,y=N.length,D=this,S=0,E=D.i=D.j=0,C=D.S=[];for(y||(N=[y++]);S<a;)C[S]=S++;for(S=0;S<a;S++)C[S]=C[E=f&E+N[S%y]+(x=C[S])],C[E]=x;(D.g=function(_){for(var F,I=0,R=D.i,$=D.j,M=D.S;_--;)F=M[R=f&R+1],I=I*a+M[f&(M[R]=M[$=f&$+F])+(M[$]=F)];return D.i=R,D.j=$,I})(a)}function h(N,x){return x.i=N.i,x.j=N.j,x.S=N.S.slice(),x}function w(N,x){var y=[],D=typeof N,S;if(x&&D=="object")for(S in N)try{y.push(w(N[S],x-1))}catch{}return y.length?y:D=="string"?N:N+"\0"}function b(N,x){for(var y=N+"",D,S=0;S<y.length;)x[f&S]=f&(D^=x[f&S]*19)+y.charCodeAt(S++);return g(x)}function A(){try{var N;return d&&(N=d.randomBytes)?N=N(a):(N=new Uint8Array(a),(r.crypto||r.msCrypto).getRandomValues(N)),g(N)}catch{var x=r.navigator,y=x&&x.plugins;return[+new Date,r,y,r.screen,g(t)]}}function g(N){return String.fromCharCode.apply(0,N)}if(b(n.random(),t),e.exports){e.exports=p;try{d=Wz}catch{}}else n["seed"+l]=p})(typeof self<"u"?self:Rn,[],Math)})(qg);var jz=qg.exports,Kz=Lz,Jz=Vz,Yz=Uz,Xz=Hz,Qz=Zz,eP=Gz,Zn=jz;Zn.alea=Kz,Zn.xor128=Jz,Zn.xorwow=Yz,Zn.xorshift7=Xz,Zn.xor4096=Qz,Zn.tychei=eP;var rP=Zn;const Lg=Zi(rP);var tP=Lg(Date.now());function Ba(e){var r;function t(a){r=a===null?tP:Lg(String(a))}t(e);function n(){return r()}return n}var Vg="pickRandom",nP=["typed","config","?on"],aP=P(Vg,nP,e=>{var{typed:r,config:t,on:n}=e,a=Ba(t.randomSeed);return n&&n("config",function(o,l){o.randomSeed!==l.randomSeed&&(a=Ba(o.randomSeed))}),r(Vg,{"Array | Matrix":function(l){return i(l,{})},"Array | Matrix, Object":function(l,u){return i(l,u)},"Array | Matrix, number":function(l,u){return i(l,{number:u})},"Array | Matrix, Array | Matrix":function(l,u){return i(l,{weights:u})},"Array | Matrix, Array | Matrix, number":function(l,u,s){return i(l,{number:s,weights:u})},"Array | Matrix, number, Array | Matrix":function(l,u,s){return i(l,{number:u,weights:s})}});function i(o,l){var{number:u,weights:s,elementWise:c=!0}=l,f=typeof u>"u";f&&(u=1);var d=_e(o)?o.create:_e(s)?s.create:null;o=o.valueOf(),s&&(s=s.valueOf()),c===!0&&(o=We(o),s=We(s));var p=0;if(typeof s<"u"){if(s.length!==o.length)throw new Error("Weights must have the same length as possibles");for(var v=0,h=s.length;v<h;v++){if(!Re(s[v])||s[v]<0)throw new Error("Weights must be an array of positive numbers");p+=s[v]}}for(var w=o.length,b=[],A;b.length<u;){if(typeof s>"u")A=o[Math.floor(a()*w)];else for(var g=a()*p,N=0,x=o.length;N<x;N++)if(g-=s[N],g<0){A=o[N];break}b.push(A)}return f?b[0]:d?d(b):b}});function ul(e,r){var t=[];if(e=e.slice(0),e.length>1)for(var n=0,a=e.shift();n<a;n++)t.push(ul(e,r));else for(var i=0,o=e.shift();i<o;i++)t.push(r());return t}var Ug="random",iP=["typed","config","?on"],oP=P(Ug,iP,e=>{var{typed:r,config:t,on:n}=e,a=Ba(t.randomSeed);return n&&n("config",function(l,u){l.randomSeed!==u.randomSeed&&(a=Ba(l.randomSeed))}),r(Ug,{"":()=>o(0,1),number:l=>o(0,l),"number, number":(l,u)=>o(l,u),"Array | Matrix":l=>i(l,0,1),"Array | Matrix, number":(l,u)=>i(l,0,u),"Array | Matrix, number, number":(l,u,s)=>i(l,u,s)});function i(l,u,s){var c=ul(l.valueOf(),()=>o(u,s));return _e(l)?l.create(c,"number"):c}function o(l,u){return l+a()*(u-l)}}),Hg="randomInt",sP=["typed","config","?on"],uP=P(Hg,sP,e=>{var{typed:r,config:t,on:n}=e,a=Ba(t.randomSeed);return n&&n("config",function(l,u){l.randomSeed!==u.randomSeed&&(a=Ba(l.randomSeed))}),r(Hg,{"":()=>o(0,1),number:l=>o(0,l),"number, number":(l,u)=>o(l,u),"Array | Matrix":l=>i(l,0,1),"Array | Matrix, number":(l,u)=>i(l,0,u),"Array | Matrix, number, number":(l,u,s)=>i(l,u,s)});function i(l,u,s){var c=ul(l.valueOf(),()=>o(u,s));return _e(l)?l.create(c,"number"):c}function o(l,u){return Math.floor(l+a()*(u-l))}}),Zg="stirlingS2",lP=["typed","addScalar","subtractScalar","multiplyScalar","divideScalar","pow","factorial","combinations","isNegative","isInteger","number","?bignumber","larger"],cP=P(Zg,lP,e=>{var{typed:r,addScalar:t,subtractScalar:n,multiplyScalar:a,divideScalar:i,pow:o,factorial:l,combinations:u,isNegative:s,isInteger:c,number:f,bignumber:d,larger:p}=e,v=[],h=[];return r(Zg,{"number | BigNumber, number | BigNumber":function(b,A){if(!c(b)||s(b)||!c(A)||s(A))throw new TypeError("Non-negative integer value expected in function stirlingS2");if(p(A,b))throw new TypeError("k must be less than or equal to n in function stirlingS2");var g=!(Re(b)&&Re(A)),N=g?h:v,x=g?d:f,y=f(b),D=f(A);if(N[y]&&N[y].length>D)return N[y][D];for(var S=0;S<=y;++S)if(N[S]||(N[S]=[x(S===0?1:0)]),S!==0)for(var E=N[S],C=N[S-1],_=E.length;_<=S&&_<=D;++_)_===S?E[_]=1:E[_]=t(a(x(_),C[_]),C[_-1]);return N[y][D]}})}),Gg="bellNumbers",fP=["typed","addScalar","isNegative","isInteger","stirlingS2"],dP=P(Gg,fP,e=>{var{typed:r,addScalar:t,isNegative:n,isInteger:a,stirlingS2:i}=e;return r(Gg,{"number | BigNumber":function(l){if(!a(l)||n(l))throw new TypeError("Non-negative integer value expected in function bellNumbers");for(var u=0,s=0;s<=l;s++)u=t(u,i(l,s));return u}})}),Wg="catalan",mP=["typed","addScalar","divideScalar","multiplyScalar","combinations","isNegative","isInteger"],pP=P(Wg,mP,e=>{var{typed:r,addScalar:t,divideScalar:n,multiplyScalar:a,combinations:i,isNegative:o,isInteger:l}=e;return r(Wg,{"number | BigNumber":function(s){if(!l(s)||o(s))throw new TypeError("Non-negative integer value expected in function catalan");return n(i(a(s,2),s),t(s,1))}})}),jg="composition",vP=["typed","addScalar","combinations","isNegative","isPositive","isInteger","larger"],hP=P(jg,vP,e=>{var{typed:r,addScalar:t,combinations:n,isPositive:a,isNegative:i,isInteger:o,larger:l}=e;return r(jg,{"number | BigNumber, number | BigNumber":function(s,c){if(!o(s)||!a(s)||!o(c)||!a(c))throw new TypeError("Positive integer value expected in function composition");if(l(c,s))throw new TypeError("k must be less than or equal to n in function composition");return n(t(s,-1),t(c,-1))}})}),Kg="leafCount",gP=["parse","typed"],yP=P(Kg,gP,e=>{var{parse:r,typed:t}=e;function n(a){var i=0;return a.forEach(o=>{i+=n(o)}),i||1}return t(Kg,{Node:function(i){return n(i)}})});function Jg(e){return Ze(e)||pr(e)&&e.isUnary()&&Ze(e.args[0])}function Jo(e){return!!(Ze(e)||(Gt(e)||pr(e))&&e.args.every(Jo)||_t(e)&&Jo(e.content))}function Yg(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),t.push.apply(t,n)}return t}function ll(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};r%2?Yg(Object(t),!0).forEach(function(n){Nr(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Yg(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}var bP="simplifyUtil",wP=["FunctionNode","OperatorNode","SymbolNode"],cl=P(bP,wP,e=>{var{FunctionNode:r,OperatorNode:t,SymbolNode:n}=e,a=!0,i=!1,o="defaultF",l={add:{trivial:a,total:a,commutative:a,associative:a},unaryPlus:{trivial:a,total:a,commutative:a,associative:a},subtract:{trivial:i,total:a,commutative:i,associative:i},multiply:{trivial:a,total:a,commutative:a,associative:a},divide:{trivial:i,total:a,commutative:i,associative:i},paren:{trivial:a,total:a,commutative:a,associative:i},defaultF:{trivial:i,total:a,commutative:i,associative:i}},u={divide:{total:i},log:{total:i}},s={subtract:{total:i},abs:{trivial:a},log:{total:a}};function c(g,N){var x=arguments.length>2&&arguments[2]!==void 0?arguments[2]:l,y=o;if(typeof g=="string"?y=g:pr(g)?y=g.fn.toString():Gt(g)?y=g.name:_t(g)&&(y="paren"),De(x,y)){var D=x[y];if(De(D,N))return D[N];if(De(l,y))return l[y][N]}if(De(x,o)){var S=x[o];return De(S,N)?S[N]:l[o][N]}if(De(l,y)){var E=l[y];if(De(E,N))return E[N]}return l[o][N]}function f(g){var N=arguments.length>1&&arguments[1]!==void 0?arguments[1]:l;return c(g,"commutative",N)}function d(g){var N=arguments.length>1&&arguments[1]!==void 0?arguments[1]:l;return c(g,"associative",N)}function p(g,N){var x=ll({},g);for(var y in N)De(g,y)?x[y]=ll(ll({},N[y]),g[y]):x[y]=N[y];return x}function v(g,N){if(!g.args||g.args.length===0)return g;g.args=h(g,N);for(var x=0;x<g.args.length;x++)v(g.args[x],N)}function h(g,N){var x,y=[],D=function(E){for(var C=0;C<E.args.length;C++){var _=E.args[C];pr(_)&&x===_.op?D(_):y.push(_)}};return d(g,N)?(x=g.op,D(g),y):g.args}function w(g,N){if(!(!g.args||g.args.length===0)){for(var x=A(g),y=g.args.length,D=0;D<y;D++)w(g.args[D],N);if(y>2&&d(g,N)){for(var S=g.args.pop();g.args.length>0;)S=x([g.args.pop(),S]);g.args=S.args}}}function b(g,N){if(!(!g.args||g.args.length===0)){for(var x=A(g),y=g.args.length,D=0;D<y;D++)b(g.args[D],N);if(y>2&&d(g,N)){for(var S=g.args.shift();g.args.length>0;)S=x([S,g.args.shift()]);g.args=S.args}}}function A(g){return pr(g)?function(N){try{return new t(g.op,g.fn,N,g.implicit)}catch(x){return console.error(x),[]}}:function(N){return new r(new n(g.name),N)}}return{createMakeNodeFunction:A,hasProperty:c,isCommutative:f,isAssociative:d,mergeContext:p,flatten:v,allChildren:h,unflattenr:w,unflattenl:b,defaultContext:l,realContext:u,positiveContext:s}}),xP="simplify",NP=["typed","parse","equal","resolve","simplifyConstant","simplifyCore","AccessorNode","ArrayNode","ConstantNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","ParenthesisNode","SymbolNode"],AP=P(xP,NP,e=>{var{typed:r,parse:t,equal:n,resolve:a,simplifyConstant:i,simplifyCore:o,AccessorNode:l,ArrayNode:u,ConstantNode:s,FunctionNode:c,IndexNode:f,ObjectNode:d,OperatorNode:p,ParenthesisNode:v,SymbolNode:h}=e,{hasProperty:w,isCommutative:b,isAssociative:A,mergeContext:g,flatten:N,unflattenr:x,unflattenl:y,createMakeNodeFunction:D,defaultContext:S,realContext:E,positiveContext:C}=cl({FunctionNode:c,OperatorNode:p,SymbolNode:h});r.addConversion({from:"Object",to:"Map",convert:ca});var _=r("simplify",{Node:k,"Node, Map":(q,Z)=>k(q,!1,Z),"Node, Map, Object":(q,Z,j)=>k(q,!1,Z,j),"Node, Array":k,"Node, Array, Map":k,"Node, Array, Map, Object":k});r.removeConversion({from:"Object",to:"Map",convert:ca}),_.defaultContext=S,_.realContext=E,_.positiveContext=C;function F(q){return q.transform(function(Z){return _t(Z)?F(Z.content):Z})}var I={true:!0,false:!0,e:!0,i:!0,Infinity:!0,LN2:!0,LN10:!0,LOG2E:!0,LOG10E:!0,NaN:!0,phi:!0,pi:!0,SQRT1_2:!0,SQRT2:!0,tau:!0};_.rules=[o,{l:"log(e)",r:"1"},{s:"n-n1 -> n+-n1",assuming:{subtract:{total:!0}}},{s:"n-n -> 0",assuming:{subtract:{total:!1}}},{s:"-(cl*v) -> v * (-cl)",assuming:{multiply:{commutative:!0},subtract:{total:!0}}},{s:"-(cl*v) -> (-cl) * v",assuming:{multiply:{commutative:!1},subtract:{total:!0}}},{s:"-(v*cl) -> v * (-cl)",assuming:{multiply:{commutative:!1},subtract:{total:!0}}},{l:"-(n1/n2)",r:"-n1/n2"},{l:"-v",r:"v * (-1)"},{l:"(n1 + n2)*(-1)",r:"n1*(-1) + n2*(-1)",repeat:!0},{l:"n/n1^n2",r:"n*n1^-n2"},{l:"n/n1",r:"n*n1^-1"},{s:"(n1*n2)^n3 -> n1^n3 * n2^n3",assuming:{multiply:{commutative:!0}}},{s:"(n1*n2)^(-1) -> n2^(-1) * n1^(-1)",assuming:{multiply:{commutative:!1}}},{s:"(n ^ n1) ^ n2 -> n ^ (n1 * n2)",assuming:{divide:{total:!0}}},{l:" vd * ( vd * n1 + n2)",r:"vd^2 * n1 + vd * n2"},{s:" vd * (vd^n4 * n1 + n2) -> vd^(1+n4) * n1 + vd * n2",assuming:{divide:{total:!0}}},{s:"vd^n3 * ( vd * n1 + n2) -> vd^(n3+1) * n1 + vd^n3 * n2",assuming:{divide:{total:!0}}},{s:"vd^n3 * (vd^n4 * n1 + n2) -> vd^(n3+n4) * n1 + vd^n3 * n2",assuming:{divide:{total:!0}}},{l:"n*n",r:"n^2"},{s:"n * n^n1 -> n^(n1+1)",assuming:{divide:{total:!0}}},{s:"n^n1 * n^n2 -> n^(n1+n2)",assuming:{divide:{total:!0}}},i,{s:"n+n -> 2*n",assuming:{add:{total:!0}}},{l:"n+-n",r:"0"},{l:"vd*n + vd",r:"vd*(n+1)"},{l:"n3*n1 + n3*n2",r:"n3*(n1+n2)"},{l:"n3^(-n4)*n1 + n3 * n2",r:"n3^(-n4)*(n1 + n3^(n4+1) *n2)"},{l:"n3^(-n4)*n1 + n3^n5 * n2",r:"n3^(-n4)*(n1 + n3^(n4+n5)*n2)"},{s:"n*vd + vd -> (n+1)*vd",assuming:{multiply:{commutative:!1}}},{s:"vd + n*vd -> (1+n)*vd",assuming:{multiply:{commutative:!1}}},{s:"n1*n3 + n2*n3 -> (n1+n2)*n3",assuming:{multiply:{commutative:!1}}},{s:"n^n1 * n -> n^(n1+1)",assuming:{divide:{total:!0},multiply:{commutative:!1}}},{s:"n1*n3^(-n4) + n2 * n3 -> (n1 + n2*n3^(n4 + 1))*n3^(-n4)",assuming:{multiply:{commutative:!1}}},{s:"n1*n3^(-n4) + n2 * n3^n5 -> (n1 + n2*n3^(n4 + n5))*n3^(-n4)",assuming:{multiply:{commutative:!1}}},{l:"n*cd + cd",r:"(n+1)*cd"},{s:"cd*n + cd -> cd*(n+1)",assuming:{multiply:{commutative:!1}}},{s:"cd + cd*n -> cd*(1+n)",assuming:{multiply:{commutative:!1}}},i,{s:"(-n)*n1 -> -(n*n1)",assuming:{subtract:{total:!0}}},{s:"n1*(-n) -> -(n1*n)",assuming:{subtract:{total:!0},multiply:{commutative:!1}}},{s:"ce+ve -> ve+ce",assuming:{add:{commutative:!0}},imposeContext:{add:{commutative:!1}}},{s:"vd*cd -> cd*vd",assuming:{multiply:{commutative:!0}},imposeContext:{multiply:{commutative:!1}}},{l:"n+-n1",r:"n-n1"},{l:"n+-(n1)",r:"n-(n1)"},{s:"n*(n1^-1) -> n/n1",assuming:{multiply:{commutative:!0}}},{s:"n*n1^-n2 -> n/n1^n2",assuming:{multiply:{commutative:!0}}},{s:"n^-1 -> 1/n",assuming:{multiply:{commutative:!0}}},{l:"n^1",r:"n"},{s:"n*(n1/n2) -> (n*n1)/n2",assuming:{multiply:{associative:!0}}},{s:"n-(n1+n2) -> n-n1-n2",assuming:{addition:{associative:!0,commutative:!0}}},{l:"1*n",r:"n",imposeContext:{multiply:{commutative:!0}}},{s:"n1/(n2/n3) -> (n1*n3)/n2",assuming:{multiply:{associative:!0}}},{l:"n1/(-n2)",r:"-n1/n2"}];function R(q,Z){var j={};if(q.s){var Y=q.s.split("->");if(Y.length===2)j.l=Y[0],j.r=Y[1];else throw SyntaxError("Could not parse rule: "+q.s)}else j.l=q.l,j.r=q.r;j.l=F(t(j.l)),j.r=F(t(j.r));for(var ee of["imposeContext","repeat","assuming"])ee in q&&(j[ee]=q[ee]);if(q.evaluate&&(j.evaluate=t(q.evaluate)),A(j.l,Z)){var te=!b(j.l,Z),oe;te&&(oe=T());var ve=D(j.l),L=T();j.expanded={},j.expanded.l=ve([j.l,L]),N(j.expanded.l,Z),x(j.expanded.l,Z),j.expanded.r=ve([j.r,L]),te&&(j.expandedNC1={},j.expandedNC1.l=ve([oe,j.l]),j.expandedNC1.r=ve([oe,j.r]),j.expandedNC2={},j.expandedNC2.l=ve([oe,j.expanded.l]),j.expandedNC2.r=ve([oe,j.expanded.r]))}return j}function $(q,Z){for(var j=[],Y=0;Y<q.length;Y++){var ee=q[Y],te=void 0,oe=typeof ee;switch(oe){case"string":ee={s:ee};case"object":te=R(ee,Z);break;case"function":te=ee;break;default:throw TypeError("Unsupported type of rule: "+oe)}j.push(te)}return j}var M=0;function T(){return new h("_p"+M++)}function k(q,Z){var j=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ka(),Y=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},ee=Y.consoleDebug;Z=$(Z||_.rules,Y.context);var te=a(q,j);te=F(te);for(var oe={},ve=te.toString({parenthesis:"all"});!oe[ve];){oe[ve]=!0,M=0;var L=ve;ee&&console.log("Working on: ",ve);for(var H=0;H<Z.length;H++){var ne="";if(typeof Z[H]=="function"?(te=Z[H](te,Y),ee&&(ne=Z[H].name)):(N(te,Y.context),te=W(te,Z[H],Y.context),ee&&(ne="".concat(Z[H].l.toString()," -> ").concat(Z[H].r.toString()))),ee){var ie=te.toString({parenthesis:"all"});ie!==L&&(console.log("Applying",ne,"produced",ie),L=ie)}y(te,Y.context)}ve=te.toString({parenthesis:"all"})}return te}function O(q,Z,j){var Y=q;if(q)for(var ee=0;ee<q.length;++ee){var te=W(q[ee],Z,j);te!==q[ee]&&(Y===q&&(Y=q.slice()),Y[ee]=te)}return Y}function W(q,Z,j){if(Z.assuming){for(var Y in Z.assuming)for(var ee in Z.assuming[Y])if(w(Y,ee,j)!==Z.assuming[Y][ee])return q}var te=g(Z.imposeContext,j),oe=q;if(oe instanceof p||oe instanceof c){var ve=O(oe.args,Z,j);ve!==oe.args&&(oe=oe.clone(),oe.args=ve)}else if(oe instanceof v){if(oe.content){var L=W(oe.content,Z,j);L!==oe.content&&(oe=new v(L))}}else if(oe instanceof u){var H=O(oe.items,Z,j);H!==oe.items&&(oe=new u(H))}else if(oe instanceof l){var ne=oe.object;oe.object&&(ne=W(oe.object,Z,j));var ie=oe.index;oe.index&&(ie=W(oe.index,Z,j)),(ne!==oe.object||ie!==oe.index)&&(oe=new l(ne,ie))}else if(oe instanceof f){var me=O(oe.dimensions,Z,j);me!==oe.dimensions&&(oe=new f(me))}else if(oe instanceof d){var de=!1,be={};for(var Ne in oe.properties)be[Ne]=W(oe.properties[Ne],Z,j),be[Ne]!==oe.properties[Ne]&&(de=!0);de&&(oe=new d(be))}var V=Z.r,K=se(Z.l,oe,te)[0];if(!K&&Z.expanded&&(V=Z.expanded.r,K=se(Z.expanded.l,oe,te)[0]),!K&&Z.expandedNC1&&(V=Z.expandedNC1.r,K=se(Z.expandedNC1.l,oe,te)[0],K||(V=Z.expandedNC2.r,K=se(Z.expandedNC2.l,oe,te)[0])),K){var G=oe.implicit;oe=V.clone(),G&&"implicit"in V&&(oe.implicit=!0),oe=oe.transform(function(ae){return ae.isSymbolNode&&De(K.placeholders,ae.name)?K.placeholders[ae.name].clone():ae})}return Z.repeat&&oe!==q&&(oe=W(oe,Z,j)),oe}function X(q,Z){var j=[],Y,ee,te=D(q);if(b(q,Z))for(var oe=0;oe<q.args.length;oe++)ee=q.args.slice(0),ee.splice(oe,1),Y=ee.length===1?ee[0]:te(ee),j.push(te([q.args[oe],Y]));else for(var ve=1;ve<q.args.length;ve++){var L=q.args[0];ve>1&&(L=te(q.args.slice(0,ve))),ee=q.args.slice(ve),Y=ee.length===1?ee[0]:te(ee),j.push(te([L,Y]))}return j}function U(q,Z){var j={placeholders:{}};if(!q.placeholders&&!Z.placeholders)return j;if(q.placeholders){if(!Z.placeholders)return q}else return Z;for(var Y in q.placeholders)if(De(q.placeholders,Y)&&(j.placeholders[Y]=q.placeholders[Y],De(Z.placeholders,Y)&&!re(q.placeholders[Y],Z.placeholders[Y])))return null;for(var ee in Z.placeholders)De(Z.placeholders,ee)&&(j.placeholders[ee]=Z.placeholders[ee]);return j}function z(q,Z){var j=[];if(q.length===0||Z.length===0)return j;for(var Y,ee=0;ee<q.length;ee++)for(var te=0;te<Z.length;te++)Y=U(q[ee],Z[te]),Y&&j.push(Y);return j}function Q(q){if(q.length===0)return q;for(var Z=q.reduce(z),j=[],Y={},ee=0;ee<Z.length;ee++){var te=JSON.stringify(Z[ee]);Y[te]||(Y[te]=!0,j.push(Z[ee]))}return j}function se(q,Z,j,Y){var ee=[{placeholders:{}}];if(q instanceof p&&Z instanceof p||q instanceof c&&Z instanceof c){if(q instanceof p){if(q.op!==Z.op||q.fn!==Z.fn)return[]}else if(q instanceof c&&q.name!==Z.name)return[];if(Z.args.length===1&&q.args.length===1||!A(Z,j)&&Z.args.length===q.args.length||Y){for(var te=[],oe=0;oe<q.args.length;oe++){var ve=se(q.args[oe],Z.args[oe],j);if(ve.length===0)break;te.push(ve)}if(te.length!==q.args.length){if(!b(Z,j)||q.args.length===1)return[];if(q.args.length>2)throw new Error("permuting >2 commutative non-associative rule arguments not yet implemented");var L=se(q.args[0],Z.args[1],j);if(L.length===0)return[];var H=se(q.args[1],Z.args[0],j);if(H.length===0)return[];te=[L,H]}ee=Q(te)}else if(Z.args.length>=2&&q.args.length===2){for(var ne=X(Z,j),ie=[],me=0;me<ne.length;me++){var de=se(q,ne[me],j,!0);ie=ie.concat(de)}return ie}else{if(q.args.length>2)throw Error("Unexpected non-binary associative function: "+q.toString());return[]}}else if(q instanceof h){if(q.name.length===0)throw new Error("Symbol in rule has 0 length...!?");if(I[q.name]){if(q.name!==Z.name)return[]}else switch(q.name[1]>="a"&&q.name[1]<="z"?q.name.substring(0,2):q.name[0]){case"n":case"_p":ee[0].placeholders[q.name]=Z;break;case"c":case"cl":if(Ze(Z))ee[0].placeholders[q.name]=Z;else return[];break;case"v":if(!Ze(Z))ee[0].placeholders[q.name]=Z;else return[];break;case"vl":if(br(Z))ee[0].placeholders[q.name]=Z;else return[];break;case"cd":if(Jg(Z))ee[0].placeholders[q.name]=Z;else return[];break;case"vd":if(!Jg(Z))ee[0].placeholders[q.name]=Z;else return[];break;case"ce":if(Jo(Z))ee[0].placeholders[q.name]=Z;else return[];break;case"ve":if(!Jo(Z))ee[0].placeholders[q.name]=Z;else return[];break;default:throw new Error("Invalid symbol in rule: "+q.name)}}else if(q instanceof s){if(!n(q.value,Z.value))return[]}else return[];return ee}function re(q,Z){if(q instanceof s&&Z instanceof s){if(!n(q.value,Z.value))return!1}else if(q instanceof h&&Z instanceof h){if(q.name!==Z.name)return!1}else if(q instanceof p&&Z instanceof p||q instanceof c&&Z instanceof c){if(q instanceof p){if(q.op!==Z.op||q.fn!==Z.fn)return!1}else if(q instanceof c&&q.name!==Z.name)return!1;if(q.args.length!==Z.args.length)return!1;for(var j=0;j<q.args.length;j++)if(!re(q.args[j],Z.args[j]))return!1}else return!1;return!0}return _}),EP="simplifyConstant",DP=["typed","config","mathWithTransform","matrix","?fraction","?bignumber","AccessorNode","ArrayNode","ConstantNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","SymbolNode"],SP=P(EP,DP,e=>{var{typed:r,config:t,mathWithTransform:n,matrix:a,fraction:i,bignumber:o,AccessorNode:l,ArrayNode:u,ConstantNode:s,FunctionNode:c,IndexNode:f,ObjectNode:d,OperatorNode:p,SymbolNode:v}=e,{isCommutative:h,isAssociative:w,allChildren:b,createMakeNodeFunction:A}=cl({FunctionNode:c,OperatorNode:p,SymbolNode:v}),g=r("simplifyConstant",{Node:$=>D(R($,{})),"Node, Object":function(M,T){return D(R(M,T))}});function N($){return zn($)?$.valueOf():$ instanceof Array?$.map(N):_e($)?a(N($.valueOf())):$}function x($,M,T){try{return n[$].apply(null,M)}catch{return M=M.map(N),E(n[$].apply(null,M),T)}}var y=r({Fraction:_,number:function(M){return M<0?C(new s(-M)):new s(M)},BigNumber:function(M){return M<0?C(new s(-M)):new s(M)},bigint:function(M){return M<0n?C(new s(-M)):new s(M)},Complex:function(M){throw new Error("Cannot convert Complex number to Node")},string:function(M){return new s(M)},Matrix:function(M){return new u(M.valueOf().map(T=>y(T)))}});function D($){return Qe($)?$:y($)}function S($,M){var T=M&&M.exactFractions!==!1;if(T&&isFinite($)&&i){var k=i($),O=M&&typeof M.fractionsLimit=="number"?M.fractionsLimit:1/0;if(k.valueOf()===$&&k.n<O&&k.d<O)return k}return $}var E=r({"string, Object":function(M,T){var k=dn(M,t);if(k==="BigNumber")return o===void 0&&Zu(),o(M);if(k==="bigint")return BigInt(M);if(k==="Fraction")return i===void 0&&Hv(),i(M);var O=parseFloat(M);return S(O,T)},"Fraction, Object":function(M,T){return M},"BigNumber, Object":function(M,T){return M},"number, Object":function(M,T){return S(M,T)},"bigint, Object":function(M,T){return M},"Complex, Object":function(M,T){return M.im!==0?M:S(M.re,T)},"Matrix, Object":function(M,T){return a(S(M.valueOf()))},"Array, Object":function(M,T){return M.map(S)}});function C($){return new p("-","unaryMinus",[$])}function _($){var M,T=$.s*$.n;return T<0?M=new p("-","unaryMinus",[new s(-T)]):M=new s(T),$.d===1?M:new p("/","divide",[M,new s($.d)])}function F($,M,T){if(!kn(M))return new l(D($),D(M));if(Qr($)||_e($)){for(var k=Array.from(M.dimensions);k.length>0;)if(Ze(k[0])&&typeof k[0].value!="string"){var O=E(k.shift().value,T);Qr($)?$=$.items[O-1]:($=$.valueOf()[O-1],$ instanceof Array&&($=a($)))}else if(k.length>1&&Ze(k[1])&&typeof k[1].value!="string"){var W=E(k[1].value,T),X=[],U=Qr($)?$.items:$.valueOf();for(var z of U)if(Qr(z))X.push(z.items[W-1]);else if(_e($))X.push(z[W-1]);else break;if(X.length===U.length)Qr($)?$=new u(X):$=a(X),k.splice(1,1);else break}else break;return k.length===M.dimensions.length?new l(D($),M):k.length>0?(M=new f(k),new l(D($),M)):$}if(Xa($)&&M.dimensions.length===1&&Ze(M.dimensions[0])){var Q=M.dimensions[0].value;return Q in $.properties?$.properties[Q]:new s}return new l(D($),M)}function I($,M,T,k){var O=M.shift(),W=M.reduce((X,U)=>{if(!Qe(U)){var z=X.pop();if(Qe(z))return[z,U];try{return X.push(x($,[z,U],k)),X}catch{X.push(z)}}X.push(D(X.pop()));var Q=X.length===1?X[0]:T(X);return[T([Q,D(U)])]},[O]);return W.length===1?W[0]:T([W[0],y(W[1])])}function R($,M){switch($.type){case"SymbolNode":return $;case"ConstantNode":switch(typeof $.value){case"number":return E($.value,M);case"bigint":return E($.value,M);case"string":return $.value;default:if(!isNaN($.value))return E($.value,M)}return $;case"FunctionNode":if(n[$.name]&&n[$.name].rawArgs)return $;{var T=["add","multiply"];if(!T.includes($.name)){var k=$.args.map(ee=>R(ee,M));if(!k.some(Qe))try{return x($.name,k,M)}catch{}if($.name==="size"&&k.length===1&&Qr(k[0])){for(var O=[],W=k[0];Qr(W);)O.push(W.items.length),W=W.items[0];return a(O)}return new c($.name,k.map(D))}}case"OperatorNode":{var X=$.fn.toString(),U,z,Q=A($);if(pr($)&&$.isUnary())U=[R($.args[0],M)],Qe(U[0])?z=Q(U):z=x(X,U,M);else if(w($,M.context))if(U=b($,M.context),U=U.map(ee=>R(ee,M)),h(X,M.context)){for(var se=[],re=[],q=0;q<U.length;q++)Qe(U[q])?re.push(U[q]):se.push(U[q]);se.length>1?(z=I(X,se,Q,M),re.unshift(z),z=I(X,re,Q,M)):z=I(X,U,Q,M)}else z=I(X,U,Q,M);else U=$.args.map(ee=>R(ee,M)),z=I(X,U,Q,M);return z}case"ParenthesisNode":return R($.content,M);case"AccessorNode":return F(R($.object,M),R($.index,M),M);case"ArrayNode":{var Z=$.items.map(ee=>R(ee,M));return Z.some(Qe)?new u(Z.map(D)):a(Z)}case"IndexNode":return new f($.dimensions.map(ee=>g(ee,M)));case"ObjectNode":{var j={};for(var Y in $.properties)j[Y]=g($.properties[Y],M);return new d(j)}case"AssignmentNode":case"BlockNode":case"FunctionAssignmentNode":case"RangeNode":case"ConditionalNode":default:throw new Error("Unimplemented node type in simplifyConstant: ".concat($.type))}}return g}),Xg="simplifyCore",CP=["typed","parse","equal","isZero","add","subtract","multiply","divide","pow","AccessorNode","ArrayNode","ConstantNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","ParenthesisNode","SymbolNode"],MP=P(Xg,CP,e=>{var{typed:r,parse:t,equal:n,isZero:a,add:i,subtract:o,multiply:l,divide:u,pow:s,AccessorNode:c,ArrayNode:f,ConstantNode:d,FunctionNode:p,IndexNode:v,ObjectNode:h,OperatorNode:w,ParenthesisNode:b,SymbolNode:A}=e,g=new d(0),N=new d(1),x=new d(!0),y=new d(!1);function D(_){return pr(_)&&["and","not","or"].includes(_.op)}var{hasProperty:S,isCommutative:E}=cl({FunctionNode:p,OperatorNode:w,SymbolNode:A});function C(_){var F=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},I=F?F.context:void 0;if(S(_,"trivial",I)){if(Gt(_)&&_.args.length===1)return C(_.args[0],F);var R=!1,$=0;if(_.forEach(re=>{++$,$===1&&(R=C(re,F))}),$===1)return R}var M=_;if(Gt(M)){var T=B5(M.name);if(T){if(M.args.length>2&&S(M,"associative",I))for(;M.args.length>2;){var k=M.args.pop(),O=M.args.pop();M.args.push(new w(T,M.name,[k,O]))}M=new w(T,M.name,M.args)}else return new p(C(M.fn),M.args.map(re=>C(re,F)))}if(pr(M)&&M.isUnary()){var W=C(M.args[0],F);if(M.op==="~"&&pr(W)&&W.isUnary()&&W.op==="~"||M.op==="not"&&pr(W)&&W.isUnary()&&W.op==="not"&&D(W.args[0]))return W.args[0];var X=!0;if(M.op==="-"&&pr(W)&&(W.isBinary()&&W.fn==="subtract"&&(M=new w("-","subtract",[W.args[1],W.args[0]]),X=!1),W.isUnary()&&W.op==="-"))return W.args[0];if(X)return new w(M.op,M.fn,[W])}if(pr(M)&&M.isBinary()){var U=C(M.args[0],F),z=C(M.args[1],F);if(M.op==="+"){if(Ze(U)&&a(U.value))return z;if(Ze(z)&&a(z.value))return U;pr(z)&&z.isUnary()&&z.op==="-"&&(z=z.args[0],M=new w("-","subtract",[U,z]))}if(M.op==="-")return pr(z)&&z.isUnary()&&z.op==="-"?C(new w("+","add",[U,z.args[0]]),F):Ze(U)&&a(U.value)?C(new w("-","unaryMinus",[z])):Ze(z)&&a(z.value)?U:new w(M.op,M.fn,[U,z]);if(M.op==="*"){if(Ze(U)){if(a(U.value))return g;if(n(U.value,1))return z}if(Ze(z)){if(a(z.value))return g;if(n(z.value,1))return U;if(E(M,I))return new w(M.op,M.fn,[z,U],M.implicit)}return new w(M.op,M.fn,[U,z],M.implicit)}if(M.op==="/")return Ze(U)&&a(U.value)?g:Ze(z)&&n(z.value,1)?U:new w(M.op,M.fn,[U,z]);if(M.op==="^"&&Ze(z)){if(a(z.value))return N;if(n(z.value,1))return U}if(M.op==="and"){if(Ze(U))if(U.value){if(D(z))return z;if(Ze(z))return z.value?x:y}else return y;if(Ze(z))if(z.value){if(D(U))return U}else return y}if(M.op==="or"){if(Ze(U)){if(U.value)return x;if(D(z))return z}if(Ze(z)){if(z.value)return x;if(D(U))return U}}return new w(M.op,M.fn,[U,z])}if(pr(M))return new w(M.op,M.fn,M.args.map(re=>C(re,F)));if(Qr(M))return new f(M.items.map(re=>C(re,F)));if(fn(M))return new c(C(M.object,F),C(M.index,F));if(kn(M))return new v(M.dimensions.map(re=>C(re,F)));if(Xa(M)){var Q={};for(var se in M.properties)Q[se]=C(M.properties[se],F);return new h(Q)}return M}return r(Xg,{Node:C,"Node,Object":C})}),_P="resolve",TP=["typed","parse","ConstantNode","FunctionNode","OperatorNode","ParenthesisNode"],FP=P(_P,TP,e=>{var{typed:r,parse:t,ConstantNode:n,FunctionNode:a,OperatorNode:i,ParenthesisNode:o}=e;function l(u,s){var c=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Set;if(!s)return u;if(br(u)){if(c.has(u.name)){var f=Array.from(c).join(", ");throw new ReferenceError("recursive loop of variable definitions among {".concat(f,"}"))}var d=s.get(u.name);if(Qe(d)){var p=new Set(c);return p.add(u.name),l(d,s,p)}else return typeof d=="number"?t(String(d)):d!==void 0?new n(d):u}else if(pr(u)){var v=u.args.map(function(w){return l(w,s,c)});return new i(u.op,u.fn,v,u.implicit)}else{if(_t(u))return new o(l(u.content,s,c));if(Gt(u)){var h=u.args.map(function(w){return l(w,s,c)});return new a(u.name,h)}}return u.map(w=>l(w,s,c))}return r("resolve",{Node:l,"Node, Map | null | undefined":l,"Node, Object":(u,s)=>l(u,ca(s)),"Array | Matrix":r.referToSelf(u=>s=>s.map(c=>u(c))),"Array | Matrix, null | undefined":r.referToSelf(u=>s=>s.map(c=>u(c))),"Array, Object":r.referTo("Array,Map",u=>(s,c)=>u(s,ca(c))),"Matrix, Object":r.referTo("Matrix,Map",u=>(s,c)=>u(s,ca(c))),"Array | Matrix, Map":r.referToSelf(u=>(s,c)=>s.map(f=>u(f,c)))})}),Qg="symbolicEqual",BP=["parse","simplify","typed","OperatorNode"],OP=P(Qg,BP,e=>{var{parse:r,simplify:t,typed:n,OperatorNode:a}=e;function i(o,l){var u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=new a("-","subtract",[o,l]),c=t(s,{},u);return Ze(c)&&!c.value}return n(Qg,{"Node, Node":i,"Node, Node, Object":i})}),ey="derivative",$P=["typed","config","parse","simplify","equal","isZero","numeric","ConstantNode","FunctionNode","OperatorNode","ParenthesisNode","SymbolNode"],IP=P(ey,$P,e=>{var{typed:r,config:t,parse:n,simplify:a,equal:i,isZero:o,numeric:l,ConstantNode:u,FunctionNode:s,OperatorNode:c,ParenthesisNode:f,SymbolNode:d}=e;function p(N,x){var y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{simplify:!0},D={};b(D,N,x.name);var S=A(N,D);return y.simplify?a(S):S}function v(N){var x=n(N);if(!x.isSymbolNode)throw new TypeError("Invalid variable. "+"Cannot parse ".concat(JSON.stringify(N)," into a variable in function derivative"));return x}var h=r(ey,{"Node, SymbolNode":p,"Node, SymbolNode, Object":p,"Node, string":(N,x)=>p(N,v(x)),"Node, string, Object":(N,x,y)=>p(N,v(x),y)});h._simplify=!0,h.toTex=function(N){return w.apply(null,N.args)};var w=r("_derivTex",{"Node, SymbolNode":function(x,y){return Ze(x)&&tr(x.value)==="string"?w(n(x.value).toString(),y.toString(),1):w(x.toTex(),y.toString(),1)},"Node, ConstantNode":function(x,y){if(tr(y.value)==="string")return w(x,n(y.value));throw new Error("The second parameter to 'derivative' is a non-string constant")},"Node, SymbolNode, ConstantNode":function(x,y,D){return w(x.toString(),y.name,D.value)},"string, string, number":function(x,y,D){var S;return D===1?S="{d\\over d"+y+"}":S="{d^{"+D+"}\\over d"+y+"^{"+D+"}}",S+"\\left[".concat(x,"\\right]")}}),b=r("constTag",{"Object, ConstantNode, string":function(x,y){return x[y]=!0,!0},"Object, SymbolNode, string":function(x,y,D){return y.name!==D?(x[y]=!0,!0):!1},"Object, ParenthesisNode, string":function(x,y,D){return b(x,y.content,D)},"Object, FunctionAssignmentNode, string":function(x,y,D){return y.params.includes(D)?b(x,y.expr,D):(x[y]=!0,!0)},"Object, FunctionNode | OperatorNode, string":function(x,y,D){if(y.args.length>0){for(var S=b(x,y.args[0],D),E=1;E<y.args.length;++E)S=b(x,y.args[E],D)&&S;if(S)return x[y]=!0,!0}return!1}}),A=r("_derivative",{"ConstantNode, Object":function(x){return g(0)},"SymbolNode, Object":function(x,y){return y[x]!==void 0?g(0):g(1)},"ParenthesisNode, Object":function(x,y){return new f(A(x.content,y))},"FunctionAssignmentNode, Object":function(x,y){return y[x]!==void 0?g(0):A(x.expr,y)},"FunctionNode, Object":function(x,y){if(y[x]!==void 0)return g(0);var D=x.args[0],S,E=!1,C=!1,_;switch(x.name){case"cbrt":E=!0,_=new c("*","multiply",[g(3),new c("^","pow",[D,new c("/","divide",[g(2),g(3)])])]);break;case"sqrt":case"nthRoot":if(x.args.length===1)E=!0,_=new c("*","multiply",[g(2),new s("sqrt",[D])]);else if(x.args.length===2)return S=new c("/","divide",[g(1),x.args[1]]),y[S]=y[x.args[1]],A(new c("^","pow",[D,S]),y);break;case"log10":S=g(10);case"log":if(!S&&x.args.length===1)_=D.clone(),E=!0;else if(x.args.length===1&&S||x.args.length===2&&y[x.args[1]]!==void 0)_=new c("*","multiply",[D.clone(),new s("log",[S||x.args[1]])]),E=!0;else if(x.args.length===2)return A(new c("/","divide",[new s("log",[D]),new s("log",[x.args[1]])]),y);break;case"pow":if(x.args.length===2)return y[S]=y[x.args[1]],A(new c("^","pow",[D,x.args[1]]),y);break;case"exp":_=new s("exp",[D.clone()]);break;case"sin":_=new s("cos",[D.clone()]);break;case"cos":_=new c("-","unaryMinus",[new s("sin",[D.clone()])]);break;case"tan":_=new c("^","pow",[new s("sec",[D.clone()]),g(2)]);break;case"sec":_=new c("*","multiply",[x,new s("tan",[D.clone()])]);break;case"csc":C=!0,_=new c("*","multiply",[x,new s("cot",[D.clone()])]);break;case"cot":C=!0,_=new c("^","pow",[new s("csc",[D.clone()]),g(2)]);break;case"asin":E=!0,_=new s("sqrt",[new c("-","subtract",[g(1),new c("^","pow",[D.clone(),g(2)])])]);break;case"acos":E=!0,C=!0,_=new s("sqrt",[new c("-","subtract",[g(1),new c("^","pow",[D.clone(),g(2)])])]);break;case"atan":E=!0,_=new c("+","add",[new c("^","pow",[D.clone(),g(2)]),g(1)]);break;case"asec":E=!0,_=new c("*","multiply",[new s("abs",[D.clone()]),new s("sqrt",[new c("-","subtract",[new c("^","pow",[D.clone(),g(2)]),g(1)])])]);break;case"acsc":E=!0,C=!0,_=new c("*","multiply",[new s("abs",[D.clone()]),new s("sqrt",[new c("-","subtract",[new c("^","pow",[D.clone(),g(2)]),g(1)])])]);break;case"acot":E=!0,C=!0,_=new c("+","add",[new c("^","pow",[D.clone(),g(2)]),g(1)]);break;case"sinh":_=new s("cosh",[D.clone()]);break;case"cosh":_=new s("sinh",[D.clone()]);break;case"tanh":_=new c("^","pow",[new s("sech",[D.clone()]),g(2)]);break;case"sech":C=!0,_=new c("*","multiply",[x,new s("tanh",[D.clone()])]);break;case"csch":C=!0,_=new c("*","multiply",[x,new s("coth",[D.clone()])]);break;case"coth":C=!0,_=new c("^","pow",[new s("csch",[D.clone()]),g(2)]);break;case"asinh":E=!0,_=new s("sqrt",[new c("+","add",[new c("^","pow",[D.clone(),g(2)]),g(1)])]);break;case"acosh":E=!0,_=new s("sqrt",[new c("-","subtract",[new c("^","pow",[D.clone(),g(2)]),g(1)])]);break;case"atanh":E=!0,_=new c("-","subtract",[g(1),new c("^","pow",[D.clone(),g(2)])]);break;case"asech":E=!0,C=!0,_=new c("*","multiply",[D.clone(),new s("sqrt",[new c("-","subtract",[g(1),new c("^","pow",[D.clone(),g(2)])])])]);break;case"acsch":E=!0,C=!0,_=new c("*","multiply",[new s("abs",[D.clone()]),new s("sqrt",[new c("+","add",[new c("^","pow",[D.clone(),g(2)]),g(1)])])]);break;case"acoth":E=!0,C=!0,_=new c("-","subtract",[g(1),new c("^","pow",[D.clone(),g(2)])]);break;case"abs":_=new c("/","divide",[new s(new d("abs"),[D.clone()]),D.clone()]);break;case"gamma":default:throw new Error('Cannot process function "'+x.name+'" in derivative: the function is not supported, undefined, or the number of arguments passed to it are not supported')}var F,I;E?(F="/",I="divide"):(F="*",I="multiply");var R=A(D,y);return C&&(R=new c("-","unaryMinus",[R])),new c(F,I,[R,_])},"OperatorNode, Object":function(x,y){if(y[x]!==void 0)return g(0);if(x.op==="+")return new c(x.op,x.fn,x.args.map(function(M){return A(M,y)}));if(x.op==="-"){if(x.isUnary())return new c(x.op,x.fn,[A(x.args[0],y)]);if(x.isBinary())return new c(x.op,x.fn,[A(x.args[0],y),A(x.args[1],y)])}if(x.op==="*"){var D=x.args.filter(function(M){return y[M]!==void 0});if(D.length>0){var S=x.args.filter(function(M){return y[M]===void 0}),E=S.length===1?S[0]:new c("*","multiply",S),C=D.concat(A(E,y));return new c("*","multiply",C)}return new c("+","add",x.args.map(function(M){return new c("*","multiply",x.args.map(function(T){return T===M?A(T,y):T.clone()}))}))}if(x.op==="/"&&x.isBinary()){var _=x.args[0],F=x.args[1];return y[F]!==void 0?new c("/","divide",[A(_,y),F]):y[_]!==void 0?new c("*","multiply",[new c("-","unaryMinus",[_]),new c("/","divide",[A(F,y),new c("^","pow",[F.clone(),g(2)])])]):new c("/","divide",[new c("-","subtract",[new c("*","multiply",[A(_,y),F.clone()]),new c("*","multiply",[_.clone(),A(F,y)])]),new c("^","pow",[F.clone(),g(2)])])}if(x.op==="^"&&x.isBinary()){var I=x.args[0],R=x.args[1];if(y[I]!==void 0)return Ze(I)&&(o(I.value)||i(I.value,1))?g(0):new c("*","multiply",[x,new c("*","multiply",[new s("log",[I.clone()]),A(R.clone(),y)])]);if(y[R]!==void 0){if(Ze(R)){if(o(R.value))return g(0);if(i(R.value,1))return A(I,y)}var $=new c("^","pow",[I.clone(),new c("-","subtract",[R,g(1)])]);return new c("*","multiply",[R.clone(),new c("*","multiply",[A(I,y),$])])}return new c("*","multiply",[new c("^","pow",[I.clone(),R.clone()]),new c("+","add",[new c("*","multiply",[A(I,y),new c("/","divide",[R.clone(),I.clone()])]),new c("*","multiply",[A(R,y),new s("log",[I.clone()])])])])}throw new Error('Cannot process operator "'+x.op+'" in derivative: the operator is not supported, undefined, or the number of arguments passed to it are not supported')}});function g(N,x){return new u(l(N,dn(String(N),t)))}return h}),ry="rationalize",RP=["config","typed","equal","isZero","add","subtract","multiply","divide","pow","parse","simplifyConstant","simplifyCore","simplify","?bignumber","?fraction","mathWithTransform","matrix","AccessorNode","ArrayNode","ConstantNode","FunctionNode","IndexNode","ObjectNode","OperatorNode","SymbolNode","ParenthesisNode"],zP=P(ry,RP,e=>{var{config:r,typed:t,equal:n,isZero:a,add:i,subtract:o,multiply:l,divide:u,pow:s,parse:c,simplifyConstant:f,simplifyCore:d,simplify:p,fraction:v,bignumber:h,mathWithTransform:w,matrix:b,AccessorNode:A,ArrayNode:g,ConstantNode:N,FunctionNode:x,IndexNode:y,ObjectNode:D,OperatorNode:S,SymbolNode:E,ParenthesisNode:C}=e;function _(M){var T=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,O=I(),W=F(M,T,!0,O.firstRules),X=W.variables.length,U={exactFractions:!1},z={exactFractions:!0};if(M=W.expression,X>=1){M=R(M);var Q,se,re=!0,q=!1;M=p(M,O.firstRules,{},U);for(var Z;se=re?O.distrDivRules:O.sucDivRules,M=p(M,se,{},z),re=!re,Z=M.toString(),Z!==Q;)q=!0,Q=Z;q&&(M=p(M,O.firstRulesAgain,{},U)),M=p(M,O.finalRules,{},U)}var j=[],Y={};return M.type==="OperatorNode"&&M.isBinary()&&M.op==="/"?(X===1&&(M.args[0]=$(M.args[0],j),M.args[1]=$(M.args[1])),k&&(Y.numerator=M.args[0],Y.denominator=M.args[1])):(X===1&&(M=$(M,j)),k&&(Y.numerator=M,Y.denominator=null)),k?(Y.coefficients=j,Y.variables=W.variables,Y.expression=M,Y):M}return t(ry,{Node:_,"Node, boolean":(M,T)=>_(M,{},T),"Node, Object":_,"Node, Object, boolean":_});function F(M,T,k,O){var W=[],X=p(M,O,T,{exactFractions:!1});k=!!k;var U="+-*"+(k?"/":"");Q(X);var z={};return z.expression=X,z.variables=W,z;function Q(se){var re=se.type;if(re==="FunctionNode")throw new Error("There is an unsolved function call");if(re==="OperatorNode")if(se.op==="^"){if(se.args[1].type!=="ConstantNode"||!Ce(parseFloat(se.args[1].value)))throw new Error("There is a non-integer exponent");Q(se.args[0])}else{if(!U.includes(se.op))throw new Error("Operator "+se.op+" invalid in polynomial expression");for(var q=0;q<se.args.length;q++)Q(se.args[q])}else if(re==="SymbolNode"){var Z=se.name,j=W.indexOf(Z);j===-1&&W.push(Z)}else if(re==="ParenthesisNode")Q(se.content);else if(re!=="ConstantNode")throw new Error("type "+re+" is not allowed in polynomial expression")}}function I(){var M=[d,{l:"n+n",r:"2*n"},{l:"n+-n",r:"0"},f,{l:"n*(n1^-1)",r:"n/n1"},{l:"n*n1^-n2",r:"n/n1^n2"},{l:"n1^-1",r:"1/n1"},{l:"n*(n1/n2)",r:"(n*n1)/n2"},{l:"1*n",r:"n"}],T=[{l:"(-n1)/(-n2)",r:"n1/n2"},{l:"(-n1)*(-n2)",r:"n1*n2"},{l:"n1--n2",r:"n1+n2"},{l:"n1-n2",r:"n1+(-n2)"},{l:"(n1+n2)*n3",r:"(n1*n3 + n2*n3)"},{l:"n1*(n2+n3)",r:"(n1*n2+n1*n3)"},{l:"c1*n + c2*n",r:"(c1+c2)*n"},{l:"c1*n + n",r:"(c1+1)*n"},{l:"c1*n - c2*n",r:"(c1-c2)*n"},{l:"c1*n - n",r:"(c1-1)*n"},{l:"v/c",r:"(1/c)*v"},{l:"v/-c",r:"-(1/c)*v"},{l:"-v*-c",r:"c*v"},{l:"-v*c",r:"-c*v"},{l:"v*-c",r:"-c*v"},{l:"v*c",r:"c*v"},{l:"-(-n1*n2)",r:"(n1*n2)"},{l:"-(n1*n2)",r:"(-n1*n2)"},{l:"-(-n1+n2)",r:"(n1-n2)"},{l:"-(n1+n2)",r:"(-n1-n2)"},{l:"(n1^n2)^n3",r:"(n1^(n2*n3))"},{l:"-(-n1/n2)",r:"(n1/n2)"},{l:"-(n1/n2)",r:"(-n1/n2)"}],k=[{l:"(n1/n2 + n3/n4)",r:"((n1*n4 + n3*n2)/(n2*n4))"},{l:"(n1/n2 + n3)",r:"((n1 + n3*n2)/n2)"},{l:"(n1 + n2/n3)",r:"((n1*n3 + n2)/n3)"}],O=[{l:"(n1/(n2/n3))",r:"((n1*n3)/n2)"},{l:"(n1/n2/n3)",r:"(n1/(n2*n3))"}],W={};return W.firstRules=M.concat(T,O),W.distrDivRules=k,W.sucDivRules=O,W.firstRulesAgain=M.concat(T),W.finalRules=[d,{l:"n*-n",r:"-n^2"},{l:"n*n",r:"n^2"},f,{l:"n*-n^n1",r:"-n^(n1+1)"},{l:"n*n^n1",r:"n^(n1+1)"},{l:"n^n1*-n^n2",r:"-n^(n1+n2)"},{l:"n^n1*n^n2",r:"n^(n1+n2)"},{l:"n^n1*-n",r:"-n^(n1+1)"},{l:"n^n1*n",r:"n^(n1+1)"},{l:"n^n1/-n",r:"-n^(n1-1)"},{l:"n^n1/n",r:"n^(n1-1)"},{l:"n/-n^n1",r:"-n^(1-n1)"},{l:"n/n^n1",r:"n^(1-n1)"},{l:"n^n1/-n^n2",r:"n^(n1-n2)"},{l:"n^n1/n^n2",r:"n^(n1-n2)"},{l:"n1+(-n2*n3)",r:"n1-n2*n3"},{l:"v*(-c)",r:"-c*v"},{l:"n1+-n2",r:"n1-n2"},{l:"v*c",r:"c*v"},{l:"(n1^n2)^n3",r:"(n1^(n2*n3))"}],W}function R(M,T,k){var O=M.type,W=arguments.length>1;if(O==="OperatorNode"&&M.isBinary()){var X=!1,U;if(M.op==="^"&&(M.args[0].type==="ParenthesisNode"||M.args[0].type==="OperatorNode")&&M.args[1].type==="ConstantNode"&&(U=parseFloat(M.args[1].value),X=U>=2&&Ce(U)),X){if(U>2){var z=M.args[0],Q=new S("^","pow",[M.args[0].cloneDeep(),new N(U-1)]);M=new S("*","multiply",[z,Q])}else M=new S("*","multiply",[M.args[0],M.args[0].cloneDeep()]);W&&(k==="content"?T.content=M:T.args[k]=M)}}if(O==="ParenthesisNode")R(M.content,M,"content");else if(O!=="ConstantNode"&&O!=="SymbolNode")for(var se=0;se<M.args.length;se++)R(M.args[se],M,se);if(!W)return M}function $(M,T){T===void 0&&(T=[]),T[0]=0;var k={};k.cte=1,k.oper="+",k.fire="";var O=0,W="";Z(M,null,k),O=T.length-1;for(var X=!0,U,z=O;z>=0;z--)if(T[z]!==0){var Q=new N(X?T[z]:Math.abs(T[z])),se=T[z]<0?"-":"+";if(z>0){var re=new E(W);if(z>1){var q=new N(z);re=new S("^","pow",[re,q])}T[z]===-1&&X?Q=new S("-","unaryMinus",[re]):Math.abs(T[z])===1?Q=re:Q=new S("*","multiply",[Q,re])}X?U=Q:se==="+"?U=new S("+","add",[U,Q]):U=new S("-","subtract",[U,Q]),X=!1}if(X)return new N(0);return U;function Z(j,Y,ee){var te=j.type;if(te==="FunctionNode")throw new Error("There is an unsolved function call");if(te==="OperatorNode"){if(!"+-*^".includes(j.op))throw new Error("Operator "+j.op+" invalid");if(Y!==null){if((j.fn==="unaryMinus"||j.fn==="pow")&&Y.fn!=="add"&&Y.fn!=="subtract"&&Y.fn!=="multiply")throw new Error("Invalid "+j.op+" placing");if((j.fn==="subtract"||j.fn==="add"||j.fn==="multiply")&&Y.fn!=="add"&&Y.fn!=="subtract")throw new Error("Invalid "+j.op+" placing");if((j.fn==="subtract"||j.fn==="add"||j.fn==="unaryMinus")&&ee.noFil!==0)throw new Error("Invalid "+j.op+" placing")}(j.op==="^"||j.op==="*")&&(ee.fire=j.op);for(var oe=0;oe<j.args.length;oe++)j.fn==="unaryMinus"&&(ee.oper="-"),(j.op==="+"||j.fn==="subtract")&&(ee.fire="",ee.cte=1,ee.oper=oe===0?"+":j.op),ee.noFil=oe,Z(j.args[oe],j,ee)}else if(te==="SymbolNode"){if(j.name!==W&&W!=="")throw new Error("There is more than one variable");if(W=j.name,Y===null){T[1]=1;return}if(Y.op==="^"&&ee.noFil!==0)throw new Error("In power the variable should be the first parameter");if(Y.op==="*"&&ee.noFil!==1)throw new Error("In multiply the variable should be the second parameter");(ee.fire===""||ee.fire==="*")&&(O<1&&(T[1]=0),T[1]+=ee.cte*(ee.oper==="+"?1:-1),O=Math.max(1,O))}else if(te==="ConstantNode"){var ve=parseFloat(j.value);if(Y===null){T[0]=ve;return}if(Y.op==="^"){if(ee.noFil!==1)throw new Error("Constant cannot be powered");if(!Ce(ve)||ve<=0)throw new Error("Non-integer exponent is not allowed");for(var L=O+1;L<ve;L++)T[L]=0;ve>O&&(T[ve]=0),T[ve]+=ee.cte*(ee.oper==="+"?1:-1),O=Math.max(ve,O);return}ee.cte=ve,ee.fire===""&&(T[0]+=ee.cte*(ee.oper==="+"?1:-1))}else throw new Error("Type "+te+" is not allowed")}}}),ty="zpk2tf",PP=["typed","add","multiply","Complex","number"],kP=P(ty,PP,e=>{var{typed:r,add:t,multiply:n,Complex:a,number:i}=e;return r(ty,{"Array,Array,number":function(s,c,f){return o(s,c,f)},"Array,Array":function(s,c){return o(s,c,1)},"Matrix,Matrix,number":function(s,c,f){return o(s.valueOf(),c.valueOf(),f)},"Matrix,Matrix":function(s,c){return o(s.valueOf(),c.valueOf(),1)}});function o(u,s,c){u.some(A=>A.type==="BigNumber")&&(u=u.map(A=>i(A))),s.some(A=>A.type==="BigNumber")&&(s=s.map(A=>i(A)));for(var f=[a(1,0)],d=[a(1,0)],p=0;p<u.length;p++){var v=u[p];typeof v=="number"&&(v=a(v,0)),f=l(f,[a(1,0),a(-v.re,-v.im)])}for(var h=0;h<s.length;h++){var w=s[h];typeof w=="number"&&(w=a(w,0)),d=l(d,[a(1,0),a(-w.re,-w.im)])}for(var b=0;b<f.length;b++)f[b]=n(f[b],c);return[f,d]}function l(u,s){for(var c=[],f=0;f<u.length+s.length-1;f++){c[f]=a(0,0);for(var d=0;d<u.length;d++)f-d>=0&&f-d<s.length&&(c[f]=t(c[f],n(u[d],s[f-d])))}return c}}),ny="freqz",qP=["typed","add","multiply","Complex","divide","matrix"],LP=P(ny,qP,e=>{var{typed:r,add:t,multiply:n,Complex:a,divide:i,matrix:o}=e;return r(ny,{"Array, Array":function(c,f){var d=u(512);return l(c,f,d)},"Array, Array, Array":function(c,f,d){return l(c,f,d)},"Array, Array, number":function(c,f,d){if(d<0)throw new Error("w must be a positive number");var p=u(d);return l(c,f,p)},"Matrix, Matrix":function(c,f){var d=u(512),{w:p,h:v}=l(c.valueOf(),f.valueOf(),d);return{w:o(p),h:o(v)}},"Matrix, Matrix, Matrix":function(c,f,d){var{h:p}=l(c.valueOf(),f.valueOf(),d.valueOf());return{h:o(p),w:o(d)}},"Matrix, Matrix, number":function(c,f,d){if(d<0)throw new Error("w must be a positive number");var p=u(d),{h:v}=l(c.valueOf(),f.valueOf(),p);return{h:o(v),w:o(p)}}});function l(s,c,f){for(var d=[],p=[],v=0;v<f.length;v++){for(var h=a(0,0),w=a(0,0),b=0;b<s.length;b++)h=t(h,n(s[b],a(Math.cos(-b*f[v]),Math.sin(-b*f[v]))));for(var A=0;A<c.length;A++)w=t(w,n(c[A],a(Math.cos(-A*f[v]),Math.sin(-A*f[v]))));d.push(h),p.push(w)}for(var g=[],N=0;N<d.length;N++)g.push(i(d[N],p[N]));return{h:g,w:f}}function u(s){for(var c=[],f=0;f<s;f++)c.push(f/s*Math.PI);return c}}),VP="reviver",UP=["classes"],HP=P(VP,UP,e=>{var{classes:r}=e;return function(n,a){var i=r[a&&a.mathjs];return i&&typeof i.fromJSON=="function"?i.fromJSON(a):a}}),ZP="replacer",GP=[],WP=P(ZP,GP,()=>function(r,t){return typeof t=="number"&&(!isFinite(t)||isNaN(t))?{mathjs:"number",value:String(t)}:typeof t=="bigint"?{mathjs:"bigint",value:String(t)}:t}),jP="13.2.3",KP=P("true",[],()=>!0),JP=P("false",[],()=>!1),YP=P("null",[],()=>null),XP=rt("Infinity",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t(1/0):1/0}),QP=rt("NaN",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t(NaN):NaN}),e7=rt("pi",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?ju(t):vM}),r7=rt("tau",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?R4(t):hM}),t7=rt("e",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?$4(t):gM}),n7=rt("phi",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?I4(t):yM}),a7=rt("LN2",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t(2).ln():Math.LN2}),i7=rt("LN10",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t(10).ln():Math.LN10}),o7=rt("LOG2E",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t(1).div(new t(2).ln()):Math.LOG2E}),s7=rt("LOG10E",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t(1).div(new t(10).ln()):Math.LOG10E}),u7=rt("SQRT1_2",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t("0.5").sqrt():Math.SQRT1_2}),l7=rt("SQRT2",["config","?BigNumber"],e=>{var{config:r,BigNumber:t}=e;return r.number==="BigNumber"?new t(2).sqrt():Math.SQRT2}),c7=rt("i",["Complex"],e=>{var{Complex:r}=e;return r.I}),f7=P("PI",["pi"],e=>{var{pi:r}=e;return r}),d7=P("E",["e"],e=>{var{e:r}=e;return r}),m7=P("version",[],()=>jP);function rt(e,r,t){return P(e,r,t,{recreateOnConfigChange:!0})}var p7=Pe("speedOfLight","299792458","m s^-1"),v7=Pe("gravitationConstant","6.67430e-11","m^3 kg^-1 s^-2"),h7=Pe("planckConstant","6.62607015e-34","J s"),g7=Pe("reducedPlanckConstant","1.0545718176461565e-34","J s"),y7=Pe("magneticConstant","1.25663706212e-6","N A^-2"),b7=Pe("electricConstant","8.8541878128e-12","F m^-1"),w7=Pe("vacuumImpedance","376.730313667","ohm"),x7=Pe("coulomb","8.987551792261171e9","N m^2 C^-2"),N7=Pe("elementaryCharge","1.602176634e-19","C"),A7=Pe("bohrMagneton","9.2740100783e-24","J T^-1"),E7=Pe("conductanceQuantum","7.748091729863649e-5","S"),D7=Pe("inverseConductanceQuantum","12906.403729652257","ohm"),S7=Pe("magneticFluxQuantum","2.0678338484619295e-15","Wb"),C7=Pe("nuclearMagneton","5.0507837461e-27","J T^-1"),M7=Pe("klitzing","25812.807459304513","ohm"),_7=Pe("bohrRadius","5.29177210903e-11","m"),T7=Pe("classicalElectronRadius","2.8179403262e-15","m"),F7=Pe("electronMass","9.1093837015e-31","kg"),B7=Pe("fermiCoupling","1.1663787e-5","GeV^-2"),O7=Yo("fineStructure",.0072973525693),$7=Pe("hartreeEnergy","4.3597447222071e-18","J"),I7=Pe("protonMass","1.67262192369e-27","kg"),R7=Pe("deuteronMass","3.3435830926e-27","kg"),z7=Pe("neutronMass","1.6749271613e-27","kg"),P7=Pe("quantumOfCirculation","3.6369475516e-4","m^2 s^-1"),k7=Pe("rydberg","10973731.568160","m^-1"),q7=Pe("thomsonCrossSection","6.6524587321e-29","m^2"),L7=Yo("weakMixingAngle",.2229),V7=Yo("efimovFactor",22.7),U7=Pe("atomicMass","1.66053906660e-27","kg"),H7=Pe("avogadro","6.02214076e23","mol^-1"),Z7=Pe("boltzmann","1.380649e-23","J K^-1"),G7=Pe("faraday","96485.33212331001","C mol^-1"),W7=Pe("firstRadiation","3.7417718521927573e-16","W m^2"),j7=Pe("loschmidt","2.686780111798444e25","m^-3"),K7=Pe("gasConstant","8.31446261815324","J K^-1 mol^-1"),J7=Pe("molarPlanckConstant","3.990312712893431e-10","J s mol^-1"),Y7=Pe("molarVolume","0.022413969545014137","m^3 mol^-1"),X7=Yo("sackurTetrode",-1.16487052358),Q7=Pe("secondRadiation","0.014387768775039337","m K"),ek=Pe("stefanBoltzmann","5.67037441918443e-8","W m^-2 K^-4"),rk=Pe("wienDisplacement","2.897771955e-3","m K"),tk=Pe("molarMass","0.99999999965e-3","kg mol^-1"),nk=Pe("molarMassC12","11.9999999958e-3","kg mol^-1"),ak=Pe("gravity","9.80665","m s^-2"),ik=Pe("planckLength","1.616255e-35","m"),ok=Pe("planckMass","2.176435e-8","kg"),sk=Pe("planckTime","5.391245e-44","s"),uk=Pe("planckCharge","1.87554603778e-18","C"),lk=Pe("planckTemperature","1.416785e+32","K");function Pe(e,r,t){var n=["config","Unit","BigNumber"];return P(e,n,a=>{var{config:i,Unit:o,BigNumber:l}=a,u=i.number==="BigNumber"?new l(r):parseFloat(r),s=new o(u,t);return s.fixPrefix=!0,s})}function Yo(e,r){var t=["config","BigNumber"];return P(e,t,n=>{var{config:a,BigNumber:i}=n;return a.number==="BigNumber"?new i(r):r})}var ck="apply",fk=["typed","isInteger"],dk=P(ck,fk,e=>{var{typed:r,isInteger:t}=e,n=Ru({typed:r,isInteger:t});return r("apply",{"...any":function(i){var o=i[1];Re(o)?i[1]=o-1:Ie(o)&&(i[1]=o.minus(1));try{return n.apply(null,i)}catch(l){throw Lr(l)}}})},{isTransformFunction:!0}),mk="column",pk=["typed","Index","matrix","range"],vk=P(mk,pk,e=>{var{typed:r,Index:t,matrix:n,range:a}=e,i=Tv({typed:r,Index:t,matrix:n,range:a});return r("column",{"...any":function(l){var u=l.length-1,s=l[u];Re(s)&&(l[u]=s-1);try{return i.apply(null,l)}catch(c){throw Lr(c)}}})},{isTransformFunction:!0});function fl(e,r,t){var n=e.filter(function(u){return br(u)&&!(u.name in r)&&!t.has(u.name)})[0];if(!n)throw new Error('No undefined variable found in inline expression "'+e+'"');var a=n.name,i=new Map,o=new wd(t,i,new Set([a])),l=e.compile();return function(s){return i.set(a,s),l.evaluate(o)}}var hk="transformCallback",gk=["typed"],dl=P(hk,gk,e=>{var{typed:r}=e;return function(n,a){return r.isTypedFunction(n)?t(n,a):ay(n,n.length,a)};function t(n,a){var i=Object.fromEntries(Object.entries(n.signatures).map(o=>{var[l,u]=o,s=l.split(",").length;return r.isTypedFunction(u)?[l,t(u,a)]:[l,ay(u,s,a)]}));return typeof n.name=="string"?r(n.name,i):r(i)}});function ay(e,r,t){return r===t?e:r===t+1?function(){for(var n=arguments.length,a=new Array(n),i=0;i<n;i++)a[i]=arguments[i];var o=a.slice(0,t),l=iy(a[t]);return e(...o,l)}:r>t+1?function(){for(var n=arguments.length,a=new Array(n),i=0;i<n;i++)a[i]=arguments[i];var o=a.slice(0,t),l=iy(a[t]),u=a.slice(t+1);return e(...o,l,...u)}:e}function iy(e){return e.map(r=>r+1)}var yk="filter",bk=["typed"],wk=P(yk,bk,e=>{var{typed:r}=e;function t(a,i,o){var l=$v({typed:r}),u=dl({typed:r});if(a.length===0)return l();var s=a[0];if(a.length===1)return l(s);var c=a.length-1,f=a[c];return s&&(s=n(s,o)),f&&(br(f)||da(f)?f=n(f,o):f=fl(f,i,o)),l(s,u(f,c))}t.rawArgs=!0;function n(a,i){return a.compile().evaluate(i)}return t},{isTransformFunction:!0}),xk="forEach",Nk=["typed"],Ak=P(xk,Nk,e=>{var{typed:r}=e,t=zv({typed:r}),n=dl({typed:r});function a(o,l,u){if(o.length===0)return t();var s=o[0];if(o.length===1)return t(s);var c=o.length-1,f=o[c];return s&&(s=i(s,u)),f&&(br(f)||da(f)?f=i(f,u):f=fl(f,l,u)),t(s,n(f,c))}a.rawArgs=!0;function i(o,l){return o.compile().evaluate(l)}return a},{isTransformFunction:!0}),Ek="index",Dk=["Index","getMatrixDataType"],Sk=P(Ek,Dk,e=>{var{Index:r,getMatrixDataType:t}=e;return function(){for(var a=[],i=0,o=arguments.length;i<o;i++){var l=arguments[i];if(Yi(l))l.start--,l.end-=l.step>0?0:2;else if(l&&l.isSet===!0)l=l.map(function(s){return s-1});else if(Xe(l)||_e(l))t(l)!=="boolean"&&(l=l.map(function(s){return s-1}));else if(Re(l))l--;else if(Ie(l))l=l.toNumber()-1;else if(typeof l!="string")throw new TypeError("Dimension must be an Array, Matrix, number, string, or Range");a[i]=l}var u=new r;return r.apply(u,a),u}},{isTransformFunction:!0}),Ck="map",Mk=["typed"],_k=P(Ck,Mk,e=>{var{typed:r}=e,t=Lv({typed:r}),n=dl({typed:r});function a(i,o,l){if(i.length===0)return t();if(i.length===1)return t(i[0]);var u=i.length-1,s=i.slice(0,u),c=i[u];return s=s.map(d=>f(d,l)),c&&(br(c)||da(c)?c=f(c,l):c=fl(c,o,l)),t(...s,n(c,u));function f(d,p){return d.compile().evaluate(p)}}return a.rawArgs=!0,a},{isTransformFunction:!0});function Tk(e){return Re(e)?e-1:Ie(e)?e.minus(1):e}function Fk(e){return Re(e)||Ie(e)}function Nn(e){if(e.length===2&&Xr(e[0])){e=e.slice();var r=e[1];Fk(r)&&(e[1]=Tk(r))}return e}var Bk="max",Ok=["typed","config","numeric","larger"],$k=P(Bk,Ok,e=>{var{typed:r,config:t,numeric:n,larger:a}=e,i=Wh({typed:r,config:t,numeric:n,larger:a});return r("max",{"...any":function(l){l=Nn(l);try{return i.apply(null,l)}catch(u){throw Lr(u)}}})},{isTransformFunction:!0}),Ik="mean",Rk=["typed","add","divide"],zk=P(Ik,Rk,e=>{var{typed:r,add:t,divide:n}=e,a=bg({typed:r,add:t,divide:n});return r("mean",{"...any":function(o){o=Nn(o);try{return a.apply(null,o)}catch(l){throw Lr(l)}}})},{isTransformFunction:!0}),Pk="min",kk=["typed","config","numeric","smaller"],qk=P(Pk,kk,e=>{var{typed:r,config:t,numeric:n,smaller:a}=e,i=Kh({typed:r,config:t,numeric:n,smaller:a});return r("min",{"...any":function(l){l=Nn(l);try{return i.apply(null,l)}catch(u){throw Lr(u)}}})},{isTransformFunction:!0}),Lk="range",Vk=["typed","config","?matrix","?bignumber","smaller","smallerEq","larger","largerEq","add","isPositive"],Uk=P(Lk,Vk,e=>{var{typed:r,config:t,matrix:n,bignumber:a,smaller:i,smallerEq:o,larger:l,largerEq:u,add:s,isPositive:c}=e,f=Wv({typed:r,config:t,matrix:n,bignumber:a,smaller:i,smallerEq:o,larger:l,largerEq:u,add:s,isPositive:c});return r("range",{"...any":function(p){var v=p.length-1,h=p[v];return typeof h!="boolean"&&p.push(!0),f.apply(null,p)}})},{isTransformFunction:!0}),Hk="row",Zk=["typed","Index","matrix","range"],Gk=P(Hk,Zk,e=>{var{typed:r,Index:t,matrix:n,range:a}=e,i=Xv({typed:r,Index:t,matrix:n,range:a});return r("row",{"...any":function(l){var u=l.length-1,s=l[u];Re(s)&&(l[u]=s-1);try{return i.apply(null,l)}catch(c){throw Lr(c)}}})},{isTransformFunction:!0}),Wk="subset",jk=["typed","matrix","zeros","add"],Kk=P(Wk,jk,e=>{var{typed:r,matrix:t,zeros:n,add:a}=e,i=th({typed:r,matrix:t,zeros:n,add:a});return r("subset",{"...any":function(l){try{return i.apply(null,l)}catch(u){throw Lr(u)}}})},{isTransformFunction:!0}),Jk="concat",Yk=["typed","matrix","isInteger"],Xk=P(Jk,Yk,e=>{var{typed:r,matrix:t,isInteger:n}=e,a=Mv({typed:r,matrix:t,isInteger:n});return r("concat",{"...any":function(o){var l=o.length-1,u=o[l];Re(u)?o[l]=u-1:Ie(u)&&(o[l]=u.minus(1));try{return a.apply(null,o)}catch(s){throw Lr(s)}}})},{isTransformFunction:!0}),oy="diff",Qk=["typed","matrix","subtract","number","bignumber"],eq=P(oy,Qk,e=>{var{typed:r,matrix:t,subtract:n,number:a,bignumber:i}=e,o=Uv({typed:r,matrix:t,subtract:n,number:a,bignumber:i});return r(oy,{"...any":function(u){u=Nn(u);try{return o.apply(null,u)}catch(s){throw Lr(s)}}})},{isTransformFunction:!0}),rq="std",tq=["typed","map","sqrt","variance"],nq=P(rq,tq,e=>{var{typed:r,map:t,sqrt:n,variance:a}=e,i=Cg({typed:r,map:t,sqrt:n,variance:a});return r("std",{"...any":function(l){l=Nn(l);try{return i.apply(null,l)}catch(u){throw Lr(u)}}})},{isTransformFunction:!0}),sy="sum",aq=["typed","config","add","numeric"],iq=P(sy,aq,e=>{var{typed:r,config:t,add:n,numeric:a}=e,i=hg({typed:r,config:t,add:n,numeric:a});return r(sy,{"...any":function(l){l=Nn(l);try{return i.apply(null,l)}catch(u){throw Lr(u)}}})},{isTransformFunction:!0}),oq="quantileSeq",sq=["typed","bignumber","add","subtract","divide","multiply","partitionSelect","compare","isInteger","smaller","smallerEq","larger"],uq=P(oq,sq,e=>{var{typed:r,bignumber:t,add:n,subtract:a,divide:i,multiply:o,partitionSelect:l,compare:u,isInteger:s,smaller:c,smallerEq:f,larger:d}=e,p=Dg({typed:r,bignumber:t,add:n,subtract:a,divide:i,multiply:o,partitionSelect:l,compare:u,isInteger:s,smaller:c,smallerEq:f,larger:d});return r("quantileSeq",{"Array | Matrix, number | BigNumber":p,"Array | Matrix, number | BigNumber, number":(h,w,b)=>p(h,w,v(b)),"Array | Matrix, number | BigNumber, boolean":p,"Array | Matrix, number | BigNumber, boolean, number":(h,w,b,A)=>p(h,w,b,v(A)),"Array | Matrix, Array | Matrix":p,"Array | Matrix, Array | Matrix, number":(h,w,b)=>p(h,w,v(b)),"Array | Matrix, Array | Matrix, boolean":p,"Array | Matrix, Array | Matrix, boolean, number":(h,w,b,A)=>p(h,w,b,v(A))});function v(h){return Nn([[],h])[1]}},{isTransformFunction:!0}),uy="cumsum",lq=["typed","add","unaryPlus"],cq=P(uy,lq,e=>{var{typed:r,add:t,unaryPlus:n}=e,a=gg({typed:r,add:t,unaryPlus:n});return r(uy,{"...any":function(o){if(o.length===2&&Xr(o[0])){var l=o[1];Re(l)?o[1]=l-1:Ie(l)&&(o[1]=l.minus(1))}try{return a.apply(null,o)}catch(u){throw Lr(u)}}})},{isTransformFunction:!0}),ly="variance",fq=["typed","add","subtract","multiply","divide","apply","isNaN"],dq=P(ly,fq,e=>{var{typed:r,add:t,subtract:n,multiply:a,divide:i,apply:o,isNaN:l}=e,u=Ag({typed:r,add:t,subtract:n,multiply:a,divide:i,apply:o,isNaN:l});return r(ly,{"...any":function(c){c=Nn(c);try{return u.apply(null,c)}catch(f){throw Lr(f)}}})},{isTransformFunction:!0}),cy="print",mq=["typed","matrix","zeros","add"],pq=P(cy,mq,e=>{var{typed:r,matrix:t,zeros:n,add:a}=e,i=bh({typed:r,matrix:t,zeros:n,add:a});return r(cy,{"string, Object | Array":function(u,s){return i(o(u),s)},"string, Object | Array, number | Object":function(u,s,c){return i(o(u),s,c)}});function o(l){return l.replace(gh,u=>{var s=u.slice(1).split("."),c=s.map(function(f){return!isNaN(f)&&f.length>0?parseInt(f)-1:f});return"$"+c.join(".")})}},{isTransformFunction:!0}),vq="and",hq=["typed","matrix","zeros","add","equalScalar","not","concat"],gq=P(vq,hq,e=>{var{typed:r,matrix:t,equalScalar:n,zeros:a,not:i,concat:o}=e,l=kh({typed:r,matrix:t,equalScalar:n,zeros:a,not:i,concat:o});function u(s,c,f){var d=s[0].compile().evaluate(f);if(!Xr(d)&&!l(d,!0))return!1;var p=s[1].compile().evaluate(f);return l(d,p)}return u.rawArgs=!0,u},{isTransformFunction:!0}),yq="or",bq=["typed","matrix","equalScalar","DenseMatrix","concat"],wq=P(yq,bq,e=>{var{typed:r,matrix:t,equalScalar:n,DenseMatrix:a,concat:i}=e,o=Dv({typed:r,matrix:t,equalScalar:n,DenseMatrix:a,concat:i});function l(u,s,c){var f=u[0].compile().evaluate(c);if(!Xr(f)&&o(f,!1))return!0;var d=u[1].compile().evaluate(c);return o(f,d)}return l.rawArgs=!0,l},{isTransformFunction:!0}),xq="bitAnd",Nq=["typed","matrix","zeros","add","equalScalar","not","concat"],Aq=P(xq,Nq,e=>{var{typed:r,matrix:t,equalScalar:n,zeros:a,not:i,concat:o}=e,l=pv({typed:r,matrix:t,equalScalar:n,zeros:a,not:i,concat:o});function u(s,c,f){var d=s[0].compile().evaluate(f);if(!Xr(d)){if(isNaN(d))return NaN;if(d===0||d===!1)return 0}var p=s[1].compile().evaluate(f);return l(d,p)}return u.rawArgs=!0,u},{isTransformFunction:!0}),Eq="bitOr",Dq=["typed","matrix","equalScalar","DenseMatrix","concat"],Sq=P(Eq,Dq,e=>{var{typed:r,matrix:t,equalScalar:n,DenseMatrix:a,concat:i}=e,o=gv({typed:r,matrix:t,equalScalar:n,DenseMatrix:a,concat:i});function l(u,s,c){var f=u[0].compile().evaluate(c);if(!Xr(f)){if(isNaN(f))return NaN;if(f===-1)return-1;if(f===!0)return 1}var d=u[1].compile().evaluate(c);return o(f,d)}return l.rawArgs=!0,l},{isTransformFunction:!0}),fy=Object.freeze(Object.defineProperty({__proto__:null,createAbs:E_,createAccessorNode:M5,createAcos:W4,createAcosh:K4,createAcot:Y4,createAcoth:Q4,createAcsc:rO,createAcsch:nO,createAdd:d5,createAddScalar:M_,createAnd:kh,createAndTransform:gq,createApply:Ru,createApplyTransform:dk,createArg:mT,createArrayNode:T5,createAsec:iO,createAsech:sO,createAsin:lO,createAsinh:dO,createAssignmentNode:$5,createAtan:vO,createAtan2:gO,createAtanh:bO,createAtomicMass:U7,createAvogadro:H7,createBellNumbers:dP,createBigNumberClass:MC,createBigint:KM,createBignumber:t_,createBin:GF,createBitAnd:pv,createBitAndTransform:Aq,createBitNot:oT,createBitOr:gv,createBitOrTransform:Sq,createBitXor:fT,createBlockNode:R5,createBohrMagneton:A7,createBohrRadius:_7,createBoltzmann:Z7,createBoolean:QM,createCatalan:pP,createCbrt:B_,createCeil:L_,createChain:zR,createChainClass:o6,createClassicalElectronRadius:T7,createClone:cM,createColumn:Tv,createColumnTransform:vk,createCombinations:Sz,createCombinationsWithRep:Mz,createCompare:kB,createCompareNatural:UB,createCompareText:GB,createCompile:v8,createComplex:i_,createComplexClass:OC,createComposition:hP,createConcat:Mv,createConcatTransform:Xk,createConditionalNode:P5,createConductanceQuantum:E7,createConj:vT,createConstantNode:G5,createCorr:Ez,createCos:xO,createCosh:AO,createCot:DO,createCoth:CO,createCoulomb:x7,createCount:MT,createCreateUnit:Z4,createCross:TT,createCsc:_O,createCsch:FO,createCtranspose:yF,createCube:U_,createCumSum:gg,createCumSumTransform:cq,createDeepEqual:f4,createDenseMatrixClass:uM,createDerivative:IP,createDet:kR,createDeuteronMass:R7,createDiag:BT,createDiff:Uv,createDiffTransform:eq,createDistance:lz,createDivide:sz,createDivideScalar:oB,createDot:y5,createDotDivide:wB,createDotMultiply:X3,createDotPow:yB,createE:t7,createEfimovFactor:V7,createEigs:jR,createElectricConstant:b7,createElectronMass:F7,createElementaryCharge:N7,createEqual:jB,createEqualScalar:PM,createEqualText:YB,createErf:OF,createEvaluate:g8,createExp:Z_,createExpm:JR,createExpm1:W_,createFactorial:$z,createFalse:JP,createFaraday:G7,createFermiCoupling:B7,createFft:NF,createFibonacciHeapClass:_4,createFilter:$v,createFilterTransform:wk,createFineStructure:O7,createFirstRadiation:W7,createFix:J_,createFlatten:RT,createFloor:Jp,createForEach:zv,createForEachTransform:Ak,createFormat:HF,createFraction:u_,createFractionClass:LC,createFreqz:LP,createFunctionAssignmentNode:j5,createFunctionNode:f8,createGamma:Tz,createGasConstant:K7,createGcd:w3,createGetMatrixDataType:qT,createGravitationConstant:v7,createGravity:ak,createHartreeEnergy:$7,createHasNumericValue:CM,createHelp:IR,createHelpClass:n6,createHex:JF,createHypot:p5,createI:c7,createIdentity:VT,createIfft:EF,createIm:gT,createImmutableDenseMatrixClass:A4,createIndex:A5,createIndexClass:S4,createIndexNode:J5,createIndexTransform:Sk,createInfinity:XP,createIntersect:dz,createInv:LR,createInverseConductanceQuantum:D7,createInvmod:j3,createIsInteger:dM,createIsNaN:OM,createIsNegative:AM,createIsNumeric:DM,createIsPositive:_M,createIsPrime:rB,createIsZero:FM,createKldivergence:Rz,createKlitzing:M7,createKron:HT,createLN10:i7,createLN2:a7,createLOG10E:s7,createLOG2E:o7,createLarger:i4,createLargerEq:u4,createLcm:E3,createLeafCount:yP,createLeftShift:BB,createLgamma:Bz,createLog:dB,createLog10:S3,createLog1p:pB,createLog2:M3,createLoschmidt:j7,createLsolve:NB,createLsolveAll:SB,createLup:E8,createLusolve:X8,createLyap:az,createMad:bz,createMagneticConstant:y7,createMagneticFluxQuantum:S7,createMap:Lv,createMapTransform:_k,createMatrix:c_,createMatrixClass:WC,createMatrixFromColumns:h_,createMatrixFromFunction:d_,createMatrixFromRows:p_,createMax:Wh,createMaxTransform:$k,createMean:bg,createMeanTransform:zk,createMedian:gz,createMin:Kh,createMinTransform:qk,createMod:Xp,createMode:qF,createMolarMass:tk,createMolarMassC12:nk,createMolarPlanckConstant:J7,createMolarVolume:Y7,createMultinomial:Pz,createMultiply:O3,createMultiplyScalar:F3,createNaN:QP,createNeutronMass:z7,createNode:S5,createNorm:h5,createNot:xT,createNthRoot:I3,createNthRoots:hB,createNuclearMagneton:C7,createNull:YP,createNumber:GM,createNumeric:aB,createObjectNode:X5,createOct:jF,createOnes:KT,createOperatorNode:e8,createOr:Dv,createOrTransform:wq,createParenthesisNode:t8,createParse:m8,createParser:N8,createParserClass:w8,createPartitionSelect:h4,createPermutations:qz,createPhi:n7,createPi:e7,createPickRandom:aP,createPinv:UR,createPlanckCharge:uk,createPlanckConstant:h7,createPlanckLength:ik,createPlanckMass:ok,createPlanckTemperature:lk,createPlanckTime:sk,createPolynomialRoot:e6,createPow:uB,createPrint:bh,createPrintTransform:pq,createProd:VF,createProtonMass:I7,createQr:S8,createQuantileSeq:Dg,createQuantileSeqTransform:uq,createQuantumOfCirculation:P7,createRandom:oP,createRandomInt:uP,createRange:Wv,createRangeClass:HC,createRangeNode:a8,createRangeTransform:Uk,createRationalize:zP,createRe:bT,createReducedPlanckConstant:g7,createRelationalNode:o8,createReplacer:WP,createReshape:XT,createResize:rF,createResolve:FP,createResultSet:BS,createReviver:HP,createRightArithShift:$B,createRightLogShift:RB,createRotate:nF,createRotationMatrix:iF,createRound:cB,createRow:Xv,createRowTransform:Gk,createRydberg:k7,createSQRT1_2:u7,createSQRT2:l7,createSackurTetrode:X7,createSchur:tz,createSec:OO,createSech:IO,createSecondRadiation:Q7,createSetCartesian:GO,createSetDifference:jO,createSetDistinct:JO,createSetIntersect:XO,createSetIsSubset:e5,createSetMultiplicity:t5,createSetPowerset:a5,createSetSize:o5,createSetSymDifference:u5,createSetUnion:c5,createSign:z3,createSimplify:AP,createSimplifyConstant:SP,createSimplifyCore:MP,createSin:zO,createSinh:kO,createSize:uF,createSlu:J8,createSmaller:QB,createSmallerEq:t4,createSolveODE:TF,createSort:y4,createSpaClass:B4,createSparse:U4,createSparseMatrixClass:LM,createSpeedOfLight:p7,createSplitUnit:y_,createSqrt:q3,createSqrtm:XR,createSquare:V3,createSqueeze:cF,createStd:Cg,createStdTransform:nq,createStefanBoltzmann:ek,createStirlingS2:cP,createString:YM,createSubset:th,createSubsetTransform:Kk,createSubtract:H3,createSubtractScalar:T_,createSum:hg,createSumTransform:iq,createSylvester:ez,createSymbolNode:l8,createSymbolicEqual:OP,createTan:LO,createTanh:HO,createTau:r7,createThomsonCrossSection:q7,createTo:QF,createTrace:x5,createTranspose:hF,createTrue:KP,createTypeOf:IM,createTyped:MS,createUnaryMinus:w_,createUnaryPlus:N_,createUnequal:m4,createUnitClass:k4,createUnitFunction:L4,createUppercaseE:d7,createUppercasePi:f7,createUsolve:EB,createUsolveAll:MB,createVacuumImpedance:w7,createVariance:Ag,createVarianceTransform:dq,createVersion:m7,createWeakMixingAngle:L7,createWienDisplacement:rk,createXgcd:G3,createXor:ET,createZeros:wF,createZeta:PF,createZpk2tf:kP},Symbol.toStringTag,{value:"Module"})),ml={exports:{}};function pl(){}pl.prototype={on:function(e,r,t){var n=this.e||(this.e={});return(n[e]||(n[e]=[])).push({fn:r,ctx:t}),this},once:function(e,r,t){var n=this;function a(){n.off(e,a),r.apply(t,arguments)}return a._=r,this.on(e,a,t)},emit:function(e){var r=[].slice.call(arguments,1),t=((this.e||(this.e={}))[e]||[]).slice(),n=0,a=t.length;for(n;n<a;n++)t[n].fn.apply(t[n].ctx,r);return this},off:function(e,r){var t=this.e||(this.e={}),n=t[e],a=[];if(n&&r)for(var i=0,o=n.length;i<o;i++)n[i].fn!==r&&n[i].fn._!==r&&a.push(n[i]);return a.length?t[e]=a:delete t[e],this}},ml.exports=pl,ml.exports.TinyEmitter=pl;var Cq=ml.exports;const Mq=Zi(Cq);function _q(e){var r=new Mq;return e.on=r.on.bind(r),e.off=r.off.bind(r),e.once=r.once.bind(r),e.emit=r.emit.bind(r),e}function Tq(e,r,t,n){function a(w,b){var A=arguments.length;if(A!==1&&A!==2)throw new Xt("import",A,1,2);b||(b={});function g(D,S,E){if(Array.isArray(S))S.forEach(F=>g(D,F));else if(typeof S=="object")for(var C in S)De(S,C)&&g(D,S[C],C);else if(ei(S)||E!==void 0){var _=ei(S)?v(S)?S.fn+".transform":S.fn:E;if(De(D,_)&&D[_]!==S&&!b.silent)throw new Error('Cannot import "'+_+'" twice');D[_]=S}else if(!b.silent)throw new TypeError("Factory, Object, or Array expected")}var N={};g(N,w);for(var x in N)if(De(N,x)){var y=N[x];if(ei(y))s(y,b);else if(c(y))i(x,y,b);else if(!b.silent)throw new TypeError("Factory, Object, or Array expected")}}function i(w,b,A){if(A.wrap&&typeof b=="function"&&(b=u(b)),f(b)&&(b=e(w,{[b.signature]:b})),e.isTypedFunction(t[w])&&e.isTypedFunction(b)){A.override?b=e(w,b.signatures):b=e(t[w],b),t[w]=b,delete n[w],o(w,b),t.emit("import",w,function(){return b});return}if(t[w]===void 0||A.override){t[w]=b,delete n[w],o(w,b),t.emit("import",w,function(){return b});return}if(!A.silent)throw new Error('Cannot import "'+w+'": already exists')}function o(w,b){b&&typeof b.transform=="function"?(t.expression.transform[w]=b.transform,d(w)&&(t.expression.mathWithTransform[w]=b.transform)):(delete t.expression.transform[w],d(w)&&(t.expression.mathWithTransform[w]=b))}function l(w){delete t.expression.transform[w],d(w)?t.expression.mathWithTransform[w]=t[w]:delete t.expression.mathWithTransform[w]}function u(w){var b=function(){for(var g=[],N=0,x=arguments.length;N<x;N++){var y=arguments[N];g[N]=y&&y.valueOf()}return w.apply(t,g)};return w.transform&&(b.transform=w.transform),b}function s(w,b){var A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:w.fn;if(A.includes("."))throw new Error("Factory name should not contain a nested path. Name: "+JSON.stringify(A));var g=v(w)?t.expression.transform:t,N=A in t.expression.transform,x=De(g,A)?g[A]:void 0,y=function(){var S={};w.dependencies.map(Hd).forEach(C=>{if(C.includes("."))throw new Error("Factory dependency should not contain a nested path. Name: "+JSON.stringify(C));C==="math"?S.math=t:C==="mathWithTransform"?S.mathWithTransform=t.expression.mathWithTransform:C==="classes"?S.classes=t:S[C]=t[C]});var E=w(S);if(E&&typeof E.transform=="function")throw new Error('Transforms cannot be attached to factory functions. Please create a separate function for it with export const path = "expression.transform"');if(x===void 0||b.override)return E;if(e.isTypedFunction(x)&&e.isTypedFunction(E))return e(x,E);if(b.silent)return x;throw new Error('Cannot import "'+A+'": already exists')};!w.meta||w.meta.lazy!==!1?(Xi(g,A,y),x&&N?l(A):(v(w)||p(w))&&Xi(t.expression.mathWithTransform,A,()=>g[A])):(g[A]=y(),x&&N?l(A):(v(w)||p(w))&&Xi(t.expression.mathWithTransform,A,()=>g[A])),n[A]=w,t.emit("import",A,y)}function c(w){return typeof w=="function"||typeof w=="number"||typeof w=="string"||typeof w=="boolean"||w===null||Gr(w)||gt(w)||Ie(w)||zn(w)||_e(w)||Array.isArray(w)}function f(w){return typeof w=="function"&&typeof w.signature=="string"}function d(w){return!De(h,w)}function p(w){return!w.fn.includes(".")&&!De(h,w.fn)&&(!w.meta||!w.meta.isClass)}function v(w){return w!==void 0&&w.meta!==void 0&&w.meta.isTransformFunction===!0||!1}var h={expression:!0,type:!0,docs:!0,error:!0,json:!0,chain:!0};return a}function vl(e,r){var t=Br({},bd,r);if(typeof Object.create!="function")throw new Error("ES5 not supported by this JavaScript engine. Please load the es5-shim and es5-sham library for compatibility.");var n=_q({isNumber:Re,isComplex:gt,isBigNumber:Ie,isBigInt:Nd,isFraction:zn,isUnit:Gr,isString:Cr,isArray:Xe,isMatrix:_e,isCollection:Xr,isDenseMatrix:Ja,isSparseMatrix:cn,isRange:Yi,isIndex:Ya,isBoolean:Ad,isResultSet:Ed,isHelp:cu,isFunction:Dd,isDate:Sd,isRegExp:Cd,isObject:fa,isMap:Pn,isPartitionedMap:tS,isObjectWrappingMap:nS,isNull:Md,isUndefined:_d,isAccessorNode:fn,isArrayNode:Qr,isAssignmentNode:Td,isBlockNode:Fd,isConditionalNode:Bd,isConstantNode:Ze,isFunctionAssignmentNode:da,isFunctionNode:Gt,isIndexNode:kn,isNode:Qe,isObjectNode:Xa,isOperatorNode:pr,isParenthesisNode:_t,isRangeNode:Od,isRelationalNode:$d,isSymbolNode:br,isChain:du});n.config=uS(t,n.emit),n.expression={transform:{},mathWithTransform:{config:n.config}};var a=[],i=[];function o(c){if(ei(c))return c(n);var f=c[Object.keys(c)[0]];if(ei(f))return f(n);if(!oS(c))throw console.warn("Factory object with properties `type`, `name`, and `factory` expected",c),new Error("Factory object with properties `type`, `name`, and `factory` expected");var d=a.indexOf(c),p;return d===-1?(c.math===!0?p=c.factory(n.type,t,o,n.typed,n):p=c.factory(n.type,t,o,n.typed),a.push(c),i.push(p)):p=i[d],p}var l={};function u(){for(var c=arguments.length,f=new Array(c),d=0;d<c;d++)f[d]=arguments[d];return n.typed.apply(n.typed,f)}u.isTypedFunction=Qa.isTypedFunction;var s=Tq(u,o,n,l);return n.import=s,n.on("config",()=>{Object.values(l).forEach(c=>{c&&c.meta&&c.meta.recreateOnConfigChange&&s(c,{override:!0})})}),n.create=vl.bind(null,e),n.factory=P,n.import(Object.values(iS(e))),n.ArgumentsError=Xt,n.DimensionError=qe,n.IndexError=ft,n}const Fq=vl(fy,{}),dy="simcore/services/comp/opencor";function hl(e,r){let t=-1;const n=new Fq.parser;return e.simulationUiInfo.input.forEach(a=>{++t,n.set(a.id,e.$refs.simInput[t].vModel)}),n.evaluate(r)}function my(e){e.$nextTick(()=>{let r=-1;e.simulationUiInfo.input.forEach(t=>{++r,e.$refs.simInput[r].visible=t.visible===void 0?!0:hl(e,t.visible)}),e.libopencor!==void 0&&(e.userMessage="Running the model...",e.showUserMessage=!0,e.$nextTick(()=>{e.runSimulation()}))})}function py(e){if(!e.hasFinalisedUi&&e.isMounted&&e.hasValidSimulationUiInfo){e.$refs.output.classList.add("x"+e.simulationUiInfo.output.plots.length);let r=-1;e.simulationUiInfo.output.plots.forEach(()=>{e.simulationResults[++r]=[{x:[],y:[],type:"scatter"}]}),my(e),e.hasFinalisedUi=!0}}const vy=(e,r)=>{const t=e.__vccOpts||e;for(const[n,a]of r)t[n]=a;return t},Bq={name:"SimulationVuerInput",components:{ElInputNumber:au,ElOption:md,ElSelect:dd,ElSlider:hd},props:{defaultValue:{required:!0,type:Number},maximumValue:{type:Number},minimumValue:{type:Number},name:{required:!0,type:String},possibleValues:{type:Array},stepValue:{type:Number}},data:function(){return{isDiscrete:this.possibleValues!==void 0,labelClasses:"default "+(this.possibleValues!==void 0?"discrete":"scalar"),visible:!0,vModel:this.defaultValue}},methods:{updateUi:function(){my(this.$parent)}}},Oq={key:1,class:"sliders-and-fields"};function $q(e,r,t,n,a,i){const o=md,l=dd,u=hd,s=au;return m.withDirectives((m.openBlock(),m.createElementBlock("div",null,[m.createElementVNode("p",{class:m.normalizeClass(e.labelClasses)},m.toDisplayString(t.name),3),e.isDiscrete?(m.openBlock(),m.createBlock(l,{key:0,class:"discrete","popper-class":"discrete-popper",size:"small",modelValue:e.vModel,"onUpdate:modelValue":r[0]||(r[0]=c=>e.vModel=c),teleported:!0,onChange:r[1]||(r[1]=c=>i.updateUi())},{default:m.withCtx(()=>[(m.openBlock(!0),m.createElementBlock(m.Fragment,null,m.renderList(t.possibleValues,c=>(m.openBlock(),m.createBlock(o,{key:c.value,label:c.name,value:c.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])):m.createCommentVNode("",!0),e.isDiscrete?m.createCommentVNode("",!0):(m.openBlock(),m.createElementBlock("div",Oq,[m.createVNode(u,{modelValue:e.vModel,"onUpdate:modelValue":r[2]||(r[2]=c=>e.vModel=c),max:t.maximumValue,min:t.minimumValue,"show-input":!1,"show-tooltip":!1,step:t.stepValue,onInput:r[3]||(r[3]=c=>i.updateUi())},null,8,["modelValue","max","min","step"]),m.createVNode(s,{class:"scalar",size:"small",modelValue:e.vModel,"onUpdate:modelValue":r[4]||(r[4]=c=>e.vModel=c),controls:!1,max:t.maximumValue,min:t.minimumValue,step:t.stepValue,"step-strictly":!0,onInput:r[5]||(r[5]=c=>i.updateUi())},null,8,["modelValue","max","min","step"])]))],512)),[[m.vShow,e.visible]])}const hy=vy(Bq,[["render",$q],["__scopeId","data-v-fbf95811"]]);var vr={},gl=vr.ValidationError=function(r,t,n,a,i,o){if(Array.isArray(a)?(this.path=a,this.property=a.reduce(function(u,s){return u+yy(s)},"instance")):a!==void 0&&(this.property=a),r&&(this.message=r),n){var l=n.$id||n.id;this.schema=l||n}t!==void 0&&(this.instance=t),this.name=i,this.argument=o,this.stack=this.toString()};gl.prototype.toString=function(){return this.property+" "+this.message};var Xo=vr.ValidatorResult=function(r,t,n,a){this.instance=r,this.schema=t,this.options=n,this.path=a.path,this.propertyPath=a.propertyPath,this.errors=[],this.throwError=n&&n.throwError,this.throwFirst=n&&n.throwFirst,this.throwAll=n&&n.throwAll,this.disableFormat=n&&n.disableFormat===!0};Xo.prototype.addError=function(r){var t;if(typeof r=="string")t=new gl(r,this.instance,this.schema,this.path);else{if(!r)throw new Error("Missing error detail");if(!r.message)throw new Error("Missing error message");if(!r.name)throw new Error("Missing validator type");t=new gl(r.message,this.instance,this.schema,this.path,r.name,r.argument)}if(this.errors.push(t),this.throwFirst)throw new Gn(this);if(this.throwError)throw t;return t},Xo.prototype.importErrors=function(r){typeof r=="string"||r&&r.validatorType?this.addError(r):r&&r.errors&&(this.errors=this.errors.concat(r.errors))};function Iq(e,r){return r+": "+e.toString()+`
|
|
79
79
|
`}Xo.prototype.toString=function(r){return this.errors.map(Iq).join("")},Object.defineProperty(Xo.prototype,"valid",{get:function(){return!this.errors.length}}),vr.ValidatorResultError=Gn;function Gn(e){typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Gn),this.instance=e.instance,this.schema=e.schema,this.options=e.options,this.errors=e.errors}Gn.prototype=new Error,Gn.prototype.constructor=Gn,Gn.prototype.name="Validation Error";var gy=vr.SchemaError=function e(r,t){this.message=r,this.schema=t,Error.call(this,r),typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,e)};gy.prototype=Object.create(Error.prototype,{constructor:{value:gy,enumerable:!1},name:{value:"SchemaError",enumerable:!1}});var yl=vr.SchemaContext=function(r,t,n,a,i){this.schema=r,this.options=t,Array.isArray(n)?(this.path=n,this.propertyPath=n.reduce(function(o,l){return o+yy(l)},"instance")):this.propertyPath=n,this.base=a,this.schemas=i};yl.prototype.resolve=function(r){return by(this.base,r)},yl.prototype.makeChild=function(r,t){var n=t===void 0?this.path:this.path.concat([t]),a=r.$id||r.id;let i=by(this.base,a||"");var o=new yl(r,this.options,n,i,Object.create(this.schemas));return a&&!o.schemas[i]&&(o.schemas[i]=r),o};var At=vr.FORMAT_REGEXPS={"date-time":/^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])[tT ](2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])(\.\d+)?([zZ]|[+-]([0-5][0-9]):(60|[0-5][0-9]))$/,date:/^\d{4}-(?:0[0-9]{1}|1[0-2]{1})-(3[01]|0[1-9]|[12][0-9])$/,time:/^(2[0-4]|[01][0-9]):([0-5][0-9]):(60|[0-5][0-9])$/,duration:/P(T\d+(H(\d+M(\d+S)?)?|M(\d+S)?|S)|\d+(D|M(\d+D)?|Y(\d+M(\d+D)?)?)(T\d+(H(\d+M(\d+S)?)?|M(\d+S)?|S))?|\d+W)/i,email:/^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!\.)){0,61}[a-zA-Z0-9]?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!$)){0,61}[a-zA-Z0-9]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/,"idn-email":/^("(?:[!#-\[\]-\u{10FFFF}]|\\[\t -\u{10FFFF}])*"|[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}](?:\.?[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}])*)@([!#-'*+\-/-9=?A-Z\^-\u{10FFFF}](?:\.?[!#-'*+\-/-9=?A-Z\^-\u{10FFFF}])*|\[[!-Z\^-\u{10FFFF}]*\])$/u,"ip-address":/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/,ipv6:/^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*$/,uri:/^[a-zA-Z][a-zA-Z0-9+.-]*:[^\s]*$/,"uri-reference":/^(((([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|([A-Za-z][+\-.0-9A-Za-z]*:?)?)|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?))#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|(([A-Za-z][+\-.0-9A-Za-z]*)?%[0-9A-Fa-f]{2}|[!$&-.0-9;=@_~]|[A-Za-z][+\-.0-9A-Za-z]*[!$&-*,;=@_~])(%[0-9A-Fa-f]{2}|[!$&-.0-9;=@-Z_a-z~])*((([/?](%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?#|[/?])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*)?|([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~])*|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~]+)?|[.0-:A-Fa-f]+)\])?)?|[A-Za-z][+\-.0-9A-Za-z]*:?)?$/,iri:/^[a-zA-Z][a-zA-Z0-9+.-]*:[^\s]*$/,"iri-reference":/^(((([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~-\u{10FFFF}]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|([A-Za-z][+\-.0-9A-Za-z]*:?)?)|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|(\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?)?))#(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|(([A-Za-z][+\-.0-9A-Za-z]*)?%[0-9A-Fa-f]{2}|[!$&-.0-9;=@_~-\u{10FFFF}]|[A-Za-z][+\-.0-9A-Za-z]*[!$&-*,;=@_~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-.0-9;=@-Z_a-z~-\u{10FFFF}])*((([/?](%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*)?#|[/?])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*)?|([A-Za-z][+\-.0-9A-Za-z]*(:%[0-9A-Fa-f]{2}|:[!$&-.0-;=?-Z_a-z~-\u{10FFFF}]|[/?])|\?)(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|([A-Za-z][+\-.0-9A-Za-z]*:)?\/((%[0-9A-Fa-f]{2}|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)(:\d*)?[/?]|[!$&-.0-;=?-Z_a-z~-\u{10FFFF}])(%[0-9A-Fa-f]{2}|[!$&-;=?-Z_a-z~-\u{10FFFF}])*|\/((%[0-9A-Fa-f]{2}|[!$&-.0-9;=A-Z_a-z~-\u{10FFFF}])+(:\d*)?|(\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?:\d*|\[(([Vv][0-9A-Fa-f]+\.[!$&-.0-;=A-Z_a-z~-\u{10FFFF}]+)?|[.0-:A-Fa-f]+)\])?)?|[A-Za-z][+\-.0-9A-Za-z]*:?)?$/u,uuid:/^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i,"uri-template":/(%[0-9a-f]{2}|[!#$&(-;=?@\[\]_a-z~]|\{[!#&+,./;=?@|]?(%[0-9a-f]{2}|[0-9_a-z])(\.?(%[0-9a-f]{2}|[0-9_a-z]))*(:[1-9]\d{0,3}|\*)?(,(%[0-9a-f]{2}|[0-9_a-z])(\.?(%[0-9a-f]{2}|[0-9_a-z]))*(:[1-9]\d{0,3}|\*)?)*\})*/iu,"json-pointer":/^(\/([\x00-\x2e0-@\[-}\x7f]|~[01])*)*$/iu,"relative-json-pointer":/^\d+(#|(\/([\x00-\x2e0-@\[-}\x7f]|~[01])*)*)$/iu,hostname:/^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/,"host-name":/^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/,"utc-millisec":function(e){return typeof e=="string"&&parseFloat(e)===parseInt(e,10)&&!isNaN(e)},regex:function(e){var r=!0;try{new RegExp(e)}catch{r=!1}return r},style:/[\r\n\t ]*[^\r\n\t ][^:]*:[\r\n\t ]*[^\r\n\t ;]*[\r\n\t ]*;?/,color:/^(#?([0-9A-Fa-f]{3}){1,2}\b|aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow|(rgb\(\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*,\s*\b([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\b\s*\))|(rgb\(\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*,\s*(\d?\d%|100%)+\s*\)))$/,phone:/^\+(?:[0-9] ?){6,14}[0-9]$/,alpha:/^[a-zA-Z]+$/,alphanumeric:/^[a-zA-Z0-9]+$/};At.regexp=At.regex,At.pattern=At.regex,At.ipv4=At["ip-address"],vr.isFormat=function(r,t,n){if(typeof r=="string"&&At[t]!==void 0){if(At[t]instanceof RegExp)return At[t].test(r);if(typeof At[t]=="function")return At[t](r)}else if(n&&n.customFormats&&typeof n.customFormats[t]=="function")return n.customFormats[t](r);return!0};var yy=vr.makeSuffix=function(r){return r=r.toString(),!r.match(/[.\s\[\]]/)&&!r.match(/^[\d]/)?"."+r:r.match(/^\d+$/)?"["+r+"]":"["+JSON.stringify(r)+"]"};vr.deepCompareStrict=function e(r,t){if(typeof r!=typeof t)return!1;if(Array.isArray(r))return!Array.isArray(t)||r.length!==t.length?!1:r.every(function(i,o){return e(r[o],t[o])});if(typeof r=="object"){if(!r||!t)return r===t;var n=Object.keys(r),a=Object.keys(t);return n.length!==a.length?!1:n.every(function(i){return e(r[i],t[i])})}return r===t};function Rq(e,r,t,n){typeof t=="object"?r[n]=bl(e[n],t):e.indexOf(t)===-1&&r.push(t)}function zq(e,r,t){r[t]=e[t]}function Pq(e,r,t,n){typeof r[n]!="object"||!r[n]?t[n]=r[n]:e[n]?t[n]=bl(e[n],r[n]):t[n]=r[n]}function bl(e,r){var t=Array.isArray(r),n=t&&[]||{};return t?(e=e||[],n=n.concat(e),r.forEach(Rq.bind(null,e,n))):(e&&typeof e=="object"&&Object.keys(e).forEach(zq.bind(null,e,n)),Object.keys(r).forEach(Pq.bind(null,e,r,n))),n}vr.deepMerge=bl,vr.objectGetPath=function(r,t){for(var n=t.split("/").slice(1),a;typeof(a=n.shift())=="string";){var i=decodeURIComponent(a.replace(/~0/,"~").replace(/~1/g,"/"));if(!(i in r))return;r=r[i]}return r};function kq(e){return"/"+encodeURIComponent(e).replace(/~/g,"%7E")}vr.encodePath=function(r){return r.map(kq).join("")},vr.getDecimalPlaces=function(r){var t=0;if(isNaN(r))return t;typeof r!="number"&&(r=Number(r));var n=r.toString().split("e");if(n.length===2){if(n[1][0]!=="-")return t;t=Number(n[1].slice(1))}var a=n[0].split(".");return a.length===2&&(t+=a[1].length),t},vr.isSchema=function(r){return typeof r=="object"&&r||typeof r=="boolean"};var by=vr.resolveUrl=function(r,t){const n=new URL(t,new URL(r,"resolve://"));if(n.protocol==="resolve:"){const{pathname:a,search:i,hash:o}=n;return a+i+o}return n.toString()},tt=vr,Je=tt.ValidatorResult,An=tt.SchemaError,wl={};wl.ignoreProperties={id:!0,default:!0,description:!0,title:!0,additionalItems:!0,then:!0,else:!0,$schema:!0,$ref:!0,extends:!0};var Ye=wl.validators={};Ye.type=function(r,t,n,a){if(r===void 0)return null;var i=new Je(r,t,n,a),o=Array.isArray(t.type)?t.type:[t.type];if(!o.some(this.testType.bind(this,r,t,n,a))){var l=o.map(function(u){if(u){var s=u.$id||u.id;return s?"<"+s+">":u+""}});i.addError({name:"type",argument:l,message:"is not of a type(s) "+l})}return i};function xl(e,r,t,n,a){var i=r.throwError,o=r.throwAll;r.throwError=!1,r.throwAll=!1;var l=this.validateSchema(e,a,r,t);return r.throwError=i,r.throwAll=o,!l.valid&&n instanceof Function&&n(l),l.valid}Ye.anyOf=function(r,t,n,a){if(r===void 0)return null;var i=new Je(r,t,n,a),o=new Je(r,t,n,a);if(!Array.isArray(t.anyOf))throw new An("anyOf must be an array");if(!t.anyOf.some(xl.bind(this,r,n,a,function(u){o.importErrors(u)}))){var l=t.anyOf.map(function(u,s){var c=u.$id||u.id;return c?"<"+c+">":u.title&&JSON.stringify(u.title)||u.$ref&&"<"+u.$ref+">"||"[subschema "+s+"]"});n.nestedErrors&&i.importErrors(o),i.addError({name:"anyOf",argument:l,message:"is not any of "+l.join(",")})}return i},Ye.allOf=function(r,t,n,a){if(r===void 0)return null;if(!Array.isArray(t.allOf))throw new An("allOf must be an array");var i=new Je(r,t,n,a),o=this;return t.allOf.forEach(function(l,u){var s=o.validateSchema(r,l,n,a);if(!s.valid){var c=l.$id||l.id,f=c||l.title&&JSON.stringify(l.title)||l.$ref&&"<"+l.$ref+">"||"[subschema "+u+"]";i.addError({name:"allOf",argument:{id:f,length:s.errors.length,valid:s},message:"does not match allOf schema "+f+" with "+s.errors.length+" error[s]:"}),i.importErrors(s)}}),i},Ye.oneOf=function(r,t,n,a){if(r===void 0)return null;if(!Array.isArray(t.oneOf))throw new An("oneOf must be an array");var i=new Je(r,t,n,a),o=new Je(r,t,n,a),l=t.oneOf.filter(xl.bind(this,r,n,a,function(s){o.importErrors(s)})).length,u=t.oneOf.map(function(s,c){var f=s.$id||s.id;return f||s.title&&JSON.stringify(s.title)||s.$ref&&"<"+s.$ref+">"||"[subschema "+c+"]"});return l!==1&&(n.nestedErrors&&i.importErrors(o),i.addError({name:"oneOf",argument:u,message:"is not exactly one from "+u.join(",")})),i},Ye.if=function(r,t,n,a){if(r===void 0)return null;if(!tt.isSchema(t.if))throw new Error('Expected "if" keyword to be a schema');var i=xl.call(this,r,n,a,null,t.if),o=new Je(r,t,n,a),l;if(i){if(t.then===void 0)return;if(!tt.isSchema(t.then))throw new Error('Expected "then" keyword to be a schema');l=this.validateSchema(r,t.then,n,a.makeChild(t.then)),o.importErrors(l)}else{if(t.else===void 0)return;if(!tt.isSchema(t.else))throw new Error('Expected "else" keyword to be a schema');l=this.validateSchema(r,t.else,n,a.makeChild(t.else)),o.importErrors(l)}return o};function Nl(e,r){if(Object.hasOwnProperty.call(e,r))return e[r];if(r in e){for(;e=Object.getPrototypeOf(e);)if(Object.propertyIsEnumerable.call(e,r))return e[r]}}Ye.propertyNames=function(r,t,n,a){if(this.types.object(r)){var i=new Je(r,t,n,a),o=t.propertyNames!==void 0?t.propertyNames:{};if(!tt.isSchema(o))throw new An('Expected "propertyNames" to be a schema (object or boolean)');for(var l in r)if(Nl(r,l)!==void 0){var u=this.validateSchema(l,o,n,a.makeChild(o));i.importErrors(u)}return i}},Ye.properties=function(r,t,n,a){if(this.types.object(r)){var i=new Je(r,t,n,a),o=t.properties||{};for(var l in o){var u=o[l];if(u!==void 0){if(u===null)throw new An('Unexpected null, expected schema in "properties"');typeof n.preValidateProperty=="function"&&n.preValidateProperty(r,l,u,n,a);var s=Nl(r,l),c=this.validateSchema(s,u,n,a.makeChild(u,l));c.instance!==i.instance[l]&&(i.instance[l]=c.instance),i.importErrors(c)}}return i}};function wy(e,r,t,n,a,i){if(this.types.object(e)&&!(r.properties&&r.properties[a]!==void 0))if(r.additionalProperties===!1)i.addError({name:"additionalProperties",argument:a,message:"is not allowed to have the additional property "+JSON.stringify(a)});else{var o=r.additionalProperties||{};typeof t.preValidateProperty=="function"&&t.preValidateProperty(e,a,o,t,n);var l=this.validateSchema(e[a],o,t,n.makeChild(o,a));l.instance!==i.instance[a]&&(i.instance[a]=l.instance),i.importErrors(l)}}Ye.patternProperties=function(r,t,n,a){if(this.types.object(r)){var i=new Je(r,t,n,a),o=t.patternProperties||{};for(var l in r){var u=!0;for(var s in o){var c=o[s];if(c!==void 0){if(c===null)throw new An('Unexpected null, expected schema in "patternProperties"');try{var f=new RegExp(s,"u")}catch{f=new RegExp(s)}if(f.test(l)){u=!1,typeof n.preValidateProperty=="function"&&n.preValidateProperty(r,l,c,n,a);var d=this.validateSchema(r[l],c,n,a.makeChild(c,l));d.instance!==i.instance[l]&&(i.instance[l]=d.instance),i.importErrors(d)}}}u&&wy.call(this,r,t,n,a,l,i)}return i}},Ye.additionalProperties=function(r,t,n,a){if(this.types.object(r)){if(t.patternProperties)return null;var i=new Je(r,t,n,a);for(var o in r)wy.call(this,r,t,n,a,o,i);return i}},Ye.minProperties=function(r,t,n,a){if(this.types.object(r)){var i=new Je(r,t,n,a),o=Object.keys(r);return o.length>=t.minProperties||i.addError({name:"minProperties",argument:t.minProperties,message:"does not meet minimum property length of "+t.minProperties}),i}},Ye.maxProperties=function(r,t,n,a){if(this.types.object(r)){var i=new Je(r,t,n,a),o=Object.keys(r);return o.length<=t.maxProperties||i.addError({name:"maxProperties",argument:t.maxProperties,message:"does not meet maximum property length of "+t.maxProperties}),i}},Ye.items=function(r,t,n,a){var i=this;if(this.types.array(r)&&t.items!==void 0){var o=new Je(r,t,n,a);return r.every(function(l,u){if(Array.isArray(t.items))var s=t.items[u]===void 0?t.additionalItems:t.items[u];else var s=t.items;if(s===void 0)return!0;if(s===!1)return o.addError({name:"items",message:"additionalItems not permitted"}),!1;var c=i.validateSchema(l,s,n,a.makeChild(s,u));return c.instance!==o.instance[u]&&(o.instance[u]=c.instance),o.importErrors(c),!0}),o}},Ye.contains=function(r,t,n,a){var i=this;if(this.types.array(r)&&t.contains!==void 0){if(!tt.isSchema(t.contains))throw new Error('Expected "contains" keyword to be a schema');var o=new Je(r,t,n,a),l=r.some(function(u,s){var c=i.validateSchema(u,t.contains,n,a.makeChild(t.contains,s));return c.errors.length===0});return l===!1&&o.addError({name:"contains",argument:t.contains,message:"must contain an item matching given schema"}),o}},Ye.minimum=function(r,t,n,a){if(this.types.number(r)){var i=new Je(r,t,n,a);return t.exclusiveMinimum&&t.exclusiveMinimum===!0?r>t.minimum||i.addError({name:"minimum",argument:t.minimum,message:"must be greater than "+t.minimum}):r>=t.minimum||i.addError({name:"minimum",argument:t.minimum,message:"must be greater than or equal to "+t.minimum}),i}},Ye.maximum=function(r,t,n,a){if(this.types.number(r)){var i=new Je(r,t,n,a);return t.exclusiveMaximum&&t.exclusiveMaximum===!0?r<t.maximum||i.addError({name:"maximum",argument:t.maximum,message:"must be less than "+t.maximum}):r<=t.maximum||i.addError({name:"maximum",argument:t.maximum,message:"must be less than or equal to "+t.maximum}),i}},Ye.exclusiveMinimum=function(r,t,n,a){if(typeof t.exclusiveMinimum!="boolean"&&this.types.number(r)){var i=new Je(r,t,n,a),o=r>t.exclusiveMinimum;return o||i.addError({name:"exclusiveMinimum",argument:t.exclusiveMinimum,message:"must be strictly greater than "+t.exclusiveMinimum}),i}},Ye.exclusiveMaximum=function(r,t,n,a){if(typeof t.exclusiveMaximum!="boolean"&&this.types.number(r)){var i=new Je(r,t,n,a),o=r<t.exclusiveMaximum;return o||i.addError({name:"exclusiveMaximum",argument:t.exclusiveMaximum,message:"must be strictly less than "+t.exclusiveMaximum}),i}};var xy=function(r,t,n,a,i,o){if(this.types.number(r)){var l=t[i];if(l==0)throw new An(i+" cannot be zero");var u=new Je(r,t,n,a),s=tt.getDecimalPlaces(r),c=tt.getDecimalPlaces(l),f=Math.max(s,c),d=Math.pow(10,f);return Math.round(r*d)%Math.round(l*d)!==0&&u.addError({name:i,argument:l,message:o+JSON.stringify(l)}),u}};Ye.multipleOf=function(r,t,n,a){return xy.call(this,r,t,n,a,"multipleOf","is not a multiple of (divisible by) ")},Ye.divisibleBy=function(r,t,n,a){return xy.call(this,r,t,n,a,"divisibleBy","is not divisible by (multiple of) ")},Ye.required=function(r,t,n,a){var i=new Je(r,t,n,a);return r===void 0&&t.required===!0?i.addError({name:"required",message:"is required"}):this.types.object(r)&&Array.isArray(t.required)&&t.required.forEach(function(o){Nl(r,o)===void 0&&i.addError({name:"required",argument:o,message:"requires property "+JSON.stringify(o)})}),i},Ye.pattern=function(r,t,n,a){if(this.types.string(r)){var i=new Je(r,t,n,a),o=t.pattern;try{var l=new RegExp(o,"u")}catch{l=new RegExp(o)}return r.match(l)||i.addError({name:"pattern",argument:t.pattern,message:"does not match pattern "+JSON.stringify(t.pattern.toString())}),i}},Ye.format=function(r,t,n,a){if(r!==void 0){var i=new Je(r,t,n,a);return!i.disableFormat&&!tt.isFormat(r,t.format,this)&&i.addError({name:"format",argument:t.format,message:"does not conform to the "+JSON.stringify(t.format)+" format"}),i}},Ye.minLength=function(r,t,n,a){if(this.types.string(r)){var i=new Je(r,t,n,a),o=r.match(/[\uDC00-\uDFFF]/g),l=r.length-(o?o.length:0);return l>=t.minLength||i.addError({name:"minLength",argument:t.minLength,message:"does not meet minimum length of "+t.minLength}),i}},Ye.maxLength=function(r,t,n,a){if(this.types.string(r)){var i=new Je(r,t,n,a),o=r.match(/[\uDC00-\uDFFF]/g),l=r.length-(o?o.length:0);return l<=t.maxLength||i.addError({name:"maxLength",argument:t.maxLength,message:"does not meet maximum length of "+t.maxLength}),i}},Ye.minItems=function(r,t,n,a){if(this.types.array(r)){var i=new Je(r,t,n,a);return r.length>=t.minItems||i.addError({name:"minItems",argument:t.minItems,message:"does not meet minimum length of "+t.minItems}),i}},Ye.maxItems=function(r,t,n,a){if(this.types.array(r)){var i=new Je(r,t,n,a);return r.length<=t.maxItems||i.addError({name:"maxItems",argument:t.maxItems,message:"does not meet maximum length of "+t.maxItems}),i}};function qq(e,r,t){var n,a=t.length;for(n=r+1,a;n<a;n++)if(tt.deepCompareStrict(e,t[n]))return!1;return!0}Ye.uniqueItems=function(r,t,n,a){if(t.uniqueItems===!0&&this.types.array(r)){var i=new Je(r,t,n,a);return r.every(qq)||i.addError({name:"uniqueItems",message:"contains duplicate item"}),i}},Ye.dependencies=function(r,t,n,a){if(this.types.object(r)){var i=new Je(r,t,n,a);for(var o in t.dependencies)if(r[o]!==void 0){var l=t.dependencies[o],u=a.makeChild(l,o);if(typeof l=="string"&&(l=[l]),Array.isArray(l))l.forEach(function(c){r[c]===void 0&&i.addError({name:"dependencies",argument:u.propertyPath,message:"property "+c+" not found, required by "+u.propertyPath})});else{var s=this.validateSchema(r,l,n,u);i.instance!==s.instance&&(i.instance=s.instance),s&&s.errors.length&&(i.addError({name:"dependencies",argument:u.propertyPath,message:"does not meet dependency required by "+u.propertyPath}),i.importErrors(s))}}return i}},Ye.enum=function(r,t,n,a){if(r===void 0)return null;if(!Array.isArray(t.enum))throw new An("enum expects an array",t);var i=new Je(r,t,n,a);return t.enum.some(tt.deepCompareStrict.bind(null,r))||i.addError({name:"enum",argument:t.enum,message:"is not one of enum values: "+t.enum.map(String).join(",")}),i},Ye.const=function(r,t,n,a){if(r===void 0)return null;var i=new Je(r,t,n,a);return tt.deepCompareStrict(t.const,r)||i.addError({name:"const",argument:t.const,message:"does not exactly match expected constant: "+t.const}),i},Ye.not=Ye.disallow=function(r,t,n,a){var i=this;if(r===void 0)return null;var o=new Je(r,t,n,a),l=t.not||t.disallow;return l?(Array.isArray(l)||(l=[l]),l.forEach(function(u){if(i.testType(r,t,n,a,u)){var s=u&&(u.$id||u.id),c=s||u;o.addError({name:"not",argument:c,message:"is of prohibited type "+c})}}),o):null};var Lq=wl,Al={},El=vr;Al.SchemaScanResult=Ny;function Ny(e,r){this.id=e,this.ref=r}Al.scan=function(r,t){function n(u,s){if(!s||typeof s!="object")return;if(s.$ref){let p=El.resolveUrl(u,s.$ref);l[p]=l[p]?l[p]+1:0;return}var c=s.$id||s.id;let f=El.resolveUrl(u,c);var d=c?f:u;if(d){if(d.indexOf("#")<0&&(d+="#"),o[d]){if(!El.deepCompareStrict(o[d],s))throw new Error("Schema <"+d+"> already exists with different definition");return o[d]}o[d]=s,d[d.length-1]=="#"&&(o[d.substring(0,d.length-1)]=s)}a(d+"/items",Array.isArray(s.items)?s.items:[s.items]),a(d+"/extends",Array.isArray(s.extends)?s.extends:[s.extends]),n(d+"/additionalItems",s.additionalItems),i(d+"/properties",s.properties),n(d+"/additionalProperties",s.additionalProperties),i(d+"/definitions",s.definitions),i(d+"/patternProperties",s.patternProperties),i(d+"/dependencies",s.dependencies),a(d+"/disallow",s.disallow),a(d+"/allOf",s.allOf),a(d+"/anyOf",s.anyOf),a(d+"/oneOf",s.oneOf),n(d+"/not",s.not)}function a(u,s){if(Array.isArray(s))for(var c=0;c<s.length;c++)n(u+"/"+c,s[c])}function i(u,s){if(!(!s||typeof s!="object"))for(var c in s)n(u+"/"+c,s[c])}var o={},l={};return n(r,t),new Ny(o,l)};var Ay=Lq,En=vr,Ey=Al.scan,Dy=En.ValidatorResult,Vq=En.ValidatorResultError,fi=En.SchemaError,Sy=En.SchemaContext,Uq="/",Er=function e(){this.customFormats=Object.create(e.prototype.customFormats),this.schemas={},this.unresolvedRefs=[],this.types=Object.create(Ot),this.attributes=Object.create(Ay.validators)};Er.prototype.customFormats={},Er.prototype.schemas=null,Er.prototype.types=null,Er.prototype.attributes=null,Er.prototype.unresolvedRefs=null,Er.prototype.addSchema=function(r,t){var n=this;if(!r)return null;var a=Ey(t||Uq,r),i=t||r.$id||r.id;for(var o in a.id)this.schemas[o]=a.id[o];for(var o in a.ref)this.unresolvedRefs.push(o);return this.unresolvedRefs=this.unresolvedRefs.filter(function(l){return typeof n.schemas[l]>"u"}),this.schemas[i]},Er.prototype.addSubSchemaArray=function(r,t){if(Array.isArray(t))for(var n=0;n<t.length;n++)this.addSubSchema(r,t[n])},Er.prototype.addSubSchemaObject=function(r,t){if(!(!t||typeof t!="object"))for(var n in t)this.addSubSchema(r,t[n])},Er.prototype.setSchemas=function(r){this.schemas=r},Er.prototype.getSchema=function(r){return this.schemas[r]},Er.prototype.validate=function(r,t,n,a){if(typeof t!="boolean"&&typeof t!="object"||t===null)throw new fi("Expected `schema` to be an object or boolean");n||(n={});var i=t.$id||t.id;let o=En.resolveUrl(n.base,i||"");if(!a){a=new Sy(t,n,[],o,Object.create(this.schemas)),a.schemas[o]||(a.schemas[o]=t);var l=Ey(o,t);for(var u in l.id){var s=l.id[u];a.schemas[u]=s}}if(n.required&&r===void 0){var c=new Dy(r,t,n,a);return c.addError("is required, but is undefined"),c}var c=this.validateSchema(r,t,n,a);if(c){if(n.throwAll&&c.errors.length)throw new Vq(c)}else throw new Error("Result undefined");return c};function Cy(e){var r=typeof e=="string"?e:e.$ref;return typeof r=="string"?r:!1}Er.prototype.validateSchema=function(r,t,n,a){var i=new Dy(r,t,n,a);if(typeof t=="boolean")t===!0?t={}:t===!1&&(t={type:[]});else if(!t)throw new Error("schema is undefined");if(t.extends)if(Array.isArray(t.extends)){var o={schema:t,ctx:a};t.extends.forEach(this.schemaTraverser.bind(this,o)),t=o.schema,o.schema=null,o.ctx=null,o=null}else t=En.deepMerge(t,this.superResolve(t.extends,a));var l=Cy(t);if(l){var u=this.resolve(t,l,a),s=new Sy(u.subschema,n,a.path,u.switchSchema,a.schemas);return this.validateSchema(r,u.subschema,n,s)}var c=n&&n.skipAttributes||[];for(var f in t)if(!Ay.ignoreProperties[f]&&c.indexOf(f)<0){var d=null,p=this.attributes[f];if(p)d=p.call(this,r,t,n,a);else if(n.allowUnknownAttributes===!1)throw new fi("Unsupported attribute: "+f,t);d&&i.importErrors(d)}if(typeof n.rewrite=="function"){var v=n.rewrite.call(this,r,t,n,a);i.instance=v}return i},Er.prototype.schemaTraverser=function(r,t){r.schema=En.deepMerge(r.schema,this.superResolve(t,r.ctx))},Er.prototype.superResolve=function(r,t){var n=Cy(r);return n?this.resolve(r,n,t).subschema:r},Er.prototype.resolve=function(r,t,n){if(t=n.resolve(t),n.schemas[t])return{subschema:n.schemas[t],switchSchema:t};let i=new URL(t,"thismessage::/").hash;var o=i&&i.length&&t.substr(0,t.length-i.length);if(!o||!n.schemas[o])throw new fi("no such schema <"+t+">",r);var l=En.objectGetPath(n.schemas[o],i.substr(1));if(l===void 0)throw new fi("no such schema "+i+" located in <"+o+">",r);return{subschema:l,switchSchema:t}},Er.prototype.testType=function(r,t,n,a,i){if(i!==void 0){if(i===null)throw new fi('Unexpected null in "type" keyword');if(typeof this.types[i]=="function")return this.types[i].call(this,r);if(i&&typeof i=="object"){var o=this.validateSchema(r,i,n,a);return o===void 0||!(o&&o.errors.length)}return!0}};var Ot=Er.prototype.types={};Ot.string=function(r){return typeof r=="string"},Ot.number=function(r){return typeof r=="number"&&isFinite(r)},Ot.integer=function(r){return typeof r=="number"&&r%1===0},Ot.boolean=function(r){return typeof r=="boolean"},Ot.array=function(r){return Array.isArray(r)},Ot.null=function(r){return r===null},Ot.date=function(r){return r instanceof Date},Ot.any=function(r){return!0},Ot.object=function(r){return r&&typeof r=="object"&&!Array.isArray(r)&&!(r instanceof Date)};var Hq=Er,My;My=Hq,vr.ValidatorResult,vr.ValidatorResultError,vr.ValidationError,vr.SchemaError;function Zq(e,r){const t=new My,n={additionalProperties:!1,properties:{input:{items:{oneOf:[{additionalProperties:!1,properties:{defaultValue:{required:!0,type:"number"},id:{type:"string"},name:{required:!0,type:"string"},possibleValues:{items:{additionalProperties:!1,properties:{name:{required:!0,type:"string"},value:{required:!0,type:"number"}},type:"object"},minItems:1,required:!0,type:"array"},visible:{type:"string"}}},{additionalProperties:!1,properties:{defaultValue:{required:!0,type:"number"},id:{type:"string"},maximumValue:{required:!0,type:"number"},minimumValue:{required:!0,type:"number"},name:{required:!0,type:"string"},stepValue:{type:"number"},visible:{type:"string"}}}],type:"object"},minItems:1,required:!0,type:"array"},output:{additionalProperties:!1,minItems:1,properties:{data:{items:{additionalProperties:!1,properties:{id:{required:!0,type:"string"},name:{required:!0,type:"string"}},type:"object"},minItems:1,required:!0,type:"array"},plots:{items:{additionalProperties:!1,properties:{xAxisTitle:{required:!0,type:"string"},xValue:{required:!0,type:"string"},yAxisTitle:{required:!0,type:"string"},yValue:{required:!0,type:"string"}},type:"object"},maxItems:9,minItems:1,required:!0,type:"array"}},required:!0,type:"object"},parameters:{items:{additionalProperties:!1,properties:{name:{required:!0,type:"string"},value:{required:!0,type:"string"}},type:"object"},type:"array"},simulation:{additionalProperties:!1,properties:{opencor:{additionalProperties:!1,properties:{endingPoint:{type:"number"},pointInterval:{type:"number"},resource:{required:!0,type:"string"}},type:"object"},solvers:{items:{additionalProperties:!1,properties:{if:{type:"string"},input:{additionalProperties:!1,properties:{name:{required:!0,type:"string"},value:{required:!0,type:"string"}},type:"object"},name:{required:!0,type:"string"},version:{required:!0,type:"string"}},type:"object"},minItems:1,required:!0,type:"array"}},required:r,type:"object"}},type:"object"},a=t.validate(e,n,{nestedErrors:!0});if(!a.valid)return console.warn(a.toString()),!1;const i={};if(!e.input.every(c=>{if(c.id!==void 0){if(c.id==="")return console.warn("JSON: the input id must not be empty."),!1;if(i[c.id]!==void 0)return console.warn("JSON: the input id must be unique ("+c.id+" is used more than once)."),!1;i[c.id]=!0}if(c.name==="")return console.warn("JSON: the input name must not be empty."),!1;if(c.possibleValues!==void 0){if(!c.possibleValues.every(p=>p.name===""?(console.warn("JSON: an input possible value must not be empty."),!1):!0))return!1;const f=c.possibleValues.map(p=>p.value),d={};if(!f.every(p=>d[p]!==void 0?(console.warn("JSON: an input possible value must have a unique value ("+p+" is used more than once)."),!1):(d[p]=!0,!0)))return!1;if(!f.includes(c.defaultValue))return console.warn("JSON: the input default value ("+c.defaultValue+") must be one of the possible values ("+f.join(", ")+")."),!1}if(c.minimumValue!==void 0&&c.maximumValue!==void 0){if(c.minimumValue>=c.maximumValue)return console.warn("JSON: the input minimum value ("+c.minimumValue+") must be lower than the maximum value ("+c.maximumValue+")."),!1;if(c.defaultValue<c.minimumValue||c.defaultValue>c.maximumValue)return console.warn("JSON: the input default value ("+c.defaultValue+") must be greater or equal than the minimum value ("+c.minimumValue+") and lower or equal than the maximum value ("+c.maximumValue+")."),!1;const f=c.maximumValue-c.minimumValue;if(c.stepValue!==void 0){if(c.stepValue<=0||c.stepValue>f)return console.warn("JSON: the input step value ("+c.stepValue+") must be greater than zero and lower or equal than the range value ("+f+")."),!1;if(!Number.isInteger(f/c.stepValue))return console.warn("JSON: the input step value ("+c.stepValue+") must be a factor of the range value ("+f+")."),!1}else if(!Number.isInteger(f))return console.warn("JSON: the (default) input step value (1) must be a factor of the range value ("+f+")."),!1}return c.visible!==void 0&&c.visible===""?(console.warn("JSON: the input visible must not be empty."),!1):!0}))return!1;const l={};if(!e.output.data.every(c=>{if(c.id!==void 0){if(c.id==="")return console.warn("JSON: the output data id must not be empty."),!1;if(l[c.id]!==void 0)return console.warn("JSON: the output data id must be unique ("+c.id+" is used more than once)."),!1;l[c.id]=!0}return c.name===""?(console.warn("JSON: the output data name must not be empty."),!1):!0})||!e.output.plots.every(c=>c.xAxisTitle===""?(console.warn("JSON: the output plot X axis title must not be empty."),!1):c.xValue===""?(console.warn("JSON: the output plot X value must not be empty."),!1):c.yAxisTitle===""?(console.warn("JSON: the output plot Y axis title must not be empty."),!1):c.yValue===""?(console.warn("JSON: the output plot Y value must not be empty."),!1):!0)||e.parameters!==void 0&&!e.parameters.every(f=>f.name===""?(console.warn("JSON: the parameter name must not be empty."),!1):f.value===""?(console.warn("JSON: the parameter value must not be empty."),!1):!0))return!1;if(r){let c=!1;if(!e.simulation.solvers.every(f=>{if(f.if!==void 0&&f.if==="")return console.warn("JSON: a simulation solver if must not be empty."),!1;if(f.input!==void 0){if(f.input.name==="")return console.warn("JSON: a simulation solver input name must not be empty."),!1;if(f.input.value==="")return console.warn("JSON: a simulation solver input value must not be empty."),!1}return f.name===""?(console.warn("JSON: a simulation solver name must not be empty."),!1):(c=c||f.name===dy,f.version===""?(console.warn("JSON: a simulation solver version must not be empty."),!1):!0)}))return!1;if(c&&e.simulation.opencor===void 0)return console.warn("JSON: the simulation solver for OpenCOR is specified so simulation OpenCOR settings must also be specified."),!1;if(e.simulation.opencor!==void 0){if(e.simulation.opencor.resource==="")return console.warn("JSON: the simulation OpenCOR resource must not be empty."),!1;if(e.simulation.opencor.endingPoint!==void 0)if(e.simulation.opencor.pointInterval!==void 0){if(e.simulation.opencor.endingPoint<=0)return console.warn("JSON: the simulation OpenCOR ending point ("+e.simulation.opencor.endingPoint+") must be greater than zero."),!1;if(e.simulation.opencor.pointInterval<=0)return console.warn("JSON: the simulation OpenCOR point interval ("+e.simulation.opencor.pointInterval+") must be greater than zero."),!1}else return console.warn("JSON: a simulation OpenCOR ending point is specified so a simulation OpenCOR point interval must also be specified."),!1;else if(e.simulation.opencor.pointInterval!==void 0)return console.warn("JSON: a simulation OpenCOR point interval is specified so a simulation OpenCOR ending point must also be specified."),!1}}return!0}const Gq="libOpenCOR",Wq="oSPARC",Dl="https://models.physiomeproject.org/",jq=vl(fy,{}),Dn=Object.freeze({DATASET_ID:"dataset_id",DATASET_URL:"dataset_url",PMR_PATH:"pmr_path",RAW_COMBINE_ARCHIVE:"raw_combine_archive"}),Kq={LIBOPENCOR_SOLVER:Gq,OSPARC_SOLVER:Wq,name:"SimulationVuer",components:{PlotVuer:_y.PlotVuer,SimulationVuerInput:hy,ElButton:id,ElDivider:ud,ElLoading:JD},props:{apiLocation:{required:!0,type:String},id:{required:!0,type:[Number,String,Uint8Array]}},data:function(){let e;if(typeof this.id=="number"?e=Dn.DATASET_ID:this.id instanceof Uint8Array?e=Dn.RAW_COMBINE_ARCHIVE:this.id.startsWith("https://")?e=Dn.DATASET_URL:e=Dn.PMR_PATH,e===Dn.DATASET_ID){const r=new XMLHttpRequest;r.open("GET",this.apiLocation+"/sim/dataset/"+this.id),r.onreadystatechange=()=>{if(r.readyState===4&&r.status===200){const t=JSON.parse(r.responseText);this.name=t.name,this.uuid=t.study!==void 0?t.study.uuid:void 0}},r.send()}return{errorMessage:"",fileManager:void 0,hasFinalisedUi:!1,hasValidSimulationUiInfo:!1,idType:e,instance:void 0,isMounted:!1,isSimulationValid:!0,layout:[],libopencor:void 0,libopencorSet:!1,model:void 0,name:null,opencorBasedSimulation:!0,output:void 0,perfectScollbarOptions:{suppressScrollX:!0},showUserMessage:!1,simulationResults:{},simulationResultsId:{},simulationUiInfo:{},solver:void 0,userMessage:"",ui:null,uuid:null}},methods:{plotMetadata(e){return{version:"1.1.0",type:"plot",attrs:{style:"timeseries",layout:this.layout[e]}}},manageFile(e,r){let t=this.fileManager.file(e);t===null&&(t=new this.libopencor.File(e));const n=this.libopencor._malloc(r.length);return new Uint8Array(this.libopencor.HEAPU8.buffer,n,r.length).set(r),t.setContents(n,r.length),this.libopencor._free(n),t},runSimulation(){if(this.instance===void 0){const a=new this.libopencor.SedDocument(this.fileManager.file(Dl+this.id));this.model=m.markRaw(a.model()),this.instance=m.markRaw(a.instantiate()),a.delete()}this.model.removeAllChanges();for(const[a,i]of Object.entries(this.parametersData())){const o=a.split("/");this.model.addChange(new this.libopencor.SedChangeAttribute(o[0],o[1],i.toString()))}this.instance.run();const e={},r=this.instance.task(0);let t=!0,n;for(const a of this.outputData()){if(n=!1,a===r.voiName&&(e[a]=r.voiAsArray,n=!0),e[a]===void 0){for(let i=0;i<r.stateCount;++i)if(a===r.stateName(i)){e[a]=r.stateAsArray(i),n=!0;break}}if(e[a]===void 0){for(let i=0;i<r.rateCount;++i)if(a===r.rateName(i)){e[a]=r.rateAsArray(i),n=!0;break}}if(e[a]===void 0){for(let i=0;i<r.constantCount;++i)if(a===r.constantName(i)){e[a]=r.constantAsArray(i),n=!0;break}}if(e[a]===void 0){for(let i=0;i<r.computedConstantCount;++i)if(a===r.computedConstantName(i)){e[a]=r.computedConstantAsArray(i),n=!0;break}}if(e[a]===void 0){for(let i=0;i<r.algebraicCount;++i)if(a===r.algebraicName(i)){e[a]=r.algebraicAsArray(i),n=!0;break}}n||(console.warn("SIMULATION: output '"+a+"' could not be found."),t=!1)}t?this.processSimulationResults(e):(this.hasValidSimulationUiInfo=!1,this.errorMessage="some outputs could not be found"),this.showUserMessage=!1},buildSimulationUi(e){if(this.simulationUiInfo=e,this.hasValidSimulationUiInfo=Zq(this.simulationUiInfo,this.libopencor===void 0),!this.hasValidSimulationUiInfo){this.errorMessage="the simulation.json file is malformed";return}if(this.libopencor===void 0){if(this.simulationUiInfo.simulation.solvers.forEach(t=>{(t.if===void 0||hl(this,t.if))&&(this.solver=t)}),this.solver===void 0){this.hasValidSimulationUiInfo=!1,this.errorMessage="no solver name and/or solver version specified";return}this.opencorBasedSimulation=this.solver.name===dy}this.simulationUiInfo.output.data.forEach(t=>{this.simulationResultsId[t.id]=t.name});let r=-1;this.simulationUiInfo.output.plots.forEach(t=>{++r,this.layout[r]={paper_bgcolor:"rgba(0, 0, 0, 0)",plot_bgcolor:"rgba(0, 0, 0, 0)",autosize:!0,margin:{t:25,l:55,r:25,b:30,pad:4},loading:!1,options:{responsive:!0,scrollZoom:!0},dragmode:"pan",xaxis:{title:{text:t.xAxisTitle,font:{size:10}}},yaxis:{title:{text:t.yAxisTitle,font:{size:10}}}}}),this.$nextTick(()=>{py(this)})},extractAndBuildSimulationUi(e,r){this.libopencor=m.markRaw(e),this.libopencorSet=!0,this.fileManager=m.markRaw(this.libopencor.FileManager.instance());const t=this.manageFile(Dl+this.id,r);if(t.type.value!==e.File.Type.COMBINE_ARCHIVE.value)this.showUserMessage=!1;else{const n=new TextDecoder,a=t.childFileFromFileName("simulation.json");if(a===null)this.errorMessage="no simulation JSON file could be found",this.showUserMessage=!1;else{const i=JSON.parse(n.decode(a.contents()));this.showUserMessage=!1,this.$nextTick(()=>{this.buildSimulationUi(i)})}}},runOnOsparc(){window.open(`https://osparc.io/study/${this.uuid}`,"_blank")},viewDataset(){window.open(`https://sparc.science/datasets/${this.id}?type=dataset`,"_blank")},viewWorkspace(){const e=Dl+this.id;window.open(e.substring(0,e.lastIndexOf("/")),"_blank")},parametersData(){const e={};return this.simulationUiInfo.parameters.forEach(r=>{e[r.name]=hl(this,r.value)}),e},outputData(){return this.output===void 0&&this.simulationUiInfo.output.data!==void 0&&(this.output=[],this.simulationUiInfo.output.data.forEach(e=>{this.output.push(e.name)})),this.output},retrieveRequest(){const e={solver:this.solver};if(this.opencorBasedSimulation){e.opencor={model_url:this.simulationUiInfo.simulation.opencor.resource,json_config:{}},this.simulationUiInfo.simulation.opencor.endingPoint!==void 0&&this.simulationUiInfo.simulation.opencor.pointInterval!==void 0&&(e.opencor.json_config.simulation={"Ending point":this.simulationUiInfo.simulation.opencor.endingPoint,"Point interval":this.simulationUiInfo.simulation.opencor.pointInterval}),e.opencor.json_config.parameters=this.parametersData();const r=this.outputData();r!==void 0&&(e.opencor.json_config.output=r)}else e.osparc={},e.osparc.job_inputs=this.parametersData();return e},processSimulationResults(e){if(typeof e=="string"){const n=/[ \t]+/g,a=e.trim().split(`
|
|
80
|
-
`),i=a[0].trim().split(n).length;e={};for(let l=0;l<i;++l)e[l]=[];let o=-1;a.forEach(l=>{++o;let u=-1;l.trim().split(n).forEach(c=>{e[++u][o]=Number(c)})})}const r=new jq.parser;Object.keys(this.simulationResultsId).forEach(n=>{r.set(n,e[this.simulationResultsId[n]])});let t=-1;this.simulationUiInfo.output.plots.forEach(n=>{this.simulationResults[++t]=[{x:r.evaluate(n.xValue),y:r.evaluate(n.yValue),type:"scatter"}]})},showHttpIssue(e){this.isSimulationValid=!1,this.showUserMessage=!1,this.errorMessage=e.statusText.toLowerCase()+" (<a href='https://httpstatuses.com/"+e.status+"/' target='_blank'>"+e.status+"</a>)"},checkSimulation(e){const r=new XMLHttpRequest;r.open("POST",this.apiLocation+"/check_simulation"),r.setRequestHeader("Content-type","application/json"),r.onreadystatechange=()=>{if(r.readyState===4)if(r.status===200){let t=JSON.parse(r.responseText);if(this.isSimulationValid=t.status==="ok",this.isSimulationValid)if(t.results!==void 0)this.showUserMessage=!1,this.processSimulationResults(t.results);else{let n=this;setTimeout(function(){n.checkSimulation(e)},1e3)}else this.showUserMessage=!1,this.errorMessage=t.description}else this.showHttpIssue(r)},r.send(JSON.stringify(e))},startSimulation(){this.userMessage="Loading simulation results...",this.showUserMessage=!0,this.$nextTick(()=>{this.simulationResults={};const e=new XMLHttpRequest;e.open("POST",this.apiLocation+"/start_simulation"),e.setRequestHeader("Content-type","application/json"),e.onreadystatechange=()=>{if(e.readyState===4)if(e.status===200){let r=JSON.parse(e.responseText);this.isSimulationValid=r.status==="ok",this.isSimulationValid?this.checkSimulation(r.data):(this.showUserMessage=!1,this.errorMessage=r.description)}else this.showHttpIssue(e)},e.send(JSON.stringify(this.retrieveRequest()))})}},created:function(){this.idType===Dn.DATASET_ID?(this.userMessage="Retrieving UI information...",this.showUserMessage=!0,this.$nextTick(()=>{const e=new XMLHttpRequest;e.open("GET",this.apiLocation+"/simulation_ui_file/"+this.id),e.onreadystatechange=()=>{e.readyState===4&&(this.showUserMessage=!1,e.status===200?this.$nextTick(()=>{this.buildSimulationUi(JSON.parse(e.responseText))}):this.errorMessage="the simulation dataset could not be retrieved")},e.send()})):this.idType===Dn.DATASET_URL?(this.userMessage="Retrieving COMBINE archive...",this.showUserMessage=!0,this.$nextTick(()=>{const e=new XMLHttpRequest;e.open("GET",this.id),e.responseType="arraybuffer",e.onreadystatechange=()=>{e.readyState===4&&(e.status===200?ns().then(r=>{this.extractAndBuildSimulationUi(r,new Uint8Array(e.response))}):(this.errorMessage="the COMBINE archive could not be retrieved",this.showUserMessage=!1))},e.send()})):this.idType===Dn.PMR_PATH?(this.userMessage="Retrieving COMBINE archive from PMR...",this.showUserMessage=!0,this.$nextTick(()=>{const e=new XMLHttpRequest;e.open("POST",this.apiLocation+"/pmr_file"),e.setRequestHeader("Content-type","application/json"),e.onreadystatechange=()=>{e.readyState===4&&(e.status===200?ns().then(r=>{this.extractAndBuildSimulationUi(r,Uint8Array.from(atob(e.response),t=>t.charCodeAt(0)))}):(this.errorMessage="the COMBINE archive chould not be retrieved from PMR",this.showUserMessage=!1))},e.send(JSON.stringify({path:this.id}))})):(this.userMessage="Retrieving COMBINE archive...",this.showUserMessage=!0,this.$nextTick(()=>{ns().then(e=>{this.extractAndBuildSimulationUi(e,this.id)})}))},mounted:function(){this.isMounted=!0,py(this)}},Jq=["element-loading-text"],Yq={key:0,class:"default error"},Xq={key:1,class:"main"},Qq={key:0,class:"default name"},eL={class:"input scrollbar"},rL={class:"buttons-container"},tL={key:0,class:"primary-button"},nL={key:1,class:"secondary-button"},aL={key:2,class:"secondary-button"},iL={key:3,class:"secondary-button"},oL={key:4,class:"default note"},sL={class:"main-right",ref:"output"},uL={class:"main-right"},lL={class:"default error"},cL=["innerHTML"];function fL(e,r,t,n,a,i){const o=ud,l=hy,u=id,s=m.resolveComponent("PlotVuer"),c=uu;return m.withDirectives((m.openBlock(),m.createElementBlock("div",{class:"simulation-vuer","element-loading-text":e.userMessage},[!e.hasValidSimulationUiInfo&&!e.showUserMessage?(m.openBlock(),m.createElementBlock("p",Yq,[r[4]||(r[4]=m.createElementVNode("span",{class:"error"},"Error:",-1)),m.createTextVNode(" "+m.toDisplayString(e.errorMessage)+".",1)])):m.createCommentVNode("",!0),e.hasValidSimulationUiInfo?(m.openBlock(),m.createElementBlock("div",Xq,[m.createElementVNode("div",{class:m.normalizeClass(["main-left",{"with-buttons":!e.libopencorSet||e.uuid}])},[e.libopencorSet?m.createCommentVNode("",!0):(m.openBlock(),m.createElementBlock("p",Qq,m.toDisplayString(e.name),1)),e.libopencorSet?m.createCommentVNode("",!0):(m.openBlock(),m.createBlock(o,{key:1})),r[9]||(r[9]=m.createElementVNode("p",{class:"default input-parameters"},"Input parameters",-1)),m.createElementVNode("div",eL,[(m.openBlock(!0),m.createElementBlock(m.Fragment,null,m.renderList(e.simulationUiInfo.input,(f,d)=>(m.openBlock(),m.createBlock(l,{ref_for:!0,ref:"simInput",defaultValue:f.defaultValue,key:`input-${d}`,name:f.name,maximumValue:f.maximumValue,minimumValue:f.minimumValue,possibleValues:f.possibleValues,stepValue:f.stepValue},null,8,["defaultValue","name","maximumValue","minimumValue","possibleValues","stepValue"]))),128))]),m.createElementVNode("div",rL,[e.libopencorSet?m.createCommentVNode("",!0):(m.openBlock(),m.createElementBlock("div",tL,[m.createVNode(u,{type:"primary",size:"small",onClick:r[0]||(r[0]=f=>i.startSimulation())},{default:m.withCtx(()=>[...r[5]||(r[5]=[m.createTextVNode("Run Simulation",-1)])]),_:1})])),e.uuid?(m.openBlock(),m.createElementBlock("div",nL,[m.createVNode(u,{size:"small",onClick:r[1]||(r[1]=f=>i.runOnOsparc())},{default:m.withCtx(()=>[...r[6]||(r[6]=[m.createTextVNode("Run on oSPARC",-1)])]),_:1})])):m.createCommentVNode("",!0),e.libopencorSet?m.createCommentVNode("",!0):(m.openBlock(),m.createElementBlock("div",aL,[m.createVNode(u,{size:"small",onClick:r[2]||(r[2]=f=>i.viewDataset())},{default:m.withCtx(()=>[...r[7]||(r[7]=[m.createTextVNode("View Dataset",-1)])]),_:1})])),e.libopencorSet&&e.idType==="pmr_path"?(m.openBlock(),m.createElementBlock("div",iL,[m.createVNode(u,{size:"small",onClick:r[3]||(r[3]=f=>i.viewWorkspace())},{default:m.withCtx(()=>[...r[8]||(r[8]=[m.createTextVNode("View Workspace",-1)])]),_:1})])):m.createCommentVNode("",!0),e.uuid?(m.openBlock(),m.createElementBlock("p",oL,"Additional parameters are available on oSPARC")):m.createCommentVNode("",!0)])],2),m.withDirectives(m.createElementVNode("div",sL,[(m.openBlock(!0),m.createElementBlock(m.Fragment,null,m.renderList(e.simulationUiInfo.output.plots,(f,d)=>(m.openBlock(),m.createBlock(s,{key:`output-${d}`,metadata:i.plotMetadata(d),"data-source":{data:e.simulationResults[d]},plotLayout:e.layout[d],plotType:"plotly-only",selectorUi:!1},null,8,["metadata","data-source","plotLayout"]))),128))],512),[[m.vShow,e.isSimulationValid]]),m.withDirectives(m.createElementVNode("div",uL,[m.createElementVNode("p",lL,[r[10]||(r[10]=m.createElementVNode("span",{class:"error"},"Error:",-1)),r[11]||(r[11]=m.createTextVNode()),m.createElementVNode("span",{innerHTML:e.errorMessage},null,8,cL),r[12]||(r[12]=m.createTextVNode(".",-1))])],512),[[m.vShow,!e.isSimulationValid]])])):m.createCommentVNode("",!0)],8,Jq)),[[c,e.showUserMessage]])}const dL=vy(Kq,[["render",fL],["__scopeId","data-v-
|
|
80
|
+
`),i=a[0].trim().split(n).length;e={};for(let l=0;l<i;++l)e[l]=[];let o=-1;a.forEach(l=>{++o;let u=-1;l.trim().split(n).forEach(c=>{e[++u][o]=Number(c)})})}const r=new jq.parser;Object.keys(this.simulationResultsId).forEach(n=>{r.set(n,e[this.simulationResultsId[n]])});let t=-1;this.simulationUiInfo.output.plots.forEach(n=>{this.simulationResults[++t]=[{x:r.evaluate(n.xValue),y:r.evaluate(n.yValue),type:"scatter"}]})},showHttpIssue(e){this.isSimulationValid=!1,this.showUserMessage=!1,this.errorMessage=e.statusText.toLowerCase()+" (<a href='https://httpstatuses.com/"+e.status+"/' target='_blank'>"+e.status+"</a>)"},checkSimulation(e){const r=new XMLHttpRequest;r.open("POST",this.apiLocation+"/check_simulation"),r.setRequestHeader("Content-type","application/json"),r.onreadystatechange=()=>{if(r.readyState===4)if(r.status===200){let t=JSON.parse(r.responseText);if(this.isSimulationValid=t.status==="ok",this.isSimulationValid)if(t.results!==void 0)this.showUserMessage=!1,this.processSimulationResults(t.results);else{let n=this;setTimeout(function(){n.checkSimulation(e)},1e3)}else this.showUserMessage=!1,this.errorMessage=t.description}else this.showHttpIssue(r)},r.send(JSON.stringify(e))},startSimulation(){this.userMessage="Loading simulation results...",this.showUserMessage=!0,this.$nextTick(()=>{this.simulationResults={};const e=new XMLHttpRequest;e.open("POST",this.apiLocation+"/start_simulation"),e.setRequestHeader("Content-type","application/json"),e.onreadystatechange=()=>{if(e.readyState===4)if(e.status===200){let r=JSON.parse(e.responseText);this.isSimulationValid=r.status==="ok",this.isSimulationValid?this.checkSimulation(r.data):(this.showUserMessage=!1,this.errorMessage=r.description)}else this.showHttpIssue(e)},e.send(JSON.stringify(this.retrieveRequest()))})}},created:function(){this.idType===Dn.DATASET_ID?(this.userMessage="Retrieving UI information...",this.showUserMessage=!0,this.$nextTick(()=>{const e=new XMLHttpRequest;e.open("GET",this.apiLocation+"/simulation_ui_file/"+this.id),e.onreadystatechange=()=>{e.readyState===4&&(this.showUserMessage=!1,e.status===200?this.$nextTick(()=>{this.buildSimulationUi(JSON.parse(e.responseText))}):this.errorMessage="the simulation dataset could not be retrieved")},e.send()})):this.idType===Dn.DATASET_URL?(this.userMessage="Retrieving COMBINE archive...",this.showUserMessage=!0,this.$nextTick(()=>{const e=new XMLHttpRequest;e.open("GET",this.id),e.responseType="arraybuffer",e.onreadystatechange=()=>{e.readyState===4&&(e.status===200?ns().then(r=>{this.extractAndBuildSimulationUi(r,new Uint8Array(e.response))}):(this.errorMessage="the COMBINE archive could not be retrieved",this.showUserMessage=!1))},e.send()})):this.idType===Dn.PMR_PATH?(this.userMessage="Retrieving COMBINE archive from PMR...",this.showUserMessage=!0,this.$nextTick(()=>{const e=new XMLHttpRequest;e.open("POST",this.apiLocation+"/pmr_file"),e.setRequestHeader("Content-type","application/json"),e.onreadystatechange=()=>{e.readyState===4&&(e.status===200?ns().then(r=>{this.extractAndBuildSimulationUi(r,Uint8Array.from(atob(e.response),t=>t.charCodeAt(0)))}):(this.errorMessage="the COMBINE archive chould not be retrieved from PMR",this.showUserMessage=!1))},e.send(JSON.stringify({path:this.id}))})):(this.userMessage="Retrieving COMBINE archive...",this.showUserMessage=!0,this.$nextTick(()=>{ns().then(e=>{this.extractAndBuildSimulationUi(e,this.id)})}))},mounted:function(){this.isMounted=!0,py(this)}},Jq=["element-loading-text"],Yq={key:0,class:"default error"},Xq={key:1,class:"main"},Qq={key:0,class:"default name"},eL={class:"input scrollbar"},rL={class:"buttons-container"},tL={key:0,class:"primary-button"},nL={key:1,class:"secondary-button"},aL={key:2,class:"secondary-button"},iL={key:3,class:"secondary-button"},oL={key:4,class:"default note"},sL={class:"main-right",ref:"output"},uL={class:"main-right"},lL={class:"default error"},cL=["innerHTML"];function fL(e,r,t,n,a,i){const o=ud,l=hy,u=id,s=m.resolveComponent("PlotVuer"),c=uu;return m.withDirectives((m.openBlock(),m.createElementBlock("div",{class:"simulation-vuer","element-loading-text":e.userMessage},[!e.hasValidSimulationUiInfo&&!e.showUserMessage?(m.openBlock(),m.createElementBlock("p",Yq,[r[4]||(r[4]=m.createElementVNode("span",{class:"error"},"Error:",-1)),m.createTextVNode(" "+m.toDisplayString(e.errorMessage)+".",1)])):m.createCommentVNode("",!0),e.hasValidSimulationUiInfo?(m.openBlock(),m.createElementBlock("div",Xq,[m.createElementVNode("div",{class:m.normalizeClass(["main-left",{"with-buttons":!e.libopencorSet||e.uuid}])},[e.libopencorSet?m.createCommentVNode("",!0):(m.openBlock(),m.createElementBlock("p",Qq,m.toDisplayString(e.name),1)),e.libopencorSet?m.createCommentVNode("",!0):(m.openBlock(),m.createBlock(o,{key:1})),r[9]||(r[9]=m.createElementVNode("p",{class:"default input-parameters"},"Input parameters",-1)),m.createElementVNode("div",eL,[(m.openBlock(!0),m.createElementBlock(m.Fragment,null,m.renderList(e.simulationUiInfo.input,(f,d)=>(m.openBlock(),m.createBlock(l,{ref_for:!0,ref:"simInput",defaultValue:f.defaultValue,key:`input-${d}`,name:f.name,maximumValue:f.maximumValue,minimumValue:f.minimumValue,possibleValues:f.possibleValues,stepValue:f.stepValue},null,8,["defaultValue","name","maximumValue","minimumValue","possibleValues","stepValue"]))),128))]),m.createElementVNode("div",rL,[e.libopencorSet?m.createCommentVNode("",!0):(m.openBlock(),m.createElementBlock("div",tL,[m.createVNode(u,{type:"primary",size:"small",onClick:r[0]||(r[0]=f=>i.startSimulation())},{default:m.withCtx(()=>[...r[5]||(r[5]=[m.createTextVNode("Run Simulation",-1)])]),_:1})])),e.uuid?(m.openBlock(),m.createElementBlock("div",nL,[m.createVNode(u,{size:"small",onClick:r[1]||(r[1]=f=>i.runOnOsparc())},{default:m.withCtx(()=>[...r[6]||(r[6]=[m.createTextVNode("Run on oSPARC",-1)])]),_:1})])):m.createCommentVNode("",!0),e.libopencorSet?m.createCommentVNode("",!0):(m.openBlock(),m.createElementBlock("div",aL,[m.createVNode(u,{size:"small",onClick:r[2]||(r[2]=f=>i.viewDataset())},{default:m.withCtx(()=>[...r[7]||(r[7]=[m.createTextVNode("View Dataset",-1)])]),_:1})])),e.libopencorSet&&e.idType==="pmr_path"?(m.openBlock(),m.createElementBlock("div",iL,[m.createVNode(u,{size:"small",onClick:r[3]||(r[3]=f=>i.viewWorkspace())},{default:m.withCtx(()=>[...r[8]||(r[8]=[m.createTextVNode("View Workspace",-1)])]),_:1})])):m.createCommentVNode("",!0),e.uuid?(m.openBlock(),m.createElementBlock("p",oL,"Additional parameters are available on oSPARC")):m.createCommentVNode("",!0)])],2),m.withDirectives(m.createElementVNode("div",sL,[(m.openBlock(!0),m.createElementBlock(m.Fragment,null,m.renderList(e.simulationUiInfo.output.plots,(f,d)=>(m.openBlock(),m.createBlock(s,{key:`output-${d}`,metadata:i.plotMetadata(d),"data-source":{data:e.simulationResults[d]},plotLayout:e.layout[d],plotType:"plotly-only",selectorUi:!1},null,8,["metadata","data-source","plotLayout"]))),128))],512),[[m.vShow,e.isSimulationValid]]),m.withDirectives(m.createElementVNode("div",uL,[m.createElementVNode("p",lL,[r[10]||(r[10]=m.createElementVNode("span",{class:"error"},"Error:",-1)),r[11]||(r[11]=m.createTextVNode()),m.createElementVNode("span",{innerHTML:e.errorMessage},null,8,cL),r[12]||(r[12]=m.createTextVNode(".",-1))])],512),[[m.vShow,!e.isSimulationValid]])])):m.createCommentVNode("",!0)],8,Jq)),[[c,e.showUserMessage]])}const dL=vy(Kq,[["render",fL],["__scopeId","data-v-91d871f9"]]);Dr.SimulationVuer=dL,Object.defineProperty(Dr,Symbol.toStringTag,{value:"Module"})});
|