1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[35],{1269:function(t,e,n){t=n.nmd(t);var i,r,s=function(t){"use strict";var e=new tG,n=t.bigInt,i=t.bigDec;i.set({precision:250});var r={},o=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083],a={},u={callPeekers:!1,init_primes:1e3,exclude:[],suppress_errors:!1,PARSE2NUMBER:!1,SAFE:!1,IMAGINARY:"i",FUNCTION_MODULES:[Math],ALLOW_CHARS:["Ï"],USE_MULTICHARACTER_VARS:!0,POWER_OPERATOR:"^",VALIDATION_REGEX:/^[a-z_αAβBγÎδÎϵEζZηHθÎιIκKλÎμMνNξÎoOÏÎ ÏPÏΣÏTÏ
ÏÏΦÏXÏΨÏΩâ][0-9a-z_αAβBγÎδÎϵEζZηHθÎιIκKλÎμMνNξÎoOÏÎ ÏPÏΣÏTÏ
ÏÏΦÏXÏΨÏΩ]*$/i,IMPLIED_MULTIPLICATION_REGEX:/([\+\-\/\*]*[0-9]+)([a-z_αAβBγÎδÎϵEζZηHθÎιIκKλÎμMνNξÎoOÏÎ ÏPÏΣÏTÏ
ÏÏΦÏXÏΨÏΩ]+[\+\-\/\*]*)/gi,ALIASES:{Ï:"pi","â":"Infinity"},POSITIVE_MULTIPLIERS:!1,CACHE:{},SILENCE_WARNINGS:!1,PRECISION:21,EXPRESSION_DECP:19,DEFAULT_DECP:16,VECTOR:"vector",PARENTHESIS:"parens",SQRT:"sqrt",ABS:"abs",FACTORIAL:"factorial",DOUBLEFACTORIAL:"dfactorial",LONG_PI:"3.14159265358979323846264338327950288419716939937510582097494459230781640628620899862803482534211706798214808651328230664709384460955058223172535940812848111745028410270193852110555964462294895493038196",LONG_E:"2.71828182845904523536028747135266249775724709369995957496696762772407663035354759457138217852516642742746639193200305992181741359662904357290033429526059563073813232862794349076323382988075319525101901",PI:Math.PI,E:Math.E,LOG:"log",LOG10:"log10",LOG10_LATEX:"log_{10}",MAX_EXP:2e5,SCIENTIFIC_MAX_DECIMAL_PLACES:14,SCIENTIFIC_IGNORE_ZERO_EXPONENTS:!0};!function(){u.CACHE.roots={};for(var t=2;t<=40;t++)for(var e=2;e<=40;e++){var i=n(t).pow(e);u.CACHE.roots[i+"-"+e]=t}}();var l=r.N=1,c=r.P=2,f=r.S=3,h=r.EX=4,p=r.FN=5,m=r.PL=6,v=r.CB=7,g=r.CP=8,d=u.CONST_HASH="#",w=u.PARENTHESIS,y=u.
1SQRT,b=u.ABS,M=u.FACTORIAL,E=u.DOUBLEFACTORIAL,N=[],S={},A=[],x=[],O=function(t,e){if(!u.suppress_errors){if(e)throw new e(t);throw Error(t)}},I=function(t){var e=function(e){this.name=t,this.message=void 0!==e?e:"";var n=Error(this.message);n.name=this.name,this.stack=n.stack};return e.prototype=Object.create(Error.prototype),e},R=function(t){return -1!==A.indexOf(t)},q=function(t){for(var e=t[0],n=1,i=t.length;n<i;n++)if(!t[n].equals(e))return!1;return!0},C=function(t){x.push(t),u.SHOW_WARNINGS&&console&&console.warn&&console.warn(t)},P=function(t,e){if(e=e||"variable",-1===u.ALLOW_CHARS.indexOf(t)&&!u.VALIDATION_REGEX.test(t))throw new tI(t+" is not a valid "+e+" name")},T=function(t){var e=Math.sign(t);if(t=Math.abs(t),/\d+\.?\d*e[\+\-]*\d+/i.test(t)){var n=String(t).toLowerCase().split("e"),i=n.pop(),r=Math.abs(i),s=i/r,o=n[0].split(".");if(-1===s)r-=o[0].length,t=r<0?o[0].slice(0,r)+"."+o[0].slice(r)+(2===o.length?o[1]:""):"0."+Array(r+1).join("0")+o.join("");else{var a=o[1];a&&(r-=a.length),t=r<0?o[0]+a.slice(0,r)+"."+a.slice(r):o.join("")+Array(r+1).join("0")}}return e<0?"-"+t:t},_=function(t){for(var e=Math.floor(Math.sqrt(t)),n=2;n<=e;n++)if(t%n==0)return!1;return!0},L=function(t){return/^\d+\.?\d*$/.test(t)},U=function(t){return D(t)?U(t.multiplier.toDecimal()):t%1!=0},D=function(t){return t instanceof tF},k=function(t){return t instanceof tD},B=function(t,e,n){if(n=n||{c:[],add:function(t){-1===this.c.indexOf(t)&&isNaN(t)&&this.c.push(t)}},D(t)){var i=t.group,r=t.previousGroup;if(i===h&&B(t.power,e,n),i===g||i===v||r===g||r===v)for(var s in t.symbols)B(t.symbols[s],e,n);else if(i===f||r===f)"e"===t.value||"pi"===t.value||t.value===u.IMAGINARY||n.add(t.value);else if(i===m||r===m)B(Q(t.symbols),e,n);else if(i===h)isNaN(t.value)||n.add(t.value),B(t.power,e,n);else if(i===p&&!e)for(var o=0;o<t.args.length;o++)B(t.args[o],e,n)}return n.c.sort()},F=function(t,n){t=e.expand(t),n=n||{};var i=function(t,i){n[t]||(n[t]=new tF(0)),n[t]=e.add(n[t],i.clone())};return t.each(function(t){if(t.isConstant("all"))i("constants",t);else if(t.group===f)i(t.value,t);else if(t.group===p&&(t.fname===b||""===t.fname))F(t.args[0]);else if(t.group===h||t.group===p)throw Error("Unable to separate. Term cannot be a function!");else i(B(t).join(" "),t)}),n},G=function(t){return t instanceof tV},j=function(t){return t instanceof tZ},X=function(t){return t instanceof tz},V=function(t){return t.group===l||t.group===c},Z=function(t){return Array.isArray(t)},z=function(t){return/^[-+]?\d+e?\+?\d*$/gim.test(t.toString())},H=function(t){return D(t)&&(t=t.multiplier),t.lessThan(0)},$=function(t){return t?String(t):t},Y=function(t){return"("+t+")"},W=function(){var t=[].slice.call(arguments);return t.shift().replace(/{(\d+)}/g,function(e,n){var i=t[n];return"function"==typeof i?i():i})},J=Object.keys,Q=function(t,e,n){for(var i in t)break;return e?i:n?{key:i,obj:t[i]}:t[i]},K=function(t,n,i){return(P(t),R(t))?null:(n=n||B(e.parse(i)),e.functions[t]=[e.mapped_function,n.length,{name:t,params:n,body:i}],i)},tt=function(t){return Math.min.apply(void 0,t)},te=function(t,n,i){if(n=String(n),t.group===g){var r,s,o,a,u=e.expand(t.clone()).stripVar(n);r=e.subtract(t.clone(),u.clone()),a=u}else r=t.clone();return(s=r.stripVar(n),o=e.divide(r.clone(),s.clone()),a=a||new tF(0),i)?{a:s,x:o,ax:r,b:a}:[s,o,r,a]},tn=function(t,e){return z(t)?t>=Number.MAX_VALUE?t.toString():Number(t):Math.round(t*Math.pow(10,e=void 0===e?14:e))/Math.pow(10,e)},ti=function(t,e){if(Z(t))for(var n=t.length,i=0;i<n;i++)e.call(t,i);else for(var r in t)t.hasOwnProperty(r)&&e.call(t,r)},tr=function(t){return t%2==0},ts=function(t){return 1/(t%1)%2==0},to=function(t){for(var e=t.length,n=[],i=0;i<e;i++){var r=t[i];-1===n.indexOf(r)&&n.push(r)}return n},ta=function(t,e){var n=typeof e;("function"!==n||"undefined"===n)&&(e=function(t,e){return t===e});for(var i=[];t.length;){var r=t[0];if(1===t.length){i.push(r);break}var s=[];i.push(r);for(var o=1;o<t.length;o++){var a=t[o];e(r,a)||s.push(a)}t=s}return i},tu=function(t){var e=function(t){-1===A.indexOf(t)&&A.push(t)};"string"==typeof t?e(t):ti(t,function(t){e(t)})},tl=function(t,e){var n;return Z(t)?n=t.splice(e,1)[0]:(n=t[e],delete t[e]),n},tc=function(t,e,n,i){var r=u[t];u[t]=void 0===n||!!n;var s=e.call(i);return u[t]=r,s},tf=function(t){return[].slice.call(t)},th=function(t,n){return tc("PARSE2NUMBER",function(){return e.parse(t,n)},!0)},tp=function(t){if(Z(t)){for(var n=new tV([]),i=0;i<t.length;i++)n.elements.push(tp(t[i]));return n}return D(t)?t:e.parse(t)},tm=function(t){for(var e=o[o.length-1]||2,n=e;n<t;n++)_(n)&&o.push(n)},tv=function(t){for(var e=0;e<t.length;e++)if(t[e].group!==l)return!1;return!0},tg=function(t){for(var e=0;e<t.length;e++)if(!(t[e].isPi()||t[e].isE())&&!t[e].isConstant(!0))return!1;return!0},td=function(t,n,i){(n.isComposite()&&!t.isComposite()||n.isLinear()&&!t.isLinear())&&([t,n]=[n,t]);var r=new tF(0);return t.isLinear()?t.each(function(t){if(n.isComposite())n.isLinear()?n.each(function(n){var s=e.multiply(e.parse(t),e.parse(n)),o=e.expand(e.parse(s),i);r=e.add(r,o)},!0):r=e.add(r,e.multiply(t,e.parse(n)));else{var s=e.multiply(e.parse(t),e.parse(n));r=e.add(r,e.expand(s,i))}},!0):r=e.multiply(t,n),r},tw=I("DivisionByZero"),ty=I("ParseError"),tb=I("UndefinedError"),tM=I("OutOfFunctionDomainError"),tE=I("MaximumIterationsReached"),tN=I("NerdamerTypeError"),tS=I("ParityError"),tA=I("OperatorError"),tx=I("OutOfRangeError"),tO=I("DimensionError"),tI=I("InvalidVariableNameError"),tR=I("ValueLimitExceededError"),tq=I("NerdamerValueError"),tC=I("SolveError"),tP=I("InfiniteLoopError"),tT=I("UnexpectedTokenError"),t_={csc:function(t){return 1/Math.sin(t)},sec:function(t){return 1/Math.cos(t)},cot:function(t){return 1/Math.tan(t)},acsc:function(t){return Math.asin(1/t)},asec:function(t){return Math.acos(1/t)},acot:function(t){return Math.PI/2-Math.atan(t)},erf:function(t){var e=1/(1+.5*Math.abs(t)),n=1-e*Math.exp(-t*t-1.26551223+e*(1.00002368+e*(.37409196+e*(.09678418+e*(-.18628806+e*(.27886807+e*(-1.13520398+e*(1.48851587+e*(-.82215223+.17087277*e)))))))));return t>=0?n:-n},diff:function(t){return function(e){return(t(e+.001)-t(e-.001))/.002}}
1,median:function(...t){t.sort(function(t,e){return t-e});var e=Math.floor(t.length/2);return t.length%2?t[e]:(t[e-1]+t[e])/2},fromContinued:function(t){for(var e=t.fractions.slice(),n=1/e.pop(),i=0,r=e.length;i<r;i++)n=1/(e.pop()+n);return t.sign*(t.whole+n)},continuedFraction:function(t,e){e=e||20;for(var n,i,r=Math.sign(t),s=Math.abs(t),o=Math.floor(s),a=s-o,u=0,l=!1,c={whole:o,sign:r,fractions:[]};!l&&0!==a&&!((i=Math.floor(n=1/a))>1e7&&t_.fromContinued(c)-t<=Number.EPSILON);)c.fractions.push(i),((a=n-i)<=1e-14||u>=e-1)&&(l=!0),u++;var f=c.fractions.length-1;return 1===c.fractions[f]&&(c.fractions.pop(),c.fractions[--f]++),c},bigpow:function(t,e){t instanceof tB||(t=tB.create(t)),e instanceof tB||(e=tB.create(e));var n=new tB(0);if(e.isInteger())n.num=t.num.pow(e.toString()),n.den=t.den.pow(e.toString());else{var i=tB.create(Math.pow(t.num,e.num)),r=tB.create(Math.pow(t.den,e.num));n.num=t_.nthroot(i,e.den.toString()),n.den=t_.nthroot(r,e.den)}return n},gamma:function(t){var e=[.9999999999998099,676.5203681218851,-1259.1392167224028,771.3234287776531,-176.6150291621406,12.507343278686905,-.13857109526572012,9984369578019572e-21,15056327351493116e-23];if(t<.5)return Math.PI/(Math.sin(Math.PI*t)*t_.gamma(1-t));t-=1;for(var n=.9999999999998099,i=1;i<9;i++)n+=e[i]/(t+i);var r=t+7+.5;return Math.sqrt(2*Math.PI)*Math.pow(r,t+.5)*Math.exp(-r)*n},bigfactorial:function(t){for(var e=new n(1),i=2;i<=t;i++)e=e.times(i);return new tB(e)},bigLog:function(t){var e
vendor: 134,953 bytes, line 1
1=["-253631954333118718762629409109262279926288908775918712466601196032/39970093576053625963957478139049824030906352922262642968060706375","0","24553090145869607172412918483124184864289170814122579923404694986469653261608528681589949629750677407356463601998534945057511664951799678336/35422621391945757431676178435630229283255250779216421054188228659061954317501699707236864189383591478024245495110561124597124995986978302375","369017335340917140706044240090243368728616279239227943871048759140274862131699550043150713059889196223917527172547/335894053932612728969975338549993764554481173661218585876475837409922537622385232776657791604345125227005476864000","24606853025626737903121303930100462245506322607985779603220820323211395607931699126390918477501325805513849611930008427268176602460462988972957593458726734897129954728102144/17750092415977639787139561330326170936321452137635322313122938207611787444311735251389066106937796085669460151963285086542745859461943369606018450213014148175716400146484375","399073568781976806715759409052286641738926636328983929439450824555613704676637191564699164303012247386095942144825603522401740680808466858044/247958349743620302021733249049411604982786755454514947379317600613433680222511897950658049325685140346169718465773927872179874971908848116625","1468102989495846944084741146947295378041808701256909016224309866143294556551407470861354311593351276612463858816796714569499021375899793849136855085849133702029337910502448189055357182595424959360/819363879309286303497217527375463120404739098260200279520788950777458900438307356738082930586032462601215802636320993648007907724899611296693997216938989854861043298494990214825163523387600982777","5896704855274661767824574093605344871722790278354431422729640950821239030785642943033153793245906863203822369276271050164634206965056233097479117980782641839669/3030306850569309344013726745100070601277982132543905537366562638553198167007159067544789592089960911065181606283478843359856123992707598685058297067179343872000","76631772943534985713873427262830314617912556928476573358548256872141516989538374761909611879922349479420014771499018155447198112155515453671128814488139633810493264352294560043912066253026059140653027326566801398784/36852092933388988649396042883218509607503204211148493545892849595498822817623842579026942621098851631842754395231561679671400197056377380063233740202370686144673585955581403046886083948450136247134308381940165804875","3159076083816399509754948610929467278257473888282947311280653574634802580912280940686954763313882823327077171624015737719617373932318151594325834524000275847475866299387913048/1437757485694188822758304467756419845842037623148461107362957994816554782989250555362514354661961482939226272309026092009962414616417412938087494467254146002233028411865234375","22266067259907364984531611601870291368272674573653403965630628996687370994139884833897773468149149664829922302484782423514167405397665098388400450149078982462318781750661005833037235183394221496186539779712428265837926417581952/9670030144664428565128962309657100138096047028794689249320859276197340398920725569428532293373676415359965773460364494998334259893079003125373872108770534788283842907318071170285038777091588292539102269617376180390982915567375","14604654564989239958569331443385369522850975185358647132770022716433280072271007767111036877803328768910274400515590151934676819262085211828028638417329558229123989556376108454497813055/6090614019162516693013973409650613208227889078878781039105047015752493519149314227721984436973374032279421344818329285207124280297611253861173835238379831004010748379874393292231671808","1901241885407696031217292877862925220917660047127261026827869027159993239567933534052663335498281439239753018507182016153657409777749792228538380379703411298411623469292891476969894084838876001545818141543890273256985768690847587711270930688/765116019778838839812655402103512685695769161212360553099732689795578904762091216998790589926057819838537805856579109910198553330075924857419395160755642371550113347465300208422126945265887065434116781678702741657275181694851670325469434625","139459806786604751793737926146840623607010208216289543036026206208962059593900745886202214788747453279179283344350478734275973878932538430194363355795823581315329311220701640235653288975569812161436/54371368534412517053056101353618694718215711767266376573138772968257303578467926450212293233332401067673270853953399269852376592855992724934941173346260129257754416412476202526978443681584633116375","1045669091124493070709683241190022970908640501171378776604126771144008324358233819560649021940145166254659028524319517244711645162132513416238958170819347361185944945680269442845829390112062101255500836072082817820950448463314034677353723256969344/396228259004446234921310936915931611736815598535963504660076315228798989932959459406702091180060429080345146735173591749448509810270759531977278642135591672189002006272326131885315743181289970885337574780897529347356567086535505950450897216796875","9912919238915437302006264477931031611447467070103973106567538528951878797932559935860738745374437522819124347510590800370471910492338584284092534264608801221235029062881964101996762011296996851893455828946521/3660537472668264151218961634689665210933936249986285290553357254224360417386515311493310199319523687171757653216994741150377508234317025158302057758196429623723072084157928224798322861732880034847243894784000","9263710175433181746575186369318246002919895649622127410824041370079225200282403368319370743363303164313395723904510539050157032684710468364067204876434546848634842333436957245275217583248805993142227630297924119330553308466662488683624783307023014909360640/3341177182697517248552428837661919299725031035849865632511882688786226888137634168024976033652753689210700218163621739078534353578510364301481093730054725078138658805025014615651043313990684347632166030359086885561104034510990826655289288319840595753002771","5116082230713622171832327542439052727465114322479570603905499496221224653983960598946033081212909066917137546065542953865612718836914393275681318667667521726785633638189373998191090501201427906618075889744489190209584/1805752553736060443820406101277706970767657006346276183748749630179442318063568286372320188433843729960294965366346522303898609655762491623098453269916163621089005711823488749297418113474056676109581110715068124438875","246569125619713282434448566970352231845414317018379160824176638351574938993535464763890962336882760882398479702237564384291290459961036068916857265499633061660562532011248501476114401629839742058389195725393702000011860799793778295606988057303225493814005789533570432/85307063020836305797178273029353623060860009152114361453434032434699636078115114412588719432277441055049132559782203988387794711585368296817222565434951256788867244687081233632650953850383220864394261763844194948389861147622944651546912394593164406926489862036343375","133672026303452911046163998480860917119290576658330909785707604886881155606725822685088929236266583416708668502760907677019598002175122453170574729028452721476464728566191464897928696630979863154661704374206171469014225143/45398130975270785045482567762871405072140548998125471025451666500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","6041693953360002800224091673336562508913199995987479264605216252220579740134601435770085920869376641180763419907442721705887169884230643795126568815123647603047739799302562095542459344811429882053086550900803768964612193941424128649976704727183797495759082741166938351872/2016766992122395667828553277997478570503475626107286343497917705446132017125079612756035254750822860815515899557855166824523851779156336235294914777307802256439645525835223691751931866188957324792276149549076500784191791380803500156776088683900346065830066370370083309875","705868391597244582764749229356331441978820024796066870551110486625729826111158236686696326058778874201639006234449557592353247542995871491078308187261304930042019640830629526023972693107193897009168955674240659026247094657679060/231848642748474339277532000336338632910990823562381469441716922006107433404523316252618490265927265734670539384485699132080062215196462178933963957679882342083893417545858074378754089719547920901917516016346211301054206383643383","101832160604157943093944673541651013907278188571533075311673249923948856034633446617630054761681006062910980371900782781226979391765818325065031889334563981235894369036439929651260587335544056975715076598739977065390678221999918899003881778449092038750712969437519295878491018112/32944277910571666002449086492515464541550138004002141571670657643770713783329063548790202120805341989608877739811787937782240802963962520261844114327432160788193314874913687387269408387417806176202979244637915812905426565263196954203487934225589622864145960079736633434831996625","10655703119271468913597640479490594180964700448340778168715956712130636958373270202484276402718566314881119559090842449610957974112230306343486091910217340665146602598568991520563987490686996746558858366002301982443029430290679385551/3398412687366638541233365137084722368200311117891192348532156645374786104142009695796409107380345795998400850838706661851176885183144928701608654514812261697598380070746520197171576610572921007069104300695592751543563472456384512000","1903039332876763837419920240543738799531131775028971323439870868730321221615515008394327723508670975623498588291298064320786970626232668956372004004897872810230178526101184611242511193415796638694370503100219710864543168952682617801833318493436174387568067811938490953495819438108686336/598806534367503338307287246320963280558134937382149405305466709787179429317914803617527827862441615350396864359976273212272586892074799651088317544101755361439294687323233086696182687664637422796995789967075271448560870681210580691574924544896656175563265378514188341796398162841796875","525573915563826130963525826191411949262846916750432019596028344808298471293378917508549164993368392834023782480702893643486699787870059946429810070222126260200026332874480239090370088123833491499400991181659445914352500247596757005142623368/163278727324937389095822405034435687776345799835442022795533783889356344755225815267819508608559076191292900367982490827396869405536484846115955581043091229202052407483776587687967125885665493681707461345895999542381476164157058393971431375","9263815657177858787273494705338516861045771674838057329170239610953039987023429736752079544014780707408666628475997291124805562998227296677616204140605356257712022384368492575381355563976330347792504605666631512343447560301417325154003481040250148561839861837778597346623630046623751094400/2843321709948499955095590862256744532227698001408929142548057792217790532624003190447363578048562448168721539177458065482170148482375585867230123873178100117094533143052886527452665480614620123764036974180917207421482431983407742154634391264619615289225747664532332469783301704643254076601","407959339726114455622180187758753007349209016396248763075759257357925636039752474207685682218422721827857994768023399625060206708378433960993946156803948655098667156937949174400873748557248801874735834957795040139401560494087476967548060208243867/123780218751812156744401121690996305978134694678934447237402511116731459214498784497436358160964198336874043702652746834763131444030185151143987331404604087778514863973633941401826334750268416015224906056576641018962863645043976537664227639296000","2547676391598917379516698439971914695230548782904479778605691338364453606537643088857116141939170899135026552016969320061900926954008522781162186995856580955090548471448276736878300717869625651893741316530109438876067419826217901657017506157997588944233677467357220316084583383623602865379325184/764562034757392298786420374672266498815021229519853724850874576419885380830752931701831256959159800764672605004880389358601658343203513177084389490286723240185146570925957286083025676875197029662038213216541352875570101363668917766225709569356861275434470568767077844675593176178611021135573625","186545352286463730559933346565311535598243666022232037054735807289501173444103692309735768703898330430135399033529355360391658728987379385732098960609744313878477967971557204207043802935782878745271859468248704012618254203101767841517569443555143252/55399179641621656233589820996143825959365789093262978988289445625153099592463372579496245442338653053662134699646413817866770218574795378644415019944304868289119443774932782235638737888469746745621382139263856603239588594078668393194675445556640625","664884440164786473344854955309049113269357314957985265728106924238588705533437169796551912202931185746193155801905841712503407258166135075966280435780812714252670362202091663287095423712596462690753468682634261029392794173636943978404002804413009590005984736612421172979101972556772005594499779860608/195485517776407145286424460448995460754674039560651791192647586550615878988380153730602665795647187884543361218962125172808792176382956599256188706636727418572541254480798303566840010217729386905041217793614214518363859058348249961790104618910877813067510758225302884815410347238200133693756493703875","2614957283934314904315471338485451166053664494383241929385424599389309215073267052860464009981063483440201193771607520572077231889699858482582363845275452280606276949653970992719332472370351170732899676316967244504534154616036371979031399425846100527685/761493664432749089312665480773496290658029971027686543404885407644062485746072719559288231362060149626237939029641098328278650939665665969011529293869562636656650999759724704272743235210867676873525147820749560155294022488994426729939894753293900972032","124843380518493746761140367283007507854364503961156704095198010255465940085534099747297600085903814014415830785663764373057896014399822131175202342399536439284123918855893825207202244831315575594886675813256448846863723093240955901916229136393454605455444105444987028391748121054399538064686074523506176/36022228212051654395480210378626648518430280334458144892889271272122662467638331091863215146548048144675657239846337165813938424387499358852301016926312083940212100001220180762189978024821166744964908871443681332664798940660421469519997746775275873085770018269706847741064037876137315001228315806659875","827992369063043155578730871896750570951766628472810506926098505028264552046829097082095665194000002802661600196840639204300804225352337632259980703832713031790922485730615305441309917696044954289187837653933158950774246017223571461858939407386087081525130831392/236805932823686534991153393869288530368011574665859226704279685567723830696754821658770176385138917722808377962346690757191122309876922069867472518117628639913077442806147910884267694879089753138429767401700283014143248445966474839193628309668702223994071394625","17347276886878323736540051321582548724378497839789943634071026331001588645519865992773157565595886250230140452154269197770615097377486013097979087647774513500701793885978192218455687078883766086309728287172567466406449372659680040183273634701092561727514713494914793425407149186041796935055187281744386432/4919325621804683623339606849970832094714371903709195539440424738973575902329797546592497378000858196173718145883783709223158260700365224756081275272021856393735663399552166737690038832550853145831185979094979556715294990257315369124065787473707136464772247917156232366320267601622617803514003753662109375","137984231830526866236186357461458917020538108058615632801298091031540729111527734872044790487396302545910108285921421417358113055522725197998483383380192391312304647004240060970929072498293210057120617332323445379424867965764749534125081131327565507524502163460761/38810445792642817561168950890315210470940006613819790543653745327778579787694809782601777514116858514049585074667085399925278459138508514838268321349069481334967221455722811414399738756151414906092225265355449011152267068726417045644222323488445626292574879744000","746567120547823334914136339633766098626636643449144032626270358619125402826113269699709721071135471625588981126637674402048519990010499180844665151971356149292818375448504122545400227696621572263621729512461528550588108384619064912224884465737417596190735966915167530332762203074440688676123756162572829692160/208334337057923929636884170505570363171441147899816815785150954417598643614152856767186132467069365605496210036171429712485182162940460120834349006784956522600679357307849981862006710239311750261522832996877712350330290831638640913932265004107623954913155144975252743257846945609734368518424172846119306643431","64649371728330695076928013661001819989330953381731372450140483779536126948957993261299287753791770622512248630224724990234903928056275080682537641377393210728546364176267034339221558641084730052304770498929958838997239635790469536857863963589118888238069738647239076/17903951498200212327802847425913723358452100686246224008745414214690047078122925247086521362329833307849817944645647750649290248110509395628305970523384831671737569872597295947593410067364379687588919135621621162007748635920864926867870502568935739725312687094047375","2454918942158003099688922026016393688092399295166304634317616773083386087532869193458590448918958337530406410803840837646465522656670050113548208618655070231274778592766244282964463702354872753657766121825196898916725498553882689210280080206627916046484942827487726300822318764058084323314109595329304407466188383616/674880185931325925966586583820010578979699141814417326552629206140252348822939845006845669570885271576698771404162512001549922909048916000017837898649100825976232784446638776021483802989797501705685620612986771521390439936066527738682396560462899753657942715306792783283782238662155922082005591512296007820682995125","74018558041066162916454010680594042518462756234254788158141115244349044958441521749277686851928706433556285971088455226217644009628399441967508838553345152310730562224910795446341601049647392069373970101491741830623078126344928804029524181578945586663110848142571149861/20204153620006780689923328634586091101021423979622170579036140596085566172775051595588438592742563923428900864000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","2127032036758045513335690185608563023954009095206088224487365541995326714285119384743928987635752931664240752323937321097955456543854943206092931247498833001499955456190701695430459583885125382086777607021670447795321669948733328973350279846928613949120929250312666393359442423066212311060931469017737106028339882830848/576612418511902928757340062840968526862381326698309578771238715462180282212422302261044980131594522407066369222998903808960617461164985318633518680304995784614308979881735537678182134128319596636920719106506829571072447362052319438091347699720147003209417806230149598345068078717948025207635448205253184540936478445125","35289653975561083576641954928762116897061274899517309102784750384002335187117263273488751066569234386120759866204372398611196356888479036949053282301027789530999737306501029700128744408015642211359442183943916106790666114870974212159410284751571905275610921784716184508440/9503006066880728386808143045924119024212377150217533250562188228062174064693375135306438120385877320162710918716613546077156389583384656340709638430674364232343609717735574035535102953482366914421205216675248471695111720986346092738728929878538430662191272737183832556131","102633551023964794485575491065909467125458972250222581133681080524371507544152979467328048718122409841060527545925136196267751819689935599599321090571687632103850847605493223603751038996548520557330016046032671961857623066292962260173840972332108111505971231021442896036760967107060309991355545554631003681544611731245475968/27459658121882266328752886605529964804078316737648012166874496015808620265471203512606463219297059547428855195782384236337998738233668399173746663289852416697917397644234441300570212555870401420579737973722145663287124151049692290432756231390864184491891697469874600345958989433125942336757049639797225309327019275689074625","10034393558388390065766795008210457368713365491566387292163814915435906649268119060550511145023450790393353937124495488860451123302412204483570913557762460385297770427946219119911920640306914453207097103853766023934602534502476962159682750262143380527529536498215384467975023/2667919902603322771586358077760621955455470781865624844984169443739075976572061827709528710108877015489050369589117491611045518221354793418884447632063538994046714401229510497599783726376490260140723032102883617341970952663947646017489439179953454964374887388652792446976000","248528145263843375390386172800048509380966183384567983242213959113927668429802237067505890436957693495616107089384741585283620097982859345081736730899912519273262934785992235852866637878831878448348444611412764161078458068549719800733237024285525816723480868704742804077255242682077291713092790250511567621735004237450946304/65676865669148624809340872151906045781446981664561196686217551358486802274698228825404698950974939545099727242259547145392352658637333562345477931951890984276718673618736565926663528625796412420753961231404680876558659735251469326707567479071881966875336951133475135427640218972722939427821842173216282390058040618896484375","7805448718805635696495809414501206964843262114470109146341305656318015059743127114324245035489577134938579856003956861881125856595981500593426840968087618241785931128978516340812066502964561231235073012672356530509663384739132686548934288703179479011016719045530855033205271548/2050525178024039744126592505352202216905491833360272553169520915020715464206141942151086176509423406413311520838568324134077402841030113427309725873344806030836314500267104070131451720947531994814710189000076651895520222646974590481497382830325485174899169093049299764813276375","3355325071293197839434119105039673324264765809771192815982246040415580387729382404624613875653005261578877047405365032178619450963731719777167015959920645055600439987161800547901539269321100559393048973255388860193948274255340335876890491746900991668165565729269698196233805991206691196045182214641935483083662356666996922240/876402579119117579582569839757462461050855174353108858954282915644790659429341853404829661899850841645529640454766173209897510988090318303454542547519850473808789222552969933222203420847859171250332350076509996295844203965564448154484566493395403967626596213792922784509892086361572955175655987334882030766001799867659814117","218871061991045868372866381545267589365410350294028138778572466235486397478028823720846191998825628156716190463263492304639890659254282445466806224943413446008645087186307985343574807361972238230520975439736199291019544576443791916302825193643774360055545186783819367378492631806297/56849560726416896431557940314760680962653658127458002233782028041537121216487790008085876994020812492987733987414743604239935223783349870516284048368761617736127892160849065895223288023531930411718807065209903593668117085505482007061969339237404945180379460053180570404846043136000","5008685108365226931582937964451700746853986170633433728409171904803795018146152804690759530990140552460596075588463394200510044617816085275660078502126507209302951286606953039953843685800941558212440519542602092919776366067720586295390886070120828199562643208637974347390938772070049344991272621102622931576339988103674070876518912/1293888539680354282541277646947380627241979967611883341823378331667976045287311988103163380651334828012840330710760757271860219584371109472132211215957402251594055009937397184768184517621978947384029376766290498101728971145633139541827544539988344772578184316843734267915665730981857376872622787627370859411909330227080697966353375","15388340113525711660227566446101909585796746979396093776960989868457211684028149502578116456785221720682202816140911944661051001675127262774824593420825587319436537346311831003212424497488485098543512314062112948777572038731823948224734505930748371522309451168088057190162878224801232/3954220582960831691377435160890656173654063611768428458807273708040518769541211737927975894584024448193835165167801976423275767590502552964407494549049777006346189436817215329891530811451811864579644894987864267389290848598289794977382504890216219362031324635609053075313568115234375","5099039333987561374222193551155323470675617979816941646196895589439391685938046865391119484510329634015275893520725135141878751153360264368353595348921951280561029028912953500944814771064409611917475818956659775131751121312316084465321917769679881052144364834485866477379437705913911371481828140817759401117780199246301705600020671104/1303503600297679371136943454060319958680553228879031326679449263682048703103464872914972900105569835004878963701599765030590097739639045890060548760692125546754294514068052902543220382104483822438283040090444827980927544440984823535260277595466339403795403200720622852069244768910603820007632395190204569927612348189089161551951106625","4902837141334073026145827027361937996261324349722726869116185158777439337041263482852376194988371853413467559557923410949898048139830183335197992754748294810838187068126867611615800383834975563313220497573778480109264178673389149671194149749735833378557143135481387904961537942569904075/1247045310545991266291285730016853118981099516935251861146038369985109288084420528171217942065832292739130145780833406014673689119563698528225048800794718789218267628507713621235056538202070171596177775095071513194885568843375526804796016261173388452184505503341132236719484809714335744","38114743522716832107917466438257616720476488812538316101658139632867788464381862291240727309611460187159930652186486096300862388591521625093237019662273764387591494074792574929490381910446287947994150655077877204446864004067956087975012773988833339521775463977233068498404144221045837190392670308437391686081418318624745039402145439223552/9647001083383999453668111809775451078976046488746916070976218645431946648087171586252172936600115032316383427265217993193444199863138429602138841976586190525451324093772097241349417938578878934577091671046050326087898259692917931230974174799815198493279413438192301437068820185757869608523761456160341754512329264442115351926967120404125","573695055225225727008803730767518906490704995929177617646275646884555707960986625481944101622708415415988844740028718027554452662358957933526173824325955904005404113684003841990198157072540659184995738719040024647370869010473254071681533880576462368600901824622431045529064651675640055917092/144509482511118816399089096021290587489594541280398871255876563615464628718527634679330291741479135415168539765887291789615790513527330600394937614433502341116068305347468133950204152174094704092402978083370792135432486240914953928188835819767755172666693219213868545854371103120604946200875","23876960329653589647925126180903391687666378233201794403339630995420215267415575142266707357255726330536094448314199602616026935251126469221925945960901748679919435908556550271504767784553484434363646489174587463466333864577705745452492395785557425904735048180164697040313528831173448025400634629163795223739061661461986923675833880378496/5986312408594306954013526197465608559068621248896320652512228238115589875514604632230098997609482248000888567135685167138762172475788060284232459813998201719590208742091697294562538265829954186149162974972471533202880368317237508987477069872431064075005305838801862900501819963793062041081601844759452202282545840716920793056488037109375","58168289917567723171226992383559866214094157894992327555495441698028867727845766488121900626912848698952863438654895252811583144479300382761129433911280049009362667380001406579175563745824368613319103673817094498117944856004415812877213722455299491145649879676787079744410765053845551958756701/14517067289347903655500020160671113450349743650636953726251191692074385521975132268313263723831804150872238173602847065423463131917373356798750100313145228608894881457107689499956903046984443545789053438946050974567665049237414588435796381674590098629779384355275820782532479708807512981504000","728621890568281859295409481422447012528302594365693410763821707074444799793690738137592101239862736313347273167450056625929591960610208335290882047413011571781161008296084630072829079783328937418641417642857196346026366370059522990813537731394823630207433267854616768658990289454635793326766697884798538576055949457122067828153655416688640/181030730759516991863708593747964787874073354051675597050399087612142539517308720603687322924426591889179726492403913356461908748733972707460063017057809060190437917851790767968877215795679844983288935075688219234885360839984681619084834228226744165610073685719017596630302462070188937998558312507638434329299017584329479516410907786681093","86855946923438322218622470067224691860808273886184997065663554841573982963995340977083049132518812923329423480393306918856650577072525633920456721265953575424233701929892019410099166322511413146891121248381648145391642571638857576890568882512129960291171866772665863159474602604647289052079991768/21485753507365901947528588896402264670781310878547726104482740647554738151100954835784115119035980523529677083504495839730499664052882400915208251594384038810917282207449860876251558307288700200910747338758723324686939379138206117634546981163355060740270734146780942696291669461182599512320099625","2158989152301022938148680102142188531448821359505188055264665167313418619665693092337665573150374231484840948447637297247277576415460889296724813940128955070240137590073233263168835678714131062764247434144994737610229909964847568491446606012581370840699582055341626266533733744293929658949697805855362114229666626620766245630122333733703618176/531794915405164005613733454597931482878479882704956110685223892325074211694837836221759995948610212818642789132749082430059593652854659130217225506942675608692701447738732031302987802196501895840510235161825501235133794449421919927396142470196961877376701957829921152848178076410141813926924749057304222282687697297216661687583257901415465125","139432548574396829074586704387656697097760057897628994548358619815052936481650396157428747411173567801047221928593253479330480454469358220685854351236980383914223693722868233819483137401339800304943891968050399345430243790898955416907228948287367356990263740207046902209563417267686591994743547621/34201151688775214071963206765436083445901621442002061707492082843232231754829227303539041286301398668437202547003300396162741375435703188500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","11008517174872833286150985180322584448162884832099344969609291070844193524816852920942383850580217443209402836100467940651581092350600329145627967515818684442171571156446321228596914355704205623857871497315955269266498229823278800717909321269179839084452384509142712677235552103459737790674103994445173074670347080506698168482564009465276165824768/2689223396936080856855299215659204161946704205931885125148201643087176556822542895325191478283706585400237901215485150928036895428721912118467760766508162631903585126377676412573187912443878232521444786090510891599171741773242011017926658231638022943018461086517502584854390836347781674626615709751386455292026775663545470794167629144456268750125","16108638074211260588800537540680707641986073914251424878121255234668558067988171568946079848860335948991834525552515669040163026131919804987340113244760738846884911038097907756220945883750502673899084880578229601870882631165510396775126850307838505063922101682333806284668762825609556049426829531780/3919363961344261777100658318137884299575193089462944554282218278496298610828757650104922583359642384253066896538203596057302203635134833545580869871333892935330950583664400555463557735723364497947986885146043017010159347046389604172186788902608216894094289769850517098027486468084407618748895626853","34420755849180279597302103726180110022640946692592540634353734157479505420320000324260530767186132260970572450489530034440214259559325114511265075416512316229177952140217732655405289808326341696986755141965043719344169685611217958619102774617224847284122901023774956887687026904767714958090256282893003000752947427857703259704682455375442735857024/8342030311716679826889917494957593165464748884572298173556257652389845294530325764837124998293398445804458613956489096007564811101361266196542129764287084823604897187311540561857741285793447174119667215803837719660675298308873496219385226998078648428368061868944322478384684509466965129972030932418920415308276430355882329457342937549162000252625","345888075261020004071220843714060353763382280664960929903544964118831237876694384053904571498830068831026644303797377762345709976595360421502594656308937649239978525713471393570536680412814805076323426256584504251728507416368609420882442293831684681071553766603478479006495757222912500012444787804577811/83505703731469734628961395063481893801938371516752417759131774530720075262459158384433785006689548434701904106312038822969658455364219435022841597243178757423598248565463985786213156556523685666430799283870548238467817226915680747412191245046634279766450629886904716776719219698922088211154187845632000","1061717830619177527082296723099890392273896386613997004874669053445943252046748251883532634529759169500795452576392700472771365240996842610207274128102329096619028487369622001737128463631016494371635687841733644339636164570819431573829173533941056258744442930643735587780907310433371453992062647737259587563398111688659657406089003293576961475848704/255359631537215747979895955806995352799574790340218399351168178555478073997876110889483456972687438702262017800167048243754141722496276537685853311434069991222324039005160057724073156957530106623908696241268268096879569794431919729620178375212905203484165745866913773304319069321426245521467122472046370356725530914587807274074293673038482666015625","274122944106300296738399632684955400761495830361663966466225652918683099779465438024846903286816813856490888796372134557295699980528187779624865098445756013563535339056233912394908544185885547842235097677765325396255649207317018754967666450708249125316192200151505568416495274671679500594656671785202496/65687592621976546250581560102201535533608158256953087745856906437400149205693427285162333502528793675585022025602144243543064185647792948495372442630333800126269123531636800213405254045262127593759539706750242430153456891792533267948231185296091297979933562727112487057234422009426868531651634706262125","7842680480716516803148821198697967237136721860017131244266974996267074742248599085253569637183007740566941125452215834642683053334607896723447140851344501084122965014242091312411884985569341166545074688756440728922408743841592658677792796881188604773469108807869960161395759837407978596679911066586626885830991556090978327508459276025943279064965688960/1872528612245648675720382138045071131304652050696842872529163720558126655075937845539792108048310219395746259570506175902206215101518698490144716531697689534559827422735649881381597761684154409796315455445459537515308174919488497154409643876490472215352056502193150125644288086294418253309947229151074464928874881827227706992859640236086417889990541889","5300824422251242070074569186825929119848111723012841627275830216301188228660779008353049603527567784119877706984722171178137272986345560485784907345500893648715341273841147320288851034078863843374665850852481747000237834238703248634174397792745914847774297223176674917912406659831206869442510948965571661/1261140476013707338477604677428573831791396352814802149994640617701773078174882455512668089072441176857892331468691160991310474734143842336092636848492066592397892638052212250229129355009939118431643425836944282456647571558383755315238500832868535816144280088644939696339160092963629012001958205063168000","2220223718762215584659309059880106334425515875615107369399767892051551634000614327272260081056973863669004224981561870246078120862256383581012183852291444462730018546753183156982897386563561418424093883164027305254176874653780425452987066512563140531367766900610414277825262239199580925879453806414860409441845631158680721091621460775043562065815179617536/526383206607841251253861841374779803798480623722760367843070466043030228662340154304405180907941079883976168609082254331465595267209149963786388600028701073430773581228212441424400748220833542964971495005714483235359479470452593264280645360131482713147116366500300066771223383007216182988263355451923333319170174755334598973202740108032097242475554128875","521891797109626296684891455959263713257353500867652268541535940159815152120871142196535233326890353914761242025931373491906127275561002910157909306979093246574207104081108188995072105948138299097848175016082947174156278439986705241571619793059501724269644447572323501261424770743329858038040685313621446524/123310256826873923765604825413207481739886340225713108649758575106598510022338480189649787216845041382860899099250547657534972156328080736149239332330143771138115695598493059325064119176038137294863053148618656356436332991079150723235214278848602671333076219529535123842212129829931654967367649078369140625","66086044538329677372986118727999622900471937619891337714357792768200341519193500393739322894033303245376225584865369486696276607060432449792893028061817203932068085863800494054274423512956136695211796751845295921015953538329385253280866669403169919614982155350899648626481405781514434761541281229159396787287553493046927448595964103589100429722948913403008/15562137339474350565671240515273666798063901504051979980452491653975250630723677279081058884163396938548780856293034775459223871281049026140999055923743471466471830572672766633086347312178711643724485955576579988182546105048041649947277672869613992334541438784737993706482731696809943027528882927942967419447250586964258807454003775693567366165507144866375","335377615394100148751647837967017467711612297170079949298328061159559939969228226474615711044891085626519877634842694983669611974807129333052471799687426665556738316626171408219730853872410792831871526174987402129691897433888027072807302411474690613948951673562473758814664346259109886876538510453475290967835/78715592752271462306588358880337347638000605031000575876214116610339827495261512281635361568951675037834544811575026718101166562072917855004822606752296233435017284127594847656529606648345533195437635894948829857913798336356647286032372695130461573940500785137424365840081503133157308796505622439791698116608","20090879701618729602554170716780970848925039917987945471322994867171660307998603515745066411687983450400412739285577269751603921163835619296822801840348319742203974023505186187060251544248644338412667631232247108675504629538319425769464277309915502144443973397371136256151336255138506001292355330875114245901820438821732843540725116728866301271466614762497024/4700223519410528857298732096729483544820841497820611795617923063440946097326817340637303431283005509904481323205480729806879570430868897342398783028649633951362398196137429076844504529051072393709154483678349272930361110568616112723747726853614661953537957117231900032044221535502745676310313569997665352252492568100075191900969170979460298189170486601502625","2904778979985524171206573028445379872240558084236464200857594814631031581387804621371822074061289363372523364167184697785570324832815972970658633551879143187709707164796663015180877412717910872234647704536817108676736661804878068078543241390828229923424191204586313620612539678930999769543756218765870513049986792/677408099044823641581658869221044375312077929976719183424865834811543737800956896926637625166844372424044003929341361734886232742770909683021563822987505236295727478159938135467975522336774471915167606673489722102077041330652185811196423400701795791669780695158730756241178262962515917389382302757366325768069625","31270155809329751863885224732454397292230969002004953832354065319735530624996254695453061851449600345977646455072512400760539747054003851289540339425848681804190284451253462663731135337775088379954403740058084949675460445909826322297817535400604180338201322667139062500269285493417563095365899631360901732684124930296643108551710704785906431324876072470231424/7269578038000504017073007978844992319987411732848567116655821196644382777088703228960020894756722675887473977480537577509061256138261063926845643360849217556370868752909531088361229374467207196928745673402380473721018157327193509586295879051411183657185176812738231456253321187419224704301236205478184115996135940848503487199394612616742961108684539794921875","432538822079707760382094121020421735679118830363764570640789368235407853152380328891350816400541189148550353337874309885334920995713154225799660601389784410911658967499100610376065640785585342035058364676314084595283850213942576431310823836792440218271879354669291052589804956435743500204185107215929849054782893113/100246574739326291035824954677502591279343311051719151327066341370995390423713403739043396503785261917771859220535505691760472395306543276314938287868734009582906895763073519374099272340577921671298878837400921045252035507925021904954445172372479744465666760762909731237634082051855588025732494461939980856983552000","1914333673689206389116942789116917579088664511118582610293383428712902211612554212779880638065888518488492298586641997844141510832940409501694726851666478650414191249534733087933879981733561565249818572204932715347752949087800778646065986244657260832234479202201129845117955957242616947361016603702640821256099895469088229339240402478576285854783063612307200/442333801076281757298117784528962837115323835962460661601905131618341609371649347131724700192551574625400701487125984359494804828935577124602622582550626336986871791407398609915208114339012374456785705161994343348351473385887949809051796407340988735853810174589261300681030826392672282630613354461927208579993042968520650313621522933214063366558703422757071","5704691626402072213006354545292364761246893919997531024861408248746241619817955824682639582830486790618668221530365426203424888737658778881721063941495350237419723855000515747725926735319471480027293210991869255971365522170749568996651406002311020883635577590045650037569906001924971041810547543163363976464780729932/1314240362076792592671773873754757443276256223533339004339330559325754574023619698171225777585408160438834449576526997055649849875516310105297894855264038450585295422343454458568152668980131977005808840141079502436391909349182185596381509091427752151860204235071122788499996991078935216686010888734471173124487937875","451219364084386208718456142329444023337343409261545444643031014769484085278440612677813682892926852469540118625738238137458321112005189595703619178533263706811689687213128887082197330137502064260105387500552856851972124172206996205919556553246133218441769325133725631665593372188755090094541462474970525820334385058333756591222492801647110594428922046641945259392/103648250172203340865458115839764297558925693061798169434516001775068769911768281084188883278842546791612199025413573394167639925287068809631958006622842716869211374513136766899877504136929177267362862319748507372147243911522667591375015611312165464514308451222180272935398828092646393830572838772085366567154646425598388620105539619174837489536378605144891769625","1591076564577634575701791393842535460875733974464805197283632670013516183281542903377750304419996681222758401497321278555686661981435637461350320471258386388843198706277657208526372100698700615835733712519332548607115875288787602084336341594576426630670911478276101702119972195558314357975365863803265163991961173/364433108410193393847203348728981296285742202617988970384277162225847256295865554341611171460436362780497179090329831885853324392923449579538286804729856000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","5307507148709435807261229345132535134848030343901300324623409721698217134932866488937772986386501538026693956121121771089740095760486362654754229904633476234090792827930433598453200536551779789049352131005222659995845427680686677324963223653949277037520711609343166926627713758990384011274777087968799793410506391884872456420041494598273703914689586637995139580794368/1212244290381524115082005575105703496583315188540177702780216570265159923654197746388568151706509243638302707511238539845531608313334248788980188054651601536067740709977678222790481348003085034888244447626347312094586389347535167903408519024105748523384932942441843118813819781347089702286481924493361058339731949844620763272778960860509570622673048786968660129650125","3046577098843580578619955603029073328361298436129791931304665777036152915858575282362742008136721284817899542475666054101957899858138590963789072530710775790433466847100422875906866496318804986202089528198912098377828580031852152997907433335176267300286466072997014023120087988748396598176622765923059385876855303940720/693911859077752895978833241338902695755528613729508555938416419864772385336777924892434701804078893822446727762077537955240605927550548046309823051841326355655848406646248595628715185413852040295631448250459076043816328082561248420925930431777502622148019371383254316636979070731427737764160145097293260938978413488819","155310926743873343426312607182060072939030765297630534544899230213054714482456829198485999782086944271490229412707980997432528653509945301574794242118433868747172279224118534460563400440670015323324602117517342201640016853927923976796453577048995243600967202462466681112804476672348206491490513419336308575442086511015101999847896197546900512764233674747415844045184/35278162986589659300679088538176070649273991865663041616088851923111175518405117391134863644540911005782372831496121355954470744169969774540892096320978686548284501139861783292226140413769665461494668479430833892857992401391262903582109993838728281915806394747833588629467613308837196269424421131934859079260185052081536487462257809987002198437182539441349474426375","46729591025621874782758519074451728476386657576036360734358719976400940301493939192083339293779149127132651616972817165172116269307276487158069293114860391502484125554406945249728802484128756924044633825692779783425628292959170597009935305429239702926898931975023598456207165067568919757902764815108751735753431153581849/10585868084079030838651390738371141142245086465033459640458366146849314274285871375459898014414833295804139979016362796357043372316321872357817727821559232353993714062535883074661734509440994664726425399880995133711038483607773782532430879196405793694658185175583691180757783597895616920432527125993118171361116684288000","3736372348124144720852190769710129461145889011598636925228657393934132828633132357232883470466940330848177425542748100211498184494252714616379450272611850068867816250209867530921278645286769418080018709947826876461419654782341309127709703626401211996255743831998918894661053669189312375159058718767082163156988766821194002596331826150321864927832618126580509732359424/844176851007504003627016945212023239308348428094023437269532743221937069345682900884618378849283002998220513307273333096775669556093005637615012750733216460458689282791632437851364674879152695438589692227159038555722539345972833161146108367329370564838671791241431125003401861887477969954740544092178721327724620450947646209914621007186497081420384347438812255859375","1258774755828991281578968023382624723772927642002016270484090409043454336040857926581316994594109169123354553321469500848146015719851609220423736153365139804086413284787598253618361769125996755159571523632747129480387254164008968993734442164892486441152227433281625391753702577143985047832519062595123255569172968685060844/283659859661671181526547833415653453506477950678651675193210969173130116121017723360258249430884213011988678011357458727603413521688184521573094783291496368005697481333739504490647194454695504722542014845706216224432373442438242355188461951883454664693262684873988061018976711201351382163527093784753398257094429403691625","84932063355292829988908961192574710493098897148701473172754949846455626381329456661808566365329266898990829247446356970454502007127269708487563279536825277374133681167235811080298134899629580318813382668399644553111080625918213250223197440426147821225593304993621451053135332451997633132772608233430131400186571793929377129211228689703376067763625568623535588709576320/19089978133324852910950469658566458037096027722326716800113107848115231563787455584278193954518442601810776347091253561956877155673550458955562102935555510392954425196165785410319126098393353878286400877305164869548380670204577544630353859009177051698096136470072137579698473017257397949994722015089768745013713383769765609613514021200888647472804720456494757423299627","802638881530832431828249604040579750916118423833791608589560402449036920165704012070349537114920882938466635598602387718300074733476150548724726460209016834416094317724261857969955414000155807312852092720310159572547644569797512233899495300028159721348599816083166712365215075728968005941610056018023633235372936903015771583/179951197386119079732438617407921535065140503043429174394605652913879982486051627760652197484142547447000508189455126493868229565647284332735552462525598465192073558793335913005459266977086104359621022691931002488052727597513413492393525660272900161375677499228252863529934576881596384036401784035248649026076581302370304000","25208742399375362881099811032135575360109715964024747212026245529087599633280142314962581193303683759605084995818253124445773115574470717199218828756449187055537877478033129862600982068782249943150019637186466260707552416433010545437321814115233841687700051830170191107127799355485920046505591193770164750886037885397478191534797655616745528343172318318678405576430544896/5637713398995569614196397857525646325234056219513202928587580534159596897880731043336790273040813044077153051260989730372846713618900145444802234629922717464041261370803598799826604841654608724727320798324006129524610666235998113655193642594744544226880944882342204407750193512869672849910003246504052298022468012594459974209940607450480609190841893267203392880360823875","732332637178584560220688900268566130246820235956768724845747830959547501950765063982943061181526237061809052444110437930100210105274824607344902764184151030827266142225894655531497849161692760385938786736436977268616029862577293984376170905024712952813234949508186306774257035535805330366742322777611063402455261391021097128/163377988152179636922409938163005948596822656868040662831003991395905185823836089887990201522673196719628247106777881741843786365701135555917263285268753605514812568258179391272113405920369587922702002732667842511108732068683407168090725712401954314293193572654347237716691784386690948494003094992876867763698101043701171875","22391374854299462107923583267570593886002658786775211597896252879708753450794332301142909715845151746786016535157797023153041007263258732991465037648536702217273897876864351559736449481285518249846264600935543582562018874574655740660800634883403597181876364712521253650744197321080655028374602772696770227741610874399454362583980465225235674816785988164157351243193265401728/4983275997188967758382167867656806681565521964135131710678447245984239733544941881418957694612909599261843693554043504855207170782744518943778096768859337980470219783210191765678908537645270392500777411134164918803949155037581108678968701961544979451081836872425574123683574475790997414488641534074873248802450108535183413970057319247033379016606809226547805269752123746375","21252344995592269775107236774689012760750850598567799560343535731251766780016530978663079386453430272698006977668063208502408607227544322945446079708000304179073184745623740466334127867464883762843346619853325415963062181018736410570113171387891518398846617197097407612852037905687899800932343156979591740310928257766081697645/4718515378484509142377558412184183991357747235892194234377932213613746008373918923611236346330189287336493794499188640380975364991548794341177060325509698404571318037298112293926833877103554546466055612498927474225619680186119313129604319096374924037870803554153458104225741255753314955115645304948564151765516183663634546688","76703085666560609319365659209445044957052359500745196718269665234646121134787807938680787341023203786904308047981099228357850016602203539979246579454229078497537148799349353250167621935384193502383187510928609818011142642954550330069991570983902841318203794113898871515702445720207144863877026526025447819537396146822201819435536435835285098485990260677737192230985069824/16989892821104122916312992616665764943723222199277412857053896319814438961475117951904867066845412639236790762432996309717924037467863024360211163971190006272168845197000304328480920483651558672879967350982199768255256753110375467976246339260326422891913564151453729285191351273342206198366624882195135056176502724912849575385576554208844814085228696838834665339811027625","40153831166521391225489894857551838468150576827129133168972859441122728710165233865309084872159583787083130713473702296122465319276461991457173085312407612757280915853584698420083436946976844240063731333638150599017886937783470942007376523947840104246927580254612991191040951001539641947153847776050138532219595746056076776809812/8873576113581065493273519627544307418139908640325227196912114520903505426722086265723900326735989771660987609604507503750212298754414472822477243293638486047313990878348820573874809636084574108909615044524663712495422565151340037564156235745628465172219286664653343193162657374410926171153516871765680561505768223660055617934625","200736374277835272485186523480177159453030082779872429648449412313247640312479214261681899286513818912991945046297334418102711629933437654377760028476767482162031641781499114859553677502002901248124750539270235098492377826240319766677856465093871367817683734079621359186477306173620331748496369122143019303740252461824523590096923561928354020960176605008889579578495073283712/44259440065125442964014453739391594153290923937737136823355312892557975399035370631521014554980129291582486968083228888083079118116286312583989433037097397252506140224404130371160608365777625538148303917306340620019882928744151294738308047800711028158277500317134537540772759486365658024194428796846364486187105343266398338060080611643110071184992193593643605709075927734375","488459049325494693259159444507437983381645757291858092983371672334043029615965882574409808932509285079401239403272414271652617474184321852388397021836909585659327974611273820676128650810907598106588433939541654215766888212287311943387232664417347883717203611092450971786083806323404432266197250919880225892099146722474124874256523/107455855466267410923480140898552598306699341366032095904938430084768624148829473848763761936703072253841751966906142283640379336131083461646777390874405323298406517250231389493084918065243079819898691146841695350589992171102939046740169198394671965069747042621265775948217054519855346617967866614303497258042439052681849864192000","8430374068596413768975326329313648683222744787097373111477788794692418932056901235174019333392845529821722488982447683794746518712070635063397464904489452840169472596494433874412726723065560358405027764015273789053064830528919091414531400589850704395887250756457780868677553068164933299802944396576360356896758745030955907258232257358056931680617626606715393885378887657377280/1850480358582748412767893656294669486390769246349349706200869446679212812264400876685764762211659843658541567071977813110496329850010288179702589501255367345935389050373021591572539260951149696801665953123597521983257852207280970577287472932167362521740230973547070264273850381896786822127290397075758780174083415923482640313277341120938690594859118603017930500014640169211239","58273615882491925540881784328370957720539797010816130007322211512070634295154626813477498607761260613353633996451797686143131893884559909668805628269959901044961666535533876340116728982072626875010391195372759135469446048394835148654407846242721443845351855234347422256700864370273092971804207514736924787577569355949601385705517152/12763172138328432984573837529764902730448666594097466544652830703737195804747682450548488162227364538052585484418491914323658215406327363805353540266048943197822838925184942600367647278764952826664684839953902567694832690683467635727409976388280092262839126779730168889686628630302519063225007497707028600865624133968363921915016625","2685278694947152969468407055109959900160804835228466214479525891103128459065131221736713585038130737099067040196326815283171857977706979990467444622550497565521863441617001097354649972660183038850033950647594754644997436624623325003537308428828750008305464174443210079059253920383411910911594636045517662796811001285984447671371943267419151220518726940455756833040934506414133888/586864816044968996825907488721678304211296267371936463272955488077666796280028127333229453342355554450708284934221461946991556216095213627059047984199091625921432110913096253352065238765240063555347292393427726758010888546427415276046238297382474708612526770055488323003698641493939145624184943388159614111350839555141202024991876221874110644879676602924730506882384603409121625","27700345710264347957758638741952394530538598225904772664391173119594616680996031886665218221392453628824570256438960349220263575741495285780845399187013582169907518462437966962923592601721119258663490655013419675469864809004562272799012227293974254329929404036071055528766397079743200179924243479370594973626764330855493789112414191/6040997839051213541001279276287478343874107660287651711609067205111574718442229224212245187655300348484144001298428958025052162253854676210451657425437588244676589965820312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","80160269787574270953020489212619791839643207793889009503234879683494928396231769167082355143564723274576166638869430572977442020236299319718643894871736539109822173538266278165276591962215927816541165548699380129014840956895931285215480350321259054359835472320394089646764361802445068798451796525897304221529850133401768027469126408090577121172238802281079916258951770135485696/17444957084936455555074876721808241311651668802091828589911310253709517226715880722948267977560381436307152342821304525073651379763144281678911047276389231713860392794975453518107055568765009486973017341479560154792340888780337029481646046233967923289468141293699236815196553819373828280398488966665994092877680860643266914861837639322607761804740256920429518434353839878280875","2352816897072623416220002134476921108405735955266703519252095150412419264317091785317803024028565851487861978477208755211589867803009700996828082850796103789009194767813611798769297617674631277847910238088040257037678126316866517601388289837575778165301828137259948173292658462765645645868094197736382683775415645307647043205988394700/510973411316690313485681833991645423802776865720580280058344111363363091616558230182669376841383375321912553771027107891991318313938505988903735114191313214327683449514676737796942389784957658395806951715454372568523597420866050825822028817422805046287798054682484158011143949412956697442991898914560191411624040490122951328364833797","6403295584873165688372907494046202150046769667837790834896334486679541887567517050446119511695248926941383207478170182650927368177009669717288184903306689332746127845953193587519575304974203099873732502605739219028995266139383163062837007982999189114810534856227848568800302527760100163350814120545587074865568436789021082619398126713943637898657861949091545516403987546145915409024/1387794272010111535893205703999712437783041553900341112488641528986385462810448493444968969845352401058333929711237978223214186693177251566069419805757440174840170213159651962686467523533938145629444468366235554597245713128812532716616087753947246800626006504878203666972651384731498770435755225220796872155249202960801768048854869001310722927230237083418017482134588865244642658875","82993247683514419570466529457059660634483860665557779709153549045427987672829778520201315148149878525274005978368939092115193636113741972236218502664881450367443614971109677363668874484696543982239492409231870942414193419634675024621942196087473557914167832058111113476295926250739099284241826553737074679953551191767148712684157318697/17950946423927357725787689855263532224005643859095168852729513034456208872420513601894508438640531171097082516559962755244698695622824386001219435651555513795509616906355363573638916895074349491513539093024980575852693293474288638209680085037286354050958859425647536735341886663074581909148323105020337857959651624760873736590065664000","584891611376763781852144397260140844977346305541197362434227194779766612939978629636198589818106137319267243431810481928639442343946346034433828599323416877248326356345631611148749005937144684862502198147087702668524450709118588741606955966569427636630159793409544653944608958808602551061186799401212712216156799273254257486955348236914237644151956226336750212957092204830385441792/126256710861549838395499078249922986417488985866522660521294610280820007499099176190820291214370699289977888813109514854178180265382471972583921477022411657285850911270389720508719377071949050253246021921916685716353393018411683757067093259101151481189635423399611625009617884983318141463140199839724797412514785751549277231259345923662499623640886881048572831787168979644775390625","4743054867460856425399742072925732465660626340183690464743217147109403130730445842673866624947360862438925194786600531200056131309608642363389833474026007798643235346104937733349791667694862514383520689594596660275306247615314272223660862212527346572811422915223417783887717426641317921972456913534338708745549252254865615725859881457906376/1021840037832289788284691535543138164288462770384961802287250236519983887262771944174557087207566030730743075334169628971336358708580124427857321953981475719503574867471090607795242192417162791762511940848493176847925838738242153177311649130718886794249673254183907621449520415060660496225939963471753122766421338241291756892571824984344625","3784664074155769467702999785016514468281913375341134899878893061325465790589101335015569840325786070795267055386681356241209412947116340524588831510768864231937929260236754881829005065056310226407358204278658699999612596866156294195316867934035877283950841910726224355461522065773816109849107487214275801829843762482082803559183694631856772777313673086715631547326400170962722842240/813783281473223559981291694175087508812520505931454895884442580280342455516154674683217348039336712901850738745276445107477919518905155156380620466135946654952837573797479076027688866326359448543065305071605591497778941561986579230698384305536224430794233462949056326864499827444363206162251104552740175503996670997705423888382328014210171324376593090187604268086334796245552762333","1946671258536842642381655747294621776070051525209940130115769153666368932042152311477746728678182920842238801763565726086459485050237860693394471644023999467670017470376746609892484192072297938254898880354014176373253875722410186683852253828299669530022166361304397631667133689128358365296701757782382475692465977794960109690362462330857/417774039698408581013003883929127512062321623871486379101498968145670269174833505080260389860863417408848209525427705249526516766731427603641806256289098209429110794311660844125377702016056984573671024035213045475132134896835814746425864304907974005950155657789157496389234919107772201305672421982198984613601511388413381215220924416000","328578487723377153600821813410631465225159589727320893988991729306688663770697528156625398176929288628930496338036815910669579019719633124832162035588583242320537435554101841406566009219059042888412893352417446437227440076869427577701706713564212185163005644118869496869980925214424591264870388237079776503547314587137721633918824664946974571838634860386893404364499977966899068777016064/70382695927096628347637455030970644630942872888311870124896575877585692281624151103204551947776906510366521972834357031777287506848887607457751667816514216907338309372900327919413372044625602555866294337672022362865161523684052940126509854895320132828009551012639156341878073682501185688461720664801829933689280752623773789373199210473995823367199793407048741191786377993390965297664875","2617201476921368517857942326432090876874414269689140439151907982631768946799200744678055980827789859579196832718849393046147656447672531861353456343821196812881882023188898815179947651274131166835133965629115749368441605680383605331300030886676081418867305170012032824011912531673468215561506423833911621270680104083533917562622600478548/559567121085534865189976875600841717161617153776904752351231210970240323460800785728739412474960421770806162360125774000625035522428160837855944215417821324758873127567654244465281354654299068546570789547691342609793050301258532586131013585959164719533123826201937801986942606844854123769532447570107525081084531848318874835968017578125","636225736038986537559880265988431731529837451289737542395494683393492040808565905376235074534207026537145408562785279823547657299565440309510931336394031904920056464959974743525662459433889398003683078967642651812081450227654478095420306880762753401111260630654049389197602389949892636943971690212484981672010398108426002137114819838399222096538921225458913266993881960732663394566024064/135776510176793971074115131648637508758953050390591773574951317807919051619690313331192027871176160424663811116849856489187562728496099757910540362703888937768555824513740118941387831822900198029266206334350448626733139136083404404120210893986654422850183837974770675600952078956326317698998103770833069712616832650406225828969036781514645731022616236082175582937900731419575337473384125","266695771933124633677367149389643417608461366874310588884377151539325854547826373711099517873721616543570605935954334944030816383858485296542260152894035979141266909050267414072982042090341712035518685997484257326212454742816979806460287972757626105526907510197321350895873473656215941034605746494172316089636216915825022339855304925515685/56811706665210352283362623728191218698295056176625217939528332247537278605113496147630185544004654583441448319260578659922931798845493756189402805173037491645434052737405379674607517658118427614090338938517963215812444779184193933749520313676564187507594274551791388039139409235056119788261689087831209441779870873305232021728002651979776","3511806683161697708497547617957719390189982761002154386881580160856792742952365159764830433511949678304281539875366378131195670004345568047690216126001067194904446295336734931691743477531830892015690816210752795806120303198745685394015161323982229908105397857791180342330098240702332072396030780386362735967021055250450666535422528637737695053315137238368787607412459874094164027214953984/746741569878639983491390741637813989978804202898438708743258000150996080386381281307609038830698579358879333079215327202911977568726258527646560497079622703052765164031089590965199628534477381843079892123440214378949632707668935001371616475282883095939750704292616758568964786737752325652839226013335092148777788733453702438432279149298482004122593243860829060557386699231448957232420125","499543951252504651717279461487337168721376180441322735807713499521878076780205427598086756686061009718016175215146305489885835839673419698751530207404115002383180054704927695269921072232395828258826213554806570423602966743337801741633869267620843626804016742412046844770601322513184123515405692795346790813502805238635003099976693786012816/106032986203682550514602969462803214831559442358811656484036951559991322084935692953211120289352600484987931812632505499612220494311324679562152078883141464406938524087376964935494245010636163705698220308243980789514815579319533341929989455211613890905485981353837321342730307819060825125980500975023479813757024395422041501208805339176375","8540849722242122835873311629952985285477986765819584558233324868363310302206006773828897816547299245727087876984857726652932481899766510637403577175623031467933486823994040576431755172220921921877192006685053572215922347418846423419683723609799729359551828522978186208983138345476801247634773975311405913274552616037005854836040162212761099347518242200807692224460514057530656658616850816/1809694575992816440924165741094996511361288430727981159314194000585536832192004274726651828760263522962868944612215633976203596150606503849595633388319338251977160257979846235995654357082321611719654136058257458753105122024859078420173515189641515736029725847315662215778251370398007468665986604529263071981040014321717598469319370651877296085250322599247141397427185438573360443115234375","51377057693118720457387330519321684810411289582445982078756989158447711080414032055843805733348558621949380554029375294451303430269197115810494758213980833379214402452992657502777067850631862453239349835215260705131864911194740832694498014048717871429797341104227759557199716944554347879767916801106279081864127192611546757627038037780244683/10867246748205139797826516105458406878398263495890048637741584969144406206902037615496936724683237700974333817527350121106320991054058406504571347680049945745432432384570515723033245430148177097144850158758462968940525568041926860856763884474605057056550146491001458649244094211354153171337463406192651150028767064600270112838159624568832000","2517199821548153657910904242290029026229621935918771922146425373057248090467388430999870036608278542449661971830076845113363443421757278612394167195431759807908413353743377586893872930828548256216510734912027450642648789925142482023713336937258932978503310551945630359646777080073329099268529064437120002567758664419443374110941824106727218341795100740316967386497091058915066147604481280/531524260324016969370728057738851340792702640911631807178654723224511108065633433027773388768889035083734041289308124943130099580765995149865288328550751289346866467755881013217287175392101334538392596956248952430438673292186779006015549928829953979591250274457658042926539541422697852390294886719770034058916886894408015624288115732154492554105512936468520265305162358665491880968652687","937159485027553069020805864547349554547661693803137696125140510201297417077233061462068930061915381468160677500445535971818609631674361074587732183297775728389124966713749450996643183965795829780345678634356741756033039293590264355732129789110416943789326482663579413229893878422643110852069225671783017610387570935863228248464396615988222968188/197552642195166614912991396771845374656891854357948006221100585931656016640982345159207601253599235265353060942313995345483862152489766993442419668492877390774016299878943454249209917002169480134131612530977452579520564400124908392339263545911443803619972765231094502745980083350567509014991735227390978850048088378721210219321877150756855372125","5119346675109082499980756672052066247676641510661024682574296075659671743397880591881419516307292610449161239233139088348510165442597278965718490070997173182184417648987611422446347235659085092530927312760229499083348217392125906851921500360553758600756698605047197529446594606336369425040236883171542367713951500007600355406492128741649090501989105696576697387613035366083536629358444229248/1077349190930018641197987339365056771667455373500846354778079878558146320193384166982231171317419356136237346389570422332278447217033773023556383420372685049620361481309067017697564760747047839930422553324681218253359586320952896352245366885171583221864112040038531116947187482413031483309534553461613717398523132176948321964066833901215878133594739833910960843185464241840039390204295097875","58469980853327028628854378052548435225264353747414624620847476036979290604604988637469977624105451959796142112200285366199247075503424204044884512269071061176877225315884188402954249683107639777479663275428465242905314418930053869461904934138752031124685541853599407727446896558064252696813370692668496452783003306386669962110734257851955001481/12284458784412533668960387046583440199646081362484321078872891438551639470826582933879934711861551014258493898870867541349962531447724393381011633785884743889445407749238183080941846528000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","632694338036291086868292541736272151517212971647680989553388199374739841494700315711180961760384484042159533979873604395621016272772109619401112452105475906812313548587880899058905419220497456502543971131226430775692744506047039958551641270070996110661036371362526401525207493270590999387476275629412687473362310414634469788979236895300129227082421021999210841384596617452097273320509348159488/132710874087075221626157136110978536488168313127228703025408943153782802265472978945703742152954881438058373686972477195846162708986982742647038014147903817539418442869011995988024638278746664230046452545499722614320284478925059527086663455478374200352375121910000967044366831275681254530914306064535110528723482282501358749001657608122307686482720926189537227492041135055090784059994118192625","2022422468242151190347511883185841333968390991430363660248687284021524206079162212007263606819387821055183192871951076644707111802972354128011904720586729919826758651167984507804867954970064938022106484656560866447290934136610214175516487579122328055482392137619829739560923807880779865442016530712986750711199998190148885726144596663143651240/423528009127070458603837580844559347493775236970253513203186912091140251858605354218715508091394564000304400858761758838182654201653901408046974668599216804223721114331085507752600832390227068985693006017591304916519540245902645712532993889000048992026931475754508248265356181099817467608863068068953756055334213584649136541490530849577363647","150542201776735231618709653388506394887777837646651406023174643241783006776019388336318216053045300417086929061565868663031237502137150880313922488106751241006715449458736723129545400133450376339156062387859536289694727635468338235084533552501618659272047966040838509286942825414463511175531001410923014751124732748099355476332649458471135027773371541572374016038525336728276024676601778299264/31475618522527975728853391146702172347290819252268551219771201846701658848754300838383637247014705706066050673096278897933831272607774110183488615338021656923433335661890414740664480671162459271850877855521869741833030384682549648626038314686632195158507693321505500888988183270276134667071014075017317692121986144742473139078857816578133693776368882596780120407949076129685719314703426278875","162664351499283182546788129866259011542529017155637405328005084357078048074065548349602626724265307733005745244338982661090506394708170105916177679714664432754153795772811389612700051002336719842784098507498286260450939289109123759859710248621544296008356071415713931721102824434964336667980062728653562369697289761913925215639430496443820411811651/33956433298509232632327667206936379248172049619640091186698677954874297837764235300806836350019565970550533206216590639008637925266405524715041372407701947953283803854153876844320283735281209725651036513491246238622967031979233265136280687995181375582844780830517825595245506321879177965868747546127685256867456319112247572348416655367667187712000","27228583713734183629451808889147559240254570554044667607519238865891084165382075658707675405673276615039702916443152954157535195508033284355580742761569101934821088036084480297442018005972653124248838420021440899368869744141698556359295489470499243402799483082406238128875386939389123336303631993557844565927960009744780823166462314116039469622216263221278402673028225214534859076857413557466368/5675134787340359276387085910732530678163604187009567576895331134521132071092293139167824957253050637085885426100206370974479279292804959049999647539684766632278449357893560561608633329561385765035738071726214510832066885156767060324427330401967034889966727638276371320401053302413136551142103678412692111973028587922399670456670380189570979581674699102934733563330382821732200682163238525390625","1340937726818688387636018677960518622106989311577445614347061615417831160296369500704524022869612973331444242000788110133157689786976834913297544087249593601420972111789552905846168933014570399562460789075871112224533723259660967481288525220689577290386781169316008987012566216235876842757183233207943071523447855623001920854571597886491163165150556/279054368814522483241446594911968519760869180429079780837994812436395792594449929617293503975169489945136244602350941695478861584261665582123038340824700224583170270427163469762789603657025958695551448477050958557681299495041994050951692916032501884523150972841782658389836059236040091605838583126400660344344601879969354053137568588338096589095875","8910951660339249479517731530773509037034977353457185453617569046885132434552771722727442649095007828468878374139001808825741829728375370140505088133244952288239619141544661695065318568074863317054989982620944602245967155400712702259180443238473885690297281525960618905625084639870407113029712510345262279507055197024677292523214467306898573956604928730377318210588837126450942086527893437954864000/1851573255256476362977604759655284263358595254392797078730401113550522214182030016660458780180636930591149034499142464357511158868625309442843792189394292787657774627425816694628839987456477799348874853555586931850788645677998004186437300173080088839930384424797706381282430208961565555953254145002318893188197561315855286173276564036402546798318351229978103276843822345004757661005876638005274037","84997663352987536417038496128111159210386455419431137931308301989414462311135708114322046234708053448098538629166672456703651524480738219822858469100454933583774404032968304328859365484249897913676382909050450855222567147661842184538302991526635974158862033287154321908483007506326807469239745851379559259262425675035790574846229470041596801343087041/17634687575122715507915388096857069366146981156897230620371714518707518105157483283253374797127075689236298114335734874553183291806268149747826050838089931351158483980735336772879045027213982661634865556129548356487722537193914986994283729746578044621115589195066212043187229606921062007047940293972381121200723292297716621231320254309060321476608000","1648849257486312935416274009474520589799750757877252390543329851029437452988499485179026845292068377957697884739052491455807688429630524210823560524122596610276957537756142278585091315141096146341773982302888007751632401090642472506538817998043326415693840862261701364114923327286462650797963969289743571514890723145251583881752876340628073395708716735192690808352188867334842743895738955762067968/341580411902962140529547622267381834425264893226447658723654120920549166416114849731588552578626041597847002946105459812230979900480135423787717825697955152193526724029890829615845314765605770060975538542976523177976182401820926854406945392167140347444433885786340415437006775075196031433365827874254477351374236932624514469241634422312990555534789607377023339236417434574755566856489013828206625","4899626659231633406569362199187192352933567344960498139854460545644210119722856870634652562532083546344965166340063297647520613455037240144734014575196764021102614748218834054157165781057405100578668000290493431869797883155764963238760612333048336953434663867580862692267574574465371615023999531030446250351305046572267686566999209229202587258144318592/1013522377571209303732207048597964555261512342860326827024786500686692475697570284120359840724596444209277948648863014479460188496587721578075151793081823795161404110811480269106846359964436993190293615381593756076515012514100289406862487971220020752628653845345780766244842386136740768474703009091552043945843632199999007070800871588289737701416015625","362903847358088423032098939589019598036593525722040887883164115981767777873860799955715587436566233010543937498922435963385091400670303956612881974450548904906949032005878241638546734597308786514086678561900713741746905742866635779432216761799371793260025549698865319760786921444505323758235164807966277024031605673481480590193724980659448692487108892154809490199414370023696404259691299614147712/74959603173756091922435708504751461448318819548943586676159545028063979695880930926805574951275602951047845904770828900645717477098988124553474616764040938121171776556999069351772286262529729056288451037717198273521810585868307402693261479298923209587143468206907278220909447483738730657438961435587752873879244136801168836767273934997417156543866722171766794171623224855358640156858606843576125","8521348154958613550574095745596657249924328336262127244827955886474742319277424381360677655239017583606851483318951440691757875270001283229585075137091617073509041644097526047127618954293881264113694362598157456878784814696577083997902588926421675843291157049153701100218784481406086810264243143337016042301806376864424632290226377881206765051896745/1757584673254145109614914862134217345456065873908262753169404848658913774363650863904627183104777337461445063704655164325930891269843669860409763569362863600932267319335889540453302785099532688264425988677082044905948179153286276609910158854349711054144968131934713419772852663860893241364433872853338630216232313607969790083448433666334742108176384","1802461420562646993856730082999823508145602238125054717836501201545920604020389361370931345491160549787411668288359013059160331370751496329806488246135100776263777863399096485894306306621852596694700845918608199329091852956315870664531614358379176680326508877329862713333336188556181470928613423972314983964578645688876556351433429494008513812136152576866650152623510296911708111085518974142728903424/371238439252064016214448115231139360835481920731625321084601566992497057371416121407293286027832357816257507287295719261141426130159269433199862002841433235955835172774430690352481806933860390015899973299268361513643524088242973968537595085600335021120523852420135081643310663869327371821064862449426404044951571585406092523478861879148545678639697679215289523234342337347529225543852787599016265125","88795280670112240977945082069219541902481768504536167808816453021962616596410396813316064685579412429940019071114917828928080181638058444302439626425155946562362550070187433083541414569447612195370911498321149367969974762244140788494955146280201020345849385865084095189982291190135293114489407801749533448443222584092575861096946605418438181411489276/18262596223069549313969288693970246663726147886364354584825624311486557881239003216971630599389642752648815377795018130449384513824927138566203714891090017787258920529990523519479383032564209629983810866231367438270859421572641494420831435563580050954867101292568399107965982704216434467243223964964535464624988344342084084237484262612100980519602625","752911409358158070688133336918078236438086521781731735123294741731669530734909563155732092406099003582749182967246236657021875488130304108082404134004381196925042617909108654109138702993903561036987511410396567636331465803949049946947888490287210013788802287247422993384874670368649616782837096233384279817294778916419067404863458318451722971117669642134894906235066332205740872938406767767019265664/154635332883086377656813458754577288834216641577439356891585125701020579768315520324293435008561626926046988056302745604248220408154454267643222328696606367409715369481567213640103076112146615938180089303294709009813772509602954514391675152597458428326644988225555987883250642389550531163153338541870029415077982539614784206119074702022117790679351778993541426110436276530890609137713909149169921875","15286089077439918584953144558775765002061832952090847117286473868694909713791678395221438112006475047633028543501632631679316850512797978594476229228325228403849089079675681042224057234415951253954044235099139983386056610384489202589484570852048157272551098909455253037561994944665563291526597323199530997923272894119350512727802414680772513760081360291/3135161418037836259442831302977219750614726139657718770206960776514822107155928800694375522572523712277389679035632531727155957120566617736817225541673148354829212969778664144907503411589126111888917929495106029890532891919001138770210977012708107496187227751496980000137223047079127096028939624830654227758737339725345681745847598157538483308068864000","17723482381737693269787076798246423310802126092500438681864673375704464394105734049099094818738115345706100191580982712146882034618103161268453808819471603805345990162762722549964406042295355916458624836894291267553138041035528315839108252422478610879301656207772491548742981990469454529537049123948604931661837539943536878260665617524824604291547373872716194154198824107266275716083848262625068958720/3630091565725887087605600771358216927099748013831912080380983545872077197366172619225751217619097657405660172801849926220948413919823038425519006413005998509677472226729295278652284861834178791332630676772284971762683579047508016687969040658592436230062049051143001484384767836353233324570686249824980508520186643477313941054900197268584495128610811273834192099099592687485176400539748616360799518357","39160514032490258389003214587901781721548011632821053230881239001436341012396166857515197251499460842954863342641015306304854226194551189224721257664420778416733889030680295206179109679627522113592373938602737416822981698362363553492610842201005420727750505681358595340127099855823746410663750133019743170700888375554918213182862789028531284364877435896/8009919337434786244380818390213546866794958389603666737562053423775386173149395943310276429895991903753441584557917565343673605019989336264748588735390182130334278887642569515202100870042209261561001627386525182096090194076839370589780431326097965428311786635366819094633651297179987340498215947144870164066409654464551017761658775207392803825996394875","18188388167811476762477659006849121912679763597132233588170406666718758511478154418948855160838212151370453213943784067796172102916618102024199200086478021533171984254799008541948973652219533819511807681148179806051835318645591102296256347927018942348574774821478499092054497390790734798143983945096982240517058861467440217558586822663985584775920517755909444876443211404222400335500608733284461685888/3715278241795087610941547133490827711133909145414878217965273061493740719983191775105550559905283733134189195190321643965858771461560130864714477448011225816210219450040558581571206711791272284197614810026220745160693898421068168630870850392739817340370146186703867097982858560347971281142766235850971837330222970900661653800041795020382847588362774677568059355238174402415384788280852059532958121625","46353430636874284402376008361176880938798775506236714098123916668545331718677407145199311191108199195405139575147933283523305343027297808443653460575141799729554209181454676876263582758919969948546918471128299522715691694855904535448703118221685887195383025133924852224568922999317583667985459047407473419196367812949579858081181660610155317911318937349/9455890179897829052705408931064120820559254220394152447502395298827357144081378513080398823188243663943177539817982481713456798757563952162598464929784370305696420245648035222083207596797327498500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","13607414211126412689435920170832779523235279308039712294681570127241403406455725064605210473923965685858012114332021572088551127762628892611459785625407107300355287623761046438724706918300976102581928643740596336865698485838431972050267114940079353996100620311097561405192365496385584164725035842307146351211183443267583872067352881387294766804298681841402861626441205037637282007810811602289501477350144/2772205947240095684743358245950494400934136973845543049938212403703005150954425087866758842625041409060217562878157900197951382737615822655863548356735553650755342108183641353142157728364469706919993519071329069805875834057743793434164720370026073143626055293058601124362130539040404491770346043977106988100969901297669523170508321703496903672333781306743488573086901583022550356345156457496396749797875","23264350093315690507131500726914401771633259602904894387312742275462601574788485574913195967854009886824436237740789910851843045306673524324611130536719802717912615609109285261163220007241492964833933975789257681755002054890453747803418465119567389315754801791950553304034666399677630030683759466627797123971742061866928213780452325847848901682792886840980/4733430508316851445525799359992627142007028326865116523033957869609125212251136452396410236930025876982265915963089597825393317909648054808274488356887197933393799241941120691826916741647173843634076299630884655997401370400734954098249519111198509015387869462198674657171808841005212058822254513429836457539629035675822719720295352508916898476137111981397","538960934807826161927564251064896730663918579817797131801326848839524373936888402762331254883505157846659830555799909822861853145306547699817986010353774500545305596630924815657016569444824389893996399550343022444937690798126189162954188680257730893424775303801562327757655350002001080811866451425665301674688928515041429654624970707803336800125648742168380676815769457467038849213225206824671025803392/109517448833211208909213522579666376007937648875042608355810687327424621469323788799169718267715808580775296460944943658428295481347915131091297305260674731651980547668762317138753250458639043477453950774629862540017034566407286963562574188172753764978963685535201028286359818524519980885827473904574840285411260037264057197155527809916623487144493019982419606308144576939532055057697567269576800542875","24451481554350251656598350124163983489544445991992661049829014268366250968046589127810466483349378560701491445658725080497078590986743512397927747885285095846398852574219367580068049729894667374214861939897557930527646930793431512683750733092448862551580494245486308114129295467976874843852138144539250235632985676953662288536669286915983261820949386845806781/4962240683851186225340479316959605207278948397833849899236383273145853045488131674290332609876751222112917095096150531825255611911377071887145019702433883343849119017643117746273523770961304609989779231048095665388209125939879595509516490230961558353074751312876252070889983946768175488341370453053495319823381943793679003096504200440997908071027962806272000","166591964685609920525429719961758335887941461052357297159523350448241484106515158310298216150030768812873781356326923214637847449893575074813991141092681107583183275003570804134461187213143832123628701876041315736048451374824101256980832991214945762266748755723551899001458245164317581617731332466039757786839492869211248064662857987111284518155462148044812626055842061283907063784492325693994911811072/33765943466859756347231737285768516240749714264564410814839966011490233598006227246396923594069488496368994857718734549787000213944990695920130591750377483911116845697231074543526982580529937081378303555262933800375576494067959129682770065443667091668104132884375840812635624862495548888467575848428463895756394050252457592540570490061561616914443009224917652440212112452400106121785938739776611328125","142464729519206642943985715465196065680101634264787375740459792619754842396453535646509170066091478069799080172299369994438836484938378991283020978342879057271045033903518255546705211647900945143546293360496661466657600494787228476009216508124736254967761901224547269496682078470378676865981855568197705507111970901389105723589666709580851611656838285777566736/28839643075889294346635430272525349651555039807615358795334663734940126053968249608601725991946342449660829847322517564370606746964714098508298705743689729306507554363954348780144675937510900983622836770223945538844314468550644543502501484521561567788992156632892028591678742014134130878101553633195551605796158103033794695984958987367799607407626319024034625","380457154857422076784416625436182734840012277442496600178664323821064977485271288502806124740204295811759917468598315932331219906040253463960961995849761235911145436552991677050565022181516596464968316292789048809559129516930574340710998611088996508613850407294743457197519091160170604426002924022923388338999324182261954685794522778833029950214443271526469607532589775916381786492089432407550224137344640/76922142291839859196033215395526448408989799722090330866256930898223012427332209054699494033511478050536463051459450844520020426942553107946282832072826069342120835351421637970462054707566481086202287686453371483126873188020538661871147778312986131920021929455276187425940666580158173676284545586944833678819622895550345083175685846944633982680908505900099388037050135210936852210263717185637166725605577","79999800708369666670693340813609265988600461251844239982904928629083975986385235816587497657678297663151298709076884516168798694292862559083730259839524968813932151813233366175091317046758260934357096757322369138747731224414176608247605314668045838769433811781490030635374856042786947109101585097035794969502111354126773165391577217071956928171336060247633607/16154850265413610119312596299635391433380319311682208755390341659152160578366244774029302281068833963848811596545791104919556346810193385001196395489740571188884873246131813864782581356887110499639544662322008824704830818136660544673293865921754569356583698951612797219776290835161780326945625621758204931298948625885081325268123344406261740843197232316416000","26517014004241498798848003208133111307300592620947908933072661812816683085261359696887064436611747292468717739609776825664344064024535028242737616786238200200498291226984541942836459188328346609549239724653950302145388877472274074665166631509490297630344351573245265440164082334092997307729007429218385933622623935704482371360985836659823269511115937443161532987660855490906546130131716829909388620539153152/5348257529530073524280989257577050878033239486885664777340947102417077875628238501791711336803418503616042922880218860266611595594400020206192599559925169589023339295256084579966533260861249529670141854632965231468533448709363477120437277477668173149958267956654411822360053335695956270719680086524322530514249891157439878407417971839744392044064720476417844056346174795601710447583861127956455406902139625","71197348290771978405602732839537012310626009318133570890482364371056186523989330157966045289127980687764218363064941391483781008265266963537623770685390148810455244349859354857421474277963009857011653865476081389968122418691934354122230780300833008753686234433642072919923583176333668289998661499146617277981691372057042930131717336250309680764289256080895092/14342680993892886303954853579883363225921109635079605392320944523109187641283117181461662846411912306480691901515655220490850586434947504504317080144378185989596578890875561336496479576651516902048606328604696610314441229321219627021610788398730173161473456954861916116391687748151443335513249810808309201830214153565966339609616397865465842187404632568359375","342401018754023891059352629509715357053454506037284788725127073168445189422181540408896452651232759821766616850264122591225331120588918865882061344322996688880669665450231982002597398732201789017495427566260651180470635467002453249479483900268320570004293679361696197905823690145326531180324429318916092471863347575533714871355651558610515931373080997536792242278529575700808878786732127630024064418468916608/68894647682461956089382461406499759613691148650738957016015844830333168307020284281532026442272618372290646283794122772122665531108484704223311663270836645399554940741928358317884620420886609705267248656765357348477857852684140561714900614303731786621656041881975328169543884661780531057279582784036689401206706069028229798913082362331334839997133771880514515972024899408556517159759907883793675672065360125","190286571838805495686895463752492174798162827967490343625540320679760700551286395956241059969689020885714190883323266375067607282890063444652926151862650426323339187596278760962390404656342309737428214493422028545912504503974763216230927196187743439226243880933947417760147785405444976177822143722569696182520826218120595298059020305548681823408268556482981325/38242608291912408815838081993045123864617058390583394828737640036167893859507494091864963383596867701436244007905770284939991912884465101575490548813894148831966132970730263562113961685364216989999844961688441914455435934703797359360780356482629495214859917249465567846934284121032247250332634283689409883499295469118485912489058982596725212975311140618764288","15345379701153714436938289567639102307887273898834051456693981514956329731572600026866162286097662958712922836383881840211072389867463987895894067288699955858337488812343674818565432780224654423872618380928462939482247900055572079914753652915184313685270722583926261499687728814560680092231526501970431280783177357735398580700300402036873780385926225005561766822479878280891130232036389707452005183370152749056/3080426623087819678602049171756961824196425548529619576972793653585089380165862889092832375934535464160425580449193072125955685099151500755278763306599307218302635233595329082702148677300945556130106197481236122437978375963261172524503625593066102601042060541617791008722569799735202779005407381267021641545644264334109052258081225159748043792288699674153722046659880085850980843460715080965607434114275256125","36443601662144279337033484452272105547257065463167427418525882851507989449375452076227652634440476502702584889057376829320548464677623038648843251719168810701744338735202853412651160681259533015293997501525430222870696235141468274274064390273214484922080219643095978640300874086585386991338440415203863901714217818222666715642467237183267303214471854472286478344/7307237990148312451155090506264642657872224684879860008436735430879314349554023096366846856470375025555139219961666754780864835035902856314981482268319886395881809659368275720375576152008289949085453326722156553603358879420820012964006978808113307340321824660484441618487292138631579616351777191144073820686595597986548374588839763719082323114663844043046087375","1575294930860663922843149113097927168024893739962464327016763741314068438447271326302129681931564068796631337571133444163024224071270063174829664848259482066723104251718808936762938249028582992557822551950212098797718627418782376027133576209718376784834456568694813577764300716139817031545408608110880973380162736536313173329973171844528083756524804574267826691156368696436273087171467254161930265910972517504/315498546654512047637461608750018349421492986465373840347519942494904200733840189483934245529561231604050629653992944140351106887747105945984325466452136415067807666316202346895657914393512001212656936450425268507235863153258769360296536050028695266363553141327896064944506216017933135251875087069031098099192325817395958019524956320840925176589616439477134480262100237057953933117460110224783420562744140625","7692057599553133417225997786980128299372439542315125030077404519679450372805989755158000864378924877036225189784045171045139667691524763609840822628706422918926410377185494048355128046783294954373197082851501927410350313585640237550107070936498164597231431242858771457898152684298047446530220873884022213114819556822050178579707210264243087257050468000092842761/1538814487241112760739561704846381585063002784795057066438330325566843108114787083741788078680861495340026117682606689156065008672344707615420501964123121620401073675430690541617930520947170306763541251152854304975131871537939618684186766168376514664494488691311397307418298556185724993104760692216619178358268934740746932420562664234738576394742559349407744000","15190836470550557926140012263310230378455340797095100474720776113765300081463960235506950799869073894127884189857505951314428810423734978025409205413789025720642609035117121385453856877706229778165533034683130064865256448444765902482146676668197546098809055341050873494446231793312407516463576380102073171090898973046611572020564659042146465345334273595086941562425006763960197801018796906114925005810069684480/3035556598829526968124942916297025416522606357010637652635799096498208643970273828496655227572100159414352020909846298817521082538898702393916708804775798552206401718323929157863173504795127180177622667376867235806208021329981136637175570409791442328468473111768140746895005561471574356889047981458002257872092408771959478275534098789982899056118498417649167444480913552548249005268380838457505944462494874581","2923754549090941424546974281011770689534961442264350984393235983189168024079617848190236639328676436485460311093391982825027512234467853098757486086492333410753919927528867817406389678461354257841007722472106464785557179844602277350411593959136520732862935740433163383885526249897183805981219416420390137516812715245569037561966929572448247077578419534651990827044/583599691615378545100950777601104007812792435102945248411439102112424251478512952087517463400054567832353967731887062349496616445419782499817548928078665212077449420216892583997505908858360011413290038645573504472422610780073975450391707084016931661068694024023083417126286468909117254531307085545768412513447197205482285022417611018126886491416133665625891075125","441922815213568908489589193556560586318864326425397702047965372289295962228254658331201274291697626694859414786292266008476137667843874780506886929181835469302142365772763129838217316953835831059616268288399119642314758261677639945004547833810080700127847214666763863338091523753898362699222880772298183760217731228628442782431573977490761665091005756534420789258276075174436091798475838370152192077494553263232/88113527373573049332749294663402406454524640221866407165839162576979477138694653404281889227416977618913249275712917582743426231744980461918772793673202077716234026090308791893409200158969108910565467273725064769890443408324386897017825489615600787634985397885230455168591240328585041836771921929567914891379235573982442311269392541694564675053636078990836491104116280492254795616055818375774141667319774630875","91197133767962483852278456285591810579974783077874307589555559715577599604626819245000672929518645004771085106770784762994476973842713035791487204122653245797126906189270204029735872508462106527240320932458036231707311992868347221176460407003487373754014365881209649632547685657666691589606571865740595829983849941049450471212387808617247938941417000965198123059467/18163679611214677813643455199979098261849405189805364986036911945012016248297645596270602508015864371788974684317239728239847888960155365342460843559658233069613218442910226128113196984801126248862273503232000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","733396724434554481470656964167233690851279923085197144879644750437402627936723531635898542414136943003236478432848965516925891956615111678444586384493883113385335463639674699443808084827715994137410743992130712903997815471369201406683862985677774155704267039224546352414417632475628136460919900347977754644214725932476856018335195927604771408949980634142255497812566866795799230501026066145434755838336990365184/145912495644159810313026420025053989609942265686388630266226856650796088768164358961644113076809511566125145395699271530802891523741636707532676065833327082092521989958971154798465784847092870457944857590623097781956884297103961713362268264159015928554707158239398721416218953003215109202771651993622244788505649098445109438104466256408060944298437033058380804126574878377874459371251056800895394904459469832875","167606423853658713615749101123336326908381619586838606922565378505211386185130407423587264776519589295420758009764678759213587906216543160801059029133457062067529468464636376639307690657945597847080706144898920305379653754920571797771178341550808041652360635584401789901525709166172283390177673009483341826911179861584213314395893323035527116283758445038413646757280/33310364848744488727470761889861069993071965180756187311178124887286133554324042422503263994717993129539448310743598138364172889305532401505890384806078790034557049074169245078416704866867380089103064821732673967120808611636618526737138435792818828990403374766228037003927569643972203993263329403469747342204808360947840103843317533210523853631711601450617095736473","22466735478643771803624909352181817912387732117378538284107485621001246177152644141853604633676939694208131243081227668237716194316732125445041260568403752325416203858329469477774720998849334961751541191761521224644520742691981372782009394826739249604257098248751626957528543558542443122470657230835176462612530464044652140581367666271771882198747182114685116336512604038833327707163107207664705120728068987996560512/4460342260599110071819142535903990817893424192972341872394014748315090430999224107274777695306032783105944721337053156074851240201179902835353097683269298594190456286888326067932777720561181760369783486872666974623910515795208353605697065447942804414120030678603538761538385793829787734830129764152263691296719726909633580318897787729004972323599773548689272008712427926734258913271101899780538635213826239542884125","1972862002066252798837977155272535342727415329632252213508267781390870646909686724955861608046325765650407340102472833428905279473185818898693854344138403744757857928883601637909604082588338869612221777263582365745419719805587946558326048087138197694016224613118304623864709183681172362693106460535117459192992832969130895829916210933710820035479169562970982784580861/391262854245936198649509275719624152305206807261382621390946060636032376057385723427601113233050260359684153963520782285097664628279596618521963444574543409076428660874564026651742234728997339844161514273669735686516761239076529088145208958938384732800586298943281728435207452253170935715239392534815683367114290676180839217919539381651841151674859715992309727232000","25408691426286653276004556426513401767718328640048945917745783225459709487487356095164164652218100925888847689099153320777389381851598236046402124684511968385325107497047025485302333503075085562533472482645023963717347867696861885363417595298751490212495932766872748125111115039311507374363000062513977436921772096443948159289707996749061007112458126301618769295162649600673247799961118662602756889448152517364992/5033870770817104909025512331238419776407331281944565644457345507262881100618908405924951559853352841154730802006750688581603270849880756026262217651685813584900300357685874044482329601894134443542753690048962260914642678445058891387041919581376195543193199307524572671344323361282633828144708683536721118910549933336800461248338059209853766305058943888965279863852107507075916981165164543199352920055389404296875","616565940481577765011174617619124841631603944267256178093555235591208387588894068005162766513720546626399308168923904625210748051788652328072241494243040185611373035059619136712559505023703153194815611268503291295059648269772663939137446253437248541496631852986499688052678961495116210133458596866684413931188348798244969797973846568160999564540652111599082181871436/122025682149627484528651507368051367620578469392233875493556828623437869650284356703295836998178256875766319508797903923638967073687991229708051285605187358616531926112736402511567721889845693991963610192161413692928378708223712791930113386840109729368772998347036090902364801014045328348830748307179590755723160142468563977011700764517880467116766150322736003147125","979882056834583241477188686550561625289337025747787132773853690143359657519481397575561812727394470125172272246774578404543257210124412718725081536309818383310896102958167337333430555168671327992395916735022711297435263157670501117734412587691271084981140167017421900852550822579410636184333142944411060788723653596377015359036101170054828623669169047118551010102258802465554033173968468183492058271365801755986560/193732066620504775981759812703028757608600125742477178751189607602983198559778039141192492589734277739017909889924488699372940787977794555519474807920198944109549023547259912324279741006975129518191081373554817584214941629021088206977532599055014150433581544599721903881284581257812850697423350805715586436114842183295730680490110793225514602133304729484547181740290534056445482186430729398701311563285494964645419","1138059441890428903336718712159907364975959482163004276901676063186939296217569849990951930955270849692775077813359573394435924934540269310629731801376134549169322946310756738187834128956671195358413024062230774111935109203207768898525882417078119314003162592087920755572050993355843681931139257303484526223461840939880759908449181135029327442039666513325916729112853/224777393704985303260433439401503507705148576727364388720387174977154204629336985298082893443205223017966145098064861566754244624732671470935725326043491911142467178027013112527668183783450932992534517827863293825061296257420183669383719043873666284378647952385401303733274771042385666436214517205678674213118374889121542369996042313879258622144464565403138392064000","614262617634904509410555695398092190166323289787703954329113412647342230855826568873946233136303566178604275296873234926652080462259552775254755109931312516616838091852915397846984381183732773411263828600108443070778861986849272794442105107285234729077818614332155890946804257724112143631642663084660012362691100872465148864413343598067567142977134846266425075195546265101720326272502009234689388355365794889444257557504/121200854655310345878069155190734381476914416893031941761756379148622591310152793328910334357724762079139509813381997287954319983165971628429295803162563856219211627796200599196263868781937234015821367575512548522790158101892507996780675863234181700253545912643548466256938936835469646114659598727592390628209362096738343417775009361678599075671154405137663077798419897932404104579113056038271753988669813988076515476125","106893445531995430131837569895703697604978445859412739331042151546083234373443601923983714252801103551874986033841637079479794895452077803182698291822629713500021995241940133037200268381793282318691568234728329378829301282121562652452936297422136961147432559766896143081059518238234777055931999714973999553456547746825617168005650221542417216291412324174772893635832/21070287546583154895102927029203125577385528350171457634203261197137238923923245382493868134869009844094435068284335909266152042903157700510534904847257436666980671067329084409346149729385625108233234542133838924281113454526471855573271066865534480974484196644173270141056470857666632902827625475719738076524047736123182255306429677688129231682978570461273193359375","1112742798776748551928744983308584493817112400536084744850969025063360679785378789764875076529575583792571198510306186417773101346425704969671256564494135750783642910394213727189639661184379341961737135764570942961692159177189753139209638929302928699705042832922774012622017270172331722295881412111812933593370743210214549038212395941675257558442878012136484052827439007483777859391215222647499741572327725689840850048/219121905514652575155579185322367175400669386131891843382447432851122462422992147756333729893028362013318264155489537138133372703295804002840920402482110260590055749843170064921843460498824128274420925357547023876488939786863662801268798987685503391058250902634999352652063668663245829496836853509616873246554292796823779397317819134891873583857621623143253788854530146303641400986028503534408870194989478421253057625","983995170259637497940121707857673268620603982844439610076334749792119502557380361624096960070148627663305171311646851566811683351232268240169848810658089698606409195744471343416197434926513684882439596141368794175162315633192028977211909698595778839497844847281262559899914504080092844816319298286511436690429175757804604673752838786852277255064434365401871903307643705/193579499709739777577893639665643417521924510242119561765932078835121983190401762561436208758210519231103767232899529457440602166918701550386152070813526760823513884391055054076485295945972185402977095815609448651316824455250005505410192101148149284756928250258632031981439345164037318129987999546683113483700660879431801728391911161900686707231543216283304182063038464","30691013076836380319652884848585431917439358375118437035944950498156836885409110087616602043242747413728866747975631727566613593257623099549583001362246649928075859944695060947434885707102684568632559339383409378997568182445019183928058902445738702610436187907199482604867148445903921474846103586253320950728989228898324829144701782792767763794895137313050381112872972806712570559942583906619373159053654481250809168128/6031936190594376585238407905469035598668211679521553144958053099463931217856780171872253258738635531385711702176347575597387389685526098889278278029314982721284691198967204664771178761416891317672705719303088746953644978471289001577698554025410820041497108311270431130911021653860874238212040640737171103823631718483572464361276703378587106311153455557896527384426327053165214814954154328483257657424873929502112904625","33633002641218571027682690377239300567277297301791434890431645909447040830457253186262970747405514897340315490970846553666201190386457221846694126637998462873786334837901001833771510353365825087187582807843940479192544772559118293851131234910638705258664901225494129023244916125545283621607920983287799648992632814461828998517949449887522866259724675318233522060729654796/6603800575190864815125307817934327053530311915572323544225173935830559756077637251538096164499112411672913910767032482188570876526606118068929913515497400397562722669603861813453418621246538114872330536044519242663538662076583511078523573320035084744399535581216815034837553165853576616422592790103728141443697362408727056813977234078214386771115586436985105038873998875","9090550743395453237608373761422705922989356346696677314277463900103283296889488490217663400349361962695279888433677856471792856853109469433355422802663947305503479561493033851081993247556828544308258821557994512133708656174864544457143793106703578476914924328960109390350040954158797845288786321215010324565010420734044059968931558099077932776525974187717655105951506223649947806568984848883258144616897526257038550656/1783219994432430133950472014582130883873515063182143523712063859964133099770763874744121895885645346884371273930727450069430704145915261127061538288702855011220545530326588799412076879985026006593893648911637986337776174555198865379578424838210466703683642106934154603710587408512357351455891557594977191641529451749437270208258072920514602243985184744955476557012910446023911358037761232253615162335336208343505859375","396226087129511787616470716244996965529391571019620342657409150252952330537366537352182763477820160355931003174946109480036915624974500187179367618457008802667089004678925595775249725629495848146669773574395699032785024522882892752987825063933573399691764866816284097232869198405981830106568826923407996367321353003569052419999880089180418759265274331299787468134974811/77651132902382550540201641628906752945078964002822585000619340261128555048628863996784740469908853602590877726845475670110127527874088625214912598995012971630852593597027649154487264595100300180591016581254965295280089902497540043916128232871685159131211213497239568483141031137909208031392464815187505714066235868748950184065923236670418822911614780061752905170944000","1288523130900767412477856952035690867153496584747510253984686336382980221603917538996138294311274357713893956725672062832264871415025750136690143411884111580335458539824573239771267043414225271729141508235839982033182605445173050590151912297720800168687369852280323356691345317649445843078291369394324862039143247087442309135074453265658730028145500871559458519282433012494054724678302957276371418936282902434203225600/252284450515080370603949213084529993395050575951188044032908270470514999880554862449223347761507020354321422785760279154913310488296485989979706208254206974075438570521939826124860483842758137231373182496438568202110337751291106165654945352183167578675508602832478752400011567482434301614269579368882858973850914513870297071866544875650189106576672289734326492492059816669288907018095832842249738081022227281715919357","559506782175368748187145067236900803925823792088293851453005882621173124590368101213652371965740365119375069053747415415684193092607523211636912074219215053809881814859129515591479780669511533619258835199715146655774919418434080807837587396115955105126806762961292429904380132116986984435528307613054828929294602185927322238461491059740342387266084431988727321711184308176/109446188216864405154936682374609448082436347600301765944233278303643744736544109262794383069197271409398615846380701459882784547857821831816863216080069944818453908760476475874319791512782445408136169878207358663250499628002971644430164185578966399908622640732411885568638054229180673755690889471388585521113862492432946110902070139679164884208988489955874131206343597375","365842109776085256207829452385781129402656684569922320812625438296958174120084800064669048017227033185969596458778213306152397766619692644694641677223213185977626940193107608138827771259334379895020377700759789774994800008933137569543592829220611543060189849601828342989023692876182148818363689293009174358168826340010491728715549904988196347316703985894355217235339548078187164176255405596310602921647203428200269666176/71497266937783826306774367225149833789788300609530680399994804704196212252148324552193149332755057982662844988588678159610516634667597707204818296457616315484973288944637139939912166034691155272078609876888919170894915224022982785138928008133003473320018151370486895637936102520353951511525996197267572355782608352075229547764732602557133494648237258900273354364050662921889937355682486287799239363976556848320046933875","59378684894605773397070783936113244261297966863668546282887298999811950599772732377979382620766180662159460666220894896896564357533604962977968843474062092083279165837424210591042655271577974272394203253875965589611493384384257117088518521598379301169916060951350650621757237206805037261878212424267780312614942173870651684587166691539909068452932891649554575072205080763/11593916877920131260484148322810317629326850763057953025674154928920977965095141485536566217873796019006709247938019404840440511433467040918770165456925609124166970862430104329357419669175323763143377917913760028500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","440706629842402075137926797732405268015915199334341565218443748798479563505125605478061664327658137598204192554352688830679475840386882350034150077506804799859586772904929402683276898098601814091430598259347980573084686932949502809068565420937301632494387691284902026088950093888426872222813857928092871267130505744095697172494119689779474840037266295586359244899477781345249657455186847452249040895151288114085352974933708544/85971876318334010542313048056773419567285701852816309711738644074302467763075671531248793080425349570584102078764464196653843973936119037322000695949209283327606280423406302517302874806092835694196353778161663338667091195199032831587897410329509487165187753418615356836636352319310103639079123698118997500068644500893282438137614420288839230827096109835206605385673197123994357393257304049093683934224826006704198171592304125","13220371178312284248107863849287558696210741535280184003301555188086761767176560823174196915070378763091889333203635784037294769747641959860810039816533609140662043493962707445564057197150603226797446933532133956054671103942520142568674339411250001585991743608723150284270101326419464088290151483823061613403673956918458456165552482913079283537536214967294211244361353060/2576683013797055224377707713704899315377379548630511095136568220145808780162671473907260623503552385384482723173913562423316997528913651044277418227616447815609873991028073011738113927961824632868956802271260292075825561646156680740323686126811928372672670917332613490241615850953660246271541592056143611581223295045062157404996958100136358649109693659623847024011265147","1538372578072246705266078247950089219881197139399081643650271348770110178217959856819170325400476655944115553238940541695152110949081675985299189913515975242840473616169775880272489805123124548256666658584129873597192213080038937409046114908719298170078476325423466734429870048697383304265342125425087105698152643145531760853127801123272389134514333752173173161562273487752064850461823726948588221913540799816489566883798912/299566102446745552813544808169323270315327122249327394279467999308669285416179486075255023523726449428151807672528368606071047812907935426406886253284580296349349558797128593446316786243666290649442956134448480598303527795996222703837663605600624271807461605295956674925277658331760000117761013381199880905748188151556184620779667670278558839116983636972680749836497346863752662521197700717702790359162307617024566689271625","281696937222363685333688097915539146272117417024070728031063821781398985795813333650547982965341298894634762289669256129805545549280355643122501181852136332529515756074502902204877664395456278205770206019663082511098956468724829475220996427130295010430751942126263620206886404244432409164651524408198286831329682605959881993845189585640874220032515465014097345759490750307207/54806274927935495596891312029173862473687610099325998583092091915101265393157631244775387832621032230434007486602816972765210205596482942091518459849775458089575743699797096697542306049628939919466378189656065461708686421130956996965004776108499273871055615413566043083634090083096967567965373203683231171594922347812966905149873265654962896456451681332216735396249206784000","228506238533410805238253122961471637501498406104430046727793420497895852412513560203475440156216063574654372726194215013407325207763369075250819386897086702757125418327084312933061738392406321003231853349865003322697360659712771167066453430309997639548320673279964210730701373707765051246595806673865646607841876463608039111252607452843372970797479959213447237540830563469297144446069689149549515457318899981763489792/44418759813188470246596822974281932219088697005123285598909329328419879212164564561558656547678211265529803086702843380128457744445765859393426675396393053094588240457569380155526179040891009717323059641035189017918495485630657360525410506453554255734005459614858972904374739673834145083512160883402151636664208253116362089211658645312778404886460203600762546810897889629330022309705583438699250109493732452392578125","2396110297187570506257836426251930521245117960980667897194680897478996322590925380310917400763581787981992131769075961259393685331523600287377841990678117113566991100720996059187144934569703045966210306282348527729533806882408323961336166190162075154579344185244957673138372347997134388801085788353482276257401005734929059700346687783400772331280644647089520646562669857652648/465370154262863030800729180763091967573522779260407615567563274096037297593764955820626213827962697601334935773802201919483657310282236100250543992334865461800976838791035335861420892967699843608855185710753433852279737724446294443337363478679601049432404435672469098850676302728116369979460222148206944323730586138087862719386327396334468302608499235112520318322763857676375","1188272888075247520453568790651819187486389546755745961952033150576243575862120569399808467067800830890874391487822723879717525264875722720416173276963170672622214121308038530968291758445510982186014289745026439477197148445087614813262170975056866881909056450023324743409114115141145340480846088869807540798073417035168139476153897066325127540609756310068558610112731607522096096821938163134080426356894899245575410494080/230586762395914863625709048789913840511134004337945700368117795195769576856434588144361459740833007125516905017415184787078710001969815416281381427387949263792200577791644278234661952852149216540491852757174842146376788280677956350901082838474705227642420261641783722891948710833898248566893322144435457967452449965772543077421407816225704952270697016152452032506898311260979594550143344971416786595888053149375287120733","1072184299258468249004114536023934869518152618369895613271618698908405514630154819453979477077738526673716264830106745031385951736108376866253955319711026042389282009348594845497252059906901748860111986811345742998968284077119165082435598381810306691078037018432766116865792677955520465319184311529667642995217214507658693259694586107847099911341219913576038605872218680562047/207882129535607118520818565811162643811811563516006836924341123976848022970024793004700710992938987476728640943834012473687892481059618823520721737479364352887178017866425027953255856440099446112508663603319745066750522936408781591578321031173620445865113295407603090322283539974563690157418931060565698315406021569491751612761888641141446406531645379264720684248398299136000","158094023904374464057702010126993231151433474361820266584020400101533651587072432728050776506672527718975042616651177034635188178967462982926261516748842073587981953038445977514446838733557926696939591069712397947055261777416704028506441173540338327591514650398349069348381309688677335132100441905603664282735310299686268721634369502296867409514777359935022301425165750780988231639828675424239931533849896744198012747670272/30626384366513923671063955469537776291182594080083494737341604579575446319190916924682809546024369330706012653799783122328775875399363759308193432327358837772825609356553955350401725689682838701996446404559005896479618311357573203081153855961484398360670837599853294627153740224543175497655414585918231215639906924313779933211774291565425360415684556655021031131349317390382320286092667852173815259422737956767922154798375","12216278924286401897470540169822542417611356797676160128176706721343511598951866107858729405615631246003458062949723290192242594609994613705183460814797527214549142043573863947658832694800184691222426521703728394203722420336773310908687071670107794543022567943478843065246011544888390757810534211554666736239506503613750756246364621509359804902243487113673014588325806249988332/2364584127734680580481708368927921125934330000162935118371174269642831409084634375654239735054363928748162229294829526339927907778510530444646754603322373712788147193691037688552857183116332292048731726305451516954679277320777955342295564000586923227775208580772868590742136150431152495718132142742153643081187691849828217592954519485869135930755646768375299870967864990234375","578939195017447864385837341975558679292903716580114421030538728778491606282153588930983966100514147976321305616196463174070345884292672842497715966933722088536619333912687108737657068701352918582656105418491672377271304970407730786932913490869797471081081431072836814581099271832696990064828717287258860166842791984158634684078346453202928137987930328826212011774670396356151265781053547412633310327737900786639842674288716416/111966291649651600701875186827360807558960817589719096407887999108024557254221008849510152469119211567152616745769256123968832250104006560061907741567034087109512483357851919402017950812795426393415409198268246337542639470834168040295134130657073201020340432236723824670803498949071870597039309004562024033656488150406105175401372709011082725359382691270659245312133919518760328422827067578306005644825927050994860723405473375","8041514821545833865350873212853873042112343327573364523948780030849543753072688526717886590013028227714585965095216381829914996539132359247488639692828639170075726301411777307168737667077730792892326979446426349813642680537699905651125068091362135055902152994216233622733424128982011248923051410141033146604688083721413402395290842738021365861670415833356403364696759583009635/1553937833499559104910551811592138833189892464446761247731330672284191313590708439680460540329836344767557599746234213006493842842879398684745864919973051635127080738612248150108793397855113122368507483429209127035263504194847798809612278864438287815470711036548695032421148125849669175729331459149833945183228413961985381338162155596008680906676498435954178226973272371625984","12059659399309169167301353842123191409306995788633965680414620302285606896146667751472818541537183787935352700725982053536032930866708413010971856856768384974849695774437178790890015242323873769697407411558706626105140596160049735605389301414460825674631122462760014451298494875244754354054447697502521388381253293175367558014453865905104467382184997528879171136492277222127399012368677604910497789360212571238146627048080568400384/2328494054002703067219004484782931471919751585969487160602269605916676223315055450845942763690581877771159615428854802721943114463834992106300185328876910271612375509166975628540839858771078495267566008071532876816826751069408153323840515037497664871689085370699991860738368371510578076683395101062439493831773194498579620513073693022191702398601471237166387045790480861932005012807234071429628725981935147069738988682858417182625","683009426705008850682549700382901603742691705123356866338951397347368059105140826655486518416578697931244347554322654428162554903861783227680935341690740579867651545205562690172425016836559678937794312287639193745517811234257062356826622207475918293015140472942579713388671782202262396642735640315948612572908444501108579457520714632371056288874351015666995549139003946314085696/131769214246522869780429817236150406548549044658474416909806179734873399109656411633488099249198882165279745627038984487365589625562901914030850178330133080409420340227179447548044572594184601425691821617928130423410997853384425373999967759499571890326740433081063424903098252502791477854302204200941376983295622430177445507316706609802292121282957519571162158620971952084486375","1418116259749091420309271913909337143756589314597557128553117870573928055109322864794169592355058370891251425125187770724828108988587888087023982451205475980371440423992838481547236638456717520835668859093413956339261802305597694403381021863258753441889536361061407579332570493634254542013337999844407181346815549594836374497512447969751514466481466717590255369810506813543577735080228718660747940956248427356785784199073569408/273368882980516556922532339653303822104510203916024760371844491705599093435133738774975538364241630079468712981056336655766117378160822393876348755370711942273876284944422610974149712212944211513462921649872232656449940987552227525504529710373144228818606127541937831103642415534318303187393593236209298242574677293352798419428712873685798636474667204083938875672934235816396371477146089168375198141802684403955936431884765625","546411077581845999248238069684194831621691193366466972898628141511422317954477211865167402284211971296286346492698354214043840080181702652132835681239302798339667835439189275457116051279366194551632712819028177402221815140045210690908631767786711675029194359998826252332434573121740830827417293557234891406021102083555472155479148332697839972702631641910213821827820374586459319/105246945889799140338072754365901705544530661781295362563214285953881890233987516230568663143342952799036341701952267011236663118111226623815975847494372076420199418712941018288738590264475520229651370015377608638075866459684692488079223686296541020897904588347083045723167762682959422858996673894180805702299907478685374065593161226849447131100462022089783265346597553176576000","2398330640958841474772606439916070050977544535580605737383995160447105736276950196885906408317628083110923322157113892928963237845914017845444295040924101784423382681801754191301860383927129006953354739240926643562987838836997453985855576402628166875869041032631651591871962852884189548538272285387092843044669499688035134181859376665409767886188304314888753894905317929877238322615838524354191263502347881033855441181420399360/461588070868590122892265681879734295007029130965626060552783760068897000195207878227714842617470320231527222074701444349530952699708435668339712860464533455345665068841333232359698449088497137068713309811942968433868609329301082001752617420002377892756821532220676085014874112083615054550278903960627185675459015343606391094523511117705747842645927349130302549554534056269331809016770715819934970200483161548527932617036185253","6041015879424725383006424536130409209607854044642113747266098198777011981328765528361630516108680392500990580908509403483891763219659726090675140672989657743882183951954294745396417829943469201306594018454995862321821016087416840247422350906412007336103086620396467456181771583200365740253389107968122850063607085957109965406634738740996318415514360956028575560979203447735121436/1161752799109428422288020947061281540989708937450568100764830251908850596717606701047413407636907934320789870175907792017513896999208892282137299070761467096211814586909598705615312819596495636017728313513520193786266452836805291464826226833593878504804389728477191170027729963773716267868284479768397603444919008915279522376004326398403851684761808785381609370767169521034383625","13240077436443988749179508462267267187169441948722358165090554769250505713747934643200804819418670147225695324432684266924694524337920816452346599774452681831320005286326986675907899608537972384924882996757503264622991355949039882526389342174307168805166215838138277557052303430492669193939212362638263582899713198716541723383138016564027766560215944409353427176135895982596327685665844815618402881202645610620284792793420780517248/2544223084468158291883698813309541801455311468982232546872485444308211415529998472787377800559884210837213042932180479090277285630234238711851480232520137856848809986631784843528381778520727465146661792797924458540957133423665746229799675650290296217658444899605236550972043549278128087645211909479009099766619355677984218929672461506691980442071860591767266913041147587815452007726513853820116629482732060593116624596368806566625","1953999166296955830935495158735359200362904181792947794529339487489730042568305997099959302322956898299616194932283060554261566410988618045107398092345476532371402134206635235570281738377188438407703089325315446371127042537576093536896282955524842632708645655481028161471313608974238110718242273935956977555610147714316158486553633871312187084618154014921190595222799283957140353/375191165084882521037046014569185165885459082629136124177286500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"];if(
1e[t])return tB.quick.apply(null,e[t].split("/"));t=new tB(t);for(var n=new tB(0),i=t.subtract(new tB(1)),r=t.add(new tB(1)),s=0;s<80;s++){var o=new tB(2*s+1),a=t_.bigpow(i.divide(r),o),u=o.clone().invert().multiply(a);n=n.add(u)}return n.multiply(new tB(2))},factorial:function(t){var e=t%1==0;if(e&&t<0)return NaN;if(!e)return t_.gamma(t+1);for(var n=1,i=2;i<=t;i++)n*=i;return n},dfactorial:function(t){if(z(t)){var e=t%2==0,n=e?t/2:(t+1)/2,i=new tB(1);if(e)for(var r=1;r<=n;r++)i=i.multiply(new tB(2).multiply(new tB(r)));else for(var r=1;r<=n;r++)i=i.multiply(new tB(2).multiply(new tB(r)).subtract(new tB(1)))}else i=Math.pow(2,(1+2*t-Math.cos(Math.PI*t))/4)*Math.pow(Math.PI,(Math.cos(Math.PI*t)-1)/4)*t_.gamma(1+t/2);return i},GCD:function(){for(var t=to([].slice.call(arguments).map(function(t){return Math.abs(t)})).sort(),e=Math.abs(t.shift()),n=t.length;n-- >0;)for(var i=Math.abs(t.shift());;){if(0==(e%=i)){e=i;break}if(0==(i%=e))break}return e},QGCD:function(){for(var t=[].slice.call(arguments),e=t[0],n=1;n<t.length;n++){var i=t[n],r=e.isNegative()&&i.isNegative()?-1:1;e=i.gcd(e),r<0&&e.negate()}return e},LCM:function(t,e){return t*e/t_.GCD(t,e)},pow:function(t,e){return t<0&&1>Math.abs(e)?1/e%2==0?NaN:-Math.pow(Math.abs(t),e):Math.pow(t,e)},factor:function(t){var e=Math.sign(t=Number(t));t=Math.abs(t);var n=t_.ifactor(t),i=new tF;for(var r in i.symbols={},i.group=v,n){var s=new tF(1);s.group=c,s.value=r,s.power=new tF(n[r]),i.symbols[r]=s}return i.updateHash(),1===t&&(i=new tF(t)),e<0&&i.negate(),i},sfactor:function(t,e){e=e||{};var n=Math.floor(Math.sqrt(t));n>o[o.length-1]&&t<1e6&&tm(n);for(var i=o.length,r=0;r<i;r++)for(var s=o[r];t%s==0;)t/=s,e[s]=(e[s]||0)+1;return t>1&&(e[t]=1),e},ifactor:function(t){var e=new n(t);if("0"===(t=String(t)))return{0:1};var i=(t=new n(t)).sign?-1:1;t=t.abs();var r={};if(t.lt("65536"))r=t_.sfactor(t,r);else{var s=function(t){t.isPrime()?r[t]=(r[t]||0)+1:r=t_.sfactor(t,r)};try{for(var o=0;!t.abs().equals(1);){if(t.isPrime()){s(t);break}var a=function e(i){for(var r=new n(i),s=2,a=new n(i),u=new n(1);u.equals(1);){for(var l=0;l<=s&&u.equals(1);l++){if(o++>1e3)throw Error("stopping");a=a.pow(2).add(1).mod(t),u=n.gcd(a.minus(r).abs(),t)}s*=2,r=a}return u.equals(t)?e(i+1):u}(2);s(a),t=t.divide(a)}}catch(t){r={},s(e)}}if(-1===i){var u=tt(J(r));r["-"+u]=r[u],delete r[u]}return r},boxfactor:function(t,e){e=e||200;for(var n,i,r=Math.floor(5/12*t),s=0,o=!1;n=Math.floor(t/r),0!=(i=t%r);){if(o)return[t,1];r=Math.max(i,r-i),o=++s>e}return[n,r,s]},fib:function(t){var e=Math.sign(t);e=tr(t=Math.abs(t))?e:Math.abs(e);for(var n=0,i=1,r=1,s=2;s<=t;s++)r=n+i,n=i,i=r;return r*e},mod:function(t,e){return t%e},integer_part:function(t){return Math.sign(t)*Math.floor(Math.abs(t))},simpson:function(t,e,n,i){var r=function(t,e,n){var i=t(e);return isNaN(i)&&(i=t(1===n?e+1e-12:e-1e-12)),i},s=Math.abs(Math.floor((n-e)/(i=i||1e-4)));s%2!=0&&s++;for(var o=(n-e)/s,a=r(t,e,1),u=!1,l=e+o,c=1;c<s;c++)a+=(u?2:4)*r(t,l,1),u=!u,l+=o;return(a+r(t,l,2))*(o/3)},num_integrate:function(t,e,n,i,r){var s;if(r<0)throw Error("max depth cannot be negative");try{s=function(t,e,n,i,r){var s={maxDepthCount:0,nanEncountered:!1};void 0===i&&(i=1e-9),void 0===r&&(r=45);var o=t(e),a=t(.5*(e+n)),u=t(n),l=(o+4*a+u)*(n-e)/6,c=function t(e,n,i,r,s,o,a,u,l,c,f){var h,p,m,v,g,d,w,y,b,M;if(f.nanEncountered)return NaN;if(h=i-n,p=e(n+.25*h),m=e(i-.25*h),isNaN(p)||isNaN(m)){f.nanEncountered=!0;return}if(M=((d=(v=h*(r+4*p+s)/12)+(g=h*(s+4*m+o)/12))-a)/15,!(f.maxDepthCount>1e3*l))return c>l?(f.maxDepthCount++,d+M):Math.abs(M)<u?d+M:(w=n+.5*h,isNaN(y=t(e,n,w,r,p,s,v,.5*u,l,c+1,f))||isNaN(b=t(e,w,i,s,m,o,g,.5*u,l,c+1,f)))?(f.nanEncountered=!0,NaN):y+b}(t,e,n,o,a,u,l,i,r,1,s);if(s.maxDepthCount>0&&C("integrate-adaptive-simpson: Warning: maximum recursion depth ("+r+") reached "+s.maxDepthCount+" times"),s.nanEncountered)throw Error("Function does not converge over interval!");return c}(t,e,n,i,r)}catch(i){return t_.simpson(t,e,n)}return tn(s,12)},Ci:function(t){for(var e=0,n=1;n<20;n++){var i=2*n;e+=Math.pow(-1,n)*Math.pow(t,i)/(i*t_.factorial(i))}return Math.log(t)+.5772156649015329+e},Si:function(t){for(var e=0,n=0;n<20;n++){var i=2*n;e+=Math.pow(-1,n)*Math.pow(t,i+1)/((i+1)*t_.factorial(i+1))}return e},Ei:function(t){if(0===Number(t))return-1/0;for(var e=0,n=1;n<30;n++)e+=Math.pow(t,n)/(n*t_.factorial(n));return .5772156649015329+Math.abs(Math.log(t))+e},Shi:function(t){for(var e,n,i=0,r=0;r<30;r++)i+=Math.pow(t,n=(e=2*r)+1)/(n*n*t_.factorial(e));return i},Chi:function(t){var e;return e=function(t){return(Math.cosh(t)-1)/t},Math.log(t)+.5772156649015329+t_.num_integrate(e,.002,t,.001)},Li:function(t){return t_.Ei(t_.bigLog(t))},gamma_incomplete:function(t,e){for(var n=t-1,i=0,e=e||0,r=0;r<n;r++)i+=Math.pow(e,r)/t_.factorial(r);return t_.factorial(n)*Math.exp(-e)*i},step:function(t){return t>0?1:t<0?0:.5},rect:function(t){var t=Math.abs(t);return .5===t?t:t>.5?0:1},sinc:function(t){return t.equals(0)?1:Math.sin(t)/t},tri:function(t){return(t=Math.abs(t))>=1?0:1-t},nthroot:function(t,e){if(t instanceof tB||(t=new tB(t.toString())),e instanceof tB||(e=new tB(e.toString())),e.equals(1))return t;var n,i,r,s=t.divide(new tB(2)),o=new tB(1e-15),a=e.clone().invert(),u=e.subtract(new tB(1));do{var l=t_.bigpow(s,u),c=a.multiply(t.divide(l).subtract(s)).toDecimal(25);if(n=tB.create(c),r)break;s=s.add(n);var c=n.toDecimal();r=!!i&&i===c,i=c}while(n.abs().gte(o));return s},sqrt:function(t){t instanceof tB||(t=new tB(t));var e,n,i,r,s=0,o=!1,a=new tB(1e-20);e=t.divide(new tB(2));do{if(s>1e3)throw Error("Unable to calculate square root for "+t);e=e.add(t.divide(e)).divide(new tB(2)),e=new tB(e.decimal(30)),n=t.subtract(e.multiply(e)),r=!!i&&i.equals(n),(n.clone().abs().lessThan(a)||r)&&(o=!0),i=n,s++}while(!o);return e}};function tL(t,e,i,r){var s="hash"===e,o=void 0,d=s?void 0:e,y="decimal"===d||"decimals"===d;function b(t){switch(e){case"decimals":case"decimal":return o=o||function(t){return!1},t.valueOf();
1case"recurring":o=o||function(t){return -1!==t.indexOf("'")};var i=t.toString(),r=/^-?\d+(?:\/\d+)?$/.exec(i);if(0===r.length)return i;var s=r[0].split("/"),a=!1,l=Number(s[0]);l<0&&(l=-l,a=!0);var c=Number(s[1]);c||(c=1);var f=Math.floor(l/c),h=10*(l-f*c);for(f=f.toString()+".";h&&h<c;)h*=10,f+="0";for(var p="",m=[],v=0;;){if(void 0!==m[h])return(a?"-":"")+(f+p.slice(0,m[h])+"'"+p.slice(m[h])+"'").replace("'0'","").replace(/\.$/,"");var g=Math.floor(h/c),d=h-g*c;m[h]=v,p+=g.toString(),v+=1,h=10*d}case"mixed":o=o||function(t){return -1!==t.indexOf("/")};var i=t.toString(),r=/^-?\d+(?:\/\d+)?$/.exec(i);if(0===r.length)return i;var s=r[0].split("/"),w=new n(s[0]),y=new n(s[1]);y.equals(0)&&(y=new n(1));var b=w.divmod(y),f=b.quotient,M=b.remainder,E="-"===s[0][0]||f.equals(0)||M.equals(0)?"":"+";return(f.equals(0)?"":f.toString())+E+(M.equals(0)?"":M.toString()+"/"+s[1]);case"scientific":return o=o||function(t){return!1},new tk(t.valueOf()).toString(u.SCIENTIFIC_MAX_DECIMAL_PLACES);default:return o=o||function(t){return -1!==t.indexOf("/")},t.toString()}}if(y&&void 0===r&&(r=u.DEFAULT_DECP),D(t)){var M="",E="",N="",S=t.group||i,A=t.value;if(!s){var x=b(t.multiplier);"-1"==x&&"-1"===String(t.multiplier)&&(N="-",x="1"),"1"!=x&&(M=x);var O=t.power?b(t.power):"";"1"!=O&&(E=D(O)?tL(O,d):O)}switch(S){case l:M="";var I=r&&y?t.multiplier.toDecimal(r):b(t.multiplier);A="-1"==String(t.multiplier)?"1":I,E="";break;case m:A=t.collectSymbols().map(function(t){var e=tL(t,d,i,r);return"0"==e&&(e=""),e}).sort().join("+").replace(/\+\-/g,"-");break;case g:A=t.collectSymbols().map(function(t){var e=tL(t,d,i,r);return"0"==e&&(e=""),e}).sort().join("+").replace(/\+\-/g,"-");break;case v:A=t.collectSymbols(function(t){var e=t.group;return(e===m||e===g)&&t.power.equals(1)&&t.multiplier.equals(1)?Y(tL(t,d)):tL(t,d)}).join("*");break;case h:var R=t.previousGroup,q=t.power.group;R===m&&(A=t.collectSymbols(tL,d).join("+").replace("+-","-")),R===l||R===f||R===p||s||(A=Y(A)),(q===g||q===v||q===m||"1"!=t.power.multiplier.toString())&&E&&(E=Y(E))}if(S===p&&(A=t.fname+Y(t.args.map(function(t){return tL(t,d)}).join(","))),S===p&&t.fname in a){var C=tL(t.args[0]),P=tL(t.args[1]);t.args[0].isComposite()&&(C=Y(C)),t.args[1].isComposite()&&(P=Y(P)),A=C+a[t.fname]+P}E&&S!==h&&o(E)&&(E=Y(E)),((S===g||S===m)&&(M&&"1"!=M||"-"===N)||(S===v||S===g||S===m)&&E&&"1"!=E||!s&&S===c&&-1==A||t.fname===w)&&(A=Y(A)),r&&("decimal"===e||"decimals"===e&&M)&&(M=tn(M,r));var T=N+M;if(M&&o(M)&&(T=Y(T)),E<0&&(E=Y(E)),M&&(T+="*"),E){if("e"===A&&u.E_TO_EXP)return T+"exp"+Y(E);E=u.POWER_OPERATOR+E}S===h&&"-"===A.charAt(0)&&(A=Y(A));var _=T+A;return t.parens&&(_=Y(_)),_+E}if(G(t)){for(var L=t.elements.length,T=[],U=0;U<L;U++)T.push(t.elements[U].text(e));return"["+T.join(",")+"]"}try{return t.toString()}catch(t){return""}}function tU(t){if(_(t))return[t];for(var e=t,n=1,i=[];n<e;){var r=t/n,s=Math.floor(r);if(r-s<=2220446049250313e-31&&n>1){if(_(n)&&(-1===o.indexOf(n)&&o.push(n),i.push(n)),_(s)){i.push(s);break}e=s}n++}return i.sort(function(t,e){return t-e})}function tD(t){this.symbol=t}function tk(t){return this instanceof tk?((t=String(void 0===t?0:t)).startsWith("-")?(this.sign=-1,t=t.substr(1,t.length)):this.sign=1,tk.isScientific(t)?this.fromScientific(t):this.convert(t),this):new tk(t)}function tB(t){if(t instanceof tB)return t;if(void 0===t)return this;try{if(z(t))try{this.num=n(t),this.den=n(1)}catch(e){return tB.simple(t)}else{var e=t instanceof i?tj.quickConversion(t):tj.convert(t);this.num=new n(e[0]),this.den=new n(e[1])}}catch(e){return tB.simple(t)}}function tF(t){var e="Infinity"===t;return this instanceof tF?(t instanceof i&&(t=t.toString()),/^(\-?\+?\d+)\.?\d*e?\-?\+?\d*/i.test(t)||t instanceof i?(this.group=l,this.value=d,this.multiplier=new tB(t)):(this.group=f,P(t),this.value=t,this.multiplier=new tB(1),this.imaginary=t===u.IMAGINARY,this.isInfinity=e),this.power=new tB(1),this):new tF(t)}function tG(){var t,e=this,n={},r={names:[],actions:[]};function s(t,e){this.start=t,this.end=e}function o(){this.elements=[]}function a(t,e,n){if(this.type=e,this.value=t,void 0!==n&&(this.column=n+1),e===a.OPERATOR){var i=x[t];for(var r in i)this[r]=i[r]}else e===a.FUNCTION&&(this.precedence=a.MAX_PRECEDENCE,this.leftAssoc=!1)}s.prototype.isConstant=function(){return this.start.isConstant()&&this.end.isConstant()},s.prototype.text=function(){return tL(this.start)+":"+tL(this.end)},o.prototype.append=function(t){this.elements.push(t)},o.prototype.getItems=function(){return this.elements},o.prototype.toString=function(){return e.pretty_print(this.elements)},o.create=function(t){var e=new o;return t&&e.append(t),e},a.prototype.toString=function(){return this.value},a.prototype.toString=function(){return this.is_prefix?"`"+this.value:this.value},a.OPERATOR="OPERATOR",a.VARIABLE_OR_LITERAL="VARIABLE_OR_LITERAL",a.FUNCTION="FUNCTION",a.UNIT="UNIT",a.KEYWORD="KEYWORD",a.MAX_PRECEDENCE=999,this.classes={Collection:o,Slice:s,Token:a};var d={prec:void 0,cos:function(t,n){var i,r;return i=e.parse(Math.cos(t)*Math.cosh(n)),r=e.parse(Math.sin(t)*Math.sinh(n)),e.subtract(i,e.multiply(r,tF.imaginary()))},sin:function(t,n){var i,r;return i=e.parse(Math.sin(t)*Math.cosh(n)),r=e.parse(Math.cos(t)*Math.sinh(n)),e.subtract(i,e.multiply(r,tF.imaginary()))},tan:function(t,n){var i,r;return i=e.parse(Math.sin(2*t)/(Math.cos(2*t)+Math.cosh(2*n))),r=e.parse(Math.sinh(2*n)/(Math.cos(2*t)+Math.cosh(2*n))),e.add(i,e.multiply(r,tF.imaginary()))},sec:function(t,n){var i=this.removeDen(this.cos(t,n));return e.subtract(i[0],e.multiply(i[1],tF.imaginary()))},csc:function(t,n){var i=this.removeDen(this.sin(t,n));return e.add(i[0],e.multiply(i[1],tF.imaginary()))},cot:function(t,n){var i=this.removeDen(this.tan(t,n));return e.subtract(i[0],e.multiply(i[1],tF.imaginary()))},acos:function(t,n){var i,r,s,o,a;return i=this.fromArray([t,n]),a=e.pow(i.clone(),new tF(2)),r=e.expand(a),s=e.multiply(ti(e.subtract(new tF(1),r)),tF.imaginary()),o=tC(e.expand(e.add(i.clone(),s))),e.expand(e.multiply(tF.imaginary().negate(),o))},asin:function(t,n){return e.subtract(e.parse("pi/2"),this.acos(t,n))},atan:function(t,n){var i,r,s,o;return t.equals(0)&&(n.equals(1)||n.equals(-1))?e.parse(`${tF.infinity()}*${u.IMAGINARY}*${n}`):(o=d.fromArray([t,n]),i=e.expand(e.multiply(tF.imaginary(),o.clone())),r=tC(e.expand(e.subtract(new tF(1),i.clone()))),s=tC(e.expand(e.add(new tF(1),i.clone()))),e.expand(e.multiply(e.divi
1de(tF.imaginary(),new tF(2)),e.subtract(r,s))))},asec:function(t,e){var n=this.removeDen([t,e]);return n[1].negate(),this.acos.apply(this,n)},acsc:function(t,e){var n=this.removeDen([t,e]);return n[1].negate(),this.asin.apply(this,n)},acot:function(t,e){var n=this.removeDen([t,e]);return n[1].negate(),this.atan.apply(this,n)},cosh:function(t,n){var i,r;return i=e.parse(Math.cosh(t)*Math.cos(n)),r=e.parse(Math.sinh(t)*Math.sin(n)),e.add(i,e.multiply(r,tF.imaginary()))},sinh:function(t,n){var i,r;return i=e.parse(Math.sinh(t)*Math.cos(n)),r=e.parse(Math.cosh(t)*Math.sin(n)),e.add(i,e.multiply(r,tF.imaginary()))},tanh:function(t,n){var i,r;return i=e.parse(Math.sinh(2*t)/(Math.cos(2*n)+Math.cosh(2*t))),r=e.parse(Math.sin(2*n)/(Math.cos(2*n)+Math.cosh(2*t))),e.subtract(i,e.multiply(r,tF.imaginary()))},sech:function(t,n){var i=this.removeDen(this.cosh(t,n));return e.subtract(i[0],e.multiply(i[1],tF.imaginary()))},csch:function(t,n){var i=this.removeDen(this.sinh(t,n));return e.subtract(i[0],e.multiply(i[1],tF.imaginary()))},coth:function(t,n){var i=this.removeDen(this.tanh(t,n));return e.add(i[0],e.multiply(i[1],tF.imaginary()))},acosh:function(t,n){var i,r,s;return s=this.fromArray([t,n]),i=ti(e.add(s.clone(),new tF(1))),r=ti(e.subtract(s.clone(),new tF(1))),e.expand(tC(e.add(s,e.expand(e.multiply(i,r)))))},asinh:function(t,n){var i,r;return r=this.fromArray([t,n]),i=ti(e.add(new tF(1),e.expand(e.pow(r.clone(),new tF(2))))),e.expand(tC(e.add(r,i)))},atanh:function(t,n){var i,r,s;return s=this.fromArray([t,n]),i=tC(e.add(s.clone(),new tF(1))),r=tC(e.subtract(new tF(1),s)),e.expand(e.divide(e.subtract(i,r),new tF(2)))},asech:function(t,e){var n=this.removeDen([t,e]);return n[1].negate(),this.acosh.apply(this,n)},acsch:function(t,e){var n=this.removeDen([t,e]);return n[1].negate(),this.asinh.apply(this,n)},acoth:function(t,e){var n=this.removeDen([t,e]);return n[1].negate(),this.atanh.apply(this,n)},sqrt:function(t){var n,i,r,s,o;return n=t.realpart(),i=t.imagpart(),r=tF.hyp(n,i),s=e.add(n.clone(),r),o=ti(e.multiply(new tF(2),s.clone())),e.add(e.divide(s.clone(),o.clone()),e.multiply(e.divide(i,o),tF.imaginary()))},log:function(t,n){var r,s,o;return r=tC(tF.hyp(t,n)),o=u.USE_BIG?tF(i.atan2(n.multiplier.toDecimal(),t.multiplier.toDecimal())):Math.atan2(n,t),s=e.parse(o),e.add(r,e.multiply(tF.imaginary(),s))},erf:(t,n)=>e.symfunction("erf",[t]),removeDen:function(t){var n,i,r;return Z(t)?(i=t[0],r=t[1]):(i=t.realpart(),r=t.imagpart()),n=Math.pow(i,2)+Math.pow(r,2),[e.parse(i/n),e.parse(r/n)]},fromArray:function(t){return e.add(t[0],e.multiply(tF.imaginary(),t[1]))},evaluate:function(t,n){var i,r,s;if(s=t.power.sign(),t.power=t.power.abs(),t.power.greaterThan(1)&&(t=e.expand(t)),s<0){var o=this.removeDen(t);i=o[0],r=o[1]}else i=t.realpart(),r=t.imagpart();return i.isConstant("all")&&r.isConstant("all")?this[n].call(this,i,r):e.symfunction(n,[t])}},N=this.trig={cos:function(t){if(t.equals("pi")&&t.multiplier.den.equals(2))return new tF(0);if(u.PARSE2NUMBER){if(t.equals(new tF(u.PI/2)))return new tF(0);if(t.isConstant())return new tF(u.USE_BIG?i.cos(t.multiplier.toDecimal()):Math.cos(t.valueOf()));if(t.isImaginary())return d.evaluate(t,"cos")}if(t.equals(0))return new tF(1);var n,r=!1,s=tD(t.multiplier.toDecimal()),o=t.multiplier.abs();if(t.multiplier=o,t.isPi()&&t.isLinear()){if(z(o))n=new tF(tr(o)?1:-1);else{o.num;var a=Number(o.den);2===a?n=new tF(0):3===a?(n=e.parse("1/2"),r=!0):4===a?(n=e.parse("1/sqrt(2)"),r=!0):6===a?(n=e.parse("sqrt(3)/2"),r=!0):n=e.symfunction("cos",[t])}}return r&&(2===s||3===s)&&n.negate(),n||(n=e.symfunction("cos",[t])),n},sin:function(t){if(u.PARSE2NUMBER){if(t.isConstant())return new tF(t%Math.PI==0?0:u.USE_BIG?i.sin(t.multiplier.toDecimal()):Math.sin(t.valueOf()));if(t.isImaginary())return d.evaluate(t,"sin")}if(t.equals(0))return new tF(0);var n,r=!1,s=tD(t.multiplier.toDecimal()),o=t.multiplier.sign(),a=t.multiplier.abs();if(t.multiplier=a,t.equals("pi"))n=new tF(0);else if(t.isPi()&&t.isLinear()){if(z(a))n=new tF(0);else{a.num;var l=a.den;2==l?(n=new tF(1),r=!0):3==l?(n=e.parse("sqrt(3)/2"),r=!0):4==l?(n=e.parse("1
1/sqrt(2)"),r=!0):6==l?(n=e.parse("1/2"),r=!0):n=e.multiply(new tF(o),e.symfunction("sin",[t]))}}return n||(n=e.multiply(new tF(o),e.symfunction("sin",[t]))),r&&(3===s||4===s)&&n.negate(),n},tan:function(t){if(u.PARSE2NUMBER){if(t%Math.PI==0&&t.isLinear())return new tF(0);if(t.isConstant())return new tF(u.USE_BIG?i.tan(t.multiplier.toDecimal()):Math.tan(t.valueOf()));if(t.isImaginary())return d.evaluate(t,"tan")}var n,r=!1,s=tD(t.multiplier.toDecimal()),o=t.multiplier;if(t.multiplier=o,t.isPi()&&t.isLinear()){if(z(o))n=new tF(0);else{o.num;var a=o.den;if(2==a)throw new tb("tan is undefined for "+t.toString());3==a?(n=e.parse("sqrt(3)"),r=!0):4==a?(n=new tF(1),r=!0):6==a?(n=e.parse("1/sqrt(3)"),r=!0):n=e.symfunction("tan",[t])}}return n||(n=e.symfunction("tan",[t])),r&&(2===s||4===s)&&n.negate(),n},sec:function(t){if(u.PARSE2NUMBER)return t.isConstant()?new tF(u.USE_BIG?new i(1).dividedBy(i.cos(t.multiplier.toDecimal())):t_.sec(t.valueOf())):t.isImaginary()?d.evaluate(t,"sec"):e.parse(W("1/cos({0})",t));var n,r=!1,s=tD(t.multiplier.toDecimal()),o=t.multiplier.abs();if(t.multiplier=o,t.isPi()&&t.isLinear()){if(z(o))n=new tF(tr(o)?1:-1);else{o.num;var a=o.den;if(2==a)throw new tb("sec is undefined for "+t.toString());3==a?(n=new tF(2),r=!0):4==a?(n=e.parse("sqrt(2)"),r=!0):6==a?(n=e.parse("2/sqrt(3)"),r=!0):n=e.symfunction("sec",[t])}}return r&&(2===s||3===s)&&n.negate(),n||(n=e.symfunction("sec",[t])),n},csc:function(t){if(u.PARSE2NUMBER)return t.isConstant()?new tF(u.USE_BIG?new i(1).dividedBy(i.sin(t.multiplier.toDecimal())):t_.csc(t.valueOf())):t.isImaginary()?d.evaluate(t,"csc"):e.parse(W("1/sin({0})",t));var n,r=!1,s=tD(t.multiplier.toDecimal()),o=t.multiplier.sign(),a=t.multiplier.abs();if(t.multiplier=a,t.isPi()&&t.isLinear()){if(z(a))throw new tb("csc is undefined for "+t.toString());a.num;var l=a.den;2==l?(n=new tF(1),r=!0):3==l?(n=e.parse("2/sqrt(3)"),r=!0):4==l?(n=e.parse("sqrt(2)"),r=!0):6==l?(n=new tF(2),r=!0):n=e.multiply(new tF(o),e.symfunction("csc",[t]))}return n||(n=e.multiply(new tF(o),e.symfunction("csc",[t]))),r&&(3===s||4===s)&&n.negate(),n},cot:function(t){if(u.PARSE2NUMBER)return t%(Math.PI/2)==0?new tF(0):t.isConstant()?new tF(u.USE_BIG?new i(1).dividedBy(i.tan(t.multiplier.toDecimal())):t_.cot(t.valueOf())):t.isImaginary()?d.evaluate(t,"cot"):e.parse(W("1/tan({0})",t));var n,r=!1,s=tD(t.multiplier.toDecimal()),o=t.multiplier;if(t.multiplier=o,t.isPi()&&t.isLinear()){if(z(o))throw new tb("cot is undefined for "+t.toString());o.num;var a=o.den;2==a?n=new tF(0):3==a?(n=e.parse("1/sqrt(3)"),r=!0):4==a?(n=new tF(1),r=!0):6==a?(n=e.parse("sqrt(3)"),r=!0):n=e.symfunction("cot",[t])}return n||(n=e.symfunction("cot",[t])),r&&(2===s||4===s)&&n.negate(),n},acos:function(t){if(u.PARSE2NUMBER){if(t.isConstant()){if(t.gt(1)||t.lt(-1)){var n=t.toString();return tG(th(`pi/2-asin(${n})`))}return new tF(u.USE_BIG?i.acos(t.multiplier.toDecimal()):Math.acos(t.valueOf()))}if(t.isImaginary())return d.evaluate(t,"acos")}return e.symfunction("acos",arguments)},asin:function(t){if(u.PARSE2NUMBER){if(t.isConstant()){if(t.gt(1)||t.lt(-1)){var n=u.IMAGINARY,r=t.multiplier.toDecimal();return tG(th(`${n}*log(sqrt(1-${r}^2)-${n}*${r})`))}return new tF(u.USE_BIG?i.asin(t.multiplier.toDecimal()):Math.asin(t.valueOf()))}if(t.isImaginary())return d.evaluate(t,"asin")}return e.symfunction("asin",arguments)},atan:function(t){var n;if(t.equals(0))n=new tF(0);else{if(u.PARSE2NUMBER)return t.isConstant()?new tF(u.USE_BIG?i.atan(t.multiplier.toDecimal()):Math.atan(t.valueOf())):t.isImaginary()?d.evaluate(t,"atan"):e.symfunction("atan",arguments);n=t.equals(-1)?e.parse("-pi/4"):e.symfunction("atan",arguments)}return n},asec:function(t){if(u.PARSE2NUMBER){if(t.equals(0))throw new tM("Input is out of the domain of sec!");if(t.isConstant())return N.acos(t.invert());if(t.isImaginary())return d.evaluate(t,"asec")}return e.symfunction("asec",arguments)},acsc:function(t){if(u.PARSE2NUMBER){if(t.isConstant())return N.asin(t.invert());if(t.isImaginary())return d.evaluate(t,"acsc")}return e.symfunction("acsc",arguments)},acot:function(t){if(u.PARSE2NUMBER){if(t.isConstant())return new e.add(e.parse("pi/2"),N.atan(t).negate());if(t.isImaginary())return d.evaluate(t,"acot")}return e.symfunction("acot",arguments)},atan2:function(t,n){if(t.equals(0)&&n.equals(0))throw new tb("atan2 is undefined for 0, 0");return u.PARSE2NUMBER&&t.isConstant()&&n.isConstant()?new tF(Math.atan2(t,n)):e.symfunction("atan2",arguments)}},A=this.trigh={cosh:function(t){if(u.PARSE2NUMBER){if(t.isConstant())return new tF(Math.cosh(t.valueOf()));if(t.isImaginary())return d.evaluate(t,"cosh")}
vendor: 8,355 bytes, line 1
1return e.symfunction("cosh",arguments)},sinh:function(t){if(u.PARSE2NUMBER){if(t.isConstant())return new tF(Math.sinh(t.valueOf()));if(t.isImaginary())return d.evaluate(t,"sinh")}return e.symfunction("sinh",arguments)},tanh:function(t){if(u.PARSE2NUMBER){if(t.isConstant())return new tF(Math.tanh(t.valueOf()));if(t.isImaginary())return d.evaluate(t,"tanh")}return e.symfunction("tanh",arguments)},sech:function(t){return u.PARSE2NUMBER?t.isConstant()?new tF(Math.sech(t.valueOf())):t.isImaginary()?d.evaluate(t,"sech"):e.parse(W("1/cosh({0})",t)):e.symfunction("sech",arguments)},csch:function(t){return u.PARSE2NUMBER?t.isConstant()?new tF(Math.csch(t.valueOf())):t.isImaginary()?d.evaluate(t,"csch"):e.parse(W("1/sinh({0})",t)):e.symfunction("csch",arguments)},coth:function(t){return u.PARSE2NUMBER?t.isConstant()?new tF(Math.coth(t.valueOf())):t.isImaginary()?d.evaluate(t,"coth"):e.parse(W("1/tanh({0})",t)):e.symfunction("coth",arguments)},acosh:function(t){return u.PARSE2NUMBER&&t.isImaginary()?d.evaluate(t,"acosh"):u.PARSE2NUMBER?th(e.parse(W(u.LOG+"(({0})+sqrt(({0})^2-1))",t.toString()))):e.symfunction("acosh",arguments)},asinh:function(t){return u.PARSE2NUMBER&&t.isImaginary()?d.evaluate(t,"asinh"):u.PARSE2NUMBER?th(e.parse(W(u.LOG+"(({0})+sqrt(({0})^2+1))",t.toString()))):e.symfunction("asinh",arguments)},atanh:function(t){return u.PARSE2NUMBER&&t.isImaginary()?d.evaluate(t,"atanh"):u.PARSE2NUMBER?th(e.parse(W("(1/2)*"+u.LOG+"((1+({0}))/(1-({0})))",t.toString()))):e.symfunction("atanh",arguments)},asech:function(t){return u.PARSE2NUMBER&&t.isImaginary()?d.evaluate(t,"asech"):u.PARSE2NUMBER?th(tC(e.add(t.clone().invert(),ti(e.subtract(e.pow(t,new tF(-2)),new tF(1)))))):e.symfunction("asech",arguments)},acsch:function(t){return u.PARSE2NUMBER&&t.isImaginary()?d.evaluate(t,"acsch"):u.PARSE2NUMBER?th(e.parse(W(u.LOG+"((1+sqrt(1+({0})^2))/({0}))",t.toString()))):e.symfunction("acsch",arguments)},acoth:function(t){return u.PARSE2NUMBER&&t.isImaginary()?d.evaluate(t,"acoth"):u.PARSE2NUMBER?t.equals(1)?tF.infinity():th(e.divide(tC(e.divide(e.add(t.clone(),new tF(1)),e.subtract(t.clone(),new tF(1)))),new tF(2))):e.symfunction("acoth",arguments)}};this.units={};var x={"\\":{precedence:8,operator:"\\",action:"slash",prefix:!0,postfix:!1,leftAssoc:!0,operation:function(t){return t}},"!!":{precedence:7,operator:"!!",action:"dfactorial",prefix:!1,postfix:!0,leftAssoc:!0,operation:function(t){return e.symfunction(u.DOUBLEFACTORIAL,[t])}},"!":{precedence:7,operator:"!",action:"factorial",prefix:!1,postfix:!0,leftAssoc:!0,operation:function(t){return Y(t)}},"^":{precedence:6,operator:"^",action:"pow",prefix:!1,postfix:!1,leftAssoc:!0},"**":{precedence:6,operator:"**",action:"pow",prefix:!1,postfix:!1,leftAssoc:!0},"%":{precedence:4,operator:"%",action:"percent",prefix:!1,postfix:!0,leftAssoc:!0,overloaded:!0,overloadAction:"mod",overloadLeftAssoc:!1,operation:function(t){return e.divide(t,new tF(100))}},"*":{precedence:4,operator:"*",action:"multiply",prefix:!1,postfix:!1,leftAssoc:!1},"/":{precedence:4,operator:"/",action:"divide",prefix:!1,postfix:!1,leftAssoc:!1},"+":{precedence:3,operator:"+",action:"add",prefix:!0,postfix:!1,leftAssoc:!1,operation:function(t){return t}},plus:{precedence:3,operator:"plus",action:"add",prefix:!0,postfix:!1,leftAssoc:!1,operation:function(t){return t}},"-":{precedence:3,operator:"-",action:"subtract",prefix:!0,postfix:!1,leftAssoc:!1,operation:function(t){return t.negate()}},"=":{precedence:2,operator:"=",action:"equals",prefix:!1,postfix:!1,leftAssoc:!1},"==":{precedence:1,operator:"==",action:"eq",prefix:!1,postfix:!1,leftAssoc:!1},"<":{precedence:1,operator:"<",action:"lt",prefix:!1,postfix:!1,leftAssoc:!1},"<=":{precedence:1,operator:"<=",action:"lte",prefix:!1,postfix:!1,leftAssoc:!1},">":{precedence:1,operator:">",action:"gt",prefix:!1,postfix:!1,leftAssoc:!1},"=>":{precedence:1,operator:"=>",action:"gte",prefix:!1,postfix:!1,leftAssoc:!1},",":{precedence:0,operator:",",action:"comma",prefix:!1,postfix:!1,leftAssoc:!1},":":{precedence:0,operator:",",action:"assign",prefix:!1,postfix:!1,leftAssoc:!1,vectorFn:"slice"},":=":{precedence:0,operator:",",action:"function_assign",prefix:!1,postfix:!1,leftAssoc:!0}},I={"(":{type:"round",id:1,is_open:!0,is_close:!1},")":{type:"round",id:2,is_open:!1,is_close:!0},"[":{type:"square",id:3,is_open:!0,is_close:!1,maps_to:"vector"},"]":{type:"square",id:4,is_open:!1,is_close:!0},"{":{type:"curly",id:5,is_open:!0,is_close:!1,maps_to:"Set"},"}":{type:"curly",id:6,is_open:!1,is_close:!0}},R=this.functions={cos:[N.cos,1],sin:[N.sin,1],tan:[N.tan,1],sec:[N.sec,1],csc:[N.csc,1],cot:[N.cot,1],acos:[N.acos,1],asin:[N.asin,1],atan:[N.atan,1],arccos:[N.acos,1],arcsin:[N.asin,1],arctan:[N.atan,1],asec:[N.asec,1],acsc:[N.acsc,1],acot:[N.acot,1],atan2:[N.atan2,2],acoth:[A.acoth,1],asech:[A.asech,1],acsch:[A.acsch,1],sinh:[A.sinh,1],cosh:[A.cosh,1],tanh:[A.tanh,1],asinh:[A.asinh,1],sech:[A.sech,1],csch:[A.csch,1],coth:[A.coth,1],acosh:[A.acosh,1],atanh:[A.atanh,1],log10:[,1],exp:[function(t){return t.fname===u.LOG&&t.isLinear()?e.pow(t.args[0],tF.create(t.multiplier)):e.parse(W("e^({0})",t))},1],radians:[function(t){return e.parse(W("({0})*pi/180",t))},1],degrees:[function(t){return e.parse(W("({0})*180/pi",t))},1],min:[function(){var t=[].slice.call(arguments);return q(t)?t[0]:tv(t)?new tF(Math.min.apply(null,t)):u.SYMBOLIC_MIN_MAX&&tg(t)?tR("min",t):e.symfunction("min",t)},-1],max:[function(){var t=[].slice.call(arguments);return q(t)?t[0]:tv(t)?new tF(Math.max.apply(null,t)):u.SYMBOLIC_MIN_MAX&&tg(t)?tR("max",t):e.symfunction("max",t)},-1],erf:[,1],floor:[,1],ceil:[,1],trunc:[,1],Si:[,1],step:[,1],rect:[,1],sinc:[function(t){return u.PARSE2NUMBER?t.isConstant()?new tF(t_.sinc(t)):e.parse(W("sin({0})/({0})",t)):e.symfunction("sinc",[t])},1],tri:[,1],sign:[function(t){return t.isConstant(!0)?new tF(Math.sign(th(t))):e.symfunction("sign",arguments)},1],Ci:[,1],Ei:[,1],Shi:[,1],Chi:[,1],Li:[,1],fib:[,1],fact:[Y,1],factorial:[Y,1],continued_fraction:[function(t,n){var i=th(t);if(i.isConstant()){var r=t_.continuedFraction(i,n),s=tV.fromArray(r.fractions.map(function(t){return new tF(t)}));return tV.fromArray([new tF(r.sign),new tF(r.whole),s])}return e.symfunction("continued_fraction",arguments)},[1,2]],dfactorial:[,1],gamma_incomplete:[,[1,2]],round:[tP,[1,2]],scientific:[function(t,e){return t.scientific=e||10,t},[1,2]],mod:[J,2],pfactor:[tp,1],vector:[function(){return new tV([].slice.call(arguments))},-1],matrix:[function(){return tZ.fromArray(arguments)},-1],Set:[function(){return tz.fromArray(arguments)},-1],imatrix:[function(t){return tZ.identity(t)},-1],parens:[function(t){return u.PARSE2NUMBER?t:e.symfunction("parens",[t])},-1],sqrt:[ti,1],cbrt:[to,1],nthroot:[tu,2],log:[tC,[1,2]],expand:[function(t,e){return tG(t,e=e||{expand_denominator:!0,expand_functions:!0})},1],abs:[H,1],invert:[function(t){if(j(t))return t.invert();O("invert expects a matrix")},1],determinant:[function(t){return j(t)?t.determinant():t},1],size:[function(t){var e;return j(t)?e=[new tF(t.cols()),new tF(t.rows())]:G(t)||X(t)?e=new tF(t.elements.length):O("size expects a matrix or a vector"),e},1],transpose:[function(t){if(j(t))return t.transpose();O("function transpose expects a matrix")},1],dot:[function(t,e){if(G(t)&&G(e))return t.dot(e);O("function dot expects 2 vectors")},2],cross:[function(t,e){if(G(t)&&G(e))return t.cross(e);O("function cross expects 2 vectors")},2],vecget:[function(t,n){return n.isConstant()&&z(n)?t.elements[n]:e.symfunction("vecget",arguments)},2],vecset:[function(t,n,i){return n.isConstant?(t.elements[n]=i,t):e.symfunction("vecset",arguments)},3],vectrim:[function(t,n){return n=void 0===n?1e-14:n,t=t.clone(),n=Number(n),t.elements.sort(function(t,e){return e.group-t.group}),t.elements=ta(t.elements,function(t,i){return Number(e.subtract(th(t),th(i)).abs())<=n}),t},[1,2]],matget:[function(t,n,i){return n.isConstant()&&i.isConstant()?t.elements[n][i]:e.symfunction("matget",arguments)},3],matset:[function(t,e,n,i){return t.elements[e][n]=i,t},4],matgetrow:[function(t,n){return n.isConstant()?new tZ(t.elements[n]):e.symfunction("matgetrow",arguments)},2],matsetrow:[function(t,n,i){if(!n.isConstant())return e.symfunction("matsetrow",arguments);if(t.elements[n].length!==i.elements.length)throw new tO("Matrix row must match row dimensions!");var r=t.clone();
1return r.elements[n]=i.clone().elements,r},3],matgetcol:[function(t,n){if(!n.isConstant())return e.symfunction("matgetcol",arguments);n=Number(n);var i=tZ.fromArray([]);return t.each(function(t,e,r){r===n&&i.elements.push([t.clone()])}),i},2],matsetcol:[function(t,n,i){if(!n.isConstant())return e.symfunction("matsetcol",arguments);if(n=Number(n),t.rows()!==i.elements.length)throw new tO("Matrix columns must match number of columns!");return i.each(function(e,i){t.set(i-1,n,e.elements[0].clone())}),t},3],rationalize:[tt,1],IF:[function(t,e,n){return("boolean"!=typeof t&&V(t)&&(t=!!Number(t)),t)?e:n},3],is_in:[function(t,e){if(j(t)){for(var n=0,i=t.rows();n<i;n++)for(var r=0,s=t.cols();r<s;r++)if(t.elements[n][r].equals(e))return new tF(1)}else if(t.elements){for(var n=0,i=t.elements.length;n<i;n++)if(t.elements[n].equals(e))return new tF(1)}return new tF(0)},2],realpart:[tm,1],imagpart:[tE,1],conjugate:[tN,1],arg:[tI,1],polarform:[function(t){var n,i,r,s;return s=(n=tF.toPolarFormArray(t))[1],i=n[0],r=e.parse(W("e^({0}*({1}))",u.IMAGINARY,s)),e.multiply(i,r)},1],rectform:[function(t){var n,i,r,s,o,a=t.clone();try{if(n=te(t,"e",!0),i=e.divide(n.x.power,tF.imaginary()),r=th(N.tan(i)),e.pow(n.a,new tF(2)),s=r.getDenom(!0),o=r.getNum(),tF.hyp(o,s).equals(n.a))return e.add(s,e.multiply(tF.imaginary(),o));return a}catch(t){return a}},1],sort:[function(t,e){e=e?e.toString():"asc";var n=function(t){return t.group===l?t.multiplier:t.group===p?""===t.fname?n(t.args[0]):t.fname:t.group===f?t.power:t.value};return new tV((G(t)?t.elements:t.collectSymbols()).sort(function(t,i){var r=n(t),s=n(i);return"desc"===e?s-r:r-s}))},[1,2]],integer_part:[,1],union:[function(t,e){return t.union(e)},2],contains:[function(t,e){return t.contains(e)},2],intersection:[function(t,e){return t.intersection(e)},2],difference:[function(t,e){return t.difference(e)},2],intersects:[function(t,e){return new tF(Number(t.intersects(e)))},2],is_subset:[function(t,e){return new tF(Number(t.is_subset(e)))},2],print:[function(){tf(arguments).map(function(t){console.log(t.toString())})},-1]};this.error=O;var P=function(t){for(var e=u.FUNCTION_MODULES,n=e.length,i=0;i<n;i++){var r=e[i];if(t in r)return r[t]}O("The function "+t+" is undefined!")};this.override=function(t,e){n[t]||(n[t]=[]),n[t].push(this[t]),this[t]=e},this.restore=function(t){this[t]&&(this[t]=n[t].pop())},this.extend=function(t,e,n){var i=this;if("function"==typeof this[t]&&"function"==typeof e){var r=this[t];this[t]=function(t,s){return D(t)&&D(s)&&!n?r.call(i,t,s):e.call(i,t,s,r)}}},this.symfunction=function(t,e){var n=new tF(t);return n.group=p,"object"==typeof e&&(e=[].slice.call(e)),n.args=e,n.fname=t===w?"":t,n.updateHash(),n},this.callfunction=function(t,n,i){var r=R[t];r||O("Nerdamer currently does not support the function "+t);var s,o=r[1]||i,a=r[0];if(n instanceof Array||(n=void 0!==n?[n]:[]),-1!==o){var l=Z(o),c=l?o[0]:o,f=l?o[1]:o,h=n.length,p=t+" requires a {0} of {1} arguments. {2} provided!";h<c&&O(W(p,"minimum",c,h)),h>f&&O(W(p,"maximum",f,h))}var m=tv(n);return a?s=a.apply(r[2],n):(a=P(t),s=u.PARSE2NUMBER&&m?tk(a.apply(a,n)):e.symfunction(t,n)),s},this.operator_filter_regex=RegExp("(["+(t="^\\"+Object.keys(x).filter(function(t){if(1===t.length)return t}).join("\\"))+"])\\s+(["+t+"])"),this.setOperator=function(t,n,i){var r=t.operator;if(x[r]=t,n&&(this[t.action]=n),e[r]=t.operation,t.action||t.prefix||t.postif||(t.action=r),"over"===i||"under"===i){var s=t.precedence;for(var o in x){var a=x[o];("over"===i?a.precedence>=s:a.precedence>s)&&a.precedence++}}},this.getOperator=function(t){return x[t]},this.aliasOperator=function(t,e){var n={},i=x[t];for(var r in i)n[r]=i[r];n.operator=e,this.setOperator(n)},this.getOperators=function(){return x},this.getBrackets=function(){return I};var _=function(t){t=String(t);for(var e=0;e<r.actions.length;e++)t=r.actions[e].call(this,t);for(t=t.replace(/\s+/g," "),/e/gi.test(t)&&(t=t.replace(/\-*\d+\.*\d*e\+?\-?\d+/gi,function(t){return T(t)})),t=t.replace(u.IMPLIED_MULTIPLICATION_REGEX,function(){var t=arguments[4],e=arguments[1],n=arguments[2],i=arguments[3],r=t.charAt(i),s="",o="*";return r.match(/[\+\-\/\*]/)||(s=t.charAt(i-1)),s.match(/[a-z]/i)&&(o=""),e+o+n}).replace(/([a-z0-9_]+)/gi,function(t,e){return!1!==u.USE_MULTICHARACTER_VARS||(e in R)?e:isNaN(e)?e.split("").join("*"):e}).replace(/\)\(/g,")*(")||"0";t!==(t=t.replace(/([a-z0-9_]+)(\()|(\))([a-z0-9]+)/gi,function(t,e,n,i,r){var s=e||i,o=n||r;return(s in R)?s+o:s+"*"+o})););return t};function U(t){this.type=t.type,this.value=t.value,this.left=t.left,this.right=t.right}this.initConstants=function(){this.CONSTANTS={E:new tF(u.E),PI:new tF(u.PI)}},this.pretty_print=function(t){if(Array.isArray(t)){var n=t.map(t=>e.pretty_print(t)).join(", ");return"vector"===t.type?"vector<"+n+">":"("+n+")"}return t.toString()},this.peekers={pre_operator:[],post_operator:[],pre_function:[],post_function:[]},this.callPeekers=function(t){if(u.callPeekers)for(var e=this.peekers[t],n=tf(arguments).slice(1).map($),i=0;i<e.length;i++)e[i].apply(null,n)},this.tokenize=function(t){for(var n in t=(t=String(t)).trim().replace(/\s+/g," "),I){var i=RegExp(I[n].is_close?"\\s+\\"+n:"\\"+n+"\\s+","g");t=t.replace(i,n)}for(var r=0,s=t.length,o=0,u=[],l=[u],c=l[0],f=0,h=[],p=!1,m=function(t,e){var n=[];void 0!==t&&(n.type=t),n.column=e,l.push(n),c.push(n),c=n,f++},v=function(){l.pop(),c=l[--f]},g=function(n,i){void 0===i&&(i=t.substring(o,n)),(i in e.units)?c.push(new a(i,a.UNIT,o)):""!==i&&c.push(new a(i,a.VARIABLE_OR_LITERAL,o))},d=function(t){c.push(new a(t,a.FUNCTION,o))},w=function(t){o=t+1};r<s;r++){var y=t.charAt(r);if(y in x){g(r);var b=c[0]&&L(c[0])&&"*"===y;p&&o<r&&!(","===y||b)&&(p=!1,v()),w(r+1);var M=function(e){for(var n=(e=void 0!==e?e:r)+1;(t.charAt(n++) in x););return t.substring(e,n-1)}(r);r=(o=o+M.length-2)-1,c.push.apply(c,function(t){for(var e=r-t.length,n=[],i=t.charAt(0),s=1,o=t.length;s<o;s++){var u=t.charAt(s),l=i+u;l in x?i=l:(n.push(new a(i,a.OPERATOR,e+s)),i=u)}return n.push(new a(i,a.OPERATOR,e+s)),n}(M))}else if(y in I){var E=I[y];if(E.is_open){h.push([E,o]);var N=t.substring(o,r);N in R?d(N):""!==N&&c.push(new a(N,a.VARIABLE_OR_LITERAL,o)),m(E.maps_to,r)}else if(E.is_close){var S=h.pop();if(S){if(S[0].id!==E.id-1)throw new tS("Parity error")}else throw new tS("Missing open bracket for bracket at: "+(r+1));g(r),v()}w(r)}else if(" "===y){var A=t.substring(o,r),O=t.charAt(r+1);if(p){if(A in x)c.push(new a(A,a.OPERATOR,r));else{g(void 0,A),v();var q=O in x;(q&&"-"===x[O].value||!q)&&c.push(new a("*",a.OPERATOR,r))}p=!1}else{var N=t.substring(o,r);
1if(N in R)p=!0,d(N),m();else if(N in x)c.push(new a(N,a.OPERATOR,r));else{g(void 0,N);var O=t.charAt(r+1);""===A||""===O||A in x||O in x||c.push(new a("*",a.OPERATOR,r))}}w(r)}}if(h.length)throw new tS("Missing closed bracket for bracket at "+(h.pop()[1]+1));return g(r),u},this.toRPN=function(t){var e,n=t.type,i=t.length,r=[],s=[],o=[],u=function(t,e){for(;t.length;)e.push(t.pop())};for(e=0;e<i;e++){var l=t[e];if(l.type!==a.OPERATOR)break;if(!l.prefix)throw new tA("Not a prefix operator");l.is_prefix=!0,s.push(l)}for(;e<i;e++){var c=t[e];if(c.type===a.OPERATOR){if(c.overloaded){var f=t[e+1];f&&f.type===a.VARIABLE_OR_LITERAL&&(c.postfix=!1,c.action=c.overloadAction,c.leftAssoc=c.overloadLeftAssoc)}for(;s.length;){var h=s[s.length-1];if(!(h.precedence>c.precedence||!c.leftAssoc&&h.precedence===c.precedence))break;r.push(s.pop())}if(("vector"===n||"set"===n)&&"vectorFn"in c&&(c.action=c.vectorFn),c.postfix){var p=t[e-1];if(p){if(p.type===a.OPERATOR&&!p.postfix)throw new tA("Unexpected prefix operator '"+p.value+"'! at "+p.column)}else throw new tA("Unexpected prefix operator '"+c.value+"'! at "+c.column)}else do{var f=t[e+1],m=!!f&&f.type===a.OPERATOR;if(m){if(!f.prefix)throw new tA("A prefix operator was expected at "+f.column);f.is_prefix=!0,o.push(f),e++}}while(m);for(c.is_prefix?o.push(c):s.push(c);o.length;)if(c.leftAssoc||!c.leftAssoc&&o[o.length-1].precedence>=c.precedence)s.push(o.pop());else break}else if(c.type===a.VARIABLE_OR_LITERAL){0===r.length&&u(o,s),r.push(c);var v=s[s.length-1];v&&v.leftAssoc||u(o,r)}else c.type===a.FUNCTION?s.push(c):c.type===a.UNIT&&r.push(c);Array.isArray(c)&&(r.push(this.toRPN(c)),c.type&&r.push(new a(c.type,a.FUNCTION,c.column)))}return u(s,r),u(o,r),r},this.parseRPN=function(t,n){try{for(var i in n=n||{})n[i]=e.parse(n[i],{});!u.PARSE2NUMBER||("e"in n||(n.e=new tF(u.E)),"pi"in n||(n.pi=new tF(u.PI)));for(var r=[],l=0,c=t.length;l<c;l++){var f=t[l];if(Array.isArray(f)&&(f=this.parseRPN(f,n)),f){if(f.type===a.OPERATOR){if(f.is_prefix||f.postfix)r.push(f.operation(r.pop()));else{var h=r.pop(),p=r.pop();if(void 0===p)throw new tA(f+" is not a valid postfix operator at "+f.column);var m="comma"===f.action;p instanceof tz&&!m&&(p=tV.fromSet(p)),h instanceof tz&&!m&&(h=tV.fromSet(h)),this.callPeekers("pre_operator",p,h,f);var v=e[f.action](p,h);this.callPeekers("post_operator",v,p,h,f),r.push(v)}}else if(f.type===a.FUNCTION){var g=r.pop(),d=g.parent;g instanceof o||(g=o.create(g));var w=f.value,y=g.getItems();this.callPeekers("pre_function",w,y);var b=e.callfunction(w,y);this.callPeekers("post_function",b,w,y);var M=r[r.length-1],E=t[l+1];if(!(E&&E.type===a.OPERATOR&&","===E.value)&&b instanceof tV&&M&&M.elements&&!(M instanceof o)){var N=r.pop(),A=b.elements[0];if(A.isConstant()){if(A instanceof s)r.push(tV.fromArray(N.elements.slice(A.start,A.end)));else{var x=Number(A),O=N.elements.length;if(x<0&&(x=O+x),x<0||x>=O)throw new tx("Index out of range "+(f.column+1));var I=N.elements[x];N.getter=x,I.parent=N,r.push(I)}}else N.getter=A,r.push(N),r.push(b)}else d&&(b.parent=d),r.push(b)}else{var R,q=f.value;q in u.ALIASES?f=e.parse(u.ALIASES[f]):f.type===a.VARIABLE_OR_LITERAL?f=new tF(q):f.type===a.UNIT&&((f=new tF(q)).isUnit=!0),q in e.CONSTANTS?(R=f,f=new tF(e.CONSTANTS[q])):q in n&&q!==n[q].toString()?(R=f,f=n[q].clone()):q in S&&(R=f,f=S[q].clone()),R&&(f.subbed=R),r.push(f)}}}var C=r[0];if(-1!==["undefined","string","number"].indexOf(typeof C))throw new tT("Unexpected token!");return C}catch(t){throw[tM].forEach(function(e){if(t instanceof e)throw new e(t.message+": "+f.column)}),new ty(t.message+": "+f.column)}},U.prototype.toString=function(){var t=this.left?this.left.toString()+"---":"",e=this.right?"---"+this.right.toString():"";return t+"("+this.value+")"+e},U.prototype.toHTML=function(t,e){t=t||0,e=void 0===e?4:e;var n=function(t){return" ".repeat(e*t)},i="",r=this.left?n(t+1)+"<li>\n"+this.left.toHTML(t+2,e)+n(t+1)+"</li> \n":"",s=this.right?n(t+1)+"<li>\n"+this.right.toHTML(t+2,e)+n(t+1)+"</li>\n":"",i=n(t)+'<div class="'+this.type.toLowerCase()+'"><span>'+this.value+"</span></div>"+n(t)+"\n";return(r||s)&&(i+=n(t)+"<ul>\n"+r+s+n(t)+"</ul>\n"),i+=""},this.tree=function(t){for(var e=[],n=0;n<t.length;n++){var i=t[n];if(Array.isArray(i)){i=this.tree(i),e.push(i);continue}if(i.type===a.OPERATOR){if(i.is_prefix||i.postfix){var r=i.is_prefix?"left":"right",s=e.pop();(i=new U(i))[r]=s,e.push(i)}else(i=new U(i)).right=e.pop(),i.left=e.pop(),e.push(i)}else if(i.type===a.FUNCTION){i=new U(i);var o=e.pop();if(i.right=o,"object"===i.value){var s=e[e.length-1];if(s){for(;s.right;)s=s.right;s.right=i;continue}}e.push(i)}else e.push(new U(i))}return e[0]},this.parse=function(t,e){t=_(t),e=e||{};var n=this.tokenize(t),i=this.toRPN(n);return this.parseRPN(i,e)},this.toObject=function(t){var n=function(t){for(var i=[],r=0,s=t.length;r<s;r++){var o=t[r],u=o.value;if(o.type===a.VARIABLE_OR_LITERAL)i.push(new tF(u));else if(o.type===a.FUNCTION){r++;var l=e.symfunction(u,n(t[r]));l.isConversion=!0,i.push(l)}else o.type===a.OPERATOR?i.push(u):i.push(n(o))}return i};return n(e.tokenize(t))};var k=function(t){for(var e,n=0,i=[[]],e=0,r=t.length;e<r;e++)","===t[e]?i[++n]=[]:i[n].push(t[e]);return i},B=function(t){return t.replace(/^\\left\((.+)\\right\)$/g,function(t,e){return e||t})},F=function(t){for(var e=[];t.length;){var n=t.shift(),i=t[0],r=Z(i),s="-"===i;if("^"===n&&("+"===i?t.shift():r&&"+"===i[0]&&i.shift(),r&&1===i.length&&t.unshift(t.shift()[0])),"^"===n&&(r&&"-"===i[0]||s)){var o=e.pop(),a=e[e.length-1],u="1";"*"===a?(e.pop(),u=e.pop()):Z(a)&&(u=e.pop()),e.push(u,"/",o,n),r?i.shift():t.shift(),r&&1===i.length&&e.push(t.shift()[0])}else e.push(n)}return e};function H(t){if(t.isInfinity)return tF.infinity();if(t.multiplier.lessThan(0)&&t.multiplier.negate(),t.isImaginary()){var n=t.realpart(),i=t.imagpart();if(n.isConstant()&&i.isConstant())return ti(e.add(e.pow(n,new tF(2)),e.pow(i,new tF(2))))}else if(V(t)||tr(t.power))return t;if(t.isComposite()){var r=[];t.each(function(t){r.push(t.multiplier)}),t_.QGCD.apply(null,r).lessThan(0)&&(t.multiplier=t.multiplier.multiply(new tB(-1)),t.distributeMultiplier())}var s=e.parse(t.multiplier);return t.toUnitMultiplier(),e.multiply(s,e.symfunction(b,[t]))}function Y(t){if(G(t)){var n=new tV;return t.each(function(t,e){n.set(e-1,Y(t))}),n}if(j(t)){var i=new tZ;return t.each(function(t,e,n){i.set(e,n,Y(t))}),i}if(u.PARSE2NUMBER&&t.isConstant())return tk(z(t)?t_.bigfactorial(t):t_.gamma(t.multiplier.add(new tB(1)).toDecimal()));if(t.isConstant()&&t.getDenom().equals(2)){var r,s,o,a,l=t.getNum();return t.multiplier.isNegative()?(a=e.subtract(l.negate(),new tF(1)).multiplier.divide(new tB(2)),r=e.pow(new tF(-4),new tF(a)).multiplier.multiply(t_.bigfactorial(a)),s=t_.bigfactorial(new tB(2).multiply(a))):(a=e.add(l,new tF(1)).multiplier.divide(new tB(2)),r=t_.bigfactorial(new tB(2).multiply(a)),s=e.pow(new tF(4),new tF(a)).multiplier.multiply(t_.bigfactorial(a))),o=r.divide(s),e.multiply(e.parse("sqrt(pi)"),new tF(o))}return e.symfunction(M,[t])}function J(t,n){if(t.isConstant()&&n.isConstant()){var i=new tF(1);return i.multiplier=i.multiplier.multiply(t.multiplier.mod(n.multiplier)),i}return z(e.divide(t.clone(),n.clone()))?new tF(0):e.symfunction("mod",[t,n])}function tt(t){if(t.isComposite()){var n,i,r,s,o,a,u,l,c=new tF(0);return t.each(function(t){n=t.getNum(),i=t.getDenom(),r=c.getNum(),s=c.getDenom(),o=e.multiply(i,r),a=e.multiply(n,s),u=e.expand(e.add(o,a)),l=e.multiply(s,i),c=e.divide(u,l)},!0),c}return t}function ti(t){if(D(t)||(t=e.parse(t)),t.group===h)return e.symfunction(y,[t]);""===t.fname&&t.power.equals(1)&&(t=t.args[0]);var n=0>t.multiplier.sign();if(u.PARSE2NUMBER){if(t.isConstant()&&!n)return new tF(i.sqrt(t.multiplier.toDecimal()));if(t.isImaginary())return d.sqrt(t);if(t.group===f)return e.symfunction("sqrt",[t])}var r,s,o=t.isConstant();if(t.group===v&&t.isLinear()){var a=ti(tF(t.multiplier));for(var l in t.symbols){var c=t.symbols[l];a=e.multiply(a,ti(c))}s=a}else if(t.fname===y){var l=t.args[0],p=t.multiplier;l.setPower(t.power.multiply(new tB(.25))),s=l,p.equals(1)||(s=e.multiply(ti(e.parse(p)),s))}else if(t.power.isInteger()){if(t.multiplier<0&&t.group===f){var m=e.parse(t.multiplier).negate(),g=e.parse(t).toUnitMultiplier().negate();s=e.multiply(e.symfunction(u.SQRT,[g]),ti(m))}else{var a,w=t.power.sign();t.power=t.power.abs(),o&&t.multiplier.lessThan(0)&&(r=tF.imaginary(),t.multiplier=t.multiplier.abs());var b=t.multiplier.toDecimal(),M=Math.sqrt(Math.abs(b));if(z(M))a=new tF(M);else if(z(b)){var E=t_.ifactor(b),N=1;
1for(var c in E){var S=E[c],A=S-S%2;if(A){var x=Math.pow(c,A);N*=Math.pow(c,A/2),b/=x}}a=e.multiply(e.symfunction(y,[new tF(b)]),new tF(N))}else{for(var O=[new tF(t.multiplier.num),new tF(t.multiplier.den)],I=[new tF(1),new tF(1)],R=[new tF(1),new tF(1)],q=0;q<2;q++){var S=O[q];tp(S).each(function(t){var n=(t=tF.unwrapPARENS(t)).clone().toLinear(),i=Number(t.power),r=i%2,s=(i-r)/2;I[q]=e.multiply(I[q],e.pow(n,new tF(s))),R[q]=e.multiply(R[q],ti(e.pow(n,new tF(r))))})}a=e.divide(e.multiply(I[0],R[0]),e.multiply(I[1],R[1]))}s=(t=t.toUnitMultiplier(!0)).isOne()?t:tr(t.power.toString())?e.pow(t.clone(),new tF(.5)):e.symfunction(y,[t]),w<0&&s.power.negate(),a&&(s=e.multiply(a,s)),r&&(s=e.multiply(r,s))}}else t.setPower(t.power.multiply(new tB(.5))),s=t;return n&&u.PARSE2NUMBER?e.parse(s):s}function to(t){if(!t.isConstant(!0)){var n,i=t.power/3,r=e.pow(e.parse(t.multiplier),new tF(1/3)),s=t.toUnitMultiplier();return z(i)?n=e.pow(s.toLinear(),e.parse(i)):s.group===v?(n=new tF(1),s.each(function(t){n=e.multiply(n,to(t))})):n=e.symfunction("cbrt",[s]),e.multiply(r,n)}return tu(t,new tF(3))}function tu(t,n,i,r){if((n=th(e.parse(n))).equals(0))throw new tb("Unable to calculate nthroots of zero");if(t<0&&tr(n))throw Error("Cannot calculate nthroot of negative number for even powers");if(!t.isConstant(!0))return e.symfunction("nthroot",arguments);t.group!==l&&(t=th(t)),void 0===r&&(r=!0),i=i||25;var s,o,a=t.sign();if(a<0&&(t=H(t)),z(t)&&n.isConstant())return s=t<18446744073709552e3?tB.create(Math.pow(t,1/n)):t_.nthroot(t,n),r&&(o=new tF(s)),o=new tF(s.toDecimal(i)),e.multiply(new tF(a),o)}function tp(t){if(t.greaterThan(9999999999998891e26)||t.equals(-1))return t;if(t.equals(Math.PI))return new tF(Math.PI);if((t=th(t.clone())).isConstant()){var n=new tF(1),i=t.toString();if(z(i)){var r=t_.ifactor(i);for(var s in r){var o=r[s];n=e.multiply(n,e.symfunction("parens",[new tF(s).setPower(new tB(o))]))}}else{var a=tp(new tF(t.multiplier.num)),u=tp(new tF(t.multiplier.den));n=e.multiply(e.symfunction("parens",[a]),e.symfunction("parens",[u]).invert())}}else n=e.symfunction("pfactor",arguments);return n}function tm(t){return t.realpart()}function tE(t){return t.imagpart()}function tN(t){var n=t.realpart(),i=t.imagpart();return e.add(n,e.multiply(i.negate(),tF.imaginary()))}function tI(t){var n=t.realpart(),i=t.imagpart();return n.isConstant()&&i.isConstant()?new tF(Math.atan2(i,n)):e.symfunction("atan2",[i,n])}function tI(t){var n=t.realpart(),i=t.imagpart();return n.isConstant()&&i.isConstant()?i.equals(0)&&n.equals(-1)?e.parse("pi"):i.equals(1)&&n.equals(0)?e.parse("pi/2"):i.equals(1)&&n.equals(1)?e.parse("pi/4"):new tF(Math.atan2(i,n)):e.symfunction("atan2",[i,n])}function tR(t,e){var n,i,r;for(e.map(function(t){t.numVal=th(t).multiplier});;){if((n=e.length)<2)return e[0];i=e.pop(),r=e[n-2],("min"===t?i.numVal<r.numVal:i.numVal>r.numVal)&&(e.pop(),e.push(i))}}function tC(t,n){if(t.equals(1))return new tF(0);if(t.fname===y&&t.multiplier.equals(1))return i=e.divide(tC(t.args[0]),new tF(2)),0>t.power.sign()&&i.negate(),i;if(t.equals(0))throw new tb(u.LOG+"(0) is undefined!");if(t.isImaginary())return d.evaluate(t,u.LOG);if(t.isConstant()&&void 0!==n&&n.isConstant()){var i,r,s;i=new tF(Math.log(t)/Math.log(n))}else if(t.group===h&&t.power.multiplier.lessThan(0)||"-1"===t.power.toString())t.power.negate(),i=tC(t).negate();else if("e"===t.value&&t.multiplier.equals(1)){var o=t.power;i=D(o)?o:new tF(o)}else if(t.group===p&&"exp"===t.fname){var s=t.args[0];i=t.multiplier.equals(1)?e.multiply(s,new tF(t.power)):e.symfunction(u.LOG,[t])}else u.PARSE2NUMBER&&V(t)?((t=e.parse(t)).multiplier.lessThan(0)&&(t.negate(),r=e.multiply(new tF(Math.PI),new tF("i"))),i=new tF(Math.log(t.multiplier.toDecimal())),r&&(i=e.add(i,r))):(t.power.equals(1)||t.contains("e")||(s=t.group===h?t.power:new tF(t.power),t.toLinear()),i=arguments.length>1&&q(arguments)?new tF(1):e.symfunction(u.LOG,arguments),s&&(i=e.multiply(s,i)));return i}function tP(t,n){var i,r,s,o,a=n&&n.isConstant()||void 0===n;return t.isConstant()&&a?(i=t,n&&n.lessThan(0)&&(n=H(n),i=(r=Number(t).toExponential().toString().split("e"))[0],s=r[1]),o=new tF(tn(i,Number(n||0))),e.multiply(o,e.pow(new tF(10),new tF(s||0)))):e.symfunction("roun
1d",arguments)}function tD(t){var e=t%2;return e<0&&(e=2+e),e>=0&&e<=.5?1:e>.5&&e<=1?2:e>1&&e<=1.5?3:4}function tk(t){if(!isFinite(t)){var e=Math.sign(t),n=new tF(String(Math.abs(t)));return n.multiplier=n.multiplier.multiply(new tB(e)),n}if(D(t))return t;if("number"==typeof t)try{t=tB.simple(t)}catch(e){t=new tB(t)}var i=new tF(0);return i.multiplier=t,i}function tG(t,n){if(Array.isArray(t))return t.map(function(t){return tG(t,n)});if(n=n||{},t.group===p&&""===t.fname){var i=tG(t.args[0],n),r=tG(e.pow(i,e.parse(t.power)),n);return e.multiply(e.parse(t.multiplier),r).distributeMultiplier()}if(-1!==[l,c,f].indexOf(t.group))return t;var s=t.clone();try{var o=t.multiplier.toString(),a=Number(t.power),u=t;if(t.isComposite()&&z(t.power)&&t.power>0){var h=a-1,i=new tF(0);t.each(function(t){i=e.add(i,tG(e.parse(t),n))});for(var d=e.parse(i),w=0;w<h;w++)d=td(d,i,n);u=e.multiply(e.parse(o),d).distributeMultiplier()}else if(t.group===p&&!0===n.expand_functions){var y=[];t.args.forEach(function(t){y.push(tG(t,n))}),u=e.pow(e.symfunction(t.fname,y),e.parse(t.power)),u=e.multiply(u,e.parse(t.multiplier))}else if(t.isComposite()&&z(t.power)&&t.power<0&&!0===n.expand_denominator)t=t.invert(),(u=tG(t,n)).invert();else if(t.group===v){var b=function(t){switch(t.group){case g:return 0;case m:return 1;case v:return 2;case p:return 3;default:return 4}},M=t.collectSymbols().sort(function(t,e){return b(e)-b(t)}).map(function(t){var i=e.pow(t,e.parse(a));return tG(i,n)}),i=M.pop();i.isComposite()&&i.isLinear()?(M.forEach(function(t){i=td(i,t,n)}),i.isComposite()?(i.power>1&&(i=tG(e.pow(i,e.parse(i.power)),n)),u=e.multiply(e.parse(o),i).distributeMultiplier()):u=i):(u=i,M.forEach(function(t){u=e.multiply(u,t)}),u=e.multiply(u,e.parse(o)).distributeMultiplier()),u.group===v&&(u=e.parse(u))}else u=t;return u}catch(t){}return s}function tj(t){if(!D(t.power)&&t.power.absEquals(.5)){var e=t.power.sign(),n=ti(t.group===c?new tF(t.value):t.toLinear());return e<0&&n.invert(),n}return t}this.toTeX=function(t,n){var i=!0===(n=n||{}).decimals?"decimals":void 0,r="string"==typeof t?this.toObject(t):t,s=[],o=void 0===n.cdot?"\\cdot":n.cdot;if(Z(r=F(r))){for(var a,l,c=[],f=0;f<r.length;f++)a=r[f],"^"===r[f+1]?(l=r[f+2],c.push(tX.braces(this.toTeX([a]))+"^"+tX.braces(this.toTeX([l]))),f+=2):c.push(a);r=c}for(var f=0,h=r.length;f<h;f++){var m=r[f];if("*"===m&&(m=o),D(m)){if(m.group===p){var v,g=m.fname;if(g===y)v="\\sqrt"+tX.braces(this.toTeX(m.args));else if(g===b)v=tX.brackets(this.toTeX(m.args),"abs");else if(g===w)v=tX.brackets(this.toTeX(m.args),"parens");else if(g===u.LOG10)v="\\"+u.LOG10_LATEX+"\\left( "+this.toTeX(m.args)+"\\right)";else if("integrate"===g){var d=k(m.args),N=tX.braces(this.toTeX(d[0])),S=this.toTeX(d[1]);v="\\int "+N+"\\, d"+S}else if("defint"===g){var d=k(m.args),N=tX.braces(this.toTeX(d[0])),S=this.toTeX(d[3]);v="\\int\\limits_{"+this.toTeX(d[1])+"}^{"+this.toTeX(d[2])+"} "+N+"\\, d"+S}else if("diff"===g){var d=k(m.args),S="",N=tX.braces(this.toTeX(d[0]));if(1===d.length){var A=[];for(O=0;O<d[0].length;O++)3===d[0][O].group&&A.push(d[0][O].value);A.sort(),S=A.length>0?"\\frac{d}{d "+A[0]+"}":"\\frac{d}{d x}"}else S=2===d.length?"\\frac{d}{d "+d[1]+"}":"\\frac{d^{"+d[2]+"}}{d "+this.toTeX(d[1])+"^{"+d[2]+"}}";v=S+"\\left("+N+"\\right)"}else if("sum"===g||"product"===g){var f,x=[[],[],[],[]],O=0;for(f=0;f<m.args.length;f++){if(","===m.args[f]){O++;continue}x[O].push(m.args[f])}v=("sum"===g?"\\sum_":"\\prod_")+tX.braces(this.toTeX(x[1])+" = "+this.toTeX(x[2]))+"^"+tX.braces(this.toTeX(x[3]))+tX.braces(this.toTeX(x[0]))}else if("limit"===g){var I=k(m.args).map(function(t){return Array.isArray(t)?e.toTeX(t.join("")):e.toTeX(String(t))});v="\\lim_"+tX.braces(I[1]+"\\to "+I[2])+" "+tX.braces(I[0])}else v=g===M||g===E?this.toTeX(m.args)+(g===M?"!":"!!"):tX.latex(m,i);s.push(v)}else s.push(tX.latex(m,i))}else Z(m)?s.push(tX.brackets(this.toTeX(m))):"/"===m?s.push(tX.frac(B(s.pop()),B(this.toTeX([r[++f]])))):s.push(m)}return s.join(" ")},this.expand=tG,this.round=tP,this.clean=function t(n){var i,r=n.group;if(r===g){var s=n.getNum(),o=n.getDenom()||new tF(1),a=Number(n.power),u=new tF(1);
1if(1===Math.abs(a)){o.each(function(n){n.group===v?u=e.multiply(u,t(n.getDenom())):n.power.lessThan(0)&&(u=e.multiply(u,t(n.clone().toUnitMultiplier())))});var l,c=new tF(0);o.each(function(t){c=e.add(e.divide(t,u.clone()),c)}),u.invert(),s.isComposite()?(l=new tF(0),s.each(function(n){l=e.add(e.multiply(t(n),u.clone()),l)})):l=e.multiply(u,s),i=e.divide(l,c)}}else r===v?(i=new tF(1),n.each(function(t){i=e.multiply(i,e.clean(t))})):r===p&&1===n.args.length&&n.args[0].isConstant()&&(i=tc("PARSE2NUMBER",function(){return e.parse(n)},!0));return i||(i=n),i},this.sqrt=ti,this.cbrt=to,this.abs=H,this.log=tC,this.rationalize=tt,this.nthroot=tu,this.arg=tI,this.conjugate=tN,this.imagpart=tE,this.realpart=tm,this.getFunction=function(t){return R[t][0]},this.addPreprocessor=function(t,e,n,i){var s=r.names,o=r.actions;if("function"!=typeof e)throw new PreprocessorError("Incorrect parameters. Function expected!");n?i?(s.splice(n,0,t),o.splice(n,0,e)):(s[n]=t,o[n]=e):(s.push(t),o.push(e))},this.getPreprocessors=function(){for(var t={},e=0,n=t.names.length;e<n;e++){var i=t.names[e];t[i]={order:e,action:t.actions[e]}}return t},this.removePreprocessor=function(t,e){var n=r.names.indexOf(t);e?(tl(r.names,n),tl(r.actions,n)):(r.names[n]=void 0,r.actions[n]=void 0)},this.mapped_function=function(){for(var t={},n=this.params,i=0;i<n.length;i++)t[n[i]]=String(arguments[i]);return e.parse(this.body,t)},this.add=function(t,n){var i=D(t),r=D(n);if(i&&r){if(t.unit||n.unit)return e.Unit.add(t,n);if(t.isInfinity||n.isInfinity){var s=t.multiplier.lessThan(0),o=n.multiplier.lessThan(0);if(t.isInfinity&&n.isInfinity&&s!==o)throw new tb("("+t+")+("+n+") is not defined!");var a=tF.infinity();return o&&a.negate(),a}if(t.isComposite()&&t.isLinear()&&n.isComposite()&&n.isLinear()&&(t.distributeMultiplier(),n.distributeMultiplier(),n.length>t.length&&t.group===n.group&&([t,n]=[n,t])),t.multiplier.equals(0))return n;if(n.multiplier.equals(0))return t;if(t.isConstant()&&n.isConstant()&&u.PARSE2NUMBER){var d=new tF(t.multiplier.add(n.multiplier).toDecimal(u.PRECISION));return d}var w=t.group,b=n.group,M=t.power.toString(),E=n.power.toString();if(w<b||w===b&&M>E&&E>0)return this.add(n,t);if(w===v&&b===m&&t.value===n.value){var N=t;t=n,n=N,w=t.group,b=n.group,M=t.power.toString(),E=n.power.toString()}var S,A,d,x=M===E,I=t.value,R=n.value,q=t.isComposite(),C=n.isComposite();if(q&&(S=tL(t,"hash")),C&&(A=tL(n,"hash")),w===g&&b===g&&n.isLinear()&&!t.isLinear()&&S!==A)return this.add(n,t);w===m&&b===m&&(I=S,R=A);var P=w===c&&b===l,T=t.value===n.multiplier.toString(),_=I===R||S===A&&void 0!==S||P&&T;if(_&&x&&w===b){if(P&&(n=n.convert(c)),w===m&&(b===f||b===c))t.distributeMultiplier(),d=t.attach(n);else if(d=t,t.multiplier.isOne()&&n.multiplier.isOne()&&w===g&&t.isLinear()&&n.isLinear())for(var L in n.symbols){var U=n.symbols[L];d.attach(U)}else d.multiplier=d.multiplier.add(n.multiplier)}else if(_&&w!==m)w===g&&b===m?(n.insert(t,"add"),d=n):(d=tF.shell(m).attach([t,n])).value=w===m?S:I;else if(q&&t.isLinear()){var k=w===b,B=w===m&&b===m;if(B&&(k=t.value===n.value),t.distributeMultiplier(),n.isComposite()&&n.isLinear()&&k){for(var L in n.distributeMultiplier(),n.symbols){var U=n.symbols[L];t.attach(U)}d=t}else B&&t.value!==A||w===m&&!_?(d=tF.shell(g).attach([t,n])).updateHash():d=t.attach(n)}else{if(w===p&&t.fname===y&&b!==h&&n.power.equals(.5)){var F=n.multiplier.clone();(n=ti(n.toUnitMultiplier().toLinear())).multiplier=F}2===t.length&&2===n.length&&tr(t.power)&&tr(n.power)?d=e.add(tG(t),tG(n)):(d=tF.shell(g).attach([t,n])).updateHash()}if(d.multiplier.equals(0)&&(d=new tF(0)),1===d.length){var F=d.multiplier;(d=Q(d.symbols)).multiplier=d.multiplier.multiply(F)}return d}if(r&&!i){var N=t;t=n,n=N,N=r,r=i,i=N}var X=j(n);if(i&&X){var V=new tZ;n.eachElement(function(n,i,r){V.set(i,r,e.add(t.clone(),n))}),n=V}else if(j(t)&&X)n=t.add(n);else if(i&&G(n))n.each(function(i,r){r--,n.elements[r]=e.add(t.clone(),n.elements[r])});else if(G(t)&&G(n))n.each(function(i,r){r--,n.elements[r]=e.add(t.elements[r],n.elements[r])});else if(G(t)&&j(n))return e.add(n,t);else if(j(t)&&G(n)){if(n.elements.length===t.rows()){var V=new tZ,Z=t.cols();return n.each(function(n,i){for(var r=[],s=0;s<Z;s++)r.push(e.add(t.elements[i-1][s].clone(),n.clone()));V.elements.push(r)}),V}O("Dimensions must match!")}return n},this.subtract=function(t,n){var i=i=D(t),r=D(n);if(i&&r)return t.unit||n.unit?e.Unit.subtract(t,n):this.add(t,n.negate());if(r&&G(t))n=t.map(function(t){return e.subtract(t,n.clone())});else if(i&&G(n))n=n.map(function(n){return e.subtract(t.clone(),n)});else if(G(t)&&G(n))t.dimensions()===n.dimensions()?n=t.subtract(n):e.error("Unable to subtract vectors. Dimensions do not match.");else if(j(t)&&G(n)){if(n.elements.length===t.rows()){var s=new tZ,o=t.cols();return n.each(function(n,i){for(var r=[],a=0;a<o;a++)r.push(e.subtract(t.elements[i-1][a].clone(),n.clone()));s.elements.push(r)}),s}O("Dimensions must match!")}else if(G(t)&&j(n)){var s=n.clone().negate();return e.add(s,t)}else if(j(t)&&j(n))n=t.subtract(n);else if(j(t)&&r){var s=new tZ;t.each(function(t,i,r){s.set(i,r,e.subtract(t,n.clone()))}),n=s}else if(i&&j(n)){var s=new tZ;n.each(function(n,i,r){s.set(i,r,e.subtract(t.clone(),n))}),n=s}return n},this.multiply=function(t,n){var r=D(t),s=D(n);if(r&&n instanceof o)return n.elements.push(t),n;if(r&&s){if(n.isUnit){var a=t.clone();return t.unit=n,a}if(t.unit||n.unit)return e.Unit.multiply(t,n);
1if(t.isInfinity||n.isInfinity){if(t.equals(0)||n.equals(0))throw new tb(t+"*"+n+" is undefined!");if(n.power.lessThan(0)){if(!t.isInfinity)return new tF(0);throw new tb("Infinity/Infinity is not defined!")}var d=t.multiplier.multiply(n.multiplier).sign(),w=tF.infinity();if(t.isConstant()||n.isConstant()||t.isInfinity&&n.isInfinity)return d<0&&w.negate(),w}if(t.isConstant()&&n.isConstant()&&u.PARSE2NUMBER){var b=new i(t.multiplier.toDecimal()).times(new i(n.multiplier.toDecimal())).toFixed();return new tF(b)}if(t.isOne())return n.clone();if(n.isOne())return t.clone();if(t.multiplier.equals(0)||n.multiplier.equals(0))return new tF(0);if(n.group>t.group&&n.group!==g)return this.multiply(n,t);if(t.group===v&&n.group===m&&t.value===n.value){var b=t;t=n,n=b}var E=t.group,N=n.group,S=n.multiplier.num,A=n.multiplier.den;if(E!==p||t.fname!==y||n.isConstant()||t.args[0].value!==n.value||t.args[0].multiplier.lessThan(0))E===p&&t.fname===y&&t.multiplier.equals(1)&&t.power.equals(-1)&&n.isConstant()&&t.args[0].equals(n)&&(t=e.symfunction(y,[n.clone()]),n=new tF(1));else{var x=t.power,I=e.parse(t.multiplier);(t=e.multiply(I,t.args[0].clone())).setPower(new tB(.5).multiply(x)),E=t.group}var R=t.value,q=n.value,d=new tB(t.sign()),C=E===c&&N===l&&n.multiplier.equals(t.value),P=C?new tB(1).multiply(t.multiplier).abs():t.multiplier.multiply(n.multiplier).abs(),a=t.clone().toUnitMultiplier();if(n=n.clone().toUnitMultiplier(!0),E===p&&N===p){var T=t.args[0].clone(),_=n.args[0].clone();if(t.fname===y&&n.fname===y&&t.isLinear()&&n.isLinear()){var L=e.divide(T,_).invert();L.gt(1)&&z(L)&&(a=e.multiply(t.args[0].clone(),ti(L.clone())),n=new tF(1))}else if(t.fname===M&&n.fname===M&&!T.isConstant()&&!_.isConstant()&&n.power<0){var U=e.subtract(T.clone(),_.clone());if(U.isConstant()){if(b=new tF(1),U<0){for(var k=0,B=Math.abs(U);k<=B;k++){var F=e.add(T.clone(),new tF(k));b=e.multiply(b,F)}a=e.multiply(e.pow(T,new tF(t.power)),e.pow(b,new tF(n.power))),n=new tF(1)}else{for(var k=0,B=Math.abs(U);k<=B;k++){var F=e.add(_.clone(),new tF(k));b=e.multiply(b,F)}a=e.multiply(e.pow(b,new tF(t.power)),e.pow(_,new tF(n.power))),n=new tF(1)}}}}if(R===q&&E===m&&E===N&&(R=t.text("hash"),q=n.text("hash")),N===h&&n.previousGroup===m&&E===m&&(R=tL(t,"hash",h)),(R===q||C)&&(E!==m||N!==f&&N!==c&&N!==p)&&
1(E!==m||N!==v)){var X=t.power,V=n.power,Z=D(X),H=D(V),$=Z||H;E===m&&N!==m&&n.previousGroup!==m&&X.equals(1)?(a=new tF(0),t.each(function(t){a=e.add(a,e.multiply(t,n.clone()))},!0)):(a.power=$?e.add(D(X)?X:new tF(X),D(V)?V:new tF(V)):E===l?X:X.add(V),a.power.equals(0)&&(a=a.convert(l)),$&&a.convert(h),t.imaginary&&n.imaginary&&tr(a.power%2)&&(a=new tF(1),P.negate()),a.group!==h&&a.previousGroup&&(a.previousGroup=void 0),a.multiplier=a.multiplier.multiply(n.multiplier))}else if(E===v&&t.isLinear()){if(N===v&&n.distributeExponent(),N===v&&n.isLinear()){for(var F in n.symbols){var Y=n.symbols[F];a=a.combine(Y)}a.multiplier=a.multiplier.multiply(n.multiplier)}else a.combine(n)}else if(E!==l){if(E===v)a.distributeExponent(),a.combine(n);else if(!n.isOne()){var W=n.multiplier.clone();n.toUnitMultiplier(),(a=tF.shell(v).combine([a,n])).multiplier=a.multiplier.multiply(W)}}else a=n.clone().toUnitMultiplier();if(a.group===c){var J=Math.log(a.value),K=Math.log(S)/J,tt=Math.log(A)/J,te=P.num/S,tn=P.den/A;0!==K&&z(K)&&z(te)&&(a.power=a.power.add(new tB(K)),P.num/=S),0!==tt&&z(tt)&&z(tn)&&(a.power=a.power.subtract(new tB(tt)),P.den/=A)}if(1===a.length){var b=a.multiplier;(a=Q(a.symbols)).multiplier=a.multiplier.multiply(b)}if(tr(a.power.toString())&&a.fname===y){d*=a.sign();var ts=a.power;a=a.args[0],a=e.multiply(new tF(P),e.pow(a,new tF(ts.divide(new tB(2))))),d<0&&a.negate()}else a.multiplier=a.multiplier.multiply(P).multiply(d),a.group===g&&a.isImaginary()&&a.distributeMultiplier();return a.group===c&&z(a.power.toDecimal())&&(a=a.convert(l)),a}s&&!r&&(b=t,t=n,n=b,b=s,s=r,r=b);var to=j(n),ta=j(t);if(r&&to){var tu=new tZ;n.eachElement(function(n,i,r){tu.set(i,r,e.multiply(t.clone(),n))}),n=tu}else if(ta&&to)n=t.multiply(n);else if(r&&G(n))n.each(function(i,r){r--,n.elements[r]=e.multiply(t.clone(),n.elements[r])});else if(G(t)&&G(n))n.each(function(i,r){r--,n.elements[r]=e.multiply(t.elements[r],n.elements[r])});else if(G(t)&&j(n))return this.multiply(n,t);else if(j(t)&&G(n)){if(n.elements.length===t.rows()){var tu=new tZ,tl=t.cols();return n.each(function(n,i){for(var r=[],s=0;s<tl;s++)r.push(e.multiply(t.elements[i-1][s].clone(),n.clone()));tu.elements.push(r)}),tu}O("Dimensions must match!")}return n},this.divide=function(t,n){var i,r=D(t),s=D(n);if(r&&s){if(t.unit||n.unit)return e.Unit.divide(t,n);if(n.equals(0))throw new tw("Division by zero not allowed!");return t.isConstant()&&n.isConstant()?(i=t.clone()).multiplier=i.multiplier.divide(n.multiplier):(n.invert(),i=e.multiply(t,n)),i}var o=G(t),a=G(n);if(r&&a)n=n.map(function(n){return e.divide(t.clone(),n)});else if(o&&s)n=t.map(function(t){return e.divide(t,n.clone())});else if(o&&a)t.dimensions()===n.dimensions()?n=n.map(function(n,i){return e.divide(t.elements[--i
1],n)}):e.error("Cannot divide vectors. Dimensions do not match!");else{var u=j(t),l=j(n);if(u&&s){var c=new tZ;t.eachElement(function(t,i,r){c.set(i,r,e.divide(t,n.clone()))}),n=c}else if(r&&l){var c=new tZ;n.eachElement(function(n,i,r){c.set(i,r,e.divide(t.clone(),n))}),n=c}else if(u&&l){var c=new tZ;t.rows()===n.rows()&&t.cols()===n.cols()?(t.eachElement(function(t,i,r){c.set(i,r,e.divide(t,n.elements[i][r]))}),n=c):e.error("Dimensions do not match!")}else if(u&&a){if(t.cols()===n.dimensions()){var c=new tZ;t.eachElement(function(t,i,r){c.set(i,r,e.divide(t,n.elements[i].clone()))}),n=c}else e.error("Unable to divide matrix by vector.")}}return n},this.pow=function(t,n){var r=D(t),s=D(n);if(r&&s){if(t.unit||n.unit)return e.Unit.pow(t,n);if(t.group===p&&t.fname===b&&tr(n)){var o=t.multiplier.clone(),a=e.pow(t.args[0],n);return a.multiplier=o,a}if(t.isInfinity||n.isInfinity){if(t.isInfinity&&n.isInfinity)throw new tb("("+t+")^("+n+") is undefined!");if(t.isConstant()&&n.isInfinity){if(t.equals(0)){if(n.lessThan(0))throw new tb("0^Infinity is undefined!");return new tF(0)}if(t.equals(1))throw new tb("1^"+n.toString()+" is undefined!");if(n.lessThan(0))return new tF(0);if(!t.lessThan(0))return tF.infinity()}if(t.isInfinity&&n.isConstant()){if(n.equals(0))throw new tb(t+"^0 is undefined!");return n.lessThan(0)?new tF(0):e.multiply(tF.infinity(),e.pow(new tF(t.sign()),n.clone()))}}var f=t.equals(0),m=n.equals(0);if(f&&m)throw new tb("0^0 is undefined!");if(f&&n.isConstant()&&n.multiplier.greaterThan(0))return new tF(0);if(m)return new tF(1);var g=n.isConstant(),d=t.isConstant(),M=n.isInteger(),o=t.multiplier,E=t.clone();if(d&&g&&t.equals(0)&&n.lessThan(0))throw new tb("Division by zero is not allowed!");if(u.PARSE2NUMBER&&d&&g&&0>t.sign()&&ts(n))return L=new tF(Math.cos(V=Math.PI*n)),U=e.multiply(tF.imaginary(),new tF(Math.sin(V))),e.add(L,U);if(u.PARSE2NUMBER&&t.isImaginary()&&g&&z(n)&&!n.lessThan(0)&&(L=t.realpart(),U=t.imagpart(),L.isConstant("all")&&U.isConstant("all")))return W=u.USE_BIG?tF(i.atan2(R.multiplier.toDecimal(),_.multiplier.toDecimal()).times(n.toString())):Math.atan2(U,L)*n,Z=new tF(W),_=e.pow(tF.hyp(L,U),n),$=e.multiply(_.clone(),e.trig.cos(Z.clone())),Y=e.multiply(_,e.trig.sin(Z)),e.add($,e.multiply(tF.imaginary(),Y));if(E.toUnitMultiplier(),E.group!==p||E.fname!==y||g){var S=o.sign();ts(n)&&S<0&&(E.negate(),(E=e.symfunction(w,[E])).negate()),E.multiplyPower(n)}else{var A=E.args[0];A.multiplyPower(new tF(.5)),A.multiplier.multiply(E.multiplier),A.multiplyPower(n),E=A}if(d&&g&&u.PARSE2NUMBER)S<0&&(t.negate(),J=n.multiplier.den.equals(2)?new tF(u.IMAGINARY):z(n.multiplier)?new tF(tr(n.multiplier)?1:-1):tr(n.multiplier.den)?e.pow(e.symfunction(w,[new tF(S)]),n.clone()):new tF(Math.pow(S,n.multiplier.num))),E=new tF(Math.pow(t.multiplier.toDecimal(),n.multiplier.toDecimal())),J&&(E=e.multiply(E,J));else if(M&&!o.equals(1)){if(n.abs().gt(u.MAX_EXP))return 0>n.sign()?new tF(0):tF.infinity();var x=n.multiplier.toDecimal(),O=Math.sign(x);x=Math.abs(x);var I=new tB(1);I.num=o.num.pow(x),I.den=o.den.pow(x),O<0&&I.invert(),E.multiplier=E.multiplier.multiply(I)}else{var S=t.sign();if(n.isConstant()&&t.isConstant()&&!n.multiplier.den.equals(1)&&S<0){if(n.multiplier.den.equals(2)){var R=new tF(u.IMAGINARY);t.negate(),n.lessThan(0)&&(R.negate(),n.negate()),E=e.multiply(e.pow(t,n),R)}else{var q=t.clone();q.multiplier.negate(),E=e.pow(e.symfunction(w,[new tF(S)]),n.clone());var P=e.pow(new tF(q.multiplier.num),n.clone()),T=e.pow(new tF(q.multiplier.den),n.clone()),_=e.divide(P,T);E=e.multiply(E,_)}}else if(u.PARSE2NUMBER&&n.isImaginary()){var L=n.realpart(),U=n.imagpart(),q=t.clone().toLinear(),k=e.pow(q.clone(),L),B=tC(q.clone()),F=N.cos(e.multiply(U.clone(),B)),X=e.multiply(N.sin(e.multiply(U,tC(q))),tF.imaginary());E=e.multiply(k,e.add(F,X)),E=e.expand(e.parse(E))}else{var V,L,U,_,Z,$,Y,W,J,A,x,Q,K=t.group===l&&S<0,tt=tj(new tF(K?o.num:Math.abs(o.num)).setPower(n.clone())),te=tj(new tF(o.den).setPower(n.clone()).invert());if(t.imaginary){if(M)A=Math.sign(n),E=new tF(tr(Q=(x=H(n))%4)?-1:u.IMAGINARY),(0===Q||A<0&&1===Q||A>0&&3===Q)&&E.negate();else{var tn=n.multiplier.multiply(tB.quick(1,2)),ti=Math.pow(-1,tn.num);
1E=tr(tn.den)?new tF(-1).setPower(tn,!0):new tF(ti)}}if(S<0&&!K&&E.negate(),g&&t.group!==h){var to=tr(n.multiplier.den),ta=tr(t.power),Q=E.power.toDecimal(),tu=tr(Q);if(to&&ta&&!tu){if(1===Q)E=e.symfunction(b,[E]);else if(z(Q))E=e.multiply(e.symfunction(b,[E.clone().toLinear()]),E.clone().setPower(new tB(Q-1)));else{var x=E.power;E=e.symfunction(b,[E.toLinear()]).setPower(x)}u.POSITIVE_MULTIPLIERS&&E.fname===b&&(E=E.args[0])}}if(n.equals(2)&&E.group===v){var tl=new tF(1);E.each(function(t){tl=e.multiply(tl,e.pow(t,n))}),E=tl}}}if(E=tj(E),tt&&te&&(E=e.multiply(E,function(t){if(t.group===c){var e=t.value,n=tU(e)[0];if(!n)return C("Unable to compute prime factors. This should not happen. Please review and report."),t;var i=new tB(Math.log(e)/Math.log(n)).multiply(t.power);if(i.den>t.power.den)return t;t=z(i)?tF(Math.pow(n,i)):new tF(n).setPower(i)}return t}(e.multiply(tt,te)))),E.fname===y){var tc=E.group===h;if(tr(tc?E.power.multiplier.toString():E.power.toString())){var tf=tc?e.divide(E.power,new tF(2)):new tF(E.power.divide(new tB(2))),o=E.multiplier;(E=e.pow(E.args[0],tf)).multiplier=E.multiplier.multiply(o)}}else if(!u.IGNORE_E&&E.isE()&&E.group===h&&E.power.contains("pi")&&E.power.contains(u.IMAGINARY)&&n.group===v){var Z=n.stripVar(u.IMAGINARY);E=e.add(N.cos(Z),e.multiply(tF.imaginary(),N.sin(Z)))}return E}if(G(t)&&s)t=t.map(function(t){return e.pow(t,n.clone())});else if(j(t)&&s){var th=new tZ;t.eachElement(function(t,i,r){th.set(i,r,e.pow(t,n.clone()))}),t=th}else if(r&&j(n)){var th=new tZ;n.eachElement(function(n,i,r){th.set(i,r,e.pow(t.clone(),n))}),t=th}return t},this.comma=function(t,e){return t instanceof o||(t=o.create(t)),t.append(e),t},this.mod=function(t,e){return J(t,e)},this.slice=function(t,e){return new s(t,e)},this.equals=function(t,e){return t.group===f||t.isLinear()||O("Cannot set equality for "+t.toString()),S[t.value]=e.clone(),e},this.percent=function(t){return e.divide(t,new tF(100))},this.assign=function(t,n){if(t instanceof o&&n instanceof o)return t.elements.map(function(t,i){return e.assign(t,n.elements[i])}),tV.fromArray(n.elements);if(t.parent){var i=t.parent;return i.elements[i.getter]=n,delete i.getter,i}if(t.group!==f)throw new tq("Cannot complete operation. Incorrect LH value for "+t);return S[t.value]=n,n},this.function_assign=function(t,e){return K(t.elements.pop(),t.elements,e)};var tH=function(t){return new tF(!0===t?1:0)};this.eq=function(t,e){return tH(t.equals(e))},this.gt=function(t,e){return tH(t.gt(e))},this.gte=function(t,e){return tH(t.gte(e))},this.lt=function(t,e){return tH(t.lt(e))},this.lte=function(t,e){return tH(t.lte(e))},this.factorial=function(t){return this.symfunction(M,[t])},this.dfactorial=function(t){return this.symfunction(E,[t])}}u.FUNCTION_MODULES.push(t_),tu(t_),Math.sign=Math.sign||function(t){return 0==(t=+t)||isNaN(t)?t:t>0?1:-1},Math.cosh=Math.cosh||function(t){var e=Math.exp(t);return(e+1/e)/2},Math.sech=Math.sech||function(t){return 1/Math.cosh(t)},Math.csch=Math.csch||function(t){return 1/Math.sinh(t)},Math.coth=Math.coth||function(t){return 1/Math.tanh(t)},Math.sinh=Math.sinh||function(t){var e=Math.exp(t);return(e-1/e)/2},Math.tanh=Math.tanh||function(t){if(t===1/0)return 1;if(t===-1/0)return -1;var e=Math.exp(2*t);return(e-1)/(e+1)},Math.asinh=Math.asinh||function(t){return t===-1/0?t:Math.log(t+Math.sqrt(t*t+1))},Math.acosh=Math.acosh||function(t){return Math.log(t+Math.sqrt(t*t-1))},Math.atanh=Math.atanh||function(t){return Math.log((1+t)/(1-t))/2},Math.log10=Math.log10||function(t){return Math.log(t)*Math.LOG10E},Math.trunc=Math.trunc||function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)},tU(314146179365),tD.getExpression=function(t,e){"last"!==t&&t||(t=N.length),"first"===t&&(t=1);var n=N[t-1];return n?new tD(n):n},tD.prototype={text:function(t,e){return(e=e||u.EXPRESSION_DECP,t=t||"decimals",this.symbol.text_)?this.symbol.text_(t):tL(this.symbol,t,void 0,e)},latex:function(t){return this.symbol.latex?this.symbol.latex(t):tX.latex(this.symbol,t)},valueOf:function(){return this.symbol.valueOf()},evaluate:function(){if(G(this.symbol)&&0===this.symbol.dimensions())return this;var t,n=arguments[0],i=1;"string"==typeof n?t="%"===n.charAt(0)?tD.getExpression(n.substr(1)).text():n:n instanceof tD||D(n)?t=n.text():(t=this.symbol.text(),i--);var r=arguments[i]||{};return new tD(tc("PARSE2NUMBER",function(){return e.parse(t,r)},!0))},buildFunction:function(t){return tH.build(this.symbol,t)},isNumber:function(){return V(this.symbol)},isInfinity:function(){return Math.abs(this.symbol.multiplier)===1/0},isImaginary:function(){return th(e.parse(this.symbol)).isImaginary()},variables:function(){return B(this.symbol)},toString:function(){try{if(Z(this.symbol))return"["+this.symbol.toString()+"]";return this.symbol.toString()}catch(t){return""}},toDecimal:function(t){u.precision=t;var e=tL(this.symbol,"decimals");return u.precision=void 0,e},isFraction:function(){return U(this.symbol)},isPolynomial:function(){return this.symbol.isPoly()},sub:function(t,n){return new tD(this.symbol.sub(e.parse(t),e.parse(n)))},operation:function(t,n){return k(n)?n=n.symbol:D(n)||(n=e.parse(n)),new tD(e[t](this.symbol.clone(),n.clone()))},add:function(t){return this.operation("add",t)},subtract:function(t){return this.operation("subtract",t)},multiply:function(t){return this.operation("multiply",t)},divide:function(t){return this.operation("divide",t)},pow:function(t){return this.operation("pow",t)},expand:function(){return new tD(e.expand(this.symbol))},each:function(t,e){if(this.symbol.each)this.symbol.each(t,e);else if(Z(this.symbol))for(var e=0;e<this.symbol.length;e++)t.call(this.symbol,this.symbol[e],e);else t.call(this.symbol)},eq:function(t){D(t)||(t=e.parse(t));try{return e.subtract(this.symbol.clone(),t).equals(0)}catch(t){return!1}},lt:function(t){D(t)||(t=e.parse(t));try{return th(e.subtract(this.symbol.clone(),t)).lessThan(0)}catch(t){return!1}}
1,gt:function(t){D(t)||(t=e.parse(t));try{return th(e.subtract(this.symbol.clone(),t)).greaterThan(0)}catch(t){return!1}},gte:function(t){return this.gt(t)||this.eq(t)},lte:function(t){return this.lt(t)||this.eq(t)},numerator:function(){return new tD(this.symbol.getNum())},denominator:function(){return new tD(this.symbol.getDenom())},hasFunction:function(t){return this.symbol.containsFunction(t)},contains:function(t){return this.symbol.contains(t)}},tD.prototype.toTeX=tD.prototype.latex,tk.prototype={fromScientific:function(t){var e=String(t).toLowerCase().split("e");return this.coeff=e[0],this.exponent=e[1],this},convert:function(t){var e=t.split("."),n=e[0]||"",i=e[1]||"";n=tk.removeLeadingZeroes(n),i=tk.removeTrailingZeroes(i);var r=n.length,s=n+i,o=tk.leadingZeroes(s).length;this.exponent=r-(o+1);var a=tk.removeLeadingZeroes(s);this.coeff=a.charAt(0)+"."+(a.substr(1,a.length)||"0");var u=this.coeff.split(".")[1]||"";return this.decp="0"===u?0:u.length,this.dec=i,this.wholes=n,this},round:function(t){var e=this.copy();if(0===(t=Number(t)))e.coeff=e.coeff.charAt(0);else{var n=this.coeff.substring(0,t+1),i=this.coeff.substring(t+1,t+3),r=i.charAt(0);i.charAt(1)>4&&r++,e.coeff=n+r}return e},copy:function(){var t=new tk(0);return t.coeff=this.coeff,t.exponent=this.exponent,t.sign=this.sign,t},toString:function(t){var e;if(u.SCIENTIFIC_IGNORE_ZERO_EXPONENTS&&0===this.exponent&&this.decp<t)e=0===this.decp?this.wholes:this.coeff;else{var n=void 0===t?this.coeff:tk.round(this.coeff,Math.min(t,this.decp||1));e=0===this.exponent?n:n+"e"+this.exponent}return(-1===this.sign?"-":"")+e}},tk.isScientific=function(t){return/\d+\.?\d*e[\+\-]*\d+/i.test(t)},tk.leadingZeroes=function(t){var e=t.match(/^(0*).*$/);return e?e[1]:""},tk.removeLeadingZeroes=function(t){var e=t.match(/^0*(.*)$/);return e?e[1]:""},tk.removeTrailingZeroes=function(t){var e=t.match(/0*$/);return e?t.substring(0,t.length-e[0].length):""},tk.round=function(t,e){var n=tn(t,e),i=e-String(n).split(".").pop().length;return i>0&&(n+=Array(i+1).join(0)),n},tB.create=function(t){if(t instanceof tB)return t;var e="-"===(t=t.toString()).charAt(0);e&&(t=t.substr(1,t.length-1));var n=new tB(t);return e&&n.negate(),n},tB.isFrac=function(t){return t instanceof tB},tB.quick=function(t,e){var i=new tB;return i.num=new n(t),i.den=new n(e),i},tB.simple=function(t){for(var e=String(T(t)).split("."),n=e.join(""),i=1,r=(e[1]||"").length,s=0;s<r;s++)i+="0";return tB.quick(n,i).simplify()},tB.prototype={multiply:function(t){if(this.isOne())return t.clone();if(t.isOne())return this.clone();var e=this.clone();return e.num=e.num.multiply(t.num),e.den=e.den.multiply(t.den),e.simplify()},divide:function(t){if(t.equals(0))throw new tw("Division by zero not allowed!");return this.clone().multiply(t.clone().invert()).simplify()},subtract:function(t){return this.clone().add(t.clone().neg())},neg:function(){return this.num=this.num.multiply(-1),this},add:function(t){var e=this.den,n=t.den,i=this.clone(),r=i.num,s=t.num;return e.equals(n)?i.num=r.add(s):(i.num=r.multiply(n).add(s.multiply(e)),i.den=e.multiply(n)),i.simplify()},mod:function(t){var e=this.clone(),n=t.clone();return e.num=e.num.multiply(n.den),e.den=e.den.multiply(n.den),n.num=n.num.multiply(this.den),n.den=n.den.multiply(this.den),e.num=e.num.mod(n.num),e.simplify()},simplify:function(){var t=n.gcd(this.num,this.den);return this.num=this.num.divide(t),this.den=this.den.divide(t),this},clone:function(){var t=new tB;return t.num=new n(this.num),t.den=new n(this.den),t},decimal:function(t){var e=this.num.isNegative()?"-":"";if(this.num.equals(this.den))return"1";t=t||u.PRECISION,t++;for(var n=[],i=this.num.abs(),r=this.den,s=0;s<t;s++){var o=i.divide(r),a=i.subtract(o.multiply(r));if(n.push(o),a.equals(0))break;i=a.times(10)}var l=n.shift();if(0===n.length)return e+l.toString();if(s===t){for(var c=[],s=0;s<2;s++)c.unshift(n.pop());n.push(Math.round(c.join(".")))}return e+(l.toString()+".")+n.join("")},toDecimal:function(t){return(t=t||u.PRECISION)?this.decimal(t):this.num/this.den},qcompare:function(t){return[this.num.multiply(t.den),t.num.multiply(this.den)]},equals:function(t){isNaN(t)||(t=new tB(t));var e=this.qcompare(t);return e[0].equals(e[1])},absEquals:function(t){isNaN(t)||(t=new tB(t));var e=this.qcompare(t);return e[0].abs().equals(e[1])},greaterThan:function(t){isNaN(t)||(t=new tB(t));var e=this.qcompare(t);return e[0].gt(e[1])},gte:function(t){return this.greaterThan(t)||this.equals(t)},lte:function(t){return this.lessThan(t)||this.equals(t)},lessThan:function(t){isNaN(t)||(t=new tB(t));var e=this.qcompare(t);return e[0].lt(e[1])},isInteger:function(){return this.den.equals(1)},negate:function(){return this.num=this.num.multiply(-1),this},invert:function(){var t=this.den;if(!this.num.equals(0)){var e=this.num.isNegative();this.den=this.num.abs(),this.num=t,e&&(this.num=this.num.multiply(-1))}return this},isOne:function(){return this.num.equals(1)&&this.den.equals(1)},sign:function(){return this.num.isNegative()?-1:1},abs:function(){return this.num=this.num.abs(),this},gcd:function(t){return tB.quick(n.gcd(t.num,this.num),n.lcm(t.den,this.den))},toString:function(){return this.den.equals(1)?this.num.toString():this.num.toString()+"/"+this.den.toString()}
1,valueOf:function(){return u.USE_BIG?new i(this.num.toString()).div(new i(this.den.toString())):this.num/this.den},isNegative:function(){return 0>this.toDecimal()}},tF.imaginary=function(){var t=new tF(u.IMAGINARY);return t.imaginary=!0,t},tF.infinity=function(t){var e=new tF("Infinity");return -1===t&&e.negate(),e},tF.shell=function(t,e){var n=new tF(e);return n.group=t,n.symbols={},n.length=0,n},tF.unwrapSQRT=function(t,e){var n=t.power;if(t.fname===y&&(t.isLinear()||e)){var i=t.args[0].clone();i.power=i.power.multiply(new tB(.5)),i.multiplier=i.multiplier.multiply(t.multiplier),t=i,e&&(t.power=n.multiply(new tB(.5)))}return t},tF.hyp=function(t,n){return t=t||new tF(0),n=n||new tF(0),e.sqrt(e.add(e.pow(t.clone(),new tF(2)),e.pow(n.clone(),new tF(2))))},tF.toPolarFormArray=function(t){var n,i;return n=t.realpart(),i=t.imagpart(),[tF.hyp(n,i),n.equals(0)?e.parse("pi/2"):e.trig.atan(e.divide(i,n))]},tF.unwrapPARENS=function(t){if(""===t.fname){var e=t.args[0];return(e.power=e.power.multiply(t.power),e.multiplier=e.multiplier.multiply(t.multiplier),""===t.fname)?tF.unwrapPARENS(e):e}return t},tF.create=function(t,n){return n=void 0===n?1:n,e.parse("("+t+")^("+n+")")},tF.prototype={getNth:function(t){var n=th(e.pow(e.parse(this.multiplier),e.parse(t).invert())),i=e.parse(tn(n));return th(e.pow(i,e.parse(t))).equals(e.parse(this.multiplier))?i:n},isToNth:function(t){var n,i=z(this.getNth(t));return this.group===v?(n=!0,this.each(function(e){e.isToNth(t)||(n=!1)})):n=this.group===l||z(e.divide(e.parse(this.power),e.parse(t))),i&&n},isSquare:function(){return this.isToNth(2)},isCube:function(){return this.isToNth(3)},isSimple:function(){return this.power.equals(1)&&this.multiplier.equals(1)},powSimp:function(){if(this.group===v){var t=[],n=this.multiplier.sign();this.each(function(e){var n=e.power;if(D(n)||n.equals(1))return this.clone();t.push(n)});var i=new tB(tt(t)),n=this.multiplier.sign(),r=this.multiplier.clone().abs(),s=t_.ifactor(r),o=new tB(1),a=new tB(1);for(var u in s){var l=new tB(s[u]);l.lessThan(i)||(l=l.divide(i).subtract(new tB(1)),a=a.multiply(new tB(u))),o=o.multiply(e.parse(Y(u)+"^"+Y(l)).multiplier)}var c=new tF(a);this.each(function(t){(t=t.clone()).power=t.power.divide(i),c=e.multiply(c,t)});var f=e.symfunction(w,[c]);return f.power=i,f.multiplier=n<0?o.negate():o,f}return this.clone()},equals:function(t){return D(t)||(t=new tF(t)),this.value===t.value&&this.power.equals(t.power)&&this.multiplier.equals(t.multiplier)&&this.group===t.group},abs:function(){var t=this.clone();return t.multiplier.abs(),t},gt:function(t){return D(t)||(t=new tF(t)),this.isConstant()&&t.isConstant()&&this.multiplier.greaterThan(t.multiplier)},gte:function(t){return D(t)||(t=new tF(t)),this.equals(t)||this.isConstant()&&t.isConstant()&&this.multiplier.greaterThan(t.multiplier)},lt:function(t){return D(t)||(t=new tF(t)),this.isConstant()&&t.isConstant()&&this.multiplier.lessThan(t.multiplier)},lte:function(t){return D(t)||(t=new tF(t)),this.equals(t)||this.isConstant()&&t.isConstant()&&this.multiplier.lessThan(t.multiplier)},isPoly:function(t){var e=this.group,n=this.power;if(!z(n)||n<0)return!1;if(e===l||e===f||this.isConstant(!0))return!0;var i=B(this);if(e===v&&1===i.length){var r=i[0];if(!r)return!0;for(var s in this.symbols){var o=this.symbols[s];if(o.group===p&&!o.args[0].isConstant()||!o.contains(r)&&!o.isConstant(!0))return!1}return!0}if(!this.isComposite()&&(e!==v||!t)||!t&&i.length>1)return!1;for(var s in this.symbols)if(!this.symbols[s].isPoly(t))return!1;return!0},stripVar:function(t,n){var i;return(this.group===m||this.group===f)&&this.value===t?i=new tF(n?0:this.multiplier):this.group===v&&this.isLinear()?(i=new tF(1),this.each(function(n){n.contains(t,!0)||(i=e.multiply(i,n.clone()))}),i.multiplier=i.multiplier.multiply(this.multiplier)):this.group!==g||this.isLinear()?this.group===g&&this.isLinear()?(i=new tF(0),this.each(function(n){if(!n.contains(t)){var r=n.clone();r.multiplier=r.multiplier.multiply(this.multiplier),i=e.add(i,r)}}),i.equals(0)&&(i=new tF(this.multiplier))):i=this.group===h&&this.power.contains(t,!0)?new tF(this.multiplier):this.group===p&&this.contains(t)?new tF(this.multiplier):this.clone():i=new tF(this.multiplier),i},toArray:function(t,n){n=n||{arr:[],add:function(t,n){var i=this.arr[n];this.arr[n]=i?e.add(i,t):t}};var i=this.group;if(i===f&&this.contains(t))n.add(new tF(this.multiplier),this.power);else if(i===v){var r=this.stripVar(t),s=e.divide(this.clone(),r.clone()),o=s.isConstant()?0:s.power;n.add(r,o)}else if(i===m&&this.value===t)this.each(function(e,i){n.add(e.stripVar(t),i)});else if(i===g)this.each(function(e){e.toArray(t,n)});else if(this.contains(t))throw new tN("Cannot convert to array! Exiting");else n.add(this.clone(),0);n=n.arr;for(var a=0;a<n.length;a++)n[a]||(n[a]=new tF(0));return n},hasFunc:function(t){var e=this.group===p||this.group===h;if(e&&!t||e&&this.contains(t))return!0;
1if(this.symbols){for(var n in this.symbols)if(this.symbols[n].hasFunc(t))return!0}return!1},sub:function(t,n){t=D(t)?t.clone():e.parse(t),n=D(n)?n.clone():e.parse(n),(t.group===l||t.group===c)&&O("Cannot substitute a number. Must be a variable");var i,r=!1,s=t.multiplier.equals(1),o=this.multiplier.clone();if(this.value===t.value&&(this.group!==m&&t.group!==m||this.group===m&&t.group===m))(s||t.multiplier.equals(this.multiplier))&&(t.isLinear()?i=n:t.power.equals(this.power)&&(i=n,r=!0),t.multiplier.equals(this.multiplier)&&(o=new tB(1)));else if(this.group===v||this.previousGroup===v)i=new tF(1),this.each(function(r){var s=e.parse(r.sub(t,n));i=e.multiply(i,s)});else if(this.isComposite()){var a=this.clone();if(t.isComposite()&&a.isComposite()&&a.isLinear()&&t.isLinear()){var u=function(t,e){for(var n in t.symbols){var i=t.symbols[n];if(i.isComposite()&&u(i,e)||i.equals(e))return!0}return!1};for(var f in t.symbols)if(!u(a,t.symbols[f]))return a.clone();i=e.add(e.subtract(a.clone(),t),n)}else i=new tF(0),a.each(function(r){i=e.add(i,r.sub(t,n))})}else if(this.group===h)i=e.parse(this.value).sub(t,n);else if(this.group===p){for(var g=[],d=0;d<this.args.length;d++){var w=this.args[d];D(w)||(w=e.parse(w)),g.push(w.sub(t,n))}i=e.symfunction(this.fname,g)}if(i){if(!r){var y=this.group===h?this.power.sub(t,n):e.parse(this.power);i=e.pow(i,y)}return i.multiplier=i.multiplier.multiply(o),i}return this.clone()},isMonomial:function(){if(this.group===f)return!0;if(this.group!==v)return!1;for(var t in this.symbols)if(this.symbols[t].group!==f)return!1;return!0},isPi:function(){return this.group===f&&"pi"===this.value},sign:function(){return this.multiplier.sign()},isE:function(){return"e"===this.value},isSQRT:function(){return this.fname===y},isConstant:function(t,e){if(e&&this.group===v){for(var n in this.symbols)if(this.symbols[n].isConstant(!0))return!0}if("functions"===t&&this.isComposite()){var i=!0;return this.each(function(n){n.isConstant(t,e)||(i=!1)},!0),i}if("all"===t&&(this.isPi()||this.isE()))return!0;if(t&&this.group===p){for(var r=0;r<this.args.length;r++)if(!this.args[r].isConstant(t))return!1;return!0}return t?V(this):this.value===d},isImaginary:function(){if(this.imaginary)return!0;if(this.symbols){for(var t in this.symbols)if(this.symbols[t].isImaginary())return!0}return!1},realpart:function(){if(this.isConstant());else if(this.imaginary)return new tF(0);else if(this.isComposite()){var t=new tF(0);return this.each(function(n){t=e.add(t,n.realpart())}),t}else if(this.isImaginary())return new tF(0);return this.clone()},imagpart:function(){if(this.group===f&&this.isImaginary())return new tF(this.multiplier);if(this.isComposite()){var t=new tF(0);return this.each(function(n){t=e.add(t,n.imagpart())}),t}return this.group===v?this.stripVar(u.IMAGINARY):new tF(0)},isInteger:function(){return this.isConstant()&&this.multiplier.isInteger()},isLinear:function(t){if(!t)return this.power.equals(1);if(this.isConstant())return!0;if(this.group===f)return this.value!==t||this.power.equals(1);if(this.isComposite()&&this.power.equals(1)){for(var e in this.symbols)if(!this.symbols[e].isLinear(t))return!1;return!0}return this.group===v&&!!this.symbols[t]&&this.symbols[t].isLinear(t)},containsFunction:function(t){if("string"==typeof t&&(t=[t]),this.group===p&&-1!==t.indexOf(this.fname))return!0;if(this.symbols){for(var e in this.symbols)if(this.symbols[e].containsFunction(t))return!0}return!1},multiplyPower:function(t){if(this.group===l&&this.multiplier.equals(1))return this;var n=this.power;if(this.group!==h&&t.group===l){var i=t.multiplier;this.group!==l||i.isInteger()||this.convert(c),this.power=n.equals(1)?i.clone():n.multiply(i),this.group===c&&z(this.power)&&(this.value=Math.pow(this.value,this.power),this.toLinear(),this.convert(l))}else this.group!==h&&(n=new tF(n),this.convert(h)),this.power=e.multiply(n,t);return this},setPower:function(t,e){if(this.group===l&&this.multiplier.equals(1))return this;if(this.group!==h||D(t)){var n=!1;D(t)&&(t.group===l?t=t.multiplier:n=!0);var i=n?h:c;this.power=t,this.group===l&&i&&this.convert(i,e)}else this.group=this.previousGroup,delete this.previousGroup,this.group===l?(this.multiplier=new tB(this.value),this.value=d):this.power=t;return this},isInverse:function(){return this.group===h?this.power.multiplier.lessThan(0):this.power<0},clone:function(t){var e,n=t||new tF(0),i=["value","group","length","previousGroup","imaginary","fname","args","isInfinity","scie
1ntific"],r=i.length;if(this.symbols)for(var s in n.symbols={},this.symbols)n.symbols[s]=this.symbols[s].clone();for(e=0;e<r;e++)void 0!==this[i[e]]&&(n[i[e]]=this[i[e]]);return n.power=this.power.clone(),n.multiplier=this.multiplier.clone(),this.isConversion&&(n.isConversion=this.isConversion),this.isUnit&&(n.isUnit=this.isUnit),n},toUnitMultiplier:function(t){return this.multiplier.num=new n(this.multiplier.num.isNegative()&&t?-1:1),this.multiplier.den=new n(1),this},toLinear:function(){return this.power.equals(1)||this.setPower(new tB(1)),this},each:function(t,e){if(this.symbols)for(var n in this.symbols){var i=this.symbols[n];if(i.group===m&&e)for(var r in i.symbols)t.call(n,i.symbols[r],r);else t.call(this,i,n)}else t.call(this,this,this.value)},valueOf:function(){return this.group===l?this.multiplier.valueOf():0===this.power?1:0===this.multiplier?0:tL(this,"decimals")},contains:function(t,e){t=String(t);var n=this.group;if(this.value===t)return!0;if(this.symbols){for(var i in this.symbols)if(this.symbols[i].contains(t,e))return!0}if(n===p||this.previousGroup===p){for(var r=0;r<this.args.length;r++)if(this.args[r].contains(t,e))return!0}return!!(n===h&&(e&&this.power.contains(t,e)||this.value===t))||this.value===t},negate:function(){return this.multiplier.negate(),(this.group===g||this.group===m)&&this.distributeMultiplier(),this},invert:function(t,e){return t||(this.multiplier=this.multiplier.invert()),D(this.power)?this.power.negate():this.group===v&&e?this.each(function(t){return t.invert()}):this.power&&this.group!==l&&this.power.negate(),this},distributeMultiplier:function(t){var e=t?this.power.absEquals(1):this.power.equals(1);if(this.symbols&&e&&this.group!==v&&!this.multiplier.equals(1)){for(var n in this.symbols){var i=this.symbols[n];i.multiplier=i.multiplier.multiply(this.multiplier),i.distributeMultiplier()}this.toUnitMultiplier()}return this},distributeExponent:function(){if(!this.power.equals(1)){var t=this.power;for(var n in this.symbols){var i=this.symbols[n];i.group===h?i.power=e.multiply(i.power,new tF(t)):this.symbols[n].power=this.symbols[n].power.multiply(t)}this.toLinear()}return this},convert:function(t,e){if(t>p){var n=this.clone();this.symbols={},t===v?n.toUnitMultiplier():this.toUnitMultiplier(),this.group===p&&(n.args=this.args,delete this.args,delete this.fname),this.isImgSymbol&&delete this.isImgSymbol,this.toLinear(),this.symbols[n.keyForGroup(t)]=n,this.group=t,this.length=1}else if(t===h)this.group===l&&this.multiplier.equals(1)||(this.group!==h&&(this.previousGroup=this.group),this.group===l?(this.value=this.multiplier.num.toString(),this.toUnitMultiplier()):this.value=tL(this,"hash"),this.group=h);else if(t===l){var i=this.multiplier.toDecimal();this.symbols&&(this.symbols=void 0),new tF(this.group===c?i*Math.pow(this.value,this.power):i).clone(this)}else t===c&&this.group===l&&(this.value=e?this.multiplier.num.toString():Math.abs(this.multiplier.num.toString()),this.toUnitMultiplier(!e),this.group=c);return this},insert:function(t,n){if(D(t)||O("Object "+t+" is not of type Symbol!"),this.symbols){var i=this.group;if(i>p){var r=t.keyForGroup(i),s=r in this.symbols&&this.symbols[r];"add"===n?s?(this.symbols[r]=e.add(s,t),this.symbols[r].multiplier.equals(0)&&(delete this.symbols[r],this.length--,0===this.length&&(this.convert(l),this.multiplier=new tB(0)))):(this.symbols[r]=t,this.length++):(t.group===c&&z(t.power)&&t.convert(l),t.group!==h?(this.multiplier=this.multiplier.multiply(t.multiplier),t.toUnitMultiplier()):(t.parens=t.multiplier.lessThan(0),this.multiplier=this.multiplier.multiply(t.multiplier.clone().abs()),t.toUnitMultiplier(!0)),s&&((t=e.multiply(tl(this.symbols,r),t)).isConstant()&&(this.multiplier=this.multiplier.multiply(t.multiplier),t=new tF(1)),this.length--),t.isOne(!0)?t.multiplier.lessThan(0)&&this.negate():(this.symbols[r]=t,this.length++)),0===this.length&&this.convert(l),(this.group===g||this.group===v)&&this.updateHash()}}return this},attach:function(t){if(Z(t)){for(var e=0;e<t.length;e++)this.insert(t[e],"add");return this}return this.insert(t,"add")},combine:function(t){if(Z(t)){for(var e=0;e<t.length;e++)this.insert(t[e],"multiply");return this}return this.insert(t,"multiply")},updateHash:function(){if(this.group!==l){if(this.group===p){for(var t="",e=this.args,n=this.fname===w,i=0;i<e.length;i++)t+=(0===i?"":",")+tL(e[i]);var r=n?"":this.fname;this.value=r+(n?t:Y(t))}else this.group===f||this.group===m||(this.value=tL(this,"hash"))}},keyForGroup:function(t){var e,n=this.group;return n===l?e=this.value:n===f||n===c?e=t===m?this.power.toDecimal():this.value:n===p?e=t===m?this.power.toDecimal():tL(this,"hash"):n===m?e=t===v?tL(this,"hash"):t===g?this.power.equals(1)?this.value:Y(tL(this,"hash"))+u.POWER_OPERATOR+this.power.toDecimal():t===m?this.power.toString():this.value:n===g?(t===g&&(e=tL(this,"hash")),e=t===m?this.power.toDecimal():this.value):n===v?e=t===m?this.power.toDecimal():tL(this,"hash"):n===h&&(e=t===m?tL(this.power):tL(this,"hash")),e},collectSymbols:function(t,e,n,i){var r=[];if(this.symbols)for(var s in this.symbols){var o=this.symbols[s];i&&(o.group===m||o.group===g)?r=r.concat(o.collectSymbols()):r.push(t?t(o,e):o)}else r.push(this);
1return null===n&&(n=void 0),r.sort(n)},latex:function(t){return tX.latex(this,t)},text:function(t){return tL(this,t)},isOne:function(t){return this.group===l?this.multiplier[t?"absEquals":"equals"](1):this.power.equals(0)},isComposite:function(){var t=this.group,e=this.previousGroup;return t===g||t===m||e===m||e===g},isCombination:function(){var t=this.group,e=this.previousGroup;return t===v||e===v},lessThan:function(t){return this.multiplier.lessThan(t)},greaterThan:function(t){return D(t)||(t=new tF(t)),!!(this.isConstant(!0)&&t.isConstant(!0))&&this.multiplier.greaterThan(t.multiplier)},getDenom:function(){var t,n;if(n=this.clone(),this.group===v&&this.power.lessThan(0)&&(n=e.expand(n)),n.power.lessThan(0)||n.group===h&&n.power.multiplier.lessThan(0)){var i=e.parse(n.multiplier.den);(t=n.toUnitMultiplier()).power.negate(),t=e.multiply(i,t)}else if(n.group===v)for(var r in t=e.parse(n.multiplier.den),n.symbols){var s=n.symbols[r];(s.power<0||s.group===h&&s.power.multiplier.lessThan(0))&&(t=e.multiply(t,n.symbols[r].clone().invert()))}else t=e.parse(n.multiplier.den);return t},getNum:function(){var t,n;return(n=this.clone()).group===v&&n.power.lessThan(0)&&(n=e.expand(n)),n.power.greaterThan(0)&&n.group!==v||n.group===h&&n.power.multiplier.greaterThan(0)?t=e.multiply(e.parse(n.multiplier.num),n.toUnitMultiplier()):n.group===v?(t=e.parse(n.multiplier.num),n.each(function(n){(n.power>0||n.group===h&&n.power.multiplier>0)&&(t=e.multiply(t,n.clone()))})):t=e.parse(n.multiplier.num),t},toString:function(){return this.text()}};var tj={convert:function(t,e){var n;if(0===t)n=[0,1];else if(t<1e-6||t>1e20){var i=this.quickConversion(Number(t));if(i[1]<=1e20){var r=Math.abs(t),s=t/r;(n=this.fullConversion(r.toFixed((i[1]+"").length-1)))[0]=n[0]*s}else n=i}else n=this.fullConversion(t);return n},quickConversion:function(t){var e,n,i,r,s,o,a,u,l;return e=t,tk.isScientific(e)&&(e=T(e)),n=1===(r=("string"!=typeof(a=e)&&(a=a.toString()),u="","-"===(l=a.charAt(0))?(a=a.substr(1,a.length),u="-"):"+"===l&&(a=a.substr(1,a.length)),i={sign:u,value:a}).value.split(".")).length?r[0]:r[0]+r[1],s=r[1]?r[1].length:0,o=`1${"0".repeat(s)}`,"0"!==n&&(n=n.replace(/^0+/,"")),[i.sign+n,o]},fullConversion:function(t){for(var e=!1,n=0,i=1,r=1,s=0,o=0,a=t;!e;){++o>1e4&&(e=!0);var u=Math.floor(a),l=n+u*r,c=i+u*s,f=a-u;f<1e-16&&(e=!0),a=1/f,n=r,i=s,r=l,s=c,(1e-16>Math.abs(l/c-t)||o>30)&&(e=!0)}return[l,c]}},tX={parser:function(){var t=["classes","setOperator","getOperators","getBrackets","tokenize","toRPN","tree","units"],e=new tG;for(var n in e)-1===t.indexOf(n)&&delete e[n];return e.setOperator({precedence:8,operator:"\\",action:"slash",prefix:!0,postfix:!1,leftAssoc:!0,operation:function(t){return t}}),e.setOperator({precedence:8,operator:"\\,",action:"slash_comma",prefix:!0,postfix:!1,leftAssoc:!0,operation:function(t){return t}}),e.getBrackets()["{"].maps_to=void 0,e}(),space:"~",dot:" \\cdot ",latex:function(t,n){if(t.clone&&(t=t.clone()),t instanceof e.classes.Collection&&(t=t.elements),Z(t)){for(var i=[],r=0;r<t.length;r++){var s=t[r];D(s)||(s=e.parse(s)),i.push(this.latex(s,n))}return this.brackets(i.join(", "),"square")}if(j(t)){for(var o="\\begin{pmatrix}\n",r=0;r<t.elements.length;r++){for(var a=[],u=t.elements[r],l=0;l<u.length;l++)a.push(this.latex(u[l],n));o+=a.join(" & "),r<t.elements.length-1&&(o+="\\\\\n")}return o+"\\end{pmatrix}"}if(G(t)){for(var o="\\left[",r=0;r<t.elements.length;r++)o+=this.latex(t.elements[r],n)+" "+(r!==t.elements.length-1?",\\,":"");return o+"\\right]"}if(X(t)){for(var o="\\{",r=0;r<t.elements.length;r++)o+=this.latex(t.elements[r],n)+" "+(r!==t.elements.length-1?",\\,":"");return o+"\\}"}t=t.clone();var f="decimal"===n||"decimals"===n,h=t.power,p=H(h),m=t.multiplier.lessThan(0);if(t.group===c&&f)return String(t.multiplier.toDecimal()*Math.pow(t.value,t.power.toDecimal()));t.multiplier=t.multiplier.abs(),g=f?[String(t.multiplier.toDecimal()),""]:[t.multiplier.num,t.multiplier.den];var g,d,w=this.value(t,p,n,m);p&&h.negate(),f?"1"===String(d=D(h)?tX.latex(h,n):String(h.toDecimal()))&&(d=""):d=D(h)?this.latex(h,n):this.formatFrac(h,!0);var y=["",""];return y[p?1:0]=d,((m?"-":"")+this.set(g,w,y,t.group===v)).replace(/\+\-/gi,"-")},greek:{alpha:"\\alpha",beta:"\\beta",gamma:"\\gamma",delta:"\\delta",epsilon:"\\epsilon",zeta:"\\zeta",eta:"\\eta",theta:"\\theta",iota:"\\iota",kappa:"\\kappa",lambda:"\\lambda",mu:"\\mu",nu:"\\nu",xi:"\\xi",omnikron:"\\omnikron",pi:"\\pi",rho:"\\rho",sigma:"\\sigma",tau:"\\tau",upsilon:"\\upsilon",phi:"\\phi",chi:"\\chi",psi:"\\psi",omega:"\\omega",Gamma:"\\Gamma",Delta:"\\Delta",Epsilon:"\\Epsilon",Theta:"\\Theta",Lambda:"\\Lambda",Xi:"\\Xi",Pi:"\\Pi",Sigma:"\\Sigma",Phi:"\\Phi",Psi:"\\Psi",Omega:"\\Omega"},symbols:{arccos:"\\arccos",cos:"\\cos",csc:"\\csc",exp:"\\exp",ker:"\\ker",limsup:"\\limsup",min:"\\min",sinh:"\\sinh",arcsin:"\\arcsin",cosh:"\\cosh",deg:"\\deg",gcd:"\\gcd",lg:"\\lg",ln:"\\ln",Pr:"\\Pr",sqrt:"\\sqrt",sup:"\\sup",arctan:"\\arctan",cot:"\\cot",det:"\\det",hom:"\\hom",lim:"\\lim",log:"\\log",LN:"\\LN",sec:"\\sec",tan:"\\tan",arg:"\\arg",coth:"\\coth",dim:"\\dim",inf:"\\inf",liminf:"\\liminf",max:"\\max",sin:"\\sin",tanh:"\\tanh"},value:function(t,e,n,i){var r=t.group,s=t.previousGroup,o=["",""],a=e?1:0;if(t.isInfinity)o[a]="\\infty";else if(r===f||r===c||s===f||s===c||s===l){var m=this.formatSubscripts(t.value);m.replace&&(m=m.replace(/(.+)_$/,"$1\\_"));var d=String(m).split("_"),N=this.greek[d[0]];N&&(d[0]=N,m=d.join("_"));var t=this.symbols[d[0]];t&&(d[0]=t,m=d.join("_")),o[a]=m}else if(r===p||s===p){for(var S,A=[],x=t.fname,O=0;O<t.args.length;O++){var I,R=t.args[O];
1I="string"==typeof R?R:this.latex(R,n),A.push(I)}if(x===y)o[a]="\\sqrt"+this.braces(A.join(","));else if(x===b)o[a]=this.brackets(A.join(","),"abs");else if(x===w)o[a]=this.brackets(A.join(","),"parens");else if("limit"===x)o[a]=" \\lim\\limits_{"+A[1]+" \\to "+A[2]+"} "+A[0];else if("integrate"===x)o[a]="\\int"+this.braces(A[0])+this.braces("d"+A[1]);else if("defint"===x)o[a]="\\int\\limits_"+this.braces(A[1])+"^"+this.braces(A[2])+" "+A[0]+" d"+A[3];else if(x===M||x===E){var R=t.args[0];R.power.equals(1)&&(R.isComposite()||R.isCombination())&&(A[0]=this.brackets(A[0])),o[a]=A[0]+(x===M?"!":"!!")}else if("floor"===x)o[a]="\\left \\lfloor"+this.braces(A[0])+"\\right \\rfloor";else if("ceil"===x)o[a]="\\left \\lceil"+this.braces(A[0])+"\\right \\rceil";else if(x===u.LOG&&A.length>1)o[a]="\\mathrm"+this.braces(u.LOG)+"_"+this.braces(A[1])+this.brackets(A[0]);else if(x===u.LOG10)o[a]="\\mathrm"+this.braces(u.LOG)+"_"+this.braces(10)+this.brackets(A[0]);else if("sum"===x){var q=A[0],C=A[1],P=A[2],T=A[3];o[a]="\\sum\\limits_{"+this.braces(C)+"="+this.braces(P)+"}^"+this.braces(T)+" "+this.braces(q)}else if("product"===x){var q=A[0],C=A[1],P=A[2],T=A[3];o[a]="\\prod\\limits_{"+this.braces(C)+"="+this.braces(P)+"}^"+this.braces(T)+" "+this.braces(q)}else if("nthroot"===x)o[a]="\\sqrt["+A[1]+"]"+this.braces(A[0]);else if("mod"===x)o[a]=A[0]+" \\bmod "+A[1];else if("realpart"===x)o[a]="\\operatorname{Re}"+this.brackets(A[0]);else if("imagpart"===x)o[a]="\\operatorname{Im}"+this.brackets(A[0]);else{var S=""!==x?"\\mathrm"+this.braces(x.replace(/_/g,"\\_")):"";t.isConversion?o[a]=S+this.brackets(A.join(""),"parens"):o[a]=S+this.brackets(A.join(","),"parens")}}else if(t.isComposite()){for(var _=t.collectSymbols().sort(r===g||s===g?function(t,e){return e.group-t.group}:function(t,e){var n=D(t.power)?-1:t.power;return(D(e.power)?-1:e.power)-n}),L=[],U=_.length,O=0;O<U;O++)L.push(tX.latex(_[O],n));var m=L.join("+");o[a]=!(t.isLinear()&&t.multiplier.equals(1))||i?this.brackets(m,"parens"):m}else if(r===v||s===h||s===v){r===v&&t.distributeExponent();var k=[],B=[],F=[],G=[],j=0,X=0,V=function(t,e,n){if(n>1&&e.length>0)for(var i=e.length,r=0;r<i;r++){var s=e[r],o=t[s];/^\\left\(.+\\right\)\^\{.+\}$/g.test(o)||/^\\left\(.+\\right\)$/g.test(o)||(t[s]=tX.brackets(o,"parens"))}return t};t.each(function(e){var i;H(e.power)?(i=tX.latex(e.invert(),n),X++,e.isComposite()&&(1!=t.multiplier.den&&1==Math.abs(e.power)&&(i=tX.brackets(i,"parens")),F.push(k.length)),k.push(i)):(i=tX.latex(e,n),j++,e.isComposite()&&(1!=t.multiplier.num&&1==Math.abs(e.power)&&(i=tX.brackets(i,"parens")),G.push(B.length)),B.push(i))}),V(B,G,j),o[0]=B.join(this.dot),V(k,F,X),o[1]=k.join(this.dot)}return o},set:function(t,e,n,i){var r=function(t){return/^\\left\(.+\\right\)$/.test(t)};if(n&&(n=this.formatP(n)),i){var s=n[0];n[0]=""}e=this.merge(e,n);var o=t[0],a=t[1],u=e[0],l=e[1];u&&1===Number(o)&&(o=""),1===Number(a)&&(a="");var c=this.join(o,u,r(u)?"":this.dot),f=this.join(a,l,r(l)?"":this.dot);if(!c||!f)return c;var h=this.frac(c,f);return i&&s&&(h=this.brackets(h)+s),h},merge:function(t,e){for(var n=[],i=0;i<2;i++)n[i]=t[i]+e[i];return n},join:function(t,e,n){return t||e?t&&!e?t:e&&!t?e:t+n+e:""},formatSubscripts:function(t){for(var e=t.toString().split("_"),n="";e.length>1;)e.length>0&&(n="_"+this.braces(e.pop()+n));return e[0]+n},formatP:function(t){for(var e=0;e<2;e++){var n=t[e];n&&(t[e]="^"+this.braces(n))}return t},formatFrac:function(t,e){var n=t.num.toString(),i=t.den.toString();return e&&"1"===n&&"1"===i?"":"1"===i?n:this.frac(n,i)},frac:function(t,e){return"\\frac"+this.braces(t)+this.braces(e)},braces:function(t){return"{"+t+"}"},brackets:function(t,e){var n={parens:["(",")"],square:["[","]"],brace:["{","}"],abs:["|","|"],angle:["\\langle","\\rangle"]}[e=e||"parens"];return"\\left"+n[0]+t+"\\right"+n[1]},filterTokens:function(t){var e=[];Z(t)&&(e.type=t.type);for(var n=["\\","left","right","big","Big","large","Large"],i=0,r=t.length;i<r;i++){var s=t[i],o=t[i+1];"\\"===s.value&&"\\"===o.value?e.push(s):Z(s)?e.push(tX.filterTokens(s)):-1===n.indexOf(s.value)&&e.push(s)}return e},parse:function(t){var e,n,i="",r=this.filterTokens(t),s={cdot:"",times:"",infty:"Infinity"},o=function(t){return r[void 0===t?++e:e+=t]},a=function(){return tX.parse(o())},u=function(t){return t in s?s[t]:"*"===t&&"&"===r[e+1].value?(o(2),","):"&"===t?(o(),","):"\\"===t?"],[":t};for(e=0,n=r.length;e<n;e++){var l=r[e];if("frac"===l.value)i+=a()+"/"+a();else if(l.value in tX.symbols){if(l.value===y&&"vector"===r[e+1].type&&"Set"===r[e+2].type){var c=a();i+=a()+"^"+Y("1/"+c)}else i+=l.value+a()}else if("int"===l.value){var f=a();e++;var h=o().value;i+="integrate"+Y(f+","+(h=u(h.substring(1,h.length))))}else if("int_"===l.value){var n=a();e++;var p=o().value;if(void 0===p){e--;var p=a()}var f=a(),h=o().value;if(","===h)var h=o().value;if("differentialD"===h||"mathrm"===h){e++;var h=o().value}i+="defint"+Y(f+","+n+","+p+","+h)}else if(l.value&&l.value.startsWith("int_")){var n=l.value.replace("int_","");console.log("uppernow"),e++;var p=o().value;if(void 0===p){e--;var p=a()}var f=a(),h=o().value;if(","===h)var h=o().value;if("differentialD"===h||"mathrm"===h){e++;var h=o().value}i+="defint"+Y(f+","+n+","+p+","+h)}else if("mathrm"===l.value){var f=r[++e][0].value;i+=f+a()}else if("sum_"===l.value||"prod_"===l.value){var m="sum_"===l.value?"sum":"product",v=o();e++;var g=a(),f=a();i+=m+Y([f,u(v[0]),u(v[2]),u(g)].join(","))}else if("lim_"===l.value){var v=o();i+="limit"+Y([a(),u(v[0]),u(v[2])].join(","))}else if("begin"===l.value){var v=o();if(Array.isArray(v)){var d=v[0].value;"matrix"===d&&(i+="matrix([")}}else if("end"===l.value){var v=o();if(Array.isArray(v)){var d=v[0].value;"matrix"===d&&(i+="])")}}else Array.isArray(l)?i+=u(tX.parse(l)):i+=u(l.value.toString())}return Y(i)}};function tV(t){G(t)?this.elements=t.items.slice(0):Z(t)?this.elements=t.slice(0):this.elements=[].slice.call(arguments)}function tZ(){var t,e,n,i,r=arguments,s=r.length,o=[];if(j(r))for(i=0;i<s;i++)o.push(r[i].slice(0));else for(i=0;i<s;i++)G(t=r[i])&&(t=t.elements),Z(t)||(t=[t]),n=t.length,e&&e!==n&&O("Unable to create Matrix. Row dimensions do not match!"),o.push(t),e=n;this.elements=o}function tz(t){if(this.elements=[],G(t)||(t=tV.fromArray(arguments)),t)for(var e=t.elements,n=0,i=e.length;n<i;n++)this.add(e[n])}tV.arrayPrefill=function(t,e){var n=[];e=e||0;for(var i=0;i<t;i++)n[i]=e;return n},tV.fromArray=function(t){var e=new tV;return e.elements=t,e},tV.fromSet=function(t){return tV.fromArray(t.elements)},tV.prototype={custom:!0,e:function(t){return t<1||t>this.elements.length?null:this.elements[t-1]},set:function(t,e){D(e)||(e=new tF(e)),this.elements[t]=e},dimensions:function(){return this.elements.length},modulus:function(){return tc("SAFE",function(){return e.pow(this.dot(this.clone()),new tF(.5))},void 0,this)},eql:function(t){var n=this.elements.length,i=t.elements||t;if(n!==i.length)return!1;
1do if(Math.abs(e.subtract(this.elements[n-1],i[n-1]).valueOf())>PRECISION)return!1;while(--n);return!0},clone:function(){for(var t=new tV,e=this.elements.length,n=0;n<e;n++)t.elements.push(this.elements[n].clone());return this.getter&&(t.getter=this.getter.clone()),t},map:function(t){var e=[];return this.each(function(n,i){e.push(t(n,i))}),new tV(e)},each:function(t){var e,n=this.elements.length,i=n;do e=i-n,t(this.elements[e],e+1);while(--n)},toUnitVector:function(){return tc("SAFE",function(){var t=this.modulus();return 0===t.valueOf()?this.clone():this.map(function(n){return e.divide(n,t)})},void 0,this)},angleFrom:function(t){return tc("SAFE",function(){var n=t.elements||t;if(this.elements.length!==n.length)return null;var i=new tF(0),r=new tF(0),s=new tF(0);this.each(function(t,o){i=e.add(i,e.multiply(t,n[o-1])),r=e.add(r,e.multiply(t,t)),s=e.add(s,e.multiply(n[o-1],n[o-1]))}),r=e.pow(r,new tF(.5)),s=e.pow(s,new tF(.5));var o=e.multiply(r,s);if(0===o.valueOf())return null;var a=e.divide(i,o),u=a.valueOf();return u<-1&&(a=-1),u>1&&(a=1),new tF(Math.acos(a))},void 0,this)},isParallelTo:function(t){var e=this.angleFrom(t).valueOf();return null===e?null:e<=PRECISION},isAntiparallelTo:function(t){var e=this.angleFrom(t).valueOf();return null===e?null:Math.abs(e-Math.PI)<=PRECISION},isPerpendicularTo:function(t){var e=this.dot(t);return null===e?null:Math.abs(e)<=PRECISION},add:function(t){return tc("SAFE",function(){var n=t.elements||t;return this.elements.length!==n.length?null:this.map(function(t,i){return e.add(t,n[i-1])})},void 0,this)},subtract:function(t){return tc("SAFE",function(){var n=t.elements||t;return this.elements.length!==n.length?null:this.map(function(t,i){return e.subtract(t,n[i-1])})},void 0,this)},multiply:function(t){return this.map(function(e){return e.clone()*t.clone()})},x:function(t){return this.multiply(t)},dot:function(t){return tc("SAFE",function(){var n=t.elements||t,i=new tF(0),r=this.elements.length;if(r!==n.length)return null;do i=e.add(i,e.multiply(this.elements[r-1],n[r-1]));while(--r);return i},void 0,this)},cross:function(t){var n=t.elements||t;if(3!==this.elements.length||3!==n.length)return null;var i=this.elements;return tc("SAFE",function(){return new tV([e.subtract(e.multiply(i[1],n[2]),e.multiply(i[2],n[1])),e.subtract(e.multiply(i[2],n[0]),e.multiply(i[0],n[2])),e.subtract(e.multiply(i[0],n[1]),e.multiply(i[1],n[0]))])},void 0,this)},max:function(){var t,e=0,n=this.elements.length,i=n;do t=i-n,Math.abs(this.elements[t].valueOf())>Math.abs(e.valueOf())&&(e=this.elements[t]);while(--n);return e},magnitude:function(){var t=new tF(0);return this.each(function(n){t=e.add(t,e.pow(n,new tF(2)))}),e.sqrt(t)},indexOf:function(t){var e,n=null,i=this.elements.length,r=i;do e=r-i,null===n&&this.elements[e].valueOf()===t.valueOf()&&(n=e+1);while(--i);return n},text:function(t){return tL(this)},toString:function(){return this.text()},latex:function(t){for(var e=[],n=0;n<this.elements.length;n++)e.push(tX.latex.call(tX,this.elements[n],t));return"["+e.join(", ")+"]"}},tZ.identity=function(t){for(var e=new tZ,n=0;n<t;n++){e.elements.push([]);for(var i=0;i<t;i++)e.set(n,i,new tF(n===i?1:0))}return e},tZ.fromArray=function(t){function e(t){return tZ.apply(this,t)}return e.prototype=tZ.prototype,new e(t)},tZ.zeroMatrix=function(t,e){for(var n=new tZ,i=0;i<t;i++)n.elements.push(tV.arrayPrefill(e,new tF(0)));return n},tZ.prototype={custom:!0,get:function(t,e){if(this.elements[t])return this.elements[t][e]},map:function(t,e){var n=new tZ;return this.each(function(i,r,s){n.set(r,s,t.call(n,i),e)}),n},set:function(t,e,n,i){this.elements[t]||(this.elements[t]=[]),this.elements[t][e]=i?n:D(n)?n:new tF(n)},cols:function(){return this.elements[0].length},rows:function(){return this.elements.length},row:function(t){return!t||t>this.cols()?[]:this.elements[t-1]},col:function(t){var e=this.rows(),n=[];if(t>this.cols()||!t)return n;for(var i=0;i<e;i++)n.push(this.elements[i][t-1]);return n},eachElement:function(t){var e,n,i=this.rows(),r=this.cols();for(e=0;e<i;e++)for(n=0;n<r;n++)t.call(this,this.elements[e][n],e,n)}
1,determinant:function(){if(!this.isSquare())return null;var t,n=this.toRightTriangular(),i=n.elements[0][0],r=n.elements.length-1,s=r;do t=s-r+1,i=e.multiply(i,n.elements[t][t]);while(--r);return i},isSquare:function(){return this.elements.length===this.elements[0].length},isSingular:function(){return this.isSquare()&&0===this.determinant()},augment:function(t){var e=this.rows();e!==t.rows()&&O("Cannot augment matrix. Rows don't match.");for(var n=0;n<e;n++)this.elements[n]=this.elements[n].concat(t.elements[n]);return this},clone:function(){for(var t=this.rows(),e=this.cols(),n=new tZ,i=0;i<t;i++){n.elements[i]=[];for(var r=0;r<e;r++){var s=this.elements[i][r];n.elements[i][r]=D(s)?s.clone():s}}return n},invert:function(){return this.isSquare()||O("Matrix is not square!"),tc("SAFE",function(){var t,n,i,r,s,o,a,u=this.elements.length,l=u,c=tZ.identity(u),f=this.augment(c).toRightTriangular(),h=f.elements[0].length,p=[];do{t=u-1,s=[],i=h,p[t]=[],o=f.elements[t][t];do r=h-i,a=e.divide(f.elements[t][r],o.clone()),s.push(a),r>=l&&p[t].push(a);while(--i);for(n=0,f.elements[t]=s;n<t;n++){s=[],i=h;do r=h-i,s.push(e.subtract(f.elements[n][r].clone(),e.multiply(f.elements[t][r].clone(),f.elements[n][t].clone())));while(--i);f.elements[n]=s}}while(--u);return tZ.fromArray(p)},void 0,this)},toRightTriangular:function(){return tc("SAFE",function(){var t,n,i,r,s,o,a=this.clone(),u=this.elements.length,l=u,c=this.elements[0].length;do{if(r=l-u,0===(n=a.elements[r][r]).valueOf()){for(var f=r+1;f<l;f++)if((i=a.elements[f][r])&&0!==i.valueOf()){t=[],s=c;do o=c-s,t.push(e.add(a.elements[r][o].clone(),a.elements[f][o].clone()));while(--s);a.elements[r]=t;break}}var n=a.elements[r][r];if(0!==n.valueOf())for(f=r+1;f<l;f++){var h=e.divide(a.elements[f][r].clone(),a.elements[r][r].clone());t=[],s=c;do o=c-s,t.push(o<=r?new tF(0):e.subtract(a.elements[f][o].clone(),e.multiply(a.elements[r][o].clone(),h.clone())));while(--s);a.elements[f]=t}}while(--u);return a},void 0,this)},transpose:function(){var t,e,n,i=this.elements.length,r=this.elements[0].length,s=new tZ,o=r;do{t=r-o,s.elements[t]=[],e=i;do n=i-e,s.elements[t][n]=this.elements[n][t].clone();while(--e)}while(--o);return s},canMultiplyFromLeft:function(t){var e=j(t)?t.elements.length:t.length;return this.elements[0].length===e},sameSize:function(t){return this.rows()===t.rows()&&this.cols()===t.cols()},multiply:function(t){return tc("SAFE",function(){var n=t.elements||t;if(!this.canMultiplyFromLeft(n)){if(this.sameSize(t)){for(var i=new tZ,r=this.rows(),s=0;s<r;s++){var o=e.multiply(new tV(this.elements[s]),new tV(t.elements[s]));i.elements[s]=o.elements}return i}return null}var s,a,u,l,c,f,h=this.elements.length,p=h,m=n[0].length,v=this.elements[0].length,g=[];do{g[s=p-h]=[],a=m;do{u=m-a,l=new tF(0),c=v;do f=v-c,l=e.add(l,e.multiply(this.elements[s][f],n[f][u]));while(--c);g[s][u]=l}while(--a)}while(--h);return tZ.fromArray(g)},void 0,this)},add:function(t,n){var i=new tZ;return this.sameSize(t)&&this.eachElement(function(r,s,o){var a=e.add(r.clone(),t.elements[s][o].clone());n&&(a=n.call(i,a,r,t.elements[s][o])),i.set(s,o,a)}),i},subtract:function(t,n){var i=new tZ;return this.sameSize(t)&&this.eachElement(function(r,s,o){var a=e.subtract(r.clone(),t.elements[s][o].clone());n&&(a=n.call(i,a,r,t.elements[s][o])),i.set(s,o,a)}),i},negate:function(){return this.each(function(t){return t.negate()}),this},toVector:function(){if(1===this.rows()||1===this.cols()){var t=new tV;return t.elements=this.elements,t}return this},toString:function(t,e){var n=this.rows(),i=[];t=void 0===t?"\n":t;for(var r=0;r<n;r++)i.push("["+this.elements[r].map(function(t){var n=e?t.multiplier.toDecimal():t.toString();return void 0!==t?n:""}).join(",")+"]");return"matrix"+Y(i.join(","))},text:function(){return"matrix("+this.elements.toString("")+")"},latex:function(t){var e=this.cols(),n=this.elements;return W("\\begin{vmatrix}{0}\\end{vmatrix}",function(){var i=[];for(var r in n){for(var s=[],o=0;o<e;o++)s.push(tX.latex.call(tX,n[r][o],t));i.push(s.join(" & "))}return i.join(" \\cr ")})}},tZ.prototype.each=tZ.prototype.eachElement,tz.fromArray=function(t){function e(t){return tz.apply(this,t)}return e.prototype=tz.prototype,new e(t)},tz.prototype={add:function(t){this.contains(t)||this.elements.push(t.clone())},contains:function(t){for(var e=0;e<this.elements.length;e++){var n=this.elements[e];if(t.equals(n))return!0}return!1},each:function(t){for(var e=this.elements,n=new tz,i=0,r=e.length;i<r;i++){var s=e[i];t.call(this,s,n,i)}return n},clone:function(){var t=new tz;return this.each(function(e){t.add(e.clone())}),t},union:function(t){var e=this.clone();return t.each(function(t){e.add(t)}),e},difference:function(t){var e=this.clone();return t.each(function(t){e.remove(t)}),e},remove:function(t){for(var e=0,n=this.elements.length;e<n;e++)if(this.elements[e].equals(t))return tl(this.elements,e),!0;return!1},intersection:function(t){var e=new tz,n=this;return t.each(function(t){n.contains(t)&&e.add(t)}),e},intersects:function(t){return this.intersection(t).elements.length>0},is_subset:function(t){for(var e=t.elements,n=0,i=e.length;n<i;n++)if(!this.contains(e[n]))return!1;return!0},toString:function(){return"{"+this.elements.join(",")+"}"}};var tH={dependencies:{_rename:{"Math2.factorial":"factorial"},factorial:{"Math2.gamma":t_.gamma},gamma_incomplete:{"Math2.factorial":t_.factorial},Li:{"Math2.Ei":t_.Ei,"Math2.bigLog":t_.bigLog,Frac:tB},Ci:{"Math2.factorial":t_.factorial},Ei:{"Math2.factorial":t_.factorial},Si:{"Math2.factorial":t_.factorial},Shi:{"Math2.factorial":t_.factorial},Chi:{isInt:z,nround:tn,"Math2.num_integrate":t_.num_integrate}
1,factor:{"Math2.ifactor":t_.ifactor,Symbol:tF},num_integrate:{"Math2.simpson":t_.simpson,nround:tn},fib:{even:tr}},reformat:{diff:function(t,e){var n=t.args[1].toString(),i="var f = "+tH.build(t.args[0].toString(),[n])+";";return e[1]+="var diff = "+t_.diff.toString()+";",e[1]+=i,["diff(f)("+n+")",e]}},getProperName:function(t){return({continued_fraction:"continuedFraction"})[t]||t},compileDependencies:function(t,e){var n=tH.dependencies[t],i=e&&e[1]?e[1]:"",r=e&&e[0]?e[0]:{};for(var s in n)if("object"!=typeof n[s]){var o=s.split(".");i+="var "+(o.length>1?o[1]:o[0])+"="+n[s]+";",r[s]=o.pop()}return[r,i]},getArgsDeps:function(t,e){for(var n=t.args,i=0;i<n.length;i++)t.args[i].each(function(t){t.group===p&&(e=tH.compileDependencies(t.fname,e))});return e},build:function(t,n){var i=B(t=tc("PARSE2NUMBER",function(){return e.parse(t)},!0)),r=[],s=[],o=function(t,n){""===t.fname&&(t=tF.unwrapPARENS(t)),n=n||[];var i,a=[],u=t.group,m="",g=function(e){var i=e===v?"*":"+",r=[];for(var s in t.symbols){var a=t.symbols[s],u=o(a,n)[0];a.isComposite()&&(u=Y(u)),r.push(u)}var l=r.join(i);return l&&!t.multiplier.equals(1)?Y(l):l},d=function(e){var i;return e in Math?i="Math."+e:(e=tH.getProperName(e),-1===r.indexOf(e)&&(n.push("var "+e+" = "+t_[e].toString()+"; "),r.push(e)),i=e),i+=Y(t.args.map(function(t){return o(t,n)[0]}).join(","))};if(u===l?a.push(t.multiplier.toDecimal()):t.multiplier.equals(-1)?m="-":t.multiplier.equals(1)||a.push(t.multiplier.toDecimal()),u===f||u===c)i=t.value;else if(u===p){if(s=tH.compileDependencies(t.fname,s),s=tH.getArgsDeps(t,s),tH.reformat[t.fname]){var w=tH.reformat[t.fname](t,s);s=w[1],i=w[0]}else i=d(t.fname)}else if(u===h){var y=t.previousGroup;y===l||y===f?i=t.value:y===p?(i=d(t.fname),s=tH.compileDependencies(t.fname,s),s=tH.getArgsDeps(t,s)):i=g(t.previousGroup)}else i=g(t.group);if(t.group!==l&&!t.power.equals(1)){var b=o(e.parse(t.power));n.push(b[1]),i="Math.pow"+Y(i+","+b[0])}return i&&a.push(m+i),[a.join("*"),n.join("").replace(/\n+\s+/g," ")]};n&&(i=n);var a=o(t);for(var u in s[0]){var m=s[0][u];a[1]=a[1].replace(u,m),s[1]=s[1].replace(u,m)}return Function(i,(s[1]||"")+a[1]+" return "+a[0]+";")}};tu(e.CONSTANTS),tu(e.functions),e.initConstants(),e.error||(e.error=O),u.LOG_FNS={log:e.functions.log,log10:e.functions.log10};var t$={allSame:q,allNumeric:function(t){for(var e=0;e<t.length;e++)if(!L(t[e]))return!1;return!0},arguments2Array:tf,arrayAddSlices:function(t,e){e=e||20;var n,i,r=[];r.push(t[0]);for(var s=0;s<t.length-1;s++){n=t[s],i=(t[s+1]-n)/e;for(var o=0;o<e;o++)n+=i,r.push(n)}return r},arrayClone:function(t){for(var e=[],n=t.length,i=0;i<n;i++)e[i]=t[i].clone();return e},arrayMax:function(t){return Math.max.apply(void 0,t)},arrayMin:tt,arrayEqual:function(t,e){if(t.sort(),e.sort(),t.length===e.length){for(var n=0;n<t.length;n++)if(t[n]!==e[n])return!1;return!0}return!1},arrayUnique:to,arrayGetVariables:function(t){for(var e=B(t[0],null,null,!0),n=1,i=t.length;n<i;n++)e=e.concat(B(t[n]));return to(e).sort()},arraySum:function(t,n){for(var i=new tF(0),r=0;r<t.length;r++){var s=t[r];i=e.add(i,D(s)?s:e.parse(s))}return n?Number(i):i},block:tc,build:tH.build,clearU:function(t){var e=A.indexOf(t);-1!==e&&(A[e]=void 0)},comboSort:function(t,e){for(var n=t.length,i=[],r=0;r<t.length;r++)i.push([t[r],e[r]]);i.sort(function(t,e){return t[0]-e[0]});var s=[],o=[];for(r=0;r<n;r++)s.push(i[r][0]),o.push(i[r][1]);return[s,o]},compare:function(t,n,i){for(var r,s={},o=0;o<i.length;o++)s[i[o]]=new tF(Math.floor(5*Math.random())+1);return tc("PARSE2NUMBER",function(){r=e.parse(t,s).equals(e.parse(n,s))}),r},convertToVector:tp,customError:I,customType:function(t){return void 0!==t&&t.custom},decompose_fn:te,each:ti,evaluate:th,even:tr,evenFraction:ts,fillHoles:function(t,e){e=e||t.length;for(var n=0;n<e;n++)t[n]||(t[n]=new tF(0));return t},firstObject:Q,format:W,generatePrimes:tm,getCoeffs:function(t,n,i){var r=[];t.each(function(t){if(t.contains(n))var i=t.stripVar(n),s=e.divide(t.clone(),i.clone()).power.toDecimal();else i=t,s=0;var o=r[s];r[s]=o?e.add(o,i):i},!0);for(var s=0;s<r.length;s++)r[s]||(r[s]=new tF(0));return r},getU:function(t){for(var e="u",n=0,i=B(t);!(-1===A.indexOf(e)&&-1===i.indexOf(e));)e="u"+n++;for(var r=0,s=A.length;r<=s;r++)if(!A[r]){A[r]=e;break}return e},importFunctions:function(){var t={};for(var n in e.functions)t[n]=e.functions[n][0];return t},inBrackets:Y,isArray:Z,isExpression:k,isFraction:U,isInt:z,isMatrix:j,isNegative:H,isNumericSymbol:V,isPrime:_,isReserved:R,isSymbol:D,isVariableSymbol:function(t){return t.group===f&&t.multiplier.equals(1)&&t.power.equals(1)},isVector:G,keys:J,knownVariable:function(t,e){var n={};return n[t]=e,n},nroots:function(t){var n,i;if(t.group===p&&""===t.fname?(n=tF.unwrapPARENS(e.parse(t).toLinear()),i=e.parse(t.power)):t.group===c&&(n=e.parse(t.value),i=e.parse(t.power)),n&&i&&n.group===l&&i.group===l&&n.multiplier.isNegative())for(var r=[],s=tF.toPolarFormArray(th(t))[0],o=e.arg(n),a=i.multiplier.den.toString(),f=i.multiplier.num.toString(),h=0;h<a;h++){var m=th(e.parse(W("(({0})+2*pi*({1}))/({2})",o,h,a))).multiplier.toDecimal();r.push(th(e.parse(W("(({0})^({1})*(cos({3})+({2})*sin({3})))^({4})",s,a,u.IMAGINARY,m,f))))}else if(t.isConstant(!0,!0)){var v=t.sign(),o=th(t.abs()),g=e.sqrt(o),r=[g.clone(),g.negate()];v<0&&(r=r.map(function(t){return e.multiply(t,tF.imaginary())}))}else r=[e.parse(t)];return tV.fromArray(r)},remove:tl,reserveNames:tu,range:function(t,e,n){var i=[];n=n||1;for(var r=t;r<=e;r++)i.push(r*n);return i},round:tn,sameSign:function(t,e){return t<0==e<0}
1,scientificToDecimal:T,separate:F,stringReplace:function(t,e,n,i){return t.substr(0,e)+i+t.substr(n,t.length)},text:tL,validateName:P,variables:B,warn:C},tY={groups:r,Symbol:tF,Expression:tD,Frac:tB,Vector:tV,Matrix:tZ,Parser:tG,Scientific:tk,Fraction:tj,Math2:t_,LaTeX:tX,Utils:t$,PARSER:e,PARENTHESIS:w,Settings:u,err:O,bigInt:n,bigDec:i,exceptions:{DivisionByZero:tw,ParseError:ty,OutOfFunctionDomainError:tM,UndefinedError:tb,MaximumIterationsReached:tE,NerdamerTypeError:tN,ParityError:tS,OperatorError:tA,OutOfRangeError:tx,DimensionError:tO,InvalidVariableNameError:tI,ValueLimitExceededError:tR,NerdamerValueError:tq,SolveError:tC,InfiniteLoopError:tP,UnexpectedTokenError:tT}},tW=function(t,n,i,r){var o=!1,a=/^([a-z_][a-z\d\_]*)\(([a-z_,\s]*)\):=(.+)$/gi.exec(t);if(a)return s.setFunction(a[1],a[2].split(","),a[3]);t instanceof tD&&(t=t.toString()),Z(i)||(i=void 0===i?[]:[i]),i.forEach(function(n){if("numer"===n){o=!0;return}var r=e.functions[i];r&&1===r[1]&&(t=`${n}(${t})`)});var l=tc("PARSE2NUMBER",function(){return e.parse(t,n)},o||u.PARSE2NUMBER);return r?N[r-1]=l:N.push(l),new tD(l)};return tW.rpn=function(t){return e.tokenize(e.toRPN(t))},tW.convertToLaTeX=function(t,n){return e.toTeX(t,n)},tW.convertFromLaTeX=function(t){var n=tX.parse(e.tokenize(t));return new tD(e.parse(n))},tW.version=function(t){if(t)try{return tY[t].version}catch(e){return"No module named "+t+" found!"}return"1.1.13"},tW.getWarnings=function(){return x},tW.setConstant=function(t,n){if(P(t),!R(t)){if("delete"===n||""===n)delete e.CONSTANTS[t];else{if(isNaN(n))throw new tN("Constant must be a number!");e.CONSTANTS[t]=n}}return this},tW.getConstant=function(t){return String(e.constant[t])},tW.setFunction=K,tW.getCore=function(){return tY},tW.getExpression=tW.getEquation=tD.getExpression,tW.reserved=function(t){return t?A:A.join(", ")},tW.clear=function(t,e){if("all"===t)N=[];else if("last"===t)N.pop();else if("first"===t)N.shift();else{var n=t?t-1:N.length;!0===e?N[n]=void 0:tl(N,n)}return this},tW.flush=function(){return this.clear("all"),this},tW.expressions=function(t,e,n){for(var i=t?{}:[],r=0;r<N.length;r++){var s=e?tX.latex(N[r],n):tL(N[r],n);t?i[r+1]=s:i.push(s)}return i},tW.register=function(t){var n=this.getCore();if(Z(t))for(var i=0;i<t.length;i++)t&&this.register(t[i]);else if(t&&-1===u.exclude.indexOf(t.name)){if(t.dependencies){for(var i=0;i<t.dependencies.length;i++)if(!n[t.dependencies[i]])throw Error(W("{0} requires {1} to be loaded!",t.name,t.dependencies[i]))}var r=t.parent,s=t.build.call(n);r&&(n[r]||(n[t.parent]={}),("nerdamer"===r?this:n[r])[t.name]=s),t.visible&&(e.functions[t.name]=[s,t.numargs])}},tW.validateName=P,tW.validVarName=function(t){try{return P(t),-1===A.indexOf(t)}catch(t){return!1}},tW.supported=function(){return J(e.functions)},tW.numEquations=tW.numExpressions=function(){return N.length},tW.setVar=function(t,n){return P(t),t in e.CONSTANTS&&O("Cannot set value for constant "+t),"delete"===n||""===n?delete S[t]:S[t]=D(n)?n:e.parse(n),this},tW.getVar=function(t){return S[t]},tW.clearVars=function(){return S={},this},tW.load=function(t){return t.call(this),this},tW.getVars=function(t,e){var n={};if("object"===(t=t||"text"))n=S;else for(var i in S)"latex"===t?n[i]=S[i].latex(e):"text"===t&&(n[i]=S[i].text(e));return n},tW.set=function(t,n){if("object"==typeof t)for(var r in t)tW.set(r,t[r]);-1!==["SAFE"].indexOf(t)&&O("Cannot modify setting: "+t),"PRECISION"===t?(i.set({precision:n}),u.PRECISION=n,n>21&&this.set("USE_BIG",!0)):"USE_LN"===t&&!0===n?(u.LOG="LN",u.LOG10="log",e.functions.log=u.LOG_FNS.log10,e.functions.log[0]=function(t){return t.isConstant()?new tF(Math.log10(t)):e.symfunction(u.LOG10,[t])},e.functions.LN=u.LOG_FNS.log,delete e.functions.log10):u[t]=n},tW.get=function(t){return u[t]},tW.updateAPI=function(t){var n=function(t){return function(){for(var n=[].slice.call(arguments),i=0;i<n.length;i++)n[i]=e.parse(n[i]);return new tD(tc("PARSE2NUMBER",function(){return e.callfunction(t,n)}))}};for(var i in e.functions)i in tW&&!t||(tW[i]=n(i))},tW.replaceFunction=function(t,n,i){var r=e.functions[t],s=void 0===i?r[1]:i;e.functions[t]=[n.call(void 0,r[0],tY),s]},tW.setOperator=function(t,n){e.setOperator(t,n)},tW.getOperator=function(t){return e.getOperator(t)},tW.aliasOperator=function(t,n){e.aliasOperator(t,n)},tW.tree=function(t){return e.tree(e.toRPN(e.tokenize(t)))},tW.htmlTree=function(t,e){return'<div class="tree">\n <ul>\n <li>\n'+this.tree(t).toHTML(3,e)+"\n </li>\n </ul>\n</div>"},tW.addPeeker=function(t,n){e.peekers[t]&&e.peekers[t].push(n)},tW.removePeeker=function(t,n){tl(e.peekers[t],n)},tW.parse=function(t){return String(t).split(";").map(function(t){return e.parse(t)})},tW.updateAPI(),tW}({bigInt:(i=function(t){"use strict";var e=u(9007199254740992),n=Math.log(9007199254740992);function r(t,e){return void 0===t?r[0]:void 0!==e?10==+e?X(t):D(t,e):X(t)}function s(t,e){this.value=t,this.sign=e,this.isSmall=!1}function o(t){this.value=t,this.sign=t<0,this.isSmall=!0}function a(t){return -9007199254740992<t&&t<9007199254740992}function u(t){return t<1e7?[t]:t<1e14?[t%1e7,Math.floor(t/1e7)]:[t%1e7,Math.floor(t/1e7)%1e7,Math.floor(t/1e14)]}function l(t){c(t);var n=t.length;if(n<4&&0>A(t,e))switch(n){case 0:return 0;case 1:return t[0];case 2:return t[0]+1e7*t[1];default:return t[0]+(t[1]+1e7*t[2])*1e7}return t}function c(t){for(var e=t.length;0===t[--e];);t.length=e+1}function f(t){for(var e=Array(t),n=-1;++n<t;)e[n]=0;return e}function h(t){return t>0?Math.floor(t):Math.ceil(t)}function p(t,e){var n,i,r=t.length,s=e.length,o=Array(r),a=0;for(i=0;i<s;i++)a=(n=t[i]+e[i]+a)>=1e7?1:0,o[i]=n-1e7*a;for(;i<r;)a=1e7===(n=t[i]+a)?1:0,o[i++]=n-1e7*a;return a>0&&o.push(a),o}function m(t,e){return t.length>=e.length?p(t,e):p(e,t)}function v(t,e){var n,i,r=t.length,s=Array(r);for(i=0;i<r;i++)e=Math.floor((n=t[i]-1e7+e)/1e7),s[i]=n-1e7*e,e+=1;for(;e>0;)s[i++]=e%1e7,e=Math.floor(e/1e7);return s}function g(t,e){var n,i,r=t.length,s=e.length,o=Array(r),a=0;for(n=0;n<s;n++)(i=t[n]-a-e[n])<0?(i+=1e7,a=1):a=0,o[n]=i;for(n=s;n<r;n++){if((i=t[n]-a)<0)i+=1e7;else{o[n++]=i;break}o[n]=i}for(;n<r;n++)o[n]=t[n];return c(o),o}function d(t,e,n){var i,r,a=t.length,u=Array(a),c=-e;for(i=0;i<a;i++)c=Math.floor((r=t[i]+c)/1e7),r%=1e7,u[i]=r<0?r+1e7:r;return"number"==typeof(u=l(u))?(n&&(u=-u),new o(u)):new s(u,n)}function w(t,e){var n,i,r,s,o=t.length,a=e.length,u=f(o+a);for(r=0;r<o;++r){s=t[r];for(var l=0;l<a;++l)i=Math.floor((n=s*e[l]+u[r+l])/1e7),u[r+l]=n-1e7*i,u[r+l+1]+=i}return c(u),u}function y(t,e){var n,i,r=t.length,s=Array(r),o=0;for(i=0;i<r;i++)o=Math.floor((n=t[i]*e+o)/1e7),s[i]=n-1e7*o;for(;o>0;)s[i++]=o%1e7,o=Math.floor(o/1e7);return s}function b(t,e){for(var n=[];e-- >0;)n.push(0);return n.concat(t)}function M(t,e,n){return t<1e7?new s(y(e,t),n):new s(w(e,u(t)),n)}function E(t){var e,n,i,r,s=t.length,o=f(s+s);for(i=0;i<s;i++){n=0-(r=t[i])*r;for(var a=i;a<s;a++)n=Math.floor((e=r*t[a]*2+o[i+a]+n)/1e7),o[i+a]=e-1e7*n;o[i+s]=n}return c(o),o}function N(t,e){var n,i,r,s,o=t.length,a=f(o);for(r=0,n=o-1;n>=0;--n)i=h((s=1e7*r+t[n])/e),r=s-i*e,a[n]=0|i;return[a,0|r]}function S(t,e){var n,i,a=X(e),p=t.value,m=a.value;if(0===m)throw Error("Cannot divide by zero");if(t.isSmall)return a.isSmall?[new o(h(p/m)),new o(p%m)]:[r[0],t];if(a.isSmall){if(1===m)return[t,r[0]];if(-1==m)return[t.negate(),r[0]];var v=Math.abs(m);if(v<1e7){n=l((i=N(p,v))[0]);var d=i[1];return(t.sign&&(d=-d),"number"==typeof n)?(t.sign!==a.sign&&(n=-n),[new o(n),new o(d)]):[new s(n,t.sign!==a.sign),new o(d)]}m=u(v)}var w=A(p,m);if(-1===w)return[r[0],t];if(0===w)return[r[t.sign===a.sign?1:-1],r[0]];n=(i=p.length+m.length<=200?function(t,e){var n,i,r,s,o,a,u,c=t.length,h=e.length,p=f(e.length),m=e[h-1],v=Math.ceil(1e7/(2*m)),g=y(t,v),d=y(e,v);for(g.length<=c&&g.push(0),d.push(0),m=d[h-1],i=c-h;i>=0;i--){for(n=1e7-1,g[i+h]!==m&&(n=Math.floor((1e7*g[i+h]+g[i+h-1])/m)),r=0,s=0,a=d.length,o=0;o<a;o++)r+=n*d[o],u=Math.floor(r/1e7),s+=g[i+o]-(r-1e7*u),r=u,s<0?(g[i+o]=s+1e7,s=-1):(g[i+o]=s,s=0);for(;0!==s;){for(n-=1,r=0,o=0;o<a;o++)(r+=g[i+o]-1e7+d[o])<0?(g[i+o]=r+1e7,r=0):(g[i+o]=r,r=1);s+=r}p[i]=n}return g=N(g,v)[0],[l(p),l(g)]}(p,m):function(t,e){for(var n,i,r,s,o,a=t.length,u=e.length,f=[],h=[];a;){if(h.unshift(t[--a]),c(h),0>A(h,e)){f.push(0);continue}i=h.length,r=1e7*h[i-1]+h[i-2],s=1e7*e[u-1]+e[u-2],i>u&&(r=(r+1)*1e7),n=Math.ceil(r/s);do{if(0>=A(o=y(e,n),h))break;n--}while(n);f.push(n),h=g(h,o)}return f.reverse(),[l(f),l(h)]}(p,m))[0];var b=t.sign!==a.sign,M=i[1],E=t.sign;return"number"==typeof n?(b&&(n=-n),n=new o(n)):n=new s(n,b),"number"==typeof M?(E&&(M=-M),M=new o(M)):M=new s(M,E),[n,M]}function A(t,e){if(t.length!==e.length)return t.length>e.length?1:-1;for(var n=t.length-1;n>=0;n--)if(t[n]!==e[n])return t[n]>e[n]?1:-1;return 0}function x(t){var e=t.abs();return!e.isUnit()&&(!!(e.equals(2)||e.equals(3)||e.equals(5))||!(e.isEven()||e.isDivisibleBy(3)||e.isDivisibleBy(5))&&(!!e.lesser(49)||void 0))}function O(t,e){for(var n,s,o,a=t.prev(),u=a,l=0;u.isEven();)u=u.divide(2),l++;t:for(s=0;s<e.length;s++)if(!t.lesser(e[s])&&!((o=i(e[s]).modPow(u,t)).equals(r[1])||o.equals(a))){for(n=l-1;0!=n&&!(o=o.square().mod(t)).isUnit();n--)if(o.equals(a))continue t;return!1}return!0}s.prototype=Object.create(r.prototype),o.prototype=Object.create(r.prototype),s.prototype.add=function(t){var e=X(t);if(this.sign!==e.sign)return this.subtract(e.negate());var n=this.value,i=e.value;return e.isSmall?new s(v(n,Math.abs(i)),this.sign):new s(m(n,i),this.sign)},s.prototype.plus=s.prototype.add,o.prototype.add=function(t){var e=X(t),n=this.value;if(n<0!==e.sign)return this.subtract(e.negate());var i=e.value;if(e.isSmall){if(a(n+i))return new o(n+i);i=u(Math.abs(i))}return new s(v(i,Math.abs(n)),n<0)},o.prototype.plus=o.prototype.add,s.prototype.subtract=function(t){var e,n,i=X(t);if(this.sign!==i.sign)return this.add(i.negate());var r=this.value,a=i.value;return i.isSmall?d(r,Math.abs(a),this.sign):(e=this.sign,(A(r,a)>=0?n=g(r,a):(n=g(a,r),e=!e),"number"==typeof(n=l(n)))?(e&&(n=-n),new o(n)):new s(n,e))},s.prototype.minus=s.prototype.subtract,o.prototype.subtract=function(t){var e=X(t),n=this.value;if(n<0!==e.sign)return this.add(e.negate());var i=e.value;return e.isSmall?new o(n-i):d(i,Math.abs(n),n>=0)},o.prototype.minus=o.prototype.subtract,s.prototype.negate=function(){return new s(this.value,!this.sign)},o.prototype.negate=function(){var t=this.sign,e=new o(-this.value);return e.sign=!t,e},s.prototype.abs=function(){return new s(this.value,!1)},o.prototype.abs=function(){return new o(Math.abs(this.value))},s.prototype.multiply=function(t){var e,n,i,o=X(t),a=this.value,l=o.value,f=this.sign!==o.sign;if(o.isSmall){if(0===l)return r[0];if(1===l)return this;if(-1===l)return this.negate();if((i=Math.abs(l))<1e7)return new s(y(a,i),f);l=u(i)}return -.012*(e=a.length)-.012*(n=l.length)+15e-6*e*n>
10?new s(function t(e,n){var i=Math.max(e.length,n.length);if(i<=30)return w(e,n);i=Math.ceil(i/2);var r=e.slice(i),s=e.slice(0,i),o=n.slice(i),a=n.slice(0,i),u=t(s,a),l=t(r,o),f=t(m(s,r),m(a,o)),h=m(m(u,b(g(g(f,u),l),i)),b(l,2*i));return c(h),h}(a,l),f):new s(w(a,l),f)},s.prototype.times=s.prototype.multiply,o.prototype._multiplyBySmall=function(t){return a(t.value*this.value)?new o(t.value*this.value):M(Math.abs(t.value),u(Math.abs(this.value)),this.sign!==t.sign)},s.prototype._multiplyBySmall=function(t){return 0===t.value?r[0]:1===t.value?this:-1===t.value?this.negate():M(Math.abs(t.value),this.value,this.sign!==t.sign)},o.prototype.multiply=function(t){return X(t)._multiplyBySmall(this)},o.prototype.times=o.prototype.multiply,s.prototype.square=function(){return new s(E(this.value),!1)},o.prototype.square=function(){var t=this.value*this.value;return a(t)?new o(t):new s(E(u(Math.abs(this.value))),!1)},s.prototype.divmod=function(t){var e=S(this,t);return{quotient:e[0],remainder:e[1]}},o.prototype.divmod=s.prototype.divmod,s.prototype.divide=function(t){return S(this,t)[0]},o.prototype.over=o.prototype.divide=s.prototype.over=s.prototype.divide,s.prototype.mod=function(t){return S(this,t)[1]},o.prototype.remainder=o.prototype.mod=s.prototype.remainder=s.prototype.mod,s.prototype.pow=function(t){var e,n,i,s=X(t),u=this.value,l=s.value;if(0===l)return r[1];if(0===u)return r[0];if(1===u)return r[1];if(-1===u)return s.isEven()?r[1]:r[-1];if(s.sign)return r[0];if(!s.isSmall)throw Error("The exponent "+s.toString()+" is too large.");if(this.isSmall&&a(e=Math.pow(u,l)))return new o(h(e));for(n=this,i=r[1];!0&l&&(i=i.times(n),--l),0!==l;)l/=2,n=n.square();return i},o.prototype.pow=s.prototype.pow,s.prototype.modPow=function(t,e){if(t=X(t),(e=X(e)).isZero())throw Error("Cannot take modPow with modulus 0");for(var n=r[1],i=this.mod(e);t.isPositive();){if(i.isZero())return r[0];t.isOdd()&&(n=n.multiply(i).mod(e)),t=t.divide(2),i=i.square().mod(e)}return n},o.prototype.modPow=s.prototype.modPow,s.prototype.compareAbs=function(t){var e=X(t),n=this.value,i=e.value;return e.isSmall?1:A(n,i)},o.prototype.compareAbs=function(t){var e=X(t),n=Math.abs(this.value),i=e.value;return e.isSmall?n===(i=Math.abs(i))?0:n>i?1:-1:-1},s.prototype.compare=function(t){if(t===1/0)return -1;if(t===-1/0)return 1;var e=X(t),n=this.value,i=e.value;return this.sign!==e.sign?e.sign?1:-1:e.isSmall?this.sign?-1:1:A(n,i)*(this.sign?-1:1)},s.prototype.compareTo=s.prototype.compare,o.prototype.compare=function(t){if(t===1/0)return -1;if(t===-1/0)return 1;var e=X(t),n=this.value,i=e.value;return e.isSmall?n==i?0:n>i?1:-1:n<0!==e.sign?n<0?-1:1:n<0?1:-1},o.prototype.compareTo=o.prototype.compare,s.prototype.equals=function(t){return 0===this.compare(t)},o.prototype.eq=o.prototype.equals=s.prototype.eq=s.prototype.equals,s.prototype.notEquals=function(t){return 0!==this.compare(t)},o.prototype.neq=o.prototype.notEquals=s.prototype.neq=s.prototype.notEquals,s.prototype.greater=function(t){return this.compare(t)>0},o.prototype.gt=o.prototype.greater=s.prototype.gt=s.prototype.greater,s.prototype.lesser=function(t){return 0>this.compare(t)},o.prototype.lt=o.prototype.lesser=s.prototype.lt=s.prototype.lesser,s.prototype.greaterOrEquals=function(t){return this.compare(t)>=0},o.prototype.geq=o.prototype.greaterOrEquals=s.prototype.geq=s.prototype.greaterOrEquals,s.prototype.lesserOrEquals=function(t){return 0>=this.compare(t)},o.prototype.leq=o.prototype.lesserOrEquals=s.prototype.leq=s.prototype.lesserOrEquals,s.prototype.isEven=function(){return(1&this.value[0])==0},o.prototype.isEven=function(){return(1&this.value)==0},s.prototype.isOdd=function(){return(1&this.value[0])==1},o.prototype.isOdd=function(){return(1&this.value)==1},s.prototype.isPositive=function(){return!this.sign},o.prototype.isPositive=function(){return this.value>0},s.prototype.isNegative=function(){return this.sign},o.prototype.isNegative=function(){return this.value<0},s.prototype.isUnit=function(){return!1},o.prototype.isUnit=function(){return 1===Math.abs(this.value)},s.prototype.isZero=function(){return!1},o.prototype.isZero=function(){return 0===this.value},s.prototype.isDivisibleBy=function(t){var e=X(t),n=e.value;return 0!==n&&(1===n||(2===n?this.isEven():this.mod(e).equals(r[0])))},o.prototype.isDivisibleBy=s.prototype.isDivisibleBy,s.prototype.isPrime=function(t){var e=x(this);if(void 0!==e)return e;var n=this.abs(),r=n.bitLength();if(r<=64)return O(n,[2,325,9375,28178,450775,9780504,1795265022]);for(var s=Math.log(2)*r,o=Math.ceil(!0===t?2*Math.pow(s,2):s),a=[],u=0;u<o;u++)a.push(i(u+2));return O(n,a)},o.prototype.isPrime=s.prototype.isPrime,s.prototype.isProbablePrime=function(t){var e=x(this);if(void 0!==e)return e;for(var n=this.abs(),r=void 0===t?5:t,s=[],o=0;o<r;o++)s.push(i.randBetween(2,n.minus(2)));return O(n,s)},o.prototype.isProbablePrime=s.prototype.isProbablePrime,s.prototype.modInv=function(t){for(var e,n,r,s=i.zero,o=i.one,a=X(t),u=this.abs();!u.equals(i.zero);)e=a.divide(u),n=s,r=a,s=o,a=u,o=n.subtract(e.multiply(o)),u=r.subtract(e.multiply(u));if(!a.equals(1))throw Error(this.toString()+" and "+t.toString()+" are not co-prime");return(-1===s.compare(0)&&(s=s.add(t)),this.isNegative())?s.negate():s},o.prototype.modInv=s.prototype.modInv,s.prototype.next=function(){var t=this.value;return this.sign?d(t,1,this.sign):new s(v(t,1),this.sign)},o.prototype.next=function(){var t=this.value;return t+1<9007199254740992?new o(t+1):new s(e,!1)},s.prototype.prev=function(){var t=this.value;return this.sign?new s(v(t,1),!0):d(t,1,this.sign)},o.prototype.prev=function(){var t=this.value;return t-1>-9007199254740992?new o(t-1):new s(e,!0)};for(var I=[1];2*I[I.length-1]<=1e7;)I.push(2*I[I.length-1]);var R=I.length,q=I[R-1];function C(t){return("number"==typeof t||"string"==typeof t)&&1e7>=+Math.abs(t)||t instanceof s&&t.value.length<=1}function P(t,e,n){e=X(e);for(var r=t.isNegative(),s=e.isNegative(),o=r?t.not():t,a=s?e.not():e,u=0,l=0,c=null,f=null,h=[];!o.isZero()||!a.isZero();)u=(c=S(o,q))[1].toJSNumber(),r&&(u=q-1-u),l=(f=S(a,q))[1].toJSNumber(),s&&(l=q-1-l),o=c[0],a=f[0],h.push(n(u,l));for(var p=0!==n(r?1:0,s?1:0)?i(-1):i(0),m=h.length-1;m>=0;m-=1)p=p.multiply(q).add(i(h[m]));return p}function T(t){var e=t.value,n="number"==typeof e?1073741824|e:e[0]+1e7*e[1]|1073758208;return n&-n}function _(t,e){return t=X(t),e=X(e),t.greater(e)?t:e}function L(t,e){return t=X(t),e=X(e),t.lesser(e)?t:e}function U(t,e){if(t=X(t).abs(),e=X(e).abs(),t.equals(e))return t;if(t.isZero())return e;if(e.isZero())return t;for(var n,i,s=r[1];t.isEven()&&e.isEven();)n=Math.min(T(t),T(e)),t=t.divide(n),e=e.divide(n),s=s.multiply(n);for(;t.isEven();)t=t.divide(T(t));do{for(;e.isEven();)e=e.divide(T(e));t.greater(e)&&(i=e,e=t,t=i),e=e.subtract(t)}while(!e.isZero());return s.isUnit()?t:t.multiply(s)}s.prototype.shiftLeft=function(t){if(!C(t))throw Error(String(t)+" is too large for shifting.");if((t=+t)<0)return this.shiftRight(-t);var e=this;if(e.isZero())return e;for(;t>=R;)e=e.multiply(q),t-=R-1;return e.multiply(I[t])},o.prototype.shiftLeft=s.prototype.shiftLeft,s.prototype.shiftRight=function(t){if(!C(t))throw Error(String(t)+" is too large for shifting.");if((t=+t)<0)return this.shiftLeft(-t);for(var e,n=this;t>=R;){if(n.isZero()||n.isNegative()&&n.isUnit())return n;n=(e=S(n,q))[1].isNegative()?e[0].prev():e[0],t-=R-1}return(e=S(n,I[t]))[1].isNegative()?e[0].prev():e[0]},o.prototype.shiftRight=s.prototype.shiftRight,s.prototype.not=function(){return this.negate().prev()},o.prototype.not=s.prototype.not,s.prototype.and=function(t){return P(this,t,function(t,e){return t&e})},o.prototype.and=s.prototype.and,s.prototype.or=function(t){return P(this,t,function(t,e){return t|e})},o.prototype.or=s.prototype.or,s.prototype.xor=function(t){return P(this,t,function(t,e){return t^e})},o.prototype.xor=s.prototype.xor,s.prototype.bitLength=function(){var t=this;return(0>t.compareTo(i(0))&&(t=t.negate().subtract(i(1))),0===t.compareTo(i(0)))?i(0):i(function t(e,n){if(0>=n.compareTo(e)){var r=t(e,n.square(n)),s=r.p,o=r.e,a=s.multiply(n);return 0>=a.compareTo(e)?{p:a,e:2*o+1}:{p:s,e:2*o}}return{p:i(1),e:0}}(t,i(2)).e).add(i(1))},o.prototype.bitLength=s.prototype.bitLength;var D=function(t,e){for(var i,r=t.length,s=Math.abs(e),i=0;i<r;i++){var a=t[i].toLowerCase();if("-"!==a&&/[a-z0-9]/.test(a)){if(/[0-9]/.test(a)&&+a>=s){if("1"===a&&1===s)continue;throw Error(a+" is not a valid digit in base "+e+".")}
1if(a.charCodeAt(0)-87>=s)throw Error(a+" is not a valid digit in base "+e+".")}}if(2<=e&&e<=36&&r<=n/Math.log(e)){if(isNaN(parseInt(t,e)))throw Error(a+" is not a valid digit in base "+e+".");return new o(parseInt(t,e))}e=X(e);var u=[],l="-"===t[0];for(i=l?1:0;i<t.length;i++){var a=t[i].toLowerCase(),c=a.charCodeAt(0);if(48<=c&&c<=57)u.push(X(a));else if(97<=c&&c<=122)u.push(X(a.charCodeAt(0)-87));else if("<"===a){var f=i;do i++;while(">"!==t[i]);u.push(X(t.slice(f+1,i)))}else throw Error(a+" is not a valid character")}return k(u,e,l)};function k(t,e,n){var i,s=r[0],o=r[1];for(i=t.length-1;i>=0;i--)s=s.add(t[i].times(o)),o=o.times(e);return n?s.negate():s}function B(t){return t<=35?"0123456789abcdefghijklmnopqrstuvwxyz".charAt(t):"<"+t+">"}function F(t,e){if((e=i(e)).isZero()){if(t.isZero())return{value:[0],isNegative:!1};throw Error("Cannot convert nonzero numbers to base 0.")}if(e.equals(-1)){if(t.isZero())return{value:[0],isNegative:!1};if(t.isNegative())return{value:[].concat.apply([],Array.apply(null,Array(-t)).map(Array.prototype.valueOf,[1,0])),isNegative:!1};var n=Array.apply(null,Array(+t-1)).map(Array.prototype.valueOf,[0,1]);return n.unshift([1]),{value:[].concat.apply([],n),isNegative:!1}}var r=!1;if(t.isNegative()&&e.isPositive()&&(r=!0,t=t.abs()),e.equals(1))return t.isZero()?{value:[0],isNegative:!1}:{value:Array.apply(null,Array(+t)).map(Number.prototype.valueOf,1),isNegative:r};for(var s,o=[],a=t;a.isNegative()||a.compareAbs(e)>=0;){a=(s=a.divmod(e)).quotient;var u=s.remainder;u.isNegative()&&(u=e.minus(u).abs(),a=a.next()),o.push(u.toJSNumber())}return o.push(a.toJSNumber()),{value:o.reverse(),isNegative:r}}function G(t,e){var n=F(t,e);return(n.isNegative?"-":"")+n.value.map(B).join("")}function j(t){if(a(+t)){var e=+t;if(e===h(e))return new o(e);throw Error("Invalid integer: "+t)}var n="-"===t[0];n&&(t=t.slice(1));var i=t.split(/e/i);if(i.length>2)throw Error("Invalid integer: "+i.join("e"));if(2===i.length){var r=i[1];if("+"===r[0]&&(r=r.slice(1)),(r=+r)!==h(r)||!a(r))throw Error("Invalid integer: "+r+" is not a valid exponent.");var u=i[0],l=u.indexOf(".");if(l>=0&&(r-=u.length-l-1,u=u.slice(0,l)+u.slice(l+1)),r<0)throw Error("Cannot include negative exponent part for integers");u+=Array(r+1).join("0"),t=u}if(!/^([0-9][0-9]*)$/.test(t))throw Error("Invalid integer: "+t);for(var f=[],p=t.length,m=p-7;p>0;)f.push(+t.slice(m,p)),(m-=7)<0&&(m=0),p-=7;return c(f),new s(f,n)}function X(t){return"number"==typeof t?function(t){if(a(t)){if(t!==h(t))throw Error(t+" is not an integer.");return new o(t)}return j(t.toString())}(t):"string"==typeof t?j(t):t}s.prototype.toArray=function(t){return F(this,t)},o.prototype.toArray=function(t){return F(this,t)},s.prototype.toString=function(e){if(t===e&&(e=10),10!==e)return G(this,e);for(var n,i=this.value,r=i.length,s=String(i[--r]);--r>=0;)n=String(i[r]),s+="0000000".slice(n.length)+n;return(this.sign?"-":"")+s},o.prototype.toString=function(e){return(t===e&&(e=10),10!=e)?G(this,e):String(this.value)},s.prototype.toJSON=o.prototype.toJSON=function(){return this.toString()},s.prototype.valueOf=function(){return parseInt(this.toString(),10)},s.prototype.toJSNumber=s.prototype.valueOf,o.prototype.valueOf=function(){return this.value},o.prototype.toJSNumber=o.prototype.valueOf;for(var V=0;V<1e3;V++)r[V]=new o(V),V>0&&(r[-V]=new o(-V));return r.one=r[1],r.zero=r[0],r.minusOne=r[-1],r.max=_,r.min=L,r.gcd=U,r.lcm=function(t,e){return t=X(t).abs(),e=X(e).abs(),t.divide(U(t,e)).multiply(e)},r.isInstance=function(t){return t instanceof s||t instanceof o},r.randBetween=function(t,e){var n=L(t=X(t),e=X(e)),i=_(t,e).subtract(n).add(1);if(i.isSmall)return n.add(Math.floor(Math.random()*i));for(var r=i.value.length-1,a=[],u=!0,c=r;c>=0;c--){var f=u?i.value[c]:1e7,p=h(Math.random()*f);a.unshift(p),p<f&&(u=!1)}return a=l(a),n.add("number"==typeof a?new o(a):new s(a,!1))},r.fromArray=function(t,e,n){return k(t.map(X),X(e||10),n)},r}(),t.hasOwnProperty("exports")&&(t.exports=i),void 0!==(r=(function(){return i}).apply(e,[]))&&(t.exports=r),i),bigDec:function(i){"use strict";var s,o,a,u="0123456789abcdef",l="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",c="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823
1066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",f={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-9e15,maxE:9e15,crypto:!1},h=!0,p="[DecimalError] ",m=p+"Invalid argument: ",v=p+"Precision limit exceeded",g=p+"crypto unavailable",d=Math.floor,w=Math.pow,y=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,b=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,M=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,E=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,N=l.length-1,S=c.length-1,A={name:"[object Decimal]"};function x(t){var e,n,i,r=t.length-1,s="",o=t[0];if(r>0){for(s+=o,e=1;e<r;e++)(n=7-(i=t[e]+"").length)&&(s+=D(n)),s+=i;(n=7-(i=(o=t[e])+"").length)&&(s+=D(n))}else if(0===o)return"0";for(;o%10==0;)o/=10;return s+o}function O(t,e,n){if(t!==~~t||t<e||t>n)throw Error(m+t)}function I(t,e,n,i){var r,s,o,a;for(s=t[0];s>=10;s/=10)--e;return--e<0?(e+=7,r=0):(r=Math.ceil((e+1)/7),e%=7),s=w(10,7-e),a=t[r]%s|0,null==i?e<3?(0==e?a=a/100|0:1==e&&(a=a/10|0),o=n<4&&99999==a||n>3&&49999==a||5e4==a||0==a):o=(n<4&&a+1==s||n>3&&a+1==s/2)&&(t[r+1]/s/100|0)==w(10,e-2)-1||(a==s/2||0==a)&&0==(t[r+1]/s/100|0):e<4?(0==e?a=a/1e3|0:1==e?a=a/100|0:2==e&&(a=a/10|0),o=(i||n<4)&&9999==a||!i&&n>3&&4999==a):o=((i||n<4)&&a+1==s||!i&&n>3&&a+1==s/2)&&(t[r+1]/s/1e3|0)==w(10,e-3)-1,o}function R(t,e,n){for(var i,r,s=[0],o=0,a=t.length;o<a;){for(r=s.length;r--;)s[r]*=e;for(s[0]+=u.indexOf(t.charAt(o++)),i=0;i<s.length;i++)s[i]>n-1&&(void 0===s[i+1]&&(s[i+1]=0),s[i+1]+=s[i]/n|0,s[i]%=n)}return s.reverse()}A.absoluteValue=A.abs=function(){var t=new this.constructor(this);return t.s<0&&(t.s=1),C(t)},A.ceil=function(){return C(new this.constructor(this),this.e+1,2)},A.comparedTo=A.cmp=function(t){var e,n,i,r,s=this.d,o=(t=new this.constructor(t)).d,a=this.s,u=t.s;if(!s||!o)return a&&u?a!==u?a:s===o?0:!s^a<0?1:-1:NaN;if(!s[0]||!o[0])return s[0]?a:o[0]?-u:0;if(a!==u)return a;
1if(this.e!==t.e)return this.e>t.e^a<0?1:-1;for(e=0,n=(i=s.length)<(r=o.length)?i:r;e<n;++e)if(s[e]!==o[e])return s[e]>o[e]^a<0?1:-1;return i===r?0:i>r^a<0?1:-1},A.cosine=A.cos=function(){var t,e,n=this,i=n.constructor;return n.d?n.d[0]?(t=i.precision,e=i.rounding,i.precision=t+Math.max(n.e,n.sd())+7,i.rounding=1,n=function(t,e){var n,i,r=e.d.length;r<32?i=(1/z(4,n=Math.ceil(r/3))).toString():(n=16,i="2.3283064365386962890625e-10"),t.precision+=n,e=Z(t,1,e.times(i),new t(1));for(var s=n;s--;){var o=e.times(e);e=o.times(o).minus(o).times(8).plus(1)}return t.precision-=n,e}(i,H(i,n)),i.precision=t,i.rounding=e,C(2==a||3==a?n.neg():n,t,e,!0)):new i(1):new i(NaN)},A.cubeRoot=A.cbrt=function(){var t,e,n,i,r,s,o,a,u,l,c=this.constructor;if(!this.isFinite()||this.isZero())return new c(this);for(h=!1,(s=this.s*w(this.s*this,1/3))&&Math.abs(s)!=1/0?i=new c(s.toString()):(n=x(this.d),(s=((t=this.e)-n.length+1)%3)&&(n+=1==s||-2==s?"0":"00"),s=w(n,1/3),t=d((t+1)/3)-(t%3==(t<0?-1:2)),(i=new c(n=s==1/0?"5e"+t:(n=s.toExponential()).slice(0,n.indexOf("e")+1)+t)).s=this.s),o=(t=c.precision)+3;;)if(i=q((l=(u=(a=i).times(a).times(a)).plus(this)).plus(this).times(a),l.plus(u),o+2,1),x(a.d).slice(0,o)===(n=x(i.d)).slice(0,o)){if("9999"!=(n=n.slice(o-3,o+1))&&(r||"4999"!=n)){+n&&(+n.slice(1)||"5"!=n.charAt(0))||(C(i,t+1,1),e=!i.times(i).times(i).eq(this));break}if(!r&&(C(a,t+1,0),a.times(a).times(a).eq(this))){i=a;break}o+=4,r=1}return h=!0,C(i,t,c.rounding,e)},A.decimalPlaces=A.dp=function(){var t,e=this.d,n=NaN;if(e){if(n=((t=e.length-1)-d(this.e/7))*7,t=e[t])for(;t%10==0;t/=10)n--;n<0&&(n=0)}return n},A.dividedBy=A.div=function(t){return q(this,new this.constructor(t))},A.dividedToIntegerBy=A.divToInt=function(t){var e=this.constructor;return C(q(this,new e(t),0,1,1),e.precision,e.rounding)},A.equals=A.eq=function(t){return 0===this.cmp(t)},A.floor=function(){return C(new this.constructor(this),this.e+1,3)},A.greaterThan=A.gt=function(t){return this.cmp(t)>0},A.greaterThanOrEqualTo=A.gte=function(t){var e=this.cmp(t);return 1==e||0===e},A.hyperbolicCosine=A.cosh=function(){var t,e,n,i,r,s=this,o=s.constructor,a=new o(1);if(!s.isFinite())return new o(s.s?1/0:NaN);if(s.isZero())return a;
1n=o.precision,i=o.rounding,o.precision=n+Math.max(s.e,s.sd())+4,o.rounding=1,(r=s.d.length)<32?e=(1/z(4,t=Math.ceil(r/3))).toString():(t=16,e="2.3283064365386962890625e-10"),s=Z(o,1,s.times(e),new o(1),!0);for(var u,l=t,c=new o(8);l--;)u=s.times(s),s=a.minus(u.times(c.minus(u.times(c))));return C(s,o.precision=n,o.rounding=i,!0)},A.hyperbolicSine=A.sinh=function(){var t,e,n,i,r=this,s=r.constructor;if(!r.isFinite()||r.isZero())return new s(r);if(e=s.precision,n=s.rounding,s.precision=e+Math.max(r.e,r.sd())+4,s.rounding=1,(i=r.d.length)<3)r=Z(s,2,r,r,!0);else{t=(t=1.4*Math.sqrt(i))>16?16:0|t,r=Z(s,2,r=r.times(1/z(5,t)),r,!0);for(var o,a=new s(5),u=new s(16),l=new s(20);t--;)o=r.times(r),r=r.times(a.plus(o.times(u.times(o).plus(l))))}return s.precision=e,s.rounding=n,C(r,e,n,!0)},A.hyperbolicTangent=A.tanh=function(){var t,e,n=this.constructor;return this.isFinite()?this.isZero()?new n(this):(t=n.precision,e=n.rounding,n.precision=t+7,n.rounding=1,q(this.sinh(),this.cosh(),n.precision=t,n.rounding=e)):new n(this.s)},A.inverseCosine=A.acos=function(){var t,e=this,n=e.constructor,i=e.abs().cmp(1),r=n.precision,s=n.rounding;return -1!==i?0===i?e.isNeg()?L(n,r,s):new n(0):new n(NaN):e.isZero()?L(n,r+4,s).times(.5):(n.precision=r+6,n.rounding=1,e=e.asin(),t=L(n,r+4,s).times(.5),n.precision=r,n.rounding=s,t.minus(e))},A.inverseHyperbolicCosine=A.acosh=function(){var t,e,n=this,i=n.constructor;return n.lte(1)?new i(n.eq(1)?0:NaN):n.isFinite()?(t=i.precision,e=i.rounding,i.precision=t+Math.max(Math.abs(n.e),n.sd())+4,i.rounding=1,h=!1,n=n.times(n).minus(1).sqrt().plus(n),h=!0,i.precision=t,i.rounding=e,n.ln()):new i(n)},A.inverseHyperbolicSine=A.asinh=function(){var t,e,n=this,i=n.constructor;return!n.isFinite()||n.isZero()?new i(n):(t=i.precision,e=i.rounding,i.precision=t+2*Math.max(Math.abs(n.e),n.sd())+6,i.rounding=1,h=!1,n=n.times(n).plus(1).sqrt().plus(n),h=!0,i.precision=t,i.rounding=e,n.ln())},A.inverseHyperbolicTangent=A.atanh=function(){var t,e,n,i,r=this,s=r.constructor;return r.isFinite()?r.e>=0?new s(r.abs().eq(1)?r.s/0:r.isZero()?r:NaN):(t=s.precision,e=s.rounding,Math.max(i=r.sd(),t)<-(2*r.e)-1?C(new s(r),t,e,!0):(s.precision=n=i-r.e,r=q(r.plus(1),new s(1).minus(r),n+t,1),s.precision=t+4,s.rounding=1,r=r.ln(),s.precision=t,s.rounding=e,r.times(.5))):new s(NaN)},A.inverseSine=A.asin=function(){var t,e,n,i,r=this,s=r.constructor;return r.isZero()?new s(r):(e=r.abs().cmp(1),n=s.precision,i=s.rounding,-1!==e?0===e?((t=L(s,n+4,i).times(.5)).s=r.s,t):new s(NaN):(s.precision=n+6,s.rounding=1,r=r.div(new s(1).minus(r.times(r)).sqrt().plus(1)).atan(),s.precision=n,s.rounding=i,r.times(2)))},A.inverseTangent=A.atan=function(){var t,e,n,i,r,s,o,a,u,l=this,c=l.constructor,f=c.precision,p=c.rounding;if(l.isFinite()){if(l.isZero())return new c(l);if(l.abs().eq(1)&&f+4<=S)return(o=L(c,f+4,p).times(.25)).s=l.s,o}else{if(!l.s)return new c(NaN);if(f+4<=S)return(o=L(c,f+4,p).times(.5)).s=l.s,o}for(c.precision=a=f+10,c.rounding=1,t=n=Math.min(28,a/7+2|0);t;--t)l=l.div(l.times(l).plus(1).sqrt().plus(1));for(h=!1,e=Math.ceil(a/7),i=1,u=l.times(l),o=new c(l),r=l;-1!==t;)if(r=r.times(u),s=o.minus(r.div(i+=2)),r=r.times(u),void 0!==(o=s.plus(r.div(i+=2))).d[e])for(t=e;o.d[t]===s.d[t]&&t--;);return n&&(o=o.times(2<<n-1)),h=!0,C(o,c.precision=f,c.rounding=p,!0)},A.isFinite=function(){return!!this.d},A.isInteger=A.isInt=function(){return!!this.d&&d(this.e/7)>this.d.length-2},A.isNaN=function(){return!this.s},A.isNegative=A.isNeg=function(){return this.s<0},A.isPositive=A.isPos=function(){return this.s>0},A.isZero=function(){return!!this.d&&0===this.d[0]},A.lessThan=A.lt=function(t){return 0>this.cmp(t)},A.lessThanOrEqualTo=A.lte=function(t){return 1>this.cmp(t)},A.logarithm=A.log=function(t){var e,n,i,r,s,o,a,u=this.constructor,l=u.precision,c=u.rounding;if(null==t)t=new u(10),e=!0;else{if(n=(t=new u(t)).d,t.s<0||!n||!n[0]||t.eq(1))return new u(NaN);e=t.eq(10)}if(n=this.d,this.s<0||!n||!n[0]||this.eq(1))return new u(n&&!n[0]?-1/0:1!=this.s?NaN:n?0:1/0);if(e){if(n.length>1)r=!0;else{for(i=n[0];i%10==0;)i/=10;r=1!==i}}if(h=!1,I((a=q(j(this,o=l+5),e?_(u,o+10):j(t,o),o,1)).d,i=l,c))do if(a=q(j(this,o+=10),e?_(u,o+10):j(t,o),o,1),!r){+x(a.d).slice(i+1,i+15)+1==1e14&&(a=C(a,l+1,0));break}while(I(a.d,i+=10,c));return h=!0,C(a,l,c)},A.minus=A.sub=function(t){var e,n,i,r,s,o,a,u,l,c,f,p,m=this.constructor;if(t=new m(t),!this.d||!t.d)return this.s&&t.s?this.d?t.s=-t.s:t=new m(t.d||this.s!==t.s?this:NaN):t=new m(NaN),t;if(this.s!=t.s)return t.s=-t.s,this.plus(t);
1if(l=this.d,p=t.d,a=m.precision,u=m.rounding,!l[0]||!p[0]){if(p[0])t.s=-t.s;else{if(!l[0])return new m(3===u?-0:0);t=new m(this)}return h?C(t,a,u):t}if(n=d(t.e/7),c=d(this.e/7),l=l.slice(),s=c-n){for((f=s<0)?(e=l,s=-s,o=p.length):(e=p,n=c,o=l.length),s>(i=Math.max(Math.ceil(a/7),o)+2)&&(s=i,e.length=1),e.reverse(),i=s;i--;)e.push(0);e.reverse()}else{for((f=(i=l.length)<(o=p.length))&&(o=i),i=0;i<o;i++)if(l[i]!=p[i]){f=l[i]<p[i];break}s=0}for(f&&(e=l,l=p,p=e,t.s=-t.s),o=l.length,i=p.length-o;i>0;--i)l[o++]=0;for(i=p.length;i>s;){if(l[--i]<p[i]){for(r=i;r&&0===l[--r];)l[r]=1e7-1;--l[r],l[i]+=1e7}l[i]-=p[i]}for(;0===l[--o];)l.pop();for(;0===l[0];l.shift())--n;return l[0]?(t.d=l,t.e=T(l,n),h?C(t,a,u):t):new m(3===u?-0:0)},A.modulo=A.mod=function(t){var e,n=this.constructor;return t=new n(t),this.d&&t.s&&(!t.d||t.d[0])?t.d&&(!this.d||this.d[0])?(h=!1,9==n.modulo?(e=q(this,t.abs(),0,3,1)).s*=t.s:e=q(this,t,0,n.modulo,1),e=e.times(t),h=!0,this.minus(e)):C(new n(this),n.precision,n.rounding):new n(NaN)},A.naturalExponential=A.exp=function(){return G(this)},A.naturalLogarithm=A.ln=function(){return j(this)},A.negated=A.neg=function(){var t=new this.constructor(this);return t.s=-t.s,C(t)},A.plus=A.add=function(t){var e,n,i,r,s,o,a,u,l,c,f=this.constructor;if(t=new f(t),!this.d||!t.d)return this.s&&t.s?this.d||(t=new f(t.d||this.s===t.s?this:NaN)):t=new f(NaN),t;if(this.s!=t.s)return t.s=-t.s,this.minus(t);if(l=this.d,c=t.d,a=f.precision,u=f.rounding,!l[0]||!c[0])return c[0]||(t=new f(this)),h?C(t,a,u):t;if(s=d(this.e/7),i=d(t.e/7),l=l.slice(),r=s-i){for(r<0?(n=l,r=-r,o=c.length):(n=c,i=s,o=l.length),r>(o=(s=Math.ceil(a/7))>o?s+1:o+1)&&(r=o,n.length=1),n.reverse();r--;)n.push(0);n.reverse()}for((o=l.length)-(r=c.length)<0&&(r=o,n=c,c=l,l=n),e=0;r;)e=(l[--r]=l[r]+c[r]+e)/1e7|0,l[r]%=1e7;for(e&&(l.unshift(e),++i),o=l.length;0==l[--o];)l.pop();return t.d=l,t.e=T(l,i),h?C(t,a,u):t},A.precision=A.sd=function(t){var e;if(void 0!==t&&!!t!==t&&1!==t&&0!==t)throw Error(m+t);return this.d?(e=U(this.d),t&&this.e+1>e&&(e=this.e+1)):e=NaN,e},A.round=function(){var t=this.constructor;return C(new t(this),this.e+1,t.rounding)},A.sine=A.sin=function(){var t,e,n=this,i=n.constructor;return n.isFinite()?n.isZero()?new i(n):(t=i.precision,e=i.rounding,i.precision=t+Math.max(n.e,n.sd())+7,i.rounding=1,n=function(t,e){var n,i=e.d.length;if(i<3)return Z(t,2,e,e);n=(n=1.4*Math.sqrt(i))>16?16:0|n,e=Z(t,2,e=e.times(1/z(5,n)),e);for(var r,s=new t(5),o=new t(16),a=new t(20);n--;)r=e.times(e),e=e.times(s.plus(r.times(o.times(r).minus(a))));return e}(i,H(i,n)),i.precision=t,i.rounding=e,C(a>2?n.neg():n,t,e,!0)):new i(NaN)},A.squareRoot=A.sqrt=function(){var t,e,n,i,r,s,o=this.d,a=this.e,u=this.s,l=this.constructor;if(1!==u||!o||!o[0])return new l(!u||u<0&&(!o||o[0])?NaN:o?this:1/0);for(h=!1,0==(u=Math.sqrt(+this))||u==1/0?(((e=x(o)).length+a)%2==0&&(e+="0"),u=Math.sqrt(e),a=d((a+1)/2)-(a<0||a%2),i=new l(e=u==1/0?"5e"+a:(e=u.toExponential()).slice(0,e.indexOf("e")+1)+a)):i=new l(u.toString()),n=(a=l.precision)+3;;)if(i=(s=i).plus(q(this,s,n+2,1)).times(.5),x(s.d).slice(0,n)===(e=x(i.d)).slice(0,n)){if("9999"!=(e=e.slice(n-3,n+1))&&(r||"4999"!=e)){+e&&(+e.slice(1)||"5"!=e.charAt(0))||(C(i,a+1,1),t=!i.times(i).eq(this));break}if(!r&&(C(s,a+1,0),s.times(s).eq(this))){i=s;break}n+=4,r=1}return h=!0,C(i,a,l.rounding,t)},A.tangent=A.tan=function(){var t,e,n=this,i=n.constructor;return n.isFinite()?n.isZero()?new i(n):(t=i.precision,e=i.rounding,i.precision=t+10,i.roun
vendor: 6,372 bytes, line 1
1ding=1,(n=n.sin()).s=1,n=q(n,new i(1).minus(n.times(n)).sqrt(),t+10,0),i.precision=t,i.rounding=e,C(2==a||4==a?n.neg():n,t,e,!0)):new i(NaN)},A.times=A.mul=function(t){var e,n,i,r,s,o,a,u,l,c=this.constructor,f=this.d,p=(t=new c(t)).d;if(t.s*=this.s,!(f&&f[0]&&p&&p[0]))return new c(t.s&&(!f||f[0]||p)&&(!p||p[0]||f)?f&&p?0*t.s:t.s/0:NaN);for(n=d(this.e/7)+d(t.e/7),(u=f.length)<(l=p.length)&&(s=f,f=p,p=s,o=u,u=l,l=o),s=[],i=o=u+l;i--;)s.push(0);for(i=l;--i>=0;){for(e=0,r=u+i;r>i;)a=s[r]+p[i]*f[r-i-1]+e,s[r--]=a%1e7|0,e=a/1e7|0;s[r]=(s[r]+e)%1e7|0}for(;!s[--o];)s.pop();return e?++n:s.shift(),t.d=s,t.e=T(s,n),h?C(t,c.precision,c.rounding):t},A.toBinary=function(t,e){return $(this,2,t,e)},A.toDecimalPlaces=A.toDP=function(t,e){var n=this,i=n.constructor;return n=new i(n),void 0===t?n:(O(t,0,1e9),void 0===e?e=i.rounding:O(e,0,8),C(n,t+n.e+1,e))},A.toExponential=function(t,e){var n,i=this,r=i.constructor;return void 0===t?n=P(i,!0):(O(t,0,1e9),void 0===e?e=r.rounding:O(e,0,8),n=P(i=C(new r(i),t+1,e),!0,t+1)),i.isNeg()&&!i.isZero()?"-"+n:n},A.toFixed=function(t,e){var n,i,r=this.constructor;return void 0===t?n=P(this):(O(t,0,1e9),void 0===e?e=r.rounding:O(e,0,8),n=P(i=C(new r(this),t+this.e+1,e),!1,t+i.e+1)),this.isNeg()&&!this.isZero()?"-"+n:n},A.toFraction=function(t){var e,n,i,r,s,o,a,u,l,c,f,p,v=this.d,g=this.constructor;if(!v)return new g(this);if(l=n=new g(1),i=u=new g(0),o=(s=(e=new g(i)).e=U(v)-this.e-1)%7,e.d[0]=w(10,o<0?7+o:o),null==t)t=s>0?e:l;else{if(!(a=new g(t)).isInt()||a.lt(l))throw Error(m+a);t=a.gt(e)?s>0?e:l:a}for(h=!1,a=new g(x(v)),c=g.precision,g.precision=s=14*v.length;f=q(a,e,0,1,1),1!=(r=n.plus(f.times(i))).cmp(t);)n=i,i=r,r=l,l=u.plus(f.times(r)),u=r,r=e,e=a.minus(f.times(r)),a=r;return r=q(t.minus(n),i,0,1,1),u=u.plus(r.times(l)),n=n.plus(r.times(i)),u.s=l.s=this.s,p=1>q(l,i,s,1).minus(this).abs().cmp(q(u,n,s,1).minus(this).abs())?[l,i]:[u,n],g.precision=c,h=!0,p},A.toHexadecimal=A.toHex=function(t,e){return $(this,16,t,e)},A.toNearest=function(t,e){var n=this,i=n.constructor;if(n=new i(n),null==t){if(!n.d)return n;t=new i(1),e=i.rounding}else{if(t=new i(t),void 0===e?e=i.rounding:O(e,0,8),!n.d)return t.s?n:t;if(!t.d)return t.s&&(t.s=n.s),t}return t.d[0]?(h=!1,n=q(n,t,0,e,1).times(t),h=!0,C(n)):(t.s=n.s,n=t),n},A.toNumber=function(){return+this},A.toOctal=function(t,e){return $(this,8,t,e)},A.toPower=A.pow=function(t){var e,n,i,r,s,o,a=this,u=a.constructor,l=+(t=new u(t));if(!(a.d&&t.d&&a.d[0]&&t.d[0]))return new u(w(+a,l));if((a=new u(a)).eq(1))return a;if(i=u.precision,s=u.rounding,t.eq(1))return C(a,i,s);if((e=d(t.e/7))>=t.d.length-1&&(n=l<0?-l:l)<=9007199254740991)return r=k(u,a,n,i),t.s<0?new u(1).div(r):C(r,i,s);if((o=a.s)<0){if(e<t.d.length-1)return new u(NaN);if(0==(1&t.d[e])&&(o=1),0==a.e&&1==a.d[0]&&1==a.d.length)return a.s=o,a}return(e=0!=(n=w(+a,l))&&isFinite(n)?new u(n+"").e:d(l*(Math.log("0."+x(a.d))/Math.LN10+a.e+1)))>u.maxE+1||e<u.minE-1?new u(e>0?o/0:0):(h=!1,u.rounding=a.s=1,n=Math.min(12,(e+"").length),(r=G(t.times(j(a,i+n)),i)).d&&I((r=C(r,i+5,1)).d,i,s)&&(e=i+10,+x((r=C(G(t.times(j(a,e+n)),e),e+5,1)).d).slice(i+1,i+15)+1==1e14&&(r=C(r,i+1,0))),r.s=o,h=!0,u.rounding=s,C(r,i,s))},A.toPrecision=function(t,e){var n,i=this,r=i.constructor;return void 0===t?n=P(i,i.e<=r.toExpNeg||i.e>=r.toExpPos):(O(t,1,1e9),void 0===e?e=r.rounding:O(e,0,8),n=P(i=C(new r(i),t,e),t<=i.e||i.e<=r.toExpNeg,t)),i.isNeg()&&!i.isZero()?"-"+n:n},A.toSignificantDigits=A.toSD=function(t,e){var n=this.constructor;return void 0===t?(t=n.precision,e=n.rounding):(O(t,1,1e9),void 0===e?e=n.rounding:O(e,0,8)),C(new n(this),t,e)},A.toString=function(){var t=this.constructor,e=P(this,this.e<=t.toExpNeg||this.e>=t.toExpPos);return this.isNeg()&&!this.isZero()?"-"+e:e},A.truncated=A.trunc=function(){return C(new this.constructor(this),this.e+1,1)},A.valueOf=A.toJSON=function(){var t=this.constructor,e=P(this,this.e<=t.toExpNeg||this.e>=t.toExpPos);return this.isNeg()?"-"+e:e};var q=function(){function t(t,e,n){var i,r=0,s=t.length;for(t=t.slice();s--;)i=t[s]*e+r,t[s]=i%n|0,r=i/n|0;return r&&t.unshift(r),t}function e(t,e,n,i){var r,s;if(n!=i)s=n>i?1:-1;else for(r=s=0;r<n;r++)if(t[r]!=e[r]){s=t[r]>e[r]?1:-1;break}return s}function n(t,e,n,i){for(var r=0;n--;)t[n]-=r,r=t[n]<e[n]?1:0,t[n]=r*i+t[n]-e[n];for(;!t[0]&&t.length>1;)t.shift()}return function(i,r,s,a,u,l){var c,f,h,p,m,v,g,w,y,b,M,E,N,S,A,x,O,I,R,q,P=i.constructor,T=i.s==r.s?1:-1,_=i.d,L=r.d;if(!(_&&_[0]&&L&&L[0]))return new P(i.s&&r.s&&(_?!L||_[0]!=L[0]:L)?_&&0==_[0]||!L?0*T:T/0:NaN);for(l?(m=1,f=i.e-r.e):(l=1e7,m=7,f=d(i.e/m)-d(r.e/m)),R=L.length,O=_.length,b=(y=new P(T)).d=[],h=0;L[h]==(_[h]||0);h++);if(L[h]>(_[h]||0)&&f--,null==s?(S=s=P.precision,a=P.rounding):S=u?s+(i.e-r.e)+1:s,S<0)b.push(1),v=!0;else{if(S=S/m+2|0,h=0,1==R){for(p=0,L=L[0],S++;(h<O||p)&&S--;h++)A=p*l+(_[h]||0),b[h]=A/L|0,p=A%L|0;v=p||h<O}else{for((p=l/(L[0]+1)|0)>1&&(L=t(L,p,l),_=t(_,p,l),R=L.length,O=_.length),x=R,E=(M=_.slice(0,R)).length;E<R;)M[E++]=0;(q=L.slice()).unshift(0),I=L[0],L[1]>=l/2&&++I;do p=0,(c=e(L,M,R,E))<0?(N=M[0],R!=E&&(N=N*l+(M[1]||0)),(p=N/I|0)>1?(p>=l&&(p=l-1),1==(c=e(g=t(L,p,l),M,w=g.length,E=M.length))&&(p--,n(g,R<w?q:L,w,l))):(0==p&&(c=p=1),g=L.slice()),(w=g.length)<E&&g.unshift(0),n(M,g,E,l),-1==c&&(c=e(L,M,R,E=M.length))<1&&(p++,n(M,R<E?q:L,E,l)),E=M.length):0===c&&(p++,M=[0]),b[h++]=p,c&&M[0]?M[E++]=_[x]||0:(M=[_[x]],E=1);while((x++<O||void 0!==M[0])&&S--);v=void 0!==M[0]}b[0]||b.shift()}if(1==m)y.e=f,o=v;else{for(h=1,p=b[0];p>=10;p/=10)h++;y.e=h+f*m-1,C(y,u?s+y.e+1:s,a,v)}return y}}();function C(t,e,n,i){var r,s,o,a,u,l,c,f,p,m=t.constructor;e:if(null!=e){if(!(f=t.d))return t;for(r=1,a=f[0];a>=10;a/=10)r++;if((s=e-r)<0)s+=7,o=e,u=(c=f[p=0])/w(10,r-o-1)%10|0;else if((p=Math.ceil((s+1)/7))>=(a=f.length)){if(!i)break e;for(;a++<=p;)f.push(0);c=u=0,r=1,o=(s%=7)-7+1}else{for(c=a=f[p],r=1;a>=10;a/=10)r++;u=(o=(s%=7)-7+r)<0?0:c/w(10,r-o-1)%10|0}if(i=i||e<0||void 0!==f[p+1]||(o<0?c:c%w(10,r-o-1)),l=n<4?(u||i)&&(0==n||n==(t.s<0?3:2)):u>5||5==u&&(4==n||i||6==n&&(s>0?o>0?c/w(10,r-o):0:f[p-1])%10&1||n==(t.s<0?8:7)),e<1||!f[0])return f.length=0,l?(e-=t.e+1,f[0]=w(10,(7-e%7)%7),t.e=-e||0):f[0]=t.e=0,t;if(0==s?(f.length=p,a=1,p--):(f.length=p+1,a=w(10,7-s),f[p]=o>0?(c/w(10,r-o)%w(10,o)|0)*a:0),l)for(;;){if(0==p){for(s=1,o=f[0];o>=10;o/=10)s++;for(o=f[0]+=a,a=1;o>=10;o/=10)a++;s!=a&&(t.e++,1e7==f[0]&&(f[0]=1));break}
vendor: 9,427 bytes, line 1
1if(f[p]+=a,1e7!=f[p])break;f[p--]=0,a=1}for(s=f.length;0===f[--s];)f.pop()}return h&&(t.e>m.maxE?(t.d=null,t.e=NaN):t.e<m.minE&&(t.e=0,t.d=[0])),t}function P(t,e,n){if(!t.isFinite())return X(t);var i,r=t.e,s=x(t.d),o=s.length;return e?(n&&(i=n-o)>0?s=s.charAt(0)+"."+s.slice(1)+D(i):o>1&&(s=s.charAt(0)+"."+s.slice(1)),s=s+(t.e<0?"e":"e+")+t.e):r<0?(s="0."+D(-r-1)+s,n&&(i=n-o)>0&&(s+=D(i))):r>=o?(s+=D(r+1-o),n&&(i=n-r-1)>0&&(s=s+"."+D(i))):((i=r+1)<o&&(s=s.slice(0,i)+"."+s.slice(i)),n&&(i=n-o)>0&&(r+1===o&&(s+="."),s+=D(i))),s}function T(t,e){var n=t[0];for(e*=7;n>=10;n/=10)e++;return e}function _(t,e,n){if(e>N)throw h=!0,n&&(t.precision=n),Error(v);return C(new t(l),e,1,!0)}function L(t,e,n){if(e>S)throw Error(v);return C(new t(c),e,n,!0)}function U(t){var e=t.length-1,n=7*e+1;if(e=t[e]){for(;e%10==0;e/=10)n--;for(e=t[0];e>=10;e/=10)n++}return n}function D(t){for(var e="";t--;)e+="0";return e}function k(t,e,n,i){var r,s=new t(1),o=Math.ceil(i/7+4);for(h=!1;;){if(n%2&&Y((s=s.times(e)).d,o)&&(r=!0),0===(n=d(n/2))){n=s.d.length-1,r&&0===s.d[n]&&++s.d[n];break}Y((e=e.times(e)).d,o)}return h=!0,s}function B(t){return 1&t.d[t.d.length-1]}function F(t,e,n){for(var i,r=new t(e[0]),s=0;++s<e.length;){if(!(i=new t(e[s])).s){r=i;break}r[n](i)&&(r=i)}return r}function G(t,e){var n,i,r,s,o,a,u,l=0,c=0,f=0,p=t.constructor,m=p.rounding,v=p.precision;if(!t.d||!t.d[0]||t.e>17)return new p(t.d?t.d[0]?t.s<0?0:1/0:1:t.s?t.s<0?0:t:NaN);for(null==e?(h=!1,u=v):u=e,a=new p(.03125);t.e>-2;)t=t.times(a),f+=5;for(u+=i=Math.log(w(2,f))/Math.LN10*2+5|0,n=s=o=new p(1),p.precision=u;;){if(s=C(s.times(t),u,1),n=n.times(++c),x((a=o.plus(q(s,n,u,1))).d).slice(0,u)===x(o.d).slice(0,u)){for(r=f;r--;)o=C(o.times(o),u,1);if(null!=e)return p.precision=v,o;if(!(l<3&&I(o.d,u-i,m,l)))return C(o,p.precision=v,m,h=!0);p.precision=u+=10,n=s=a=new p(1),c=0,l++}o=a}}function j(t,e){var n,i,r,s,o,a,u,l,c,f,p,m=1,v=t,g=v.d,d=v.constructor,w=d.rounding,y=d.precision;if(v.s<0||!g||!g[0]||!v.e&&1==g[0]&&1==g.length)return new d(g&&!g[0]?-1/0:1!=v.s?NaN:g?0:v);if(null==e?(h=!1,c=y):c=e,d.precision=c+=10,i=(n=x(g)).charAt(0),!(15e14>Math.abs(s=v.e)))return l=_(d,c+2,y).times(s+""),v=j(new d(i+"."+n.slice(1)),c-10).plus(l),d.precision=y,null==e?C(v,y,w,h=!0):v;for(;i<7&&1!=i||1==i&&n.charAt(1)>3;)i=(n=x((v=v.times(t)).d)).charAt(0),m++;for(s=v.e,i>1?(v=new d("0."+n),s++):v=new d(i+"."+n.slice(1)),f=v,u=o=v=q(v.minus(1),v.plus(1),c,1),p=C(v.times(v),c,1),r=3;;){if(o=C(o.times(p),c,1),x((l=u.plus(q(o,new d(r),c,1))).d).slice(0,c)===x(u.d).slice(0,c)){if(u=u.times(2),0!==s&&(u=u.plus(_(d,c+2,y).times(s+""))),u=q(u,new d(m),c,1),null!=e)return d.precision=y,u;if(!I(u.d,c-10,w,a))return C(u,d.precision=y,w,h=!0);d.precision=c+=10,l=o=v=q(f.minus(1),f.plus(1),c,1),p=C(v.times(v),c,1),r=a=1}u=l,r+=2}}function X(t){return String(t.s*t.s/0)}function V(t,e){var n,i,r;for((n=e.indexOf("."))>-1&&(e=e.replace(".","")),(i=e.search(/e/i))>0?(n<0&&(n=i),n+=+e.slice(i+1),e=e.substring(0,i)):n<0&&(n=e.length),i=0;48===e.charCodeAt(i);i++);for(r=e.length;48===e.charCodeAt(r-1);--r);if(e=e.slice(i,r)){if(r-=i,t.e=n=n-i-1,t.d=[],i=(n+1)%7,n<0&&(i+=7),i<r){for(i&&t.d.push(+e.slice(0,i)),r-=7;i<r;)t.d.push(+e.slice(i,i+=7));i=7-(e=e.slice(i)).length}else i-=r;for(;i--;)e+="0";t.d.push(+e),h&&(t.e>t.constructor.maxE?(t.d=null,t.e=NaN):t.e<t.constructor.minE&&(t.e=0,t.d=[0]))}else t.e=0,t.d=[0];return t}function Z(t,e,n,i,r){var s,o,a,u,l=t.precision,c=Math.ceil(l/7);for(h=!1,u=n.times(n),a=new t(i);;){if(o=q(a.times(u),new t(e++*e++),l,1),a=r?i.plus(o):i.minus(o),i=q(o.times(u),new t(e++*e++),l,1),void 0!==(o=a.plus(i)).d[c]){for(s=c;o.d[s]===a.d[s]&&s--;);if(-1==s)break}s=a,a=i,i=o,o=s}return h=!0,o.d.length=c+1,o}function z(t,e){for(var n=t;--e;)n*=t;return n}function H(t,e){var n,i=e.s<0,r=L(t,t.precision,1),s=r.times(.5);if((e=e.abs()).lte(s))return a=i?4:1,e;if((n=e.divToInt(r)).isZero())a=i?3:2;else{if((e=e.minus(n.times(r))).lte(s))return a=B(n)?i?2:3:i?4:1,e;a=B(n)?i?1:4:i?3:2}return e.minus(r).abs()}function $(t,e,n,i){var r,s,a,l,c,f,h,p,m,v=t.constructor,g=void 0!==n;if(g?(O(n,1,1e9),void 0===i?i=v.rounding:O(i,0,8)):(n=v.precision,i=v.rounding),t.isFinite()){for(g?(r=2,16==e?n=4*n-3:8==e&&(n=3*n-2)):r=e,(a=(h=P(t)).indexOf("."))>=0&&(h=h.replace(".",""),(m=new v(1)).e=h.length-a,m.d=R(P(m),10,r),m.e=m.d.length),s=c=(p=R(h,10,r)).length;0==p[--c];)p.pop();if(p[0]){if(a<0?s--:((t=new v(t)).d=p,t.e=s,p=(t=q(t,m,n,i,0,r)).d,s=t.e,f=o),a=p[n],l=r/2,f=f||void 0!==p[n+1],f=i<4?(void 0!==a||f)&&(0===i||i===(t.s<0?3:2)):a>l||a===l&&(4===i||f||6===i&&1&p[n-1]||i===(t.s<0?8:7)),p.length=n,f)for(;++p[--n]>r-1;)p[n]=0,n||(++s,p.unshift(1));for(c=p.length;!p[c-1];--c);for(a=0,h="";a<c;a++)h+=u.charAt(p[a]);if(g){if(c>1){if(16==e||8==e){for(a=16==e?4:3,--c;c%a;c++)h+="0";for(c=(p=R(h,r,e)).length;!p[c-1];--c);for(a=1,h="1.";a<c;a++)h+=u.charAt(p[a])}else h=h.charAt(0)+"."+h.slice(1)}h=h+(s<0?"p":"p+")+s}else if(s<0){for(;++s;)h="0"+h;h="0."+h}else if(++s>c)for(s-=c;s--;)h+="0";else s<c&&(h=h.slice(0,s)+"."+h.slice(s))}else h=g?"0p+0":"0";h=(16==e?"0x":2==e?"0b":8==e?"0o":"")+h}else h=X(t);return t.s<0?"-"+h:h}function Y(t,e){if(t.length>e)return t.length=e,!0}function W(t){return new this(t).abs()}function J(t){return new this(t).acos()}function Q(t){return new this(t).acosh()}function K(t,e){return new this(t).plus(e)}function tt(t){return new this(t).asin()}function te(t){return new this(t).asinh()}function tn(t){return new this(t).atan()}function ti(t){return new this(t).atanh()}function tr(t,e){t=new this(t),e=new this(e);var n,i=this.precision,r=this.rounding,s=i+4;return t.s&&e.s?t.d||e.d?!e.d||t.isZero()?(n=e.s<0?L(this,i,r):new this(0)).s=t.s:!t.d||e.isZero()?(n=L(this,s,1).times(.5)).s=t.s:e.s<0?(this.precision=s,this.rounding=1,n=this.atan(q(t,e,s,1)),e=L(this,s,1),this.precision=i,this.rounding=r,n=t.s<0?n.minus(e):n.plus(e)):n=this.atan(q(t,e,s,1)):(n=L(this,s,1).times(e.s>0?.25:.75)).s=t.s:n=new this(NaN),n}function ts(t){return new this(t).cbrt()}function to(t){return C(t=new this(t),t.e+1,2)}function ta(t){if(!t||"object"!=typeof t)throw Error(p+"Object expected");var e,n,i,r=!0===t.defaults,s=["precision",1,1e9,"rounding",0,8,"toExpNeg",-9e15,0,"toExpPos",0,9e15,"maxE",0,9e15,"minE",-9e15,0,"modulo",0,9];for(e=0;e<s.length;e+=3)if(n=s[e],r&&(this[n]=f[n]),void 0!==(i=t[n])){if(!(d(i)===i&&i>=s[e+1]&&i<=s[e+2]))throw Error(m+n+": "+i);this[n]=i}if(n="crypto",r&&(this[n]=f[n]),void 0!==(i=t[n])){if(!0!==i&&!1!==i&&0!==i&&1!==i)throw Error(m+n+": "+i);if(i){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw Error(g);this[n]=!0}else this[n]=!1}return this}function tu(t){return new this(t).cos()}function tl(t){return new this(t).cosh()}function tc(t,e){return new this(t).div(e)}function tf(t){return new this(t).exp()}function th(t){return C(t=new this(t),t.e+1,3)}function tp(){var t,e,n=new this(0);for(h=!1,t=0;t<arguments.length;)if((e=new this(arguments[t++])).d)n.d&&(n=n.plus(e.times(e)));else{if(e.s)return h=!0,new this(1/0);n=e}return h=!0,n.sqrt()}function tm(t){return t instanceof s||t&&"[object Decimal]"===t.name||!1}function tv(t){return new this(t).ln()}function tg(t,e){return new this(t).log(e)}function td(t){return new this(t).log(2)}function tw(t){return new this(t).log(10)}function ty(){return F(this,arguments,"lt")}function tb(){return F(this,arguments,"gt")}function tM(t,e){return new this(t).mod(e)}function tE(t,e){return new this(t).mul(e)}function tN(t,e){return new this(t).pow(e)}function tS(t){var e,n,i,r,s=0,o=new this(1),a=[];if(void 0===t?t=this.precision:O(t,1,1e9),i=Math.ceil(t/7),this.crypto){if(crypto.getRandomValues)for(e=crypto.getRandomValues(new Uint32Array(i));s<i;)(r=e[s])>=429e7?e[s]=crypto.getRandomValues(new Uint32Array(1))[0]:a[s++]=r%1e7;else{if(!crypto.randomBytes)throw Error(g);for(e=crypto.randomBytes(i*=4);s<i;)(r=e[s]+(e[s+1]<<8)+(e[s+2]<<16)+((127&e[s+3])<<24))>=214e7?crypto.randomBytes(4).copy(e,s):(a.push(r%1e7),s+=4);s=i/4}}else for(;s<i;)a[s++]=1e7*Math.random()|0;for(i=a[--s],t%=7,i&&t&&(r=w(10,7-t),a[s]=(i/r|0)*r);0===a[s];s--)a.pop();if(s<0)n=0,a=[0];else{for(n=-1;0===a[0];n-=7)a.shift();for(i=1,r=a[0];r>=10;r/=10)i++;i<7&&(n-=7-i)}return o.e=n,o.d=a,o}function tA(t){return C(t=new this(t),t.e+1,this.rounding)}function tx(t){return(t=new this(t)).d?t.d[0]?t.s:0*t.s:t.s||NaN}function tO(t){return new this(t).sin()}function tI(t){return new this(t).sinh()}function tR(t){return new this(t).sqrt()}function tq(t,e){return new this(t).sub(e)}function tC(t){return new this(t).tan()}function tP(t){return new this(t).tanh()}function tT(t){return C(t=new this(t),t.e+1,1)}return(s=function t(e){var n,i,r;function o(t){var e,n,i;if(!(this instanceof o))return new o(t);if(this.constructor=o,t instanceof o)return this.s=t.s,void(h?!t.d||t.e>o.maxE?(this.e=NaN,this.d=null):t.e<o.minE?(this.e=0,this.d=[0]):(this.e=t.e,this.d=t.d.slice()):(this.e=t.e,this.d=t.d?t.d.slice():t.d));if("number"==(i=typeof t)){if(0===t)return this.s=1/t<0?-1:1,this.e=0,void(this.d=[0]);if(t<0?(t=-t,this.s=-1):this.s=1,t===~~t&&t<1e7){for(e=0,n=t;n>=10;n/=10)e++;return void(h?e>o.maxE?(this.e=NaN,this.d=null):e<o.minE?(this.e=0,this.d=[0]):(this.e=e,this.d=[t]):(this.e=e,this.d=[t]))}return 0*t!=0?(t||(this.s=NaN),this.e=NaN,void(this.d=null)):V(this,t.toString())}if("string"!==i)throw Error(m+t);return 45===(n=t.charCodeAt(0))?(t=t.slice(1),this.s=-1):(43===n&&(t=t.
1slice(1)),this.s=1),E.test(t)?V(this,t):function(t,e){var n,i,r,o,a,u,l,c,f;if("Infinity"===e||"NaN"===e)return+e||(t.s=NaN),t.e=NaN,t.d=null,t;if(b.test(e))n=16,e=e.toLowerCase();else if(y.test(e))n=2;else{if(!M.test(e))throw Error(m+e);n=8}for((o=e.search(/p/i))>0?(l=+e.slice(o+1),e=e.substring(2,o)):e=e.slice(2),a=(o=e.indexOf("."))>=0,i=t.constructor,a&&(o=(u=(e=e.replace(".","")).length)-o,r=k(i,new i(n),o,2*o)),o=f=(c=R(e,n,1e7)).length-1;0===c[o];--o)c.pop();return o<0?new i(0*t.s):(t.e=T(c,f),t.d=c,h=!1,a&&(t=q(t,r,4*u)),l&&(t=t.times(54>Math.abs(l)?w(2,l):s.pow(2,l))),h=!0,t)}(this,t)}if(o.prototype=A,o.ROUND_UP=0,o.ROUND_DOWN=1,o.ROUND_CEIL=2,o.ROUND_FLOOR=3,o.ROUND_HALF_UP=4,o.ROUND_HALF_DOWN=5,o.ROUND_HALF_EVEN=6,o.ROUND_HALF_CEIL=7,o.ROUND_HALF_FLOOR=8,o.EUCLID=9,o.config=o.set=ta,o.clone=t,o.isDecimal=tm,o.abs=W,o.acos=J,o.acosh=Q,o.add=K,o.asin=tt,o.asinh=te,o.atan=tn,o.atanh=ti,o.atan2=tr,o.cbrt=ts,o.ceil=to,o.cos=tu,o.cosh=tl,o.div=tc,o.exp=tf,o.floor=th,o.hypot=tp,o.ln=tv,o.log=tg,o.log10=tw,o.log2=td,o.max=ty,o.min=tb,o.mod=tM,o.mul=tE,o.pow=tN,o.random=tS,o.round=tA,o.sign=tx,o.sin=tO,o.sinh=tI,o.sqrt=tR,o.sub=tq,o.tan=tC,o.tanh=tP,o.trunc=tT,void 0===e&&(e={}),e&&!0!==e.defaults)for(r=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],n=0;n<r.length;)e.hasOwnProperty(i=r[n++])||(e[i]=this[i]);return o.config(e),o}(f)).default=s.Decimal=s,l=new s(l),c=new s(c),void 0!==(r=(function(){return s}).call(e,n,e,t))&&(t.exports=r),s}(0)});t.exports=s}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.