mathjs
Version:
Math.js is an extensive math library for JavaScript and Node.js. It features a flexible expression parser with support for symbolic computation, comes with a large set of built-in functions and constants, and offers an integrated solution to work with dif
1 lines • 640 kB
Source Map (JSON)
{"version":3,"sources":["math.js"],"names":["root","factory","exports","module","define","amd","this","modules","__webpack_require__","moduleId","installedModules","i","l","call","m","c","value","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","object","property","prototype","hasOwnProperty","p","s","type","config","load","typed","_create","data","format","datatype","M","Matrix","storage","matrix","","string","string, string","Array","Array | Matrix, string","Array | Matrix, string, string","toTex","0","1","2","deepMap","array","callback","skipZeros","map","x","zeros","length","arr","push","isNumber","isInteger","isFinite","Math","round","sign","options","Infinity","isNaN","notation","precision","undefined","toFixed","toExponential","toEngineering","toPrecision","exponential","replace","digits","arguments","e","Error","splitNumber","match","String","toLowerCase","SyntaxError","exponent","parseFloat","dot","indexOf","coefficients","split","parseInt","rounded","roundDigits","newExp","significandsDiff","abs","concat","expDiff","decimalIdx","decimals","slice","join","decimalVal","str","toString","splitValue","pp","splice","first","shift","lower","upper","pow","unshift","removed","pop","DBL_EPSILON","Number","EPSILON","nearlyEqual","y","epsilon","diff","max","_validate","size","dim","len","DimensionError","dimNext","child","isArray","_resize","defaultValue","elem","oldLen","newLen","minLen","min","UNINITIALIZED","_reshape","sizes","accumulator","_squeeze","dims","ii","next","_unsqueeze","number","IndexError","validate","isScalar","validateIndex","index","TypeError","resize","forEach","_defaultValue","reshape","newArray","flatArray","flatten","product","reduce","prev","curr","squeeze","unsqueeze","outer","flat","separator","symbols","Alpha","alpha","Beta","beta","Gamma","gamma","Delta","delta","Epsilon","varepsilon","Zeta","zeta","Eta","eta","Theta","theta","vartheta","Iota","iota","Kappa","kappa","varkappa","Lambda","lambda","Mu","mu","Nu","nu","Xi","xi","Omicron","omicron","Pi","pi","varpi","Rho","rho","varrho","Sigma","sigma","varsigma","Tau","tau","Upsilon","upsilon","Phi","phi","varphi","Chi","chi","Psi","psi","Omega","omega","true","false","inf","Inf","infinity","oo","lim","operators","transpose","factorial","dotPow","unaryPlus","unaryMinus","bitNot","not","multiply","divide","dotMultiply","dotDivide","mod","add","subtract","to","leftShift","rightArithShift","rightLogShift","equal","unequal","smaller","larger","smallerEq","largerEq","bitAnd","bitXor","bitOr","and","xor","or","defaultTemplate","units","deg","toSymbol","isUnit","substring","clone","valueOf","Boolean","Date","isBigNumber","RegExp","key","extend","a","b","prop","deepExtend","constructor","deepEqual","canDefineProperty","lazy","fn","_value","_uninitialized","set","traverse","path","obj","names","isFactory","DenseMatrix","algorithm14","inverse","dt","adata","_data","asize","_size","adt","_datatype","cf","convert","find","cdata","_iterate","f","level","av","bv","cv","j","register","compileFunction","compileFunctions","compile","node","defs","args","_compile","algorithm13","bdata","bsize","bdt","csize","RangeError","util","isString","actual","expected","relation","message","stack","isDimensionError","equalScalar","boolean, boolean","number, number","BigNumber, BigNumber","eq","bigNearlyEqual","Fraction, Fraction","equals","Complex, Complex","Unit, Unit","equalBase","formatArray","formatNumber","formatBigNumber","endsWith","text","search","start","end","isFraction","fraction","syntax","entries","stringify","full","before","latex","addScalar","multiplyScalar","algorithm11","SparseMatrix","Array, Array","_validateMatrixDimensions","isMatrix","Matrix, Matrix","xsize","ysize","_multiplyVectorVector","_multiplyVectorMatrix","_multiplyMatrixVector","_multiplyMatrixMatrix","Matrix, Array","Array, Matrix","Matrix, any","any, Matrix","Array, any","any, Array","any, any","any, any, ...any","rest","result","signatures","size1","size2","af","mf","_multiplyVectorDenseMatrix","alength","bcolumns","sum","_multiplyDenseMatrixVector","_multiplySparseMatrixVector","_multiplyDenseMatrixDenseMatrix","_multiplyDenseMatrixSparseMatrix","_multiplySparseMatrixDenseMatrix","_multiplySparseMatrixSparseMatrix","arows","acolumns","row","bvalues","_values","bindex","_index","bptr","_ptr","zero","cvalues","cindex","cptr","values","ptr","jb","kb0","kb1","last","cij","mark","kb","ib","avalues","aindex","aptr","brows","w","vbi","ka0","ka1","ka","ia","p1","ic","vbij","p0","math","Node","_validateScope","scope","symbol","keywords","eval","isNode","comment","expression","mathWithTransform","code","defsCode","keys","factoryCode","Function","_ifNode","_traverse","parent","transform","_transform","replacement","filter","nodes","cloneDeep","other","customString","handler","_toString","customTex","_toTex","getIdentifier","getContent","algorithm03","denseMatrix","sparseMatrix","rows","columns","z","k0","k1","k","v","algorithm12","r","getSafeProperty","isPlainObject","isSafeMethod","setSafeProperty","isSafeProperty","validateSafeMethod","method","safeMethods","absoluteValue","acos","acosh","acot","acoth","acsc","acsch","arg","asec","asech","asin","asinh","atan","atan2","atanh","bellNumbers","bignumber","boolean","catalan","cbrt","ceil","chain","cmp","combinations","compare","comparedTo","complex","composition","conj","conjugate","cos","cosh","cosine","cot","coth","create","createUnit","cross","csc","csch","cube","cubeRoot","decimalPlaces","derivative","det","diag","diagonal","distance","div","divToInt","dividedBy","dividedToIntegerBy","done","dp","emit","erf","exp","eye","fix","floor","formatUnits","gcd","greaterThan","greaterThanOrEqualTo","gt","gte","hasBase","help","hyperbolicCosine","hyperbolicSine","hyperbolicTangent","hypot","im","import","intersect","inv","inverseCosine","inverseHyperbolicCosine","inverseHyperbolicSine","inverseHyperbolicTangent","inverseSine","inverseTangent","isInt","isNeg","isNegative","isNumeric","isPos","isPositive","isPrime","isZero","kldivergence","kron","lcm","lessThan","lessThanOrEqualTo","ln","log","log10","log2","logarithm","lsolve","lt","lte","lup","lusolve","mad","mean","median","minus","mode","modulo","mul","multinomial","naturalExponential","naturalLogarithm","neg","negated","noConflict","norm","nthRoot","off","on","once","ones","parse","parser","partitionSelect","permutations","pickRandom","plus","print","prod","quantileSeq","random","randomInt","range","re","sd","sec","sech","simplify","sin","sine","sinh","slu","sort","sparse","splitUnit","sqrt","square","squareRoot","std","stirlingS2","sub","subset","swapRows","tan","tangent","tanh","times","toArray","toBinary","toContinued","toDP","toDecimalPlaces","toFraction","toHex","toHexadecimal","toJSON","toLatex","toNearest","toNumber","toNumeric","toOctal","toPower","toSD","toSignificantDigits","toVector","trace","trunc","truncated","typeof","unit","usolve","var","xgcd","algorithm01","algorithm04","algorithm10","divideScalar","Unit, number | Fraction | BigNumber","res","_normalize","number | Fraction | BigNumber, Unit","fixPrefix","algorithm05","number | Fraction | BigNumber | Complex, Unit","Unit, number | Fraction | BigNumber | Complex","algorithm02","algorithm07","xa","xb","wa","wb","_scatter","va","vb","types","emitter","Complex","BigNumber","Fraction","Array | Matrix","Unit","SymbolNode","compileSymbolNode","undef","jsName","isValuelessUnit","isSymbolNode","expr","ArgumentsError","extra_nodes","parseStart","charAt","nesting_level","conditional_level","prevPreview","nextPreview","nextNextPreview","getToken","token_type","TOKENTYPE","NULL","token","isWhitespace","DELIMITER","c2","c3","DELIMITERS","isDigitDot","isAlpha","isDigit","NAMED_DELIMITERS","SYMBOL","UNKNOWN","createSyntaxError","NUMBER","isDecimalMark","getTokenSkipNewline","openParams","closeParams","parseBlock","createError","visible","blocks","parseAssignment","BlockNode","ConstantNode","valid","parseConditional","AssignmentNode","isAccessorNode","isFunctionNode","FunctionAssignmentNode","parseLogicalOr","condition","trueExpr","falseExpr","ConditionalNode","parseLogicalXor","OperatorNode","parseLogicalAnd","parseBitwiseOr","parseBitwiseXor","parseBitwiseAnd","parseRelational","params","parseShift","==","!=","<",">","<=",">=","parseConversion","<<",">>",">>>","parseRange","in","parseAddSubtract","RangeNode","parseMultiplyDivide","+","-","parseUnary","*",".*","/","./","%","isConstantNode","isOperatorNode","op","~","parsePow","parseLeftHandOperators","parseCustomNodes","!","'","parseAccessors","CustomNode","parseSymbol","parseString","FunctionNode","AccessorNode","IndexNode","dotNotation","parseStringToken","parseMatrix","cols","parseRow","items","ArrayNode","parseObject","properties","ObjectNode","parseNumber","parseParentheses","ParenthesisNode","parseEnd","col","error",",","(",")","[","]","{","}","\"",";","^",".^","&","|","^|","=",":","?","cPrev","cNext","isValidLatinOrGreek","isValidMathSymbol","test","high","low","nestingLevel","err","isIndexError","_zeros","hasBigNumbers","...number | BigNumber | string","deepForEach","memoize","hasher","cache","hash","JSON","apply","maxArgumentCount","signature","count","Array | Matrix, Array | Matrix","any, Array | Matrix","_pow","predictable","yFrac","yNum","ex","NaN","_powArray","px","_powMatrix","Array, number","Array, BigNumber","Matrix, number","Matrix, BigNumber","Unit, number","isArgumentsError","valueType","getType","SUPPORTED_TYPES","compileConstantNode","validateNumericValue","null","every","bind","deprecated","compileFunctionNode","argsName","jsFn","jsArgs","jsScope","compileScope","isRaw","rawArgs","getUniqueArgumentName","isObjectProperty","jsObject","jsProp","getObjectProperty","expandTemplate","template","regex","inputPos","exec","ReferenceError","nodeToString","nodeToTex","latexConverter","customToTex","getPrecedence","_node","parenthesis","identifier","getAssociativity","associativity","isAssociativeWith","nodeA","nodeB","identifierA","identifierB","associativeWith","latexLeftParens","latexRightParens","latexParens","OperatorNode:or","OperatorNode:xor","OperatorNode:and","OperatorNode:bitOr","OperatorNode:bitXor","OperatorNode:bitAnd","OperatorNode:equal","OperatorNode:unequal","OperatorNode:smaller","OperatorNode:larger","OperatorNode:smallerEq","OperatorNode:largerEq","OperatorNode:leftShift","OperatorNode:rightArithShift","OperatorNode:rightLogShift","OperatorNode:to","OperatorNode:add","OperatorNode:subtract","OperatorNode:multiply","OperatorNode:divide","OperatorNode:dotMultiply","OperatorNode:dotDivide","OperatorNode:mod","OperatorNode:unaryPlus","OperatorNode:unaryMinus","OperatorNode:bitNot","OperatorNode:not","OperatorNode:pow","OperatorNode:dotPow","OperatorNode:factorial","OperatorNode:transpose","_sqrtNumber","implicit","compileOperatorNode","calculateNecessaryParentheses","precedence","parens","operandPrecedence","operandIdentifier","rootIdentifier","lhsParens","lhsPrecedence","assocWithLhs","rhsParens","rhsPrecedence","assocWithRhs","lhsIdentifier","rhsIdentifier","parensArray","argPrecedence","assocWithArg","argAssociativity","assoc","operand","lhs","rhs","stringifiedArgs","lhsTex","rhsTex","texifiedArgs","content","compileParenthesisNode","isParenthesisNode","_eyeVector","_eye","Big","one","F","minimum","number | BigNumber","number | BigNumber, string","number | BigNumber, number | BigNumber","number | BigNumber, number | BigNumber, string","Array, string","Matrix, string","_getSubstring","isIndex","strLen","dimension","substr","_setSubstring","chars","Array, Index","Matrix, Index","Object, Index","_getObjectProperty","string, Index","Array, Index, any","Array, Index, any, any","Matrix, Index, any","Matrix, Index, any, any","string, Index, string","string, Index, string, string","Object, Index, any","_setObjectProperty","updated","_denseTranspose","_sparseTranspose","any","transposedRow","transposed","q","isPositiveInteger","wai","wbi","vc","algorithm06","u","scatter","isCollection","_reduce","mat","ret","val","tran","_switch","I","J","tmp","arraySize","item","compileArrayNode","asMatrix","isArrayNode","childNode","dimensions","compileIndexNode","childArgs","step","Range","isRangeNode","needsEnd","isIndexNode","needsSize","some","compileRangeNode","startPrecedence","stepPrecedence","endPrecedence","endSymbols","solveValidation","copy","msize","isDenseMatrix","cs_flip","desc","asc","_partitionSelect","quickSelect","from","pivot","Array | Matrix, number","Array | Matrix, number, string","Array | Matrix, number, function","distribution","distributions","randFunctions","arg1","arg2","arg3","_randomDataForMatrix","_random","number | Array","_randomInt","number | Array, number","Array, number, number","possibles","_pickRandom","Array, number | Array","weights","Array, number | Array, Array | number","single","totalWeights","pick","rng","randKey","randFunc","uniform","normal","u1","u2","picked","PI","number | BigNumber | Fraction | boolean","Complex | Unit | string","_storage","algorithm08","num","Unit, string | Unit","valuelessUnit","prevPrec","decCoefficientToBinaryString","xe","strL","arrL","reverse","func","xBits","yBits","xSign","ySign","minBits","maxBits","minSign","shortLen","longLen","expFuncVal","outVal","twoPower","two","Parser","_parse","isParser","customs","getAll","remove","clear","category","description","examples","seealso","construction","docs","E","LN2","LN10","LOG2E","LOG10E","SQRT1_2","SQRT2","version","speedOfLight","gravitationConstant","planckConstant","reducedPlanckConstant","magneticConstant","electricConstant","vacuumImpedance","coulomb","elementaryCharge","bohrMagneton","conductanceQuantum","inverseConductanceQuantum","magneticFluxQuantum","nuclearMagneton","klitzing","bohrRadius","classicalElectronRadius","electronMass","fermiCoupling","fineStructure","hartreeEnergy","protonMass","deuteronMass","neutronMass","quantumOfCirculation","rydberg","thomsonCrossSection","weakMixingAngle","efimovFactor","atomicMass","avogadro","boltzmann","faraday","firstRadiation","loschmidt","gasConstant","molarPlanckConstant","molarVolume","sackurTetrode","secondRadiation","stefanBoltzmann","wienDisplacement","molarMass","molarMassC12","gravity","planckLength","planckMass","planckTime","planckCharge","planckTemperature","qr","compileAccessorNode","access","needParenthesis","isObjectNode","compileAssignmentNode","assign","parentObject","jsParentProperty","parentSize","parentIndex","exprPrecedence","isAssignmentNode","block","compileBlockNode","ResultSet","param","js","isBlockNode","compileConditionalNode","testCondition","isComplex","isConditionalNode","conditionPrecedence","truePrecedence","falsePrecedence","compileFunctionAssignmentNode","jsParams","jsExpr","isFunctionAssignmentNode","compileObjectNode","errorTransform","Spa","_denseLUP","_sparseLUP","L","U","ldata","lsize","udata","usize","pabsv","vjj","absv","_swapRows","vij","pv","lvalues","lindex","lptr","uvalues","uindex","uptr","pv_co","pv_oc","swapIndeces","kx","ky","spa","vkj","_forEachRow","vik","accumulate","swap","cs_sqr","cs_lu","SparseMatrix, number, number","order","threshold","pinv","removeParens","_buildRules","rules","ruleSet","newRule","rule","ruleType","lr","context","evaluate","isAssociative","makeNode","createMakeNodeFunction","expandsym","_getExpandPlaceholderSymbol","expanded","unflattenr","lastsym","getSplits","right","rightArgs","isCommutative","mergeMatch","match1","match2","placeholders","_exactMatch","combineChildMatches","list1","list2","merged","i1","i2","mergeChildMatches","childMatches","sets","uniqueSets","unique","_ruleMatch","isSplit","splits","splitMatches","matchSet","childMatch","simplifyConstant","unflattenl","string, Array","Node, Array","after","applyRule","commutative","Node, Object","repl","matches","associative","allChildren","children","findChildren","curnode","console","SparseMatrix, Array | Matrix","_sparseForwardSubstitution","DenseMatrix, Array | Matrix","_denseForwardSubstitution","Array, Array | Matrix","xj","bj","jvalues","jindex","_sparseBackwardSubstitution","_denseBackwardSubstitution","cs_mark","cs_marked","cs_tdfs","head","post","top","base","kFactorial","negativeOne","kChooseI","iPower","...Array | Matrix | number | BigNumber","prevDim","matrices","_concat","...string","concatDim","_det","compute_mu","fa","Array, function","_filterCallback","Array, RegExp","_filterRegExp","Matrix, function","Matrix, RegExp","regexp","entry","_forEach","recurse","_inv","temp","A","B","Ac","Bc","Ar","Br","_map","_out","_strRange","includeEnd","_bigRangeInc","_bigRangeEx","_rangeInc","_rangeEx","ZERO","nums","invalid","ONE","string, boolean","number, number, number","number, number, boolean","number, number, number, boolean","BigNumber, BigNumber, BigNumber","BigNumber, BigNumber, boolean","BigNumber, BigNumber, BigNumber, boolean","_denseTrace","_sparseTrace","bigFactorial","t","twoN","threeN","fourN","fiveN","g","real","den","twoPiSqrt","_unequal","_largest","_max","Array | Matrix, number | BigNumber","...","containsCollections","_nmean","_mean","_median","mid","left","middle2","middle","number | BigNumber | Unit","number | BigNumber | Unit, number | BigNumber | Unit","_smallest","_min","_sum","_var","normalization","variance","DEFAULT_NORMALIZATION","any, Object | function | number","_acosh","_typeof","isRange","isChain","isHelp","mathjs","toPolar","strRe","strIm","fromPolar","fromJSON","json","numerator","denominator","preprocess","_get","_getSubmatrix","_set","submatrix","sSize","iSize","_fit","_setSubmatrix","dataIndex","subIndex","newSize","changed","index_i","me","kSuper","kSub","ms","vi","dense","algorithm09","isResultSet","UNIT_NONE","prefix","PREFIXES","NONE","power","BASE_DIMENSIONS","isUnitListSimplified","skipWhitespace","revert","oldIndex","tentativeNumber","tentativeIndex","parseUnit","unitName","charCodeAt","parseCharacter","toFind","_findUnit","UNITS","prefixes","prefixLen","prefixName","calculateAngleValues","constants","rad","grad","cycle","arcsec","arcmin","assertUnitNameIsValid","isValidAlpha","getTypeOf","valueStr","powerMultiplierCurrent","expectingUnit","powerMultiplierStack","powerMultiplierStackProduct","oldC","uStr","baseDim","UNIT_SYSTEMS","auto","allowNoUnits","_isDerived","unitValue","unitOffset","unitPower","unitPrefixValue","_getNumberConverter","offset","_denormalize","prefixValue","BASE_UNITS","inverted","valThis","valOther","getNumericIfUnitless","simplifyUnitListLazy","matchingBase","proposedUnitList","currentUnitSystem","matchingUnit","missingBaseDim","toSI","strNum","strDen","nNum","nDen","isImaginary","isReal","_bestPrefix","unitStr","absValue","absUnitValue","bestPrefix","bestDiff","scientific","parts","fixedVal","SHORT","da","h","G","T","P","Z","Y","LONG","deca","hecto","kilo","mega","giga","tera","peta","exa","zetta","yotta","deci","centi","milli","micro","nano","pico","femto","atto","zepto","yocto","SQUARED","CUBIC","BINARY_SHORT","Ki","Mi","Gi","Ti","Ei","Zi","Yi","BINARY_LONG","kibi","mebi","gibi","tebi","pebi","exi","zebi","yobi","BTU","MM","SHORTLONG","MASS","LENGTH","TIME","CURRENT","TEMPERATURE","LUMINOUS_INTENSITY","AMOUNT_OF_SUBSTANCE","FORCE","SURFACE","VOLUME","ENERGY","POWER","PRESSURE","ELECTRIC_CHARGE","ELECTRIC_CAPACITANCE","ELECTRIC_POTENTIAL","ELECTRIC_RESISTANCE","ELECTRIC_INDUCTANCE","ELECTRIC_CONDUCTANCE","MAGNETIC_FLUX","MAGNETIC_FLUX_DENSITY","FREQUENCY","ANGLE","BIT","BASE_UNIT_NONE","meter","inch","foot","yard","mile","link","rod","angstrom","ft","yd","mi","li","rd","ch","mil","m2","sqin","sqft","sqyd","sqmi","sqrd","sqch","sqmil","acre","hectare","m3","litre","cuin","cuft","cuyd","teaspoon","tablespoon","drop","gtt","minim","fluiddram","fluidounce","gill","cc","cup","pint","quart","gallon","beerbarrel","oilbarrel","hogshead","fldr","floz","gi","cp","pt","qt","gal","bbl","obl","gram","ton","tonne","grain","dram","ounce","poundmass","hundredweight","stick","stone","gr","dr","oz","lbm","cwt","second","minute","hour","day","week","month","year","decade","century","millennium","hertz","reciprocal","Hz","ampere","K","degC","degF","degR","kelvin","celsius","fahrenheit","rankine","mol","mole","cd","candela","N","newton","dyn","dyne","lbf","poundforce","kip","joule","erg","Wh","eV","electronvolt","W","watt","hp","VAR","VA","Pa","atm","bar","torr","mmHg","mmH2O","cmH2O","C","farad","volt","V","ohm","henry","H","siemens","S","weber","Wb","tesla","bits","bytes","ALIASES","meters","inches","feet","yards","miles","links","rods","chains","angstroms","litres","liter","liters","teaspoons","tablespoons","minims","fluiddrams","fluidounces","gills","cups","pints","quarts","gallons","beerbarrels","oilbarrels","hogsheads","gtts","grams","tons","tonnes","grains","drams","ounces","poundmasses","hundredweights","sticks","lb","lbs","kips","acres","hectares","sqfeet","sqyard","sqmile","sqmiles","mmhg","mmh2o","cmh2o","seconds","secs","minutes","mins","hours","hr","hrs","days","weeks","months","years","radians","degree","degrees","gradian","gradians","cycles","arcsecond","arcseconds","arcminute","arcminutes","BTUs","watts","joules","amperes","coulombs","volts","ohms","farads","webers","teslas","electronvolts","moles","si","bit","cgs","us","setUnitSystem","getUnitSystem","typeConverters","alias","override","deleteUnit","aliases","lastUnit","createUnitSingle","definition","defUnit","toUpperCase","newUnit","anyMatch","baseName","newBaseUnit","aliasName","Emitter","mixin","setConstant","setLazyConstant","bigConstants","resolver","typedFactory","importFactory","configFactory","instance","factories","_config","instances","randomSeed","validateOption","MATRIX","changes","contains","findIndex","warn","math_import","_importFactory","isSupportedType","_import","silent","wrap","_wrap","isTypedFunction","_importTransform","unsafe","wrapper","existingTransform","namespace","existing","typedFunction","createTyped","isSparseMatrix","isUpdateNode","conversions","Help","doc","string, Object","Array | Matrix, Object","string | Array | Matrix","string | Array | Matrix, Object","UpdateNode","...any","lastIndex","filterTransform","_scope","Array | Matrix, function","isSet","Index","orig","_denseQR","_sparseQR","Q","R","Qdata","Rdata","sgn","conjSgn","alphaSquared","funcArgsCheck","Node, SymbolNode, Object","variable","constNodes","constTag","_derivative","Node, SymbolNode","string, SymbolNode","string, SymbolNode, Object","string, string, Object","Node, string","Node, string, Object","_simplify","deriv","_derivTex","Node, SymbolNode, ConstantNode","string, string, number","Object, ConstantNode, string","Object, SymbolNode, string","varName","Object, ParenthesisNode, string","Object, FunctionAssignmentNode, string","Object, FunctionNode | OperatorNode, string","isConst","ConstantNode, Object","SymbolNode, Object","ParenthesisNode, Object","FunctionAssignmentNode, Object","FunctionNode, Object","funcDerivative","negative","chainDerivative","OperatorNode, Object","newArgs","expValue","powMinusOne","foldFraction","_toNode","_eval","fnname","_toNumber","ignore","_numberToNode","_fractionToNode","vn","foldOp","ignoreandcontinue","consts","vars","cs_ipvec","_lusolve","SparseMatrix, Array | Matrix, number, number","Object, Array | Matrix","_toMatrix","cs_fkeep","cs_amd","lemax","cm","_createTargetMatrix","_diag","k2","pj","nvi","pk","eln","p2","pn","cnz","nv","elen","hhead","_initializeQuotientGraph","nel","_initializeDegreeLists","mindeg","elenk","nvk","dk","pk1","pk2","_wclear","wnvi","dext","p3","p4","nvj","jlast","ok","at","tindex","tptr","cs_leaf","cs_counts","ata","ancestor","maxfirst","prevleaf","colcount","jleaf","cs_unflip","cs_dfs","jnew","cs_etree","inext","nz","sparent","jprev","cs_spsolve","tol","lnz","unz","ipiv","xabs","cs_permute","t0","t1","cs_post","cs_reach","gptr","gsize","lo","gvalues","gindex","_vcount","leftmost","tail","nque","pa","_cbrtComplex","allRoots","arg_3","principal","_cbrtNumber","all","_cbrtUnit","negate","third","Complex, boolean","_gcdBigNumber","_gcd","Matrix, number | BigNumber","number | BigNumber, Matrix","Array, number | BigNumber","number | BigNumber, Array","Array | Matrix | number | BigNumber, Array | Matrix | number | BigNumber, ...Array | Matrix | number | BigNumber","_hypot","largest","... number | BigNumber","_lcmBigNumber","_lcm","_log10","_mod","_norm","sizeX","POSITIVE_INFINITY","pinf","NEGATIVE_INFINITY","ninf","maxc","cj","maxr","ri","boolean | null","number | Complex | BigNumber | boolean | null, number | BigNumber | string","Array, number | BigNumber | string","Matrix, number | BigNumber | string","_bigNthRoot","_nthRoot","_nthComplexRoot","Complex, number","density","roots","NO_INT","_round","Complex, BigNumber","_n","number, BigNumber","Fraction, number","number | Complex | BigNumber, Matrix","number | Complex | BigNumber, Array","boolean | string | null","_xgcd","lastx","lasty","_xgcdBigNumber","bigBitAnd","bigBitNot","bigBitOr","bigBitXor","bigLeftShift","bigRightArithShift","Array, Array, Array","_2d","xCoeff","yCoeff","constant","_distancePointLine2D","Object, Object, Object","lineTwoPtY","lineTwoPtX","lineOnePtY","lineOnePtX","pointX","pointY","_3d","_parametricLine","_distancePointLine3D","_distance2d","_distance3d","Object, Object","xCoeffLine","yCoeffLine","pointZ","x0","y0","z0","pointOneX","pointOneY","pointTwoX","pointTwoY","pointOneZ","pointTwoZ","_pairwise","_distancePairwise","_objectToArray","x1","y1","x2","y2","yDiff","xDiff","radicant","z1","z2","zDiff","_4d","_intersect2d","p1a","p1b","p2a","p2b","o1","o2","d1","d2","_intersect3d","x3","y3","z3","x4","y4","z4","d1343","d4321","d1321","d4343","d2121","ta","tb","pax","pay","paz","pbx","pby","pbz","_intersectLinePlane","py","pz","plane","Array, Array, Array, Array","Matrix, Matrix, Matrix","Matrix, Matrix, Matrix, Matrix","_cross","highestDimension","xSize","ySize","_createDiagonalMatrix","_getDiagonal","dm","vector","Array, number, string","Array, BigNumber, string","Matrix, number, string","Matrix, BigNumber, string","_dot","_flatten","_kron","_ones","_resizeString","defaultChar","number | Complex | BigNumber | Unit | boolean | null","_comparator","_arrayIsVector","_matrixIsVector","_kldiv","plength","qlength","sumq","sump","qnorm","pnorm","denom","ai","setSeed","seed","singletonRandom","seedrandom","_deepEqual","erf1","ysq","xnum","xden","erfc2","del","erfc3","SQRPI","MAX_NUM","THRESH","_mad","med","_mode","_prod","probOrN","sorted","probArr","dataArr","_quantileSeq","nPlusOne","intN","currProb","prob","fracPart","integerPart","integerPartNumber","_std","_print","string, Object, number | Object","original","_atanh","_cosh","_coth","_csch","_sech","_sinh","_tanh","Unit, Unit | string","Decimal","bool","lcase","Chain","createProxy","chainify","createLazyProxy","arg0","FibonacciHeap","_minimum","oneOverLogPhi","isFibonacciHeap","insert","isEmpty","extractMinimum","numberOfChildren","tempRight","_findMinimumNode","_decreaseKey","_cut","_cascadingCut","_linkNodes","numRoots","ImmutableDenseMatrix","isImmutableDenseMatrix","ranges","_dimensions","_isScalar","_createImmutableMatrix","strings","_heap","isSpa","heap","nodei","nodej","_createFromMatrix","_createFromArray","source","_getsubset","_setsubset","idx","kk","mvalues","mindex","mptr","_getValueIndex","_remove","_insert","bottom","ins","colIndex","rowIndex","r1","c1","invoke","minRow","maxRow","minColumn","maxColumn","_toArray","vx","vy","...number | string | BigNumber | Range | Array | Matrix","string, Unit | string | Object, Object","def","string, Unit | string | Object","Unit, Array","number | BigNumber | Fraction | Complex, string","fixedUnit","bitwise","negOne","toExpNeg","toExpPos","isBoolean","update","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","logHypot","_a","_b","parser_exit","tokens","loh","t2","noIM","oneMinus","onePlus","places","globalScope","digitsToString","ws","indexOfLastWord","LOG_BASE","getZeroString","checkInt32","invalidArgument","checkRoundingDigits","rm","repeating","di","mathpow","convertBase","baseIn","baseOut","NUMERALS","Ctor","taylorSeries","cos2x","finalise","isTruncated","roundUp","xd","xdi","out","BASE","external","maxE","minE","finiteToString","isExp","nonFiniteToString","getBase10Exponent","getLn10","pr","LN10_PRECISION","precisionLimitExceeded","getPi","PI_PRECISION","getPrecision","zs","intPow","truncate","mathfloor","isOdd","maxOrMin","ltgt","guard","wpr","rep","rounding","c0","parseDecimal","parseOther","divisor","isFloat","isHex","isBinary","isOctal","sin2_x","d5","d16","d20","isHyperbolic","toLessThanHalfPi","halfPi","quadrant","toStringBinary","MAX_DIGITS","inexact","decimalError","ps","EXP_LIMIT","crypto","getRandomValues","randomBytes","cryptoUnavailable","isDecimal","ROUND_UP","ROUND_DOWN","ROUND_CEIL","ROUND_FLOOR","ROUND_HALF_UP","ROUND_HALF_DOWN","ROUND_HALF_EVEN","ROUND_HALF_CEIL","ROUND_HALF_FLOOR","EUCLID","Uint32Array","MAX_SAFE_INTEGER","xdL","ydL","xs","ys","t3","t3plusx","cosh2_x","d8","sinh2_x","xsd","isBase10","xLTy","carry","rL","maxD","d0","n0","n1","yIsInt","yn","multiplyInteger","aL","bL","logBase","more","prodL","qd","rem","remL","rem0","xL","yd0","yL","yz","errorConstructor","IntermediateInheritor","throwInvalidParam","InvalidParameter","MAX_CYCLE_LEN","DivisionByZero","D","modpow","cycleLen","cycleStart","rem1","rem2","divisible","excludeWhole","whole","cycLen","cycOff","global","ARC4","keylen","width","mask","depth","typ","mixkey","smear","stringseed","tostring","autoseed","GLOBAL","Uint8Array","navigator","plugins","screen","pool","fromCharCode","chunks","window","startdenom","significance","overflow","oldRandom","use_entropy","entropy","arc4","resetGlobal","ctx","listener","self","_","evtArr","evts","liveEvents","__WEBPACK_AMD_DEFINE_FACTORY__","getTypeTest","hint","getName","fns","argCount","actualType","_expected","_fn","anyType","Refs","categories","Param","varArgs","_types","trim","_varArgs","Signature","_params","childs","fallThrough","parseSignatures","rawSignatures","expand","signature_i","filterAnyTypeSignatures","filtered","mapSignatures","normalized","hasConversions","parseTree","anys","nodeSignature","overlapping","matchingAnys","paramsStartWith","getArgs","_typed","refs","_signatures","_name","_args","maxParams","toCode","body","conversion","cat","ac","bc","bi","toConversion","newParam","aLast","bLast","ref","getTests","tests","allTypes","exactTypes","conversion_i","_innerCode","exceptions","_exceptions","...Function","addType","addConversion","core"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;CA2BA,SAA2CA,EAAMC,GAC1B,gBAAZC,UAA0C,gBAAXC,QACxCA,OAAOD,QAAUD,IACQ,kBAAXG,SAAyBA,OAAOC,IAC9CD,UAAWH,GACe,gBAAZC,SACdA,QAAc,KAAID,IAElBD,EAAW,KAAIC,KACdK,KAAM,WACT,MAAgB,UAAUC,GAKhB,QAASC,GAAoBC,GAG5B,GAAGC,EAAiBD,GACnB,MAAOC,GAAiBD,GAAUP,OAGnC,IAAIC,GAASO,EAAiBD,IAC7BE,EAAGF,EACHG,GAAG,EACHV,WAUD,OANAK,GAAQE,GAAUI,KAAKV,EAAOD,QAASC,EAAQA,EAAOD,QAASM,GAG/DL,EAAOS,GAAI,EAGJT,EAAOD,QAvBf,GAAIQ,KA+DJ,OAnCAF,GAAoBM,EAAIP,EAGxBC,EAAoBO,EAAIL,EAGxBF,EAAoBG,EAAI,SAASK,GAAS,MAAOA,IAGjDR,EAAoBS,EAAI,SAASf,EAASgB,EAAMC,GAC3CX,EAAoBY,EAAElB,EAASgB,IAClCG,OAAOC,eAAepB,EAASgB,GAC9BK,cAAc,EACdC,YAAY,EACZC,IAAKN,KAMRX,EAAoBkB,EAAI,SAASvB,GAChC,GAAIgB,GAAShB,GAAUA,EAAOwB,WAC7B,WAAwB,MAAOxB,GAAgB,SAC/C,WAA8B,MAAOA,GAEtC,OADAK,GAAoBS,EAAEE,EAAQ,IAAKA,GAC5BA,GAIRX,EAAoBY,EAAI,SAASQ,EAAQC,GAAY,MAAOR,QAAOS,UAAUC,eAAelB,KAAKe,EAAQC,IAGzGrB,EAAoBwB,EAAI,GAGjBxB,EAAoBA,EAAoByB,EAAI,OAKvD,SAAU9B,EAAQD,EAASM,GAEjC,YAGA,SAASP,GAASiC,EAAMC,EAAQC,EAAMC,GA2EpC,QAASC,GAAQC,EAAMC,EAAQC,GAE7B,GAAIC,GAAIR,EAAKS,OAAOC,QAAQJ,GAAU,UAGtC,OAAO,IAAIE,GAAEH,EAAME,GA/CrB,GAAII,GAASR,EAAM,UACjBS,GAAI,WACF,MAAOR,QAGTS,OAAU,SAAUP,GAClB,MAAOF,MAAYE,IAGrBQ,iBAAkB,SAAUR,EAAQC,GAClC,MAAOH,MAAYE,EAAQC,IAG7BQ,MAAS,SAAUV,GACjB,MAAOD,GAAQC,IAGjBI,OAAU,SAAUJ,GAClB,MAAOD,GAAQC,EAAMA,EAAKK,YAG5BM,yBAA0BZ,EAE1Ba,iCAAkCb,GASpC,OANAO,GAAOO,OACLC,EAAG,iCACHC,EAAG,4BACHC,EAAG,6BAGEV,EAmBT3C,EAAQgB,KAAO,SACfhB,EAAQD,QAAUA,GAKZ,SAAUE,EAAQD,EAASM,GAEjC,YAeAL,GAAOD,QAAU,QAASsD,GAAQC,EAAOC,EAAUC,GACjD,MAAIF,IAA+B,kBAAdA,GAAMG,IAElBH,EAAMG,IAAI,SAAUC,GACzB,MAAOL,GAAQK,EAAGH,EAAUC,KAIvBD,EAASD,KAOd,SAAUtD,EAAQD,EAASM,GAEjC,YAkbA,SAASsD,GAAMC,GAEb,IAAK,GADDC,MACKrD,EAAI,EAAGA,EAAIoD,EAAQpD,IAC1BqD,EAAIC,KAAK,EAEX,OAAOD,GA3aT9D,EAAQgE,SAAW,SAASlD,GAC1B,MAAwB,gBAAVA,IAQhBd,EAAQiE,UAAY,SAASnD,GAC3B,QAAOoD,SAASpD,IACTA,GAASqD,KAAKC,MAAMtD,IAU7Bd,EAAQqE,KAAOF,KAAKE,MAAQ,SAASV,GACnC,MAAIA,GAAI,EACC,EAEAA,EAAI,GACJ,EAGA,GAuEX3D,EAAQsC,OAAS,SAASxB,EAAOwD,GAC/B,GAAuB,kBAAZA,GAET,MAAOA,GAAQxD,EAIjB,IAAIA,IAAUyD,EAAAA,EACZ,MAAO,UAEJ,IAAIzD,MAAWyD,EAAAA,GAClB,MAAO,WAEJ,IAAIC,MAAM1D,GACb,MAAO,KAIT,IAAI2D,GAAW,OACXC,EAAYC,MAkBhB,QAhBIL,IAEEA,EAAQG,WACVA,EAAWH,EAAQG,UAIjBzE,EAAQgE,SAASM,GACnBI,EAAYJ,EAELA,EAAQI,YACfA,EAAYJ,EAAQI,YAKhBD,GACN,IAAK,QACH,MAAOzE,GAAQ4E,QAAQ9D,EAAO4D,EAEhC,KAAK,cACH,MAAO1E,GAAQ6E,cAAc/D,EAAO4D,EAEtC,KAAK,cACH,MAAO1E,GAAQ8E,cAAchE,EAAO4D,EAEtC,KAAK,OACH,MAAO1E,GACF+E,YAAYjE,EAAO4D,EAAWJ,GAAWA,EAAQU,aAGjDC,QAAQ,sBAAuB,WAC9B,GAAIC,GAASC,UAAU,GACnBC,EAAID,UAAU,EAClB,OAAmB,MAAXD,EAAkBA,EAASE,EAAIA,GAG/C,SACE,KAAM,IAAIC,OAAM,qBAAuBZ,EAAW,kDAWxDzE,EAAQsF,YAAc,SAAUxE,GAE9B,GAAIyE,GAAQC,OAAO1E,GAAO2E,cAAcF,MAAM,qCAC9C,KAAKA,EACH,KAAM,IAAIG,aAAY,kBAAoB5E,EAG5C,IAAIuD,GAAekB,EAAM,GACrBL,EAAeK,EAAM,GACrBI,EAAeC,WAAWL,EAAM,IAAM,KAEtCM,EAAMX,EAAOY,QAAQ,IACzBH,IAAaE,KAAQ,EAAOA,EAAM,EAAMX,EAAOrB,OAAS,CAExD,IAAIkC,GAAeb,EACdD,QAAQ,IAAK,IACbA,QAAQ,MAAO,SAAUrB,GAGxB,MADA+B,IAAY/B,EAAMC,OACX,KAERoB,QAAQ,MAAO,IACfe,MAAM,IACNtC,IAAI,SAAU3C,GACb,MAAOkF,UAASlF,IAQtB,OAL4B,KAAxBgF,EAAalC,SACfkC,EAAahC,KAAK,GAClB4B,MAIAtB,KAAMA,EACN0B,aAAcA,EACdJ,SAAUA,IAWd3F,EAAQ8E,cAAgB,SAAUhE,EAAO4D,GACvC,GAAIF,MAAM1D,KAAWoD,SAASpD,GAC5B,MAAO0E,QAAO1E,EAGhB,IAAIoF,GAAUlG,EAAQmG,YAAYnG,EAAQsF,YAAYxE,GAAQ4D,GAE1DU,EAAIc,EAAQP,SACZ9E,EAAIqF,EAAQH,aAGZK,EAAShB,EAAI,IAAM,EAAIA,EAAKA,EAAI,EAAKA,EAAI,EAAMA,EAAI,EAAKA,EAAKA,EAAI,EAGjEiB,EAAmBjB,GAAK,EAAIA,EAAIjB,KAAKmC,IAAIF,EAGzCvF,GAAEgD,OAAS,EAAIwC,IAAkBxF,EAAIA,EAAE0F,OAAO3C,EAAMyC,GAAoBxF,EAAEgD,OAAS,KAQvF,KALA,GAAI2C,GAAUrC,KAAKmC,IAAIlB,EAAIgB,GAEvBK,EAAa,IAGRD,GAAW,GAAGC,GAIvB,IAAIC,GAAW7F,EAAE8F,MAAMF,GAAYG,KAAK,IACpCC,EAAaH,EAASnB,MAAM,SAAY,IAAMmB,EAAY,GAE1DI,EAAMjG,EAAE8F,MAAM,EAAGF,GAAYG,KAAK,IAClCC,EACA,KAAOzB,GAAK,EAAI,IAAM,IAAMgB,EAAOW,UACvC,OAAOb,GAAQ7B,KAAOyC,GASxB9G,EAAQ4E,QAAU,SAAU9D,EAAO4D,GACjC,GAAIF,MAAM1D,KAAWoD,SAASpD,GAC5B,MAAO0E,QAAO1E,EAGhB,IAAIkG,GAAahH,EAAQsF,YAAYxE,GACjCoF,EAAUlG,EAAQmG,YAAYa,EAAYA,EAAWrB,SAAW,GAAKjB,GAAa,IAClF7D,EAAIqF,EAAQH,aACZjE,EAAIoE,EAAQP,SAAW,EAGvBsB,EAAKnF,GAAK4C,GAAa,EAgB3B,OAfI7D,GAAEgD,OAASoD,IACbpG,EAAIA,EAAE0F,OAAO3C,EAAMqD,EAAKpG,EAAEgD,UAIxB/B,EAAI,IACNjB,EAAI+C,GAAO9B,EAAI,GAAGyE,OAAO1F,GACzBiB,EAAI,GAIF4C,GACF7D,EAAEqG,OAAOpF,EAAG,EAAU,IAANA,EAAW,KAAO,KAG7BoE,EAAQ7B,KAAOxD,EAAE+F,KAAK,KAU/B5G,EAAQ6E,cAAgB,SAAU/D,EAAO4D,GACvC,GAAIF,MAAM1D,KAAWoD,SAASpD,GAC5B,MAAO0E,QAAO1E,EAIhB,IAAIkF,GAAQhG,EAAQsF,YAAYxE,GAC5BoF,EAAUxB,EAAY1E,EAAQmG,YAAYH,EAAOtB,GAAasB,EAC9DnF,EAAIqF,EAAQH,aACZX,EAAIc,EAAQP,QAGZ9E,GAAEgD,OAASa,IACb7D,EAAIA,EAAE0F,OAAO3C,EAAMc,EAAY7D,EAAEgD,SAInC,IAAIsD,GAAQtG,EAAEuG,OACd,OAAOlB,GAAQ7B,KAAO8C,GAAStG,EAAEgD,OAAS,EAAK,IAAMhD,EAAE+F,KAAK,IAAO,IAC/D,KAAOxB,GAAK,EAAI,IAAM,IAAMA,GAalCpF,EAAQ+E,YAAc,SAAUjE,EAAO4D,EAAWJ,GAChD,GAAIE,MAAM1D,KAAWoD,SAASpD,GAC5B,MAAO0E,QAAO1E,EAIhB,IAAIuG,GAAS/C,GAA6BK,SAAlBL,EAAQ+C,MAAuB/C,EAAQ+C,MAAQ,KACnEC,EAAShD,GAA6BK,SAAlBL,EAAQgD,MAAuBhD,EAAQgD,MAAQ,IAEnEtB,EAAQhG,EAAQsF,YAAYxE,GAC5BwF,EAAMnC,KAAKmC,IAAInC,KAAKoD,IAAI,GAAIvB,EAAML,UACtC,IAAIW,EAAMe,GAASf,GAAOgB,EAExB,MAAOtH,GAAQ6E,cAAc/D,EAAO4D,EAGpC,IAAIwB,GAAUxB,EAAY1E,EAAQmG,YAAYH,EAAOtB,GAAasB,EAC9DnF,EAAIqF,EAAQH,aACZX,EAAIc,EAAQP,QAGZ9E,GAAEgD,OAASa,IACb7D,EAAIA,EAAE0F,OAAO3C,EAAMc,EAAY7D,EAAEgD,UAKnChD,EAAIA,EAAE0F,OAAO3C,EAAMwB,EAAIvE,EAAEgD,OAAS,GAC7BhD,EAAEgD,OAASa,EAAYA,EAAY7D,EAAEgD,OAAS,KAGnDhD,EAAI+C,GAAOwB,GAAGmB,OAAO1F,EAErB,IAAIgF,GAAMT,EAAI,EAAIA,EAAI,CAKtB,OAJIS,GAAMhF,EAAEgD,OAAS,GACnBhD,EAAEqG,OAAOrB,EAAM,EAAG,EAAG,KAGhBK,EAAQ7B,KAAOxD,EAAE+F,KAAK,KAYjC5G,EAAQmG,YAAc,SAAUH,EAAOtB,GAUrC,IARA,GAAIwB,IACF7B,KAAM2B,EAAM3B,KACZ0B,aAAcC,EAAMD,aACpBJ,SAAUK,EAAML,UAEd9E,EAAIqF,EAAQH,aAGTrB,GAAa,GAClB7D,EAAE2G,QAAQ,GACVtB,EAAQP,WACRjB,GAGF,IAAI7D,EAAEgD,OAASa,EAAW,CACxB,GAAI+C,GAAU5G,EAAEqG,OAAOxC,EAAW7D,EAAEgD,OAASa,EAE7C,IAAI+C,EAAQ,IAAM,EAAG,CACnB,GAAIhH,GAAIiE,EAAY,CAEpB,KADA7D,EAAEJ,KACc,KAATI,EAAEJ,IACPI,EAAE6G,MACQ,IAANjH,IACFI,EAAE2G,QAAQ,GACVtB,EAAQP,WACRlF,KAEFA,IACAI,EAAEJ,MAKR,MAAOyF,IA2BTlG,EAAQkF,OAAS,SAASpE,GACxB,MAAOA,GACF+D,gBACAI,QAAQ,OAAQ,IAChBA,QAAS,aAAc,IACvBpB,QAMP7D,EAAQ2H,YAAcC,OAAOC,SAAW,sBAWxC7H,EAAQ8H,YAAc,SAASnE,EAAGoE,EAAGC,GAEnC,GAAe,MAAXA,EACF,MAAOrE,IAAKoE,CAId,IAAIpE,GAAKoE,EACP,OAAO,CAIT,IAAIvD,MAAMb,IAAMa,MAAMuD,GACpB,OAAO,CAIT,IAAG7D,SAASP,IAAMO,SAAS6D,GAAI,CAE7B,GAAIE,GAAO9D,KAAKmC,IAAI3C,EAAIoE,EACxB,OAAIE,GAAOjI,EAAQ2H,aAKVM,GAAQ9D,KAAK+D,IAAI/D,KAAKmC,IAAI3C,GAAIQ,KAAKmC,IAAIyB,IAAMC,EAKxD,OAAO,IAMH,SAAU/H,EAAQD,EAASM,GAEjC,YAsCA,SAAS6H,GAAU5E,EAAO6E,EAAMC,GAC9B,GAAI5H,GACA6H,EAAM/E,EAAMM,MAEhB,IAAIyE,GAAOF,EAAKC,GACd,KAAM,IAAIE,GAAeD,EAAKF,EAAKC,GAGrC,IAAIA,EAAMD,EAAKvE,OAAS,EAAG,CAEzB,GAAI2E,GAAUH,EAAM,CACpB,KAAK5H,EAAI,EAAGA,EAAI6H,EAAK7H,IAAK,CACxB,GAAIgI,GAAQlF,EAAM9C,EAClB,KAAKsC,MAAM2F,QAAQD,GACjB,KAAM,IAAIF,GAAeH,EAAKvE,OAAS,EAAGuE,EAAKvE,OAAQ,IAEzDsE,GAAU5E,EAAM9C,GAAI2H,EAAMI,QAK5B,KAAK/H,EAAI,EAAGA,EAAI6H,EAAK7H,IACnB,GAAIsC,MAAM2F,QAAQnF,EAAM9C,IACtB,KAAM,IAAI8H,GAAeH,EAAKvE,OAAS,EAAGuE,EAAKvE,OAAQ,KAyF/D,QAAS8E,GAASpF,EAAO6E,EAAMC,EAAKO,GAClC,GAAInI,GACAoI,EACAC,EAASvF,EAAMM,OACfkF,EAASX,EAAKC,GACdW,EAAS7E,KAAK8E,IAAIH,EAAQC,EAK9B,IAFAxF,EAAMM,OAASkF,EAEXV,EAAMD,EAAKvE,OAAS,EAAG,CAEzB,GAAI2E,GAAUH,EAAM,CAGpB,KAAK5H,EAAI,EAAGA,EAAIuI,EAAQvI,IAEtBoI,EAAOtF,EAAM9C,GACRsC,MAAM2F,QAAQG,KACjBA,GAAQA,GACRtF,EAAM9C,GAAKoI,GAEbF,EAAQE,EAAMT,EAAMI,EAASI,EAI/B,KAAKnI,EAAIuI,EAAQvI,EAAIsI,EAAQtI,IAE3BoI,KACAtF,EAAM9C,GAAKoI,EAGXF,EAAQE,EAAMT,EAAMI,EAASI,OAG5B,CAIH,IAAKnI,EAAI,EAAGA,EAAIuI,EAAQvI,IACtB,KAAOsC,MAAM2F,QAAQnF,EAAM9C,KACzB8C,EAAM9C,GAAK8C,EAAM9C,GAAG,EAIxB,IAAGmI,IAAiB5I,EAAQkJ,cAE1B,IAAKzI,EAAIuI,EAAQvI,EAAIsI,EAAQtI,IAC3B8C,EAAM9C,GAAKmI,GAoEnB,QAASO,GAAS5F,EAAO6F,GACvB,GACI3I,GADA4I,IAGJ,IAAqB,IAAjBD,EAAMvF,OAAc,CACtB,GAAqB,IAAjBN,EAAMM,OACR,KAAM,IAAI0E,GAAe,KAAM,KAAM,KAEvC,OAAOhF,GAAM6D,QAEf,IAAK3G,EAAI,EAAGA,EAAI2I,EAAM,GAAI3I,GAAK,EAC7B4I,EAAYtF,KAAKoF,EAAS5F,EAAO6F,EAAMzC,MAAM,IAE/C,OAAO0C,GA0CT,QAASC,GAAU/F,EAAOgG,EAAMlB,GAC9B,GAAI5H,GAAG+I,CAEP,IAAInB,EAAMkB,EAAM,CACd,GAAIE,GAAOpB,EAAM,CACjB,KAAK5H,EAAI,EAAG+I,EAAKjG,EAAMM,OAAQpD,EAAI+I,EAAI/I,IACrC8C,EAAM9C,GAAK6I,EAAS/F,EAAM9C,GAAI8I,EAAME,OAItC,MAAO1G,MAAM2F,QAAQnF,IACnBA,EAAQA,EAAM,EAIlB,OAAOA,GA2CT,QAASmG,GAAYnG,EAAOgG,EAAMlB,GAChC,GAAI5H,GAAG+I,CAEP,IAAIzG,MAAM2F,QAAQnF,GAAQ,CACxB,GAAIkG,GAAOpB,EAAM,CACjB,KAAK5H,EAAI,EAAG+I,EAAKjG,EAAMM,OAAQpD,EAAI+I,EAAI/I,IACrC8C,EAAM9C,GAAKiJ,EAAWnG,EAAM9C,GAAI8I,EAAME,OAIxC,KAAK,GAAI1I,GAAIsH,EAAKtH,EAAIwI,EAAMxI,IAC1BwC,GAASA,EAIb,OAAOA,GAvYT,GAAIoG,GAASrJ,EAAoB,GAC7BuC,EAASvC,EAAoB,IAI7BiI,GAHSjI,EAAoB,GACrBA,EAAoB,IAEXA,EAAoB,IACrCsJ,EAAatJ,EAAoB,GASrCN,GAAQoI,KAAO,SAAUzE,GAGvB,IAFA,GAAI5B,MAEGgB,MAAM2F,QAAQ/E,IACnB5B,EAAEgC,KAAKJ,EAAEE,QACTF,EAAIA,EAAE,EAGR,OAAO5B,IAgDT/B,EAAQ6J,SAAW,SAAStG,EAAO6E,GACjC,GAAI0B,GAA2B,GAAf1B,EAAKvE,MACrB,IAAIiG,GAEF,GAAI/G,MAAM2F,QAAQnF,GAChB,KAAM,IAAIgF,GAAehF,EAAMM,OAAQ,OAKzCsE,GAAU5E,EAAO6E,EAAM,IAU3BpI,EAAQ+J,cAAgB,SAASC,EAAOnG,GACtC,IAAK8F,EAAO3F,SAASgG,KAAWL,EAAO1F,UAAU+F,GAC/C,KAAM,IAAIC,WAAU,oCAAsCD,EAAQ,IAEpE,IAAIA,EAAQ,GAAwB,gBAAXnG,IAAuBmG,GAASnG,EACvD,KAAM,IAAI+F,GAAWI,EAAOnG,IAKhC7D,EAAQkJ,iBAWRlJ,EAAQkK,OAAS,SAAS3G,EAAO6E,EAAMQ,GAIrC,IAAK7F,MAAM2F,QAAQnF,KAAWR,MAAM2F,QAAQN,GAC1C,KAAM,IAAI6B,WAAU,iBAEtB,IAAoB,IAAhB7B,EAAKvE,OACP,KAAM,IAAIwB,OAAM,sCAIlB+C,GAAK+B,QAAQ,SAAUrJ,GACrB,IAAK6I,EAAO3F,SAASlD,KAAW6I,EAAO1F,UAAUnD,IAAUA,EAAQ,EACjE,KAAM,IAAImJ,WAAU,uDACJpH,EAAOP,OAAO8F,GAAQ,MAK1C,IAAIgC,GAAkCzF,SAAjBiE,EAA8BA,EAAe,CAGlE,OAFAD,GAAQpF,EAAO6E,EAAM,EAAGgC,GAEjB7G,GA4ETvD,EAAQqK,QAAU,SAAS9G,EAAO6F,GAChC,GACIkB,GADAC,EAAYvK,EAAQwK,QAAQjH,GAG5BkH,EAAU,SAAU3G,GACtB,MAAOA,GAAI4G,OAAO,SAAUC,EAAMC,GAChC,MAAOD,GAAOC,IAIlB,KAAK7H,MAAM2F,QAAQnF,KAAWR,MAAM2F,QAAQU,GAC1C,KAAM,IAAIa,WAAU,iBAGtB,IAAqB,IAAjBb,EAAMvF,OACR,KAAM,IAAI0E,GAAe,EAAGkC,EAAQzK,EAAQoI,KAAK7E,IAAS,KAG5D,KACE+G,EAAYnB,EAASoB,EAAWnB,GAChC,MAAOhE,GACP,GAAIA,YAAamD,GACf,KAAM,IAAIA,GACRkC,EAAQrB,GACRqB,EAAQzK,EAAQoI,KAAK7E,IACrB,KAGJ,MAAM6B,GAGR,GAAImF,EAAU1G,OAAS,EACrB,KAAM,IAAI0E,GACRkC,EAAQrB,GACRqB,EAAQzK,EAAQoI,KAAK7E,IACrB,KAIJ,OAAO+G,IAoCTtK,EAAQ6K,QAAU,SAAStH,EAAO6E,GAIhC,IAHA,GAAIrG,GAAIqG,GAAQpI,EAAQoI,KAAK7E,GAGtBR,MAAM2F,QAAQnF,IAA2B,IAAjBA,EAAMM,QACnCN,EAAQA,EAAM,GACdxB,EAAEqF,OAKJ,KADA,GAAImC,GAAOxH,EAAE8B,OACU,IAAhB9B,EAAEwH,EAAO,IACdA,GASF,OALIA,GAAOxH,EAAE8B,SACXN,EAAQ+F,EAAS/F,EAAOgG,EAAM,GAC9BxH,EAAE8B,OAAS0F,GAGNhG,GAyCTvD,EAAQ8K,UAAY,SAASvH,EAAOgG,EAAMwB,EAAO3C,GAC/C,GAAIrG,GAAIqG,GAAQpI,EAAQoI,KAAK7E,EAG7B,IAAIwH,EACF,IAAK,GAAItK,GAAI,EAAGA,EAAIsK,EAAOtK,IACzB8C,GAASA,GACTxB,EAAEyF,QAAQ,EAMd,KADAjE,EAAQmG,EAAWnG,EAAOgG,EAAM,GACzBxH,EAAE8B,OAAS0F,GAChBxH,EAAEgC,KAAK,EAGT,OAAOR,IAkCTvD,EAAQwK,QAAU,SAASjH,GACzB,IAAKR,MAAM2F,QAAQnF,GAEjB,MAAOA,EAET,IAAIyH,KAWJ,OATAzH,GAAM4G,QAAQ,QAAS3G,GAAS1C,GAC1BiC,MAAM2F,QAAQ5H,GAChBA,EAAMqJ,QAAQ3G,GAGdwH,EAAKjH,KAAKjD,KAIPkK,GAQThL,EAAQ0D,IAAM,SAAUH,EAAOC,GAC7B,MAAOT,OAAMnB,UAAU8B,IAAI/C,KAAK4C,EAAOC,IAQzCxD,EAAQmK,QAAU,SAAU5G,EAAOC,GACjCT,MAAMnB,UAAUuI,QAAQxJ,KAAK4C,EAAOC,IAQtCxD,EAAQ4G,KAAO,SAAUrD,EAAO0H,GAC9B,MAAOlI,OAAMnB,UAAUgF,KAAKjG,KAAK4C,EAAO0H,IAQ1CjL,EAAQ0I,QAAU3F,MAAM2F,SAKlB,SAAUzI,EAAQD,EAASM,GAEjC,YAGAN,GAAQkL,SAENC,MAAO,IAASC,MAAO,UACvBC,KAAM,IAAUC,KAAM,SACtBC,MAAO,UAAcC,MAAO,UAC5BC,MAAO,UAAcC,MAAO,UAC5BC,QAAS,IAAO3D,QAAS,YAAc4D,WAAY,eACnDC,KAAM,IAAUC,KAAM,SACtBC,IAAK,IAAWC,IAAK,QACrBC,MAAO,UAAcC,MAAO,UAAcC,SAAU,aACpDC,KAAM,IAAUC,KAAM,SACtBC,MAAO,IAASC,MAAO,UAAcC,SAAU,aAC/CC,OAAQ,WAAcC,OAAQ,WAC9BC,GAAI,IAAYC,GAAI,OACpBC,GAAI,IAAYC,GAAI,OACpBC,GAAI,OAAcC,GAAI,OACtBC,QAAS,IAAOC,QAAS,IACzBC,GAAI,OAAcC,GAAI,OAAcC,MAAO,UAC3CC,IAAK,IAAWC,IAAK,QAAcC,OAAQ,WAC3CC,MAAO,UAAcC,MAAO,UAAcC,SAAU,aACpDC,IAAK,IAAWC,IAAK,QACrBC,QAAS,YAAcC,QAAS,YAChCC,IAAK,QAAcC,IAAK,QAAcC,OAAQ,WAC9CC,IAAK,IAAWC,IAAK,QACrBC,IAAK,QAAcC,IAAK,QACxBC,MAAO,UAAcC,MAAO,UAE5BC,KAAQ,iBACRC,MAAS,kBAETjO,EAAG,IACHkO,IAAK,UACLC,IAAK,UACLC,SAAU,UACVtK,SAAU,UACVuK,GAAI,UACJC,IAAK,QACLpK,UAAa,eAGf3E,EAAQgP,WACNC,UAAa,SACbC,UAAa,IACb3H,IAAO,IACP4H,OAAU,YACVC,UAAa,IACbC,WAAc,IACdC,OAAU,IACVC,IAAO,QACPC,SAAY,SACZC,OAAU,SACVC,YAAe,UACfC,UAAa,KACbC,IAAO,QACPC,IAAO,IACPC,SAAY,IACZC,GAAM,eACNC,UAAa,KACbC,gBAAmB,KACnBC,cAAiB,MACjBC,MAAS,IACTC,QAAW,QACXC,QAAW,IACXC,OAAU,IACVC,UAAa,QACbC,SAAY,QACZC,OAAU,MACVC,OAAU,iBACVC,MAAS,IACTC,IAAO,UACPC,IAAO,WACPC,GAAM,SAGR9Q,EAAQ+Q,gBAAkB,yCAE1B,IAAIC,IACFC,IAAK,UAKPjR,GAAQkR,SAAW,SAAUlQ,EAAMmQ,GAEjC,GADAA,EAA2B,mBAAXA,IAAiCA,EAE/C,MAAIH,GAAMnP,eAAeb,GAChBgQ,EAAMhQ,GAER,YAAcA,EAAO,GAG9B,IAAIhB,EAAQkL,QAAQrJ,eAAeb,GACjC,MAAOhB,GAAQkL,QAAQlK,EAEpB,IAAIA,EAAK8E,QAAQ,QAAS,EAAI,CAEjC,GAAIkE,GAAQhJ,EAAK8E,QAAQ,IACzB,OAAO9F,GAAQkR,SAASlQ,EAAKoQ,UAAU,EAAGpH,IAAU,KAChDhK,EAAQkR,SAASlQ,EAAKoQ,UAAUpH,EAAQ,IAAM,IAEpD,MAAOhJ,KAMH,SAAUf,EAAQD,EAASM,GAEjC,YAcAN,GAAQqR,MAAQ,QAASA,GAAM1N,GAC7B,GAAI3B,SAAc2B,EAGlB,IAAa,WAAT3B,GAA8B,WAATA,GAA8B,YAATA,GACpC,OAAN2B,GAAoBgB,SAANhB,EAChB,MAAOA,EAIT,IAAuB,kBAAZA,GAAE0N,MACX,MAAO1N,GAAE0N,OAIX,IAAItO,MAAM2F,QAAQ/E,GAChB,MAAOA,GAAED,IAAI,SAAU5C,GACrB,MAAOuQ,GAAMvQ,IAIjB,IAAI6C,YAAaiE,QAAW,MAAO,IAAIA,QAAOjE,EAAE2N,UAChD,IAAI3N,YAAa6B,QAAW,MAAO,IAAIA,QAAO7B,EAAE2N,UAChD,IAAI3N,YAAa4N,SAAW,MAAO,IAAIA,SAAQ5N,EAAE2N,UACjD,IAAI3N,YAAa6N,MAAW,MAAO,IAAIA,MAAK7N,EAAE2N,UAC9C,IAAI3N,GAAKA,EAAE8N,eAAgB,EAAM,MAAO9N,EACxC,IAAIA,YAAa+N,QAAS,KAAM,IAAIzH,WAAU,gBAAkBtG,EAGhE,OAAO3D,GAAQ0D,IAAIC,EAAG0N,IASxBrR,EAAQ0D,IAAM,SAAShC,EAAQ8B,GAC7B,GAAI6N,KAEJ,KAAK,GAAIM,KAAOjQ,GACVP,OAAOU,eAAelB,KAAKe,EAAQiQ,KACrCN,EAAMM,GAAOnO,EAAS9B,EAAOiQ,IAIjC,OAAON,IASTrR,EAAQ4R,OAAS,SAASC,EAAGC,GAC3B,IAAK,GAAIC,KAAQD,GACX3Q,OAAOU,eAAelB,KAAKmR,EAAGC,KAChCF,EAAEE,GAAQD,EAAEC,GAGhB,OAAOF,IAST7R,EAAQgS,WAAa,QAASA,GAAYH,EAAGC,GAE3C,GAAI/O,MAAM2F,QAAQoJ,GAChB,KAAM,IAAI7H,WAAU,yCAGtB,KAAK,GAAI8H,KAAQD,GACf,GAAI3Q,OAAOU,eAAelB,KAAKmR,EAAGC,GAChC,GAAID,EAAEC,IAASD,EAAEC,GAAME,cAAgB9Q,OACrBwD,SAAZkN,EAAEE,KACJF,EAAEE,OAEAF,EAAEE,GAAME,cAAgB9Q,OAC1B6Q,EAAWH,EAAEE,GAAOD,EAAEC,IAGtBF,EAAEE,GAAQD,EAAEC,OAET,CAAA,GAAIhP,MAAM2F,QAAQoJ,EAAEC,IACzB,KAAM,IAAI9H,WAAU,yCAEpB4H,GAAEE,GAAQD,EAAEC,GAIlB,MAAOF,IAST7R,EAAQkS,UAAY,SAAoBL,EAAGC,GACzC,GAAIC,GAAMtR,EAAG6H,CACb,IAAIvF,MAAM2F,QAAQmJ,GAAI,CACpB,IAAK9O,MAAM2F,QAAQoJ,GACjB,OAAO,CAGT,IAAID,EAAEhO,QAAUiO,EAAEjO,OAChB,OAAO,CAGT,KAAKpD,EAAI,EAAG6H,EAAMuJ,EAAEhO,OAAQpD,EAAI6H,EAAK7H,IACnC,IAAKT,EAAQkS,UAAUL,EAAEpR,GAAIqR,EAAErR,IAC7B,OAAO,CAGX,QAAO,EAEJ,GAAIoR,YAAa1Q,QAAQ,CAC5B,GAAI4B,MAAM2F,QAAQoJ,MAAQA,YAAa3Q,SACrC,OAAO,CAGT,KAAK4Q,IAAQF,GAEX,IAAK7R,EAAQkS,UAAUL,EAAEE,GAAOD,EAAEC,IAChC,OAAO,CAGX,KAAKA,IAAQD,GAEX,IAAK9R,EAAQkS,UAAUL,EAAEE,GAAOD,EAAEC,IAChC,OAAO,CAGX,QAAO,EAGP,aAAeF,UAAaC,IAAOD,GAAKC,GAQ5C9R,EAAQmS,kBAAoB,WAE1B,IACE,GAAIhR,OAAOC,eAET,MADAD,QAAOC,kBAAmB,KAAOG,IAAK,gBAC/B,EAET,MAAO6D,IAET,OAAO,GAaTpF,EAAQoS,KAAO,SAAU1Q,EAAQqQ,EAAMM,GACrC,GAAIrS,EAAQmS,oBAAqB,CAC/B,GACIG,GADAC,GAAiB,CAErBpR,QAAOC,eAAeM,EAAQqQ,GAC5BxQ,IAAK,WAKH,MAJIgR,KACFD,EAASD,IACTE,GAAiB,GAEZD,GAGTE,IAAK,SAAU1R,GACbwR,EAASxR,EACTyR,GAAiB,GAGnBlR,cAAc,EACdC,YAAY,QAKdI,GAAOqQ,GAAQM,KAWnBrS,EAAQyS,SAAW,SAAS/Q,EAAQgR,GAClC,GAAIC,GAAMjR,CAEV,IAAIgR,EAEF,IAAK,GADDE,GAAQF,EAAK1M,MAAM,KACdvF,EAAI,EAAGA,EAAImS,EAAM/O,OAAQpD,IAAK,CACrC,GAAIO,GAAO4R,EAAMnS,EACXO,KAAQ2R,KACZA,EAAI3R,OAEN2R,EAAMA,EAAI3R,GAId,MAAO2R,IAQT3S,EAAQ6B,eAAiB,SAAUH,EAAQC,GACzC,MAAOD,IAAUP,OAAOU,eAAelB,KAAKe,EAAQC,IAetD3B,EAAQ6S,UAAY,SAAUnR,GAC5B,MAAOA,IAAoC,kBAAnBA,GAAO3B,UAM3B,SAAUE,EAAQD,EAASM,GAEjC,YAKA,SAASP,GAASiC,EAAMC,EAAQC,EAAMC,GAEpC,GAAI2Q,GAAc9Q,EAAK8Q,YAiBnBC,EAAc,SAAUlB,EAAGC,EAAGtO,EAAUwP,GAE1C,GAKIC,GALAC,EAAQrB,EAAEsB,MACVC,EAAQvB,EAAEwB,MACVC,EAAMzB,EAAE0B,UAKRC,EAAKhQ,CAGU,iBAAR8P,KAETL,EAAKK,EAELxB,EAAI3P,EAAMsR,QAAQ3B,EAAGmB,GAErBO,EAAKrR,EAAMuR,KAAKlQ,GAAWyP,EAAIA,IAIjC,IAAIU,GAAQP,EAAMvP,OAAS,EAAI+P,EAASJ,EAAI,EAAGJ,EAAOA,EAAM,GAAIF,EAAOpB,EAAGkB,KAG1E,OAAO,IAAIF,IACTzQ,KAAMsR,EACNvL,KAAMiJ,EAAM+B,GACZ7Q,SAAU0Q,KAKVW,EAAW,SAAUC,EAAGC,EAAO/R,EAAGP,EAAGuS,EAAIC,EAAIhB,GAE/C,GAAIiB,KAEJ,IAAIH,IAAU/R,EAAE8B,OAAS,EAEvB,IAAK,GAAIpD,GAAI,EAAGA,EAAIe,EAAGf,IAErBwT,EAAGxT,GAAKuS,EAAUa,EAAEG,EAAID,EAAGtT,IAAMoT,EAAEE,EAAGtT,GAAIuT,OAK5C,KAAK,GAAIE,GAAI,EAAGA,EAAI1S,EAAG0S,IAErBD,EAAGC,GAAKN,EAASC,EAAGC,EAAQ,EAAG/R,EAAGA,EAAE+R,EAAQ,GAAIC,EAAGG,GAAIF,EAAIhB,EAG/D,OAAOiB,GAGT,OAAOlB,GA3ET,GAAI1B,GAAQ/Q,EAAoB,GAAG+Q,KA8EnCrR,GAAQgB,KAAO,cACfhB,EAAQD,QAAUA,GAKZ,SAAUE,EAAQD,EAASM,GASjC,QAASP,KAWP,QAASoU,GAASnS,EAAMoS,GACtB,GAA+BzP,SAA3B0P,EAAiBrS,GAInB,KAAM,IAAIqD,OAAM,yBAA2BrD,EAAO,oBAHlDqS,GAAiBrS,GAAQoS,EAmB7B,QAASE,GAASC,EAAMC,EAAMC,GAC5B,GAAI5S,EAAewS,EAAkBE,EAAKvS,MAAO,CAC/C,GAAIoS,GAAkBC,EAAiBE,EAAKvS,KAC5C,OAAOoS,GAAgBG,EAAMC,EAAMC,GAEhC,GAA6B,kBAAlBF,GAAKG,UAChB7S,EAAe0S,EAAM,YAMxB,KAAM,IAAIlP,OAAM,sCAAwCkP,EAAKvS,KAAO,IAHpE,OAAOuS,GAAKG,SAASF,EAAMC,GAvC/B,GAAIJ,KA8CJ,QACEF,SAAUA,EACVG,QAASA,GApDb,GAAIzS,GAAiBvB,EAAoB,GAAGuB,cAwD5C7B,GAAQD,QAAUA,GAKZ,SAAUE,EAAQD,EAASM,GAEjC,YASA,SAASP,GAASiC,EAAMC,EAAQC,EAAMC,GAEpC,GAAI2Q,GAAc9Q,EAAK8Q,YAgBnB6B,EAAc,SAAU9C,EAAGC,EAAGtO,GAEhC,GAAI0P,GAAQrB,EAAEsB,MACVC,EAAQvB,EAAEwB,MACVC,EAAMzB,EAAE0B,UAERqB,EAAQ9C,EAAEqB,MACV0B,EAAQ/C,EAAEuB,MACVyB,EAAMhD,EAAEyB,UAERwB,IAGJ,IAAI3B,EAAMvP,SAAWgR,EAAMhR,OACzB,KAAM,IAAI0E,GAAe6K,EAAMvP,OAAQgR,EAAMhR,OAG/C,KAAK,GAAI9B,GAAI,EAAGA,EAAIqR,EAAMvP,OAAQ9B,IAAK,CAErC,GAAIqR,EAAMrR,KAAO8S,EAAM9S,GACrB,KAAM,IAAIiT,YAAW,iCAAmC5B,EAAQ,0BAA4ByB,EAAQ,IAEtGE,GAAMhT,GAAKqR,EAAMrR,GAInB,GAAIkR,GAEAO,EAAKhQ,CAGU,iBAAR8P,IAAoBA,IAAQwB,IAErC7B,EAAKK,EAELxB,EAAI3P,EAAMsR,QAAQ3B,EAAGmB,GAErBO,EAAKrR,EAAMuR,KAAKlQ,GAAWyP,EAAIA,IAIjC,IAAIU,GAAQoB,EAAMlR,OAAS,EAAI+P,EAASJ,EAAI,EAAGuB,EAAOA,EAAM,GAAI7B,EAAO0B,KAGvE,OAAO,IAAI9B,IACTzQ,KAAMsR,EACNvL,KAAM2M,EACNxS,SAAU0Q,KAKVW,EAAW,SAAUC,EAAGC,EAAO/R,EAAGP,EAAGuS,EAAIC,GAE3C,GAAIC,KAEJ,IAAIH,IAAU/R,EAAE8B,OAAS,EAEvB,IAAK,GAAIpD,GAAI,EAAGA,EAAIe,EAAGf,IAErBwT,EAAGxT,GAAKoT,EAAEE,EAAGtT,GAAIuT,EAAGvT,QAKtB,KAAK,GAAIyT,GAAI,EAAGA,EAAI1S,EAAG0S,IAErBD,EAAGC,GAAKN,EAASC,EAAGC,EAAQ,EAAG/R,EAAGA,EAAE+R,EAAQ,GAAIC,EAAGG,GAAIF,EAAGE,GAG9D,OAAOD,GAGT,OAAOU,GAjGT,GAAIM,GAAO3U,EAAoB,IAC3BiI,EAAiBjI,EAAoB,GAErCuC,EAASoS,EAAKpS,MACHA,GAAOqS,QAgGtBlV,GAAQgB,KAAO,cACfhB,EAAQD,QAAUA,GAKZ,SAAUE,EAAQD,EAASM,GAEjC,YAYA,SAASiI,GAAe4M,EAAQC,EAAUC,GACxC,KAAMjV,eAAgBmI,IACpB,KAAM,IAAI7C,aAAY,mDAGxBtF,MAAK+U,OAAWA,EAChB/U,KAAKgV,SAAWA,EAChBhV,KAAKiV,SAAWA,EAEhBjV,KAAKkV,QAAU,wBACVvS,MAAM2F,QAAQyM,GAAW,IAAMA,EAAOvO,KAAK,MAAQ,IAAOuO,GAC3D,KAAO/U,KAAKiV,UAAY,MAAQ,KAC/BtS,MAAM2F,QAAQ0M,GAAa,IAAMA,EAASxO,KAAK,MAAQ,IAAOwO,GAC/D,IAEJhV,KAAKmV,OAAQ,GAAKlQ,QAASkQ,MAG7BhN,EAAe3G,UAAY,GAAIoT,YAC/BzM,EAAe3G,UAAUqQ,YAAc+C,WACvCzM,EAAe3G,UAAUZ,KAAO,iBAChCuH,EAAe3G,UAAU4T,kBAAmB,EAE5CvV,EAAOD,QAAUuI,GAKX,SAAUtI,EAAQD,EAASM,GAEjC,YAMA,SAASP,GAASiC,EAAMC,EAAQC,EAAMC,GAUpC,GAAIsT,GAActT,EAAM,eAEtBuT,mBAAoB,SAAU/R,EAAGoE,GAC/B,MAAOpE,KAAMoE,GAGf4N,iBAAkB,SAAUhS,EAAGoE,GAC7B,MAAOpE,KAAMoE,GAAKD,EAAYnE,EAAGoE,EAAG9F,EAAO+F,UAG7C4N,uBAAwB,SAAUjS,EAAGoE,GACnC,MAAOpE,GAAEkS,GAAG9N,IAAM+N,EAAenS,EAAGoE,EAAG9F,EAAO+F,UAGhD+N,qBAAsB,SAAUpS,EAAGoE,GACjC,MAAOpE,GAAEqS,OAAOjO,IAGlBkO,mBAAoB,SAAUtS,EAAGoE,GAC/B,MAAOpE,GAAEqS,OAAOjO,IAGlBmO,aAAc,SAAUvS,EAAGoE,GACzB,IAAKpE,EAAEwS,UAAUpO,GACf,KAAM,IAAI1C,OAAM,2CAElB,OAAOoQ,GAAY9R,EAAE7C,MAAOiH,EAAEjH,QAGhCgC,iBAAkB,SAAUa,EAAGoE,GAC7B,MAAOpE,KAAMoE,IAIjB,OAAO0N,GA/CT,GAAI3N,GAAcxH,EAAoB,GAAGwH,YACrCgO,EAAiBxV,EAAoB,GAiDzCN,GAAQD,QAAUA,GAKZ,SAAUE,EAAQD,EAASM,GAEjC,YA6IA,SAAS8V,GAAa7S,EAAOe,GAC3B,GAAIvB,MAAM2F,QAAQnF,GAAQ,CAGxB,IAAK,GAFDuD,GAAM,IACNwB,EAAM/E,EAAMM,OACPpD,EAAI,EAAGA,EAAI6H,EAAK7H,IACd,GAALA,IACFqG,GAAO,MAETA,GAAOsP,EAAY7S,EAAM9C,GAAI6D,EAG/B,OADAwC,IAAO,IAIP,MAAO9G,GAAQsC,OAAOiB,EAAOe,GAxJjC,GAAI+R,GAAe/V,EAAoB,GAAGgC,OACtCgU,EAAkBhW,EAAoB,KAAKgC,MAO/CtC,GAAQkV,SAAW,SAASpU,GAC1B,MAAwB,gBAAVA,IAQhBd,EAAQuW,SAAW,SAASC,EAAMC,GAChC,GAAIC,GAAQF,EAAK3S,OAAS4S,EAAO5S,OAC7B8S,EAAMH,EAAK3S,MACf,OAAQ2S,GAAKpF,UAAUsF,EAAOC,KAASF,GAsCzCzW,EAAQsC,OAAS,SAASxB,EAAOwD,GAC/B,GAAqB,gBAAVxD,GACT,MAAOuV,GAAavV,EAAOwD,EAG7B,IAAIxD,GAASA,EAAM2Q,eAAgB,EACjC,MAAO6E,GAAgBxV,EAAOwD,EAGhC,IAAIxD,GAASA,EAAM8V,cAAe,EAChC,MAAKtS,IAAgC,YAArBA,EAAQuS,SAMf/V,EAAMiG,WAJLjG,EAAMiB,EAAIjB,EAAMU,EAAK,IAAMV,EAAMC,CA