WebGL.wasm.framework.unityweb 1.3 MB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494154951549615497154981549915500155011550215503155041550515506155071550815509155101551115512155131551415515155161551715518155191552015521155221552315524155251552615527155281552915530155311553215533155341553515536155371553815539155401554115542155431554415545155461554715548155491555015551155521555315554155551555615557155581555915560155611556215563155641556515566155671556815569155701557115572155731557415575155761557715578155791558015581155821558315584155851558615587155881558915590155911559215593155941559515596155971559815599156001560115602156031560415605156061560715608156091561015611156121561315614156151561615617156181561915620156211562215623156241562515626156271562815629156301563115632156331563415635156361563715638156391564015641156421564315644156451564615647156481564915650156511565215653156541565515656156571565815659156601566115662156631566415665156661566715668156691567015671156721567315674156751567615677156781567915680156811568215683156841568515686156871568815689156901569115692156931569415695156961569715698156991570015701157021570315704157051570615707157081570915710157111571215713157141571515716157171571815719157201572115722157231572415725157261572715728157291573015731157321573315734157351573615737157381573915740157411574215743157441574515746157471574815749157501575115752157531575415755157561575715758157591576015761157621576315764157651576615767157681576915770157711577215773157741577515776157771577815779157801578115782157831578415785157861578715788157891579015791157921579315794157951579615797157981579915800158011580215803158041580515806158071580815809158101581115812158131581415815158161581715818158191582015821158221582315824158251582615827158281582915830158311583215833158341583515836158371583815839158401584115842158431584415845158461584715848158491585015851158521585315854158551585615857158581585915860158611586215863158641586515866158671586815869158701587115872158731587415875158761587715878158791588015881158821588315884158851588615887158881588915890158911589215893158941589515896158971589815899159001590115902159031590415905159061590715908159091591015911159121591315914159151591615917159181591915920159211592215923159241592515926159271592815929159301593115932159331593415935159361593715938159391594015941159421594315944159451594615947159481594915950159511595215953159541595515956159571595815959159601596115962159631596415965159661596715968159691597015971159721597315974159751597615977159781597915980159811598215983159841598515986159871598815989159901599115992159931599415995159961599715998159991600016001160021600316004160051600616007160081600916010160111601216013160141601516016160171601816019160201602116022160231602416025160261602716028160291603016031160321603316034160351603616037160381603916040160411604216043160441604516046160471604816049160501605116052160531605416055160561605716058160591606016061160621606316064160651606616067160681606916070160711607216073160741607516076160771607816079160801608116082160831608416085160861608716088160891609016091160921609316094160951609616097160981609916100161011610216103161041610516106161071610816109161101611116112161131611416115161161611716118161191612016121161221612316124161251612616127161281612916130161311613216133161341613516136161371613816139161401614116142161431614416145161461614716148161491615016151161521615316154161551615616157161581615916160161611616216163161641616516166161671616816169161701617116172161731617416175161761617716178161791618016181161821618316184161851618616187161881618916190161911619216193161941619516196161971619816199162001620116202162031620416205162061620716208162091621016211162121621316214162151621616217162181621916220162211622216223162241622516226162271622816229162301623116232162331623416235162361623716238162391624016241162421624316244162451624616247162481624916250162511625216253162541625516256162571625816259162601626116262162631626416265162661626716268162691627016271162721627316274162751627616277162781627916280162811628216283162841628516286162871628816289162901629116292162931629416295162961629716298162991630016301163021630316304163051630616307163081630916310163111631216313163141631516316163171631816319163201632116322163231632416325163261632716328163291633016331163321633316334163351633616337163381633916340163411634216343163441634516346163471634816349163501635116352163531635416355163561635716358163591636016361163621636316364163651636616367163681636916370163711637216373163741637516376163771637816379163801638116382163831638416385163861638716388163891639016391163921639316394163951639616397163981639916400164011640216403164041640516406164071640816409164101641116412164131641416415164161641716418164191642016421164221642316424164251642616427164281642916430164311643216433164341643516436164371643816439164401644116442164431644416445164461644716448164491645016451164521645316454164551645616457164581645916460164611646216463164641646516466164671646816469164701647116472164731647416475164761647716478164791648016481164821648316484164851648616487164881648916490164911649216493164941649516496164971649816499165001650116502165031650416505165061650716508165091651016511165121651316514165151651616517165181651916520165211652216523165241652516526165271652816529165301653116532165331653416535165361653716538165391654016541165421654316544165451654616547165481654916550165511655216553165541655516556165571655816559165601656116562165631656416565165661656716568165691657016571165721657316574165751657616577165781657916580165811658216583165841658516586165871658816589165901659116592165931659416595165961659716598165991660016601166021660316604166051660616607166081660916610166111661216613166141661516616166171661816619166201662116622166231662416625166261662716628166291663016631166321663316634166351663616637166381663916640166411664216643166441664516646166471664816649166501665116652166531665416655166561665716658166591666016661166621666316664166651666616667166681666916670166711667216673166741667516676166771667816679166801668116682166831668416685166861668716688166891669016691166921669316694166951669616697166981669916700167011670216703167041670516706167071670816709167101671116712167131671416715167161671716718167191672016721167221672316724167251672616727167281672916730167311673216733167341673516736167371673816739167401674116742167431674416745167461674716748167491675016751167521675316754167551675616757167581675916760167611676216763167641676516766167671676816769167701677116772167731677416775167761677716778167791678016781167821678316784167851678616787167881678916790167911679216793167941679516796167971679816799168001680116802168031680416805168061680716808168091681016811168121681316814168151681616817168181681916820168211682216823168241682516826168271682816829168301683116832168331683416835168361683716838168391684016841168421684316844168451684616847168481684916850168511685216853168541685516856168571685816859168601686116862168631686416865168661686716868168691687016871168721687316874168751687616877168781687916880168811688216883168841688516886168871688816889168901689116892168931689416895168961689716898168991690016901169021690316904169051690616907169081690916910169111691216913169141691516916169171691816919169201692116922169231692416925169261692716928169291693016931169321693316934169351693616937169381693916940169411694216943169441694516946169471694816949169501695116952169531695416955169561695716958169591696016961169621696316964169651696616967169681696916970169711697216973169741697516976169771697816979169801698116982169831698416985169861698716988169891699016991169921699316994169951699616997169981699917000170011700217003170041700517006170071700817009170101701117012170131701417015170161701717018170191702017021170221702317024170251702617027170281702917030170311703217033170341703517036170371703817039170401704117042170431704417045170461704717048170491705017051170521705317054170551705617057170581705917060170611706217063170641706517066170671706817069170701707117072170731707417075170761707717078170791708017081170821708317084170851708617087170881708917090170911709217093170941709517096170971709817099171001710117102171031710417105171061710717108171091711017111171121711317114171151711617117171181711917120171211712217123171241712517126171271712817129171301713117132171331713417135171361713717138171391714017141171421714317144171451714617147171481714917150171511715217153171541715517156171571715817159171601716117162171631716417165171661716717168171691717017171171721717317174171751717617177171781717917180171811718217183171841718517186171871718817189171901719117192171931719417195171961719717198171991720017201172021720317204172051720617207172081720917210172111721217213172141721517216172171721817219172201722117222172231722417225172261722717228172291723017231172321723317234172351723617237172381723917240172411724217243172441724517246172471724817249172501725117252172531725417255172561725717258172591726017261172621726317264172651726617267172681726917270172711727217273172741727517276172771727817279172801728117282172831728417285172861728717288172891729017291172921729317294172951729617297172981729917300173011730217303173041730517306173071730817309173101731117312173131731417315173161731717318173191732017321173221732317324173251732617327173281732917330173311733217333173341733517336173371733817339173401734117342173431734417345173461734717348173491735017351173521735317354173551735617357173581735917360173611736217363173641736517366173671736817369173701737117372173731737417375173761737717378173791738017381173821738317384173851738617387173881738917390173911739217393173941739517396173971739817399174001740117402174031740417405174061740717408174091741017411174121741317414174151741617417174181741917420174211742217423174241742517426174271742817429174301743117432174331743417435174361743717438174391744017441174421744317444174451744617447174481744917450174511745217453174541745517456174571745817459174601746117462174631746417465174661746717468174691747017471174721747317474174751747617477174781747917480174811748217483174841748517486174871748817489174901749117492174931749417495174961749717498174991750017501175021750317504175051750617507175081750917510175111751217513175141751517516175171751817519175201752117522175231752417525175261752717528175291753017531175321753317534175351753617537175381753917540175411754217543175441754517546175471754817549175501755117552175531755417555175561755717558175591756017561175621756317564175651756617567175681756917570175711757217573175741757517576175771757817579175801758117582175831758417585175861758717588175891759017591175921759317594175951759617597175981759917600176011760217603176041760517606176071760817609176101761117612176131761417615176161761717618176191762017621176221762317624176251762617627176281762917630176311763217633176341763517636176371763817639176401764117642176431764417645176461764717648176491765017651176521765317654176551765617657176581765917660176611766217663176641766517666176671766817669176701767117672176731767417675176761767717678176791768017681176821768317684176851768617687176881768917690176911769217693176941769517696176971769817699177001770117702177031770417705177061770717708177091771017711177121771317714177151771617717177181771917720177211772217723177241772517726177271772817729177301773117732177331773417735177361773717738177391774017741177421774317744177451774617747177481774917750177511775217753177541775517756177571775817759177601776117762177631776417765177661776717768177691777017771177721777317774177751777617777177781777917780177811778217783177841778517786177871778817789177901779117792177931779417795177961779717798177991780017801178021780317804178051780617807178081780917810178111781217813178141781517816178171781817819178201782117822178231782417825178261782717828178291783017831178321783317834178351783617837178381783917840178411784217843178441784517846178471784817849178501785117852178531785417855178561785717858178591786017861178621786317864178651786617867178681786917870178711787217873178741787517876178771787817879178801788117882178831788417885178861788717888178891789017891178921789317894178951789617897178981789917900179011790217903179041790517906179071790817909179101791117912179131791417915179161791717918179191792017921179221792317924179251792617927179281792917930179311793217933179341793517936179371793817939179401794117942179431794417945179461794717948179491795017951179521795317954179551795617957179581795917960179611796217963179641796517966179671796817969179701797117972179731797417975179761797717978179791798017981179821798317984179851798617987179881798917990179911799217993179941799517996179971799817999180001800118002180031800418005180061800718008180091801018011180121801318014180151801618017180181801918020180211802218023180241802518026180271802818029180301803118032180331803418035180361803718038180391804018041180421804318044180451804618047180481804918050180511805218053180541805518056180571805818059180601806118062180631806418065180661806718068180691807018071180721807318074180751807618077180781807918080180811808218083180841808518086180871808818089180901809118092180931809418095180961809718098180991810018101181021810318104181051810618107181081810918110181111811218113181141811518116181171811818119181201812118122181231812418125181261812718128181291813018131181321813318134181351813618137181381813918140181411814218143181441814518146181471814818149181501815118152181531815418155181561815718158181591816018161181621816318164181651816618167181681816918170181711817218173181741817518176181771817818179181801818118182181831818418185181861818718188181891819018191181921819318194181951819618197181981819918200182011820218203182041820518206182071820818209182101821118212182131821418215182161821718218182191822018221182221822318224182251822618227182281822918230182311823218233182341823518236182371823818239182401824118242182431824418245182461824718248182491825018251182521825318254182551825618257182581825918260182611826218263182641826518266182671826818269182701827118272182731827418275182761827718278182791828018281182821828318284182851828618287182881828918290182911829218293182941829518296182971829818299183001830118302183031830418305183061830718308183091831018311183121831318314183151831618317183181831918320183211832218323183241832518326183271832818329183301833118332183331833418335183361833718338183391834018341183421834318344183451834618347183481834918350183511835218353183541835518356183571835818359183601836118362183631836418365183661836718368183691837018371183721837318374183751837618377183781837918380183811838218383183841838518386183871838818389183901839118392183931839418395183961839718398183991840018401184021840318404184051840618407184081840918410184111841218413184141841518416184171841818419184201842118422184231842418425184261842718428184291843018431184321843318434184351843618437184381843918440184411844218443184441844518446184471844818449184501845118452184531845418455184561845718458184591846018461184621846318464184651846618467184681846918470184711847218473184741847518476184771847818479184801848118482184831848418485184861848718488184891849018491184921849318494184951849618497184981849918500185011850218503185041850518506185071850818509185101851118512185131851418515185161851718518185191852018521185221852318524185251852618527185281852918530185311853218533185341853518536185371853818539185401854118542185431854418545185461854718548185491855018551185521855318554185551855618557185581855918560185611856218563185641856518566185671856818569185701857118572185731857418575185761857718578185791858018581185821858318584185851858618587185881858918590185911859218593185941859518596185971859818599186001860118602186031860418605186061860718608186091861018611186121861318614186151861618617186181861918620186211862218623186241862518626186271862818629186301863118632186331863418635186361863718638186391864018641186421864318644186451864618647186481864918650186511865218653186541865518656186571865818659186601866118662186631866418665186661866718668186691867018671186721867318674186751867618677186781867918680186811868218683186841868518686186871868818689186901869118692186931869418695186961869718698186991870018701187021870318704187051870618707187081870918710187111871218713187141871518716187171871818719187201872118722187231872418725187261872718728187291873018731187321873318734187351873618737187381873918740187411874218743187441874518746187471874818749187501875118752187531875418755187561875718758187591876018761187621876318764187651876618767187681876918770187711877218773187741877518776187771877818779187801878118782187831878418785187861878718788187891879018791187921879318794187951879618797187981879918800188011880218803188041880518806188071880818809188101881118812188131881418815188161881718818188191882018821188221882318824188251882618827188281882918830188311883218833188341883518836188371883818839188401884118842188431884418845188461884718848188491885018851188521885318854188551885618857188581885918860188611886218863188641886518866188671886818869188701887118872188731887418875188761887718878188791888018881188821888318884188851888618887188881888918890188911889218893188941889518896188971889818899189001890118902189031890418905189061890718908189091891018911189121891318914189151891618917189181891918920189211892218923189241892518926189271892818929189301893118932189331893418935189361893718938189391894018941189421894318944189451894618947189481894918950189511895218953189541895518956189571895818959189601896118962189631896418965189661896718968189691897018971189721897318974189751897618977189781897918980189811898218983189841898518986189871898818989189901899118992189931899418995189961899718998189991900019001190021900319004190051900619007190081900919010190111901219013190141901519016190171901819019190201902119022190231902419025190261902719028190291903019031190321903319034190351903619037190381903919040190411904219043190441904519046190471904819049190501905119052190531905419055190561905719058190591906019061190621906319064190651906619067190681906919070190711907219073190741907519076190771907819079190801908119082190831908419085190861908719088190891909019091190921909319094190951909619097190981909919100191011910219103191041910519106191071910819109191101911119112191131911419115191161911719118191191912019121191221912319124191251912619127191281912919130191311913219133191341913519136191371913819139191401914119142191431914419145191461914719148191491915019151191521915319154191551915619157191581915919160191611916219163191641916519166191671916819169191701917119172191731917419175191761917719178191791918019181191821918319184191851918619187191881918919190191911919219193191941919519196191971919819199192001920119202192031920419205192061920719208192091921019211192121921319214192151921619217192181921919220192211922219223192241922519226192271922819229192301923119232192331923419235192361923719238192391924019241192421924319244192451924619247192481924919250192511925219253192541925519256192571925819259192601926119262192631926419265192661926719268192691927019271192721927319274192751927619277192781927919280192811928219283192841928519286192871928819289192901929119292192931929419295192961929719298192991930019301193021930319304193051930619307193081930919310193111931219313193141931519316193171931819319193201932119322193231932419325193261932719328193291933019331193321933319334193351933619337193381933919340193411934219343193441934519346193471934819349193501935119352193531935419355193561935719358193591936019361193621936319364193651936619367193681936919370193711937219373193741937519376193771937819379193801938119382193831938419385193861938719388193891939019391193921939319394193951939619397193981939919400194011940219403194041940519406194071940819409194101941119412194131941419415194161941719418194191942019421194221942319424194251942619427194281942919430194311943219433194341943519436194371943819439194401944119442194431944419445194461944719448194491945019451194521945319454194551945619457194581945919460194611946219463194641946519466194671946819469194701947119472194731947419475194761947719478194791948019481194821948319484194851948619487194881948919490194911949219493194941949519496194971949819499195001950119502195031950419505195061950719508195091951019511195121951319514195151951619517195181951919520195211952219523195241952519526195271952819529195301953119532195331953419535195361953719538195391954019541195421954319544195451954619547195481954919550195511955219553195541955519556195571955819559195601956119562195631956419565195661956719568195691957019571195721957319574195751957619577195781957919580195811958219583195841958519586195871958819589195901959119592195931959419595195961959719598195991960019601196021960319604196051960619607196081960919610196111961219613196141961519616196171961819619196201962119622196231962419625196261962719628196291963019631196321963319634196351963619637196381963919640196411964219643196441964519646196471964819649196501965119652196531965419655196561965719658196591966019661196621966319664196651966619667196681966919670196711967219673196741967519676196771967819679196801968119682196831968419685196861968719688196891969019691196921969319694196951969619697196981969919700197011970219703197041970519706197071970819709197101971119712197131971419715197161971719718197191972019721197221972319724197251972619727197281972919730197311973219733197341973519736197371973819739197401974119742197431974419745197461974719748197491975019751197521975319754197551975619757197581975919760197611976219763197641976519766197671976819769197701977119772197731977419775197761977719778197791978019781197821978319784197851978619787197881978919790197911979219793197941979519796197971979819799198001980119802198031980419805198061980719808198091981019811198121981319814198151981619817198181981919820198211982219823198241982519826198271982819829198301983119832198331983419835198361983719838198391984019841198421984319844198451984619847198481984919850198511985219853198541985519856198571985819859198601986119862198631986419865198661986719868198691987019871198721987319874198751987619877198781987919880198811988219883198841988519886198871988819889198901989119892198931989419895198961989719898198991990019901199021990319904199051990619907199081990919910199111991219913199141991519916199171991819919199201992119922199231992419925199261992719928199291993019931199321993319934199351993619937199381993919940199411994219943199441994519946199471994819949199501995119952199531995419955199561995719958199591996019961199621996319964199651996619967199681996919970199711997219973199741997519976199771997819979199801998119982199831998419985199861998719988199891999019991199921999319994199951999619997199981999920000200012000220003200042000520006200072000820009200102001120012200132001420015200162001720018200192002020021200222002320024200252002620027200282002920030200312003220033200342003520036200372003820039200402004120042200432004420045200462004720048200492005020051200522005320054200552005620057200582005920060200612006220063200642006520066200672006820069200702007120072200732007420075200762007720078200792008020081200822008320084200852008620087200882008920090200912009220093200942009520096200972009820099201002010120102201032010420105201062010720108201092011020111201122011320114201152011620117201182011920120201212012220123201242012520126201272012820129201302013120132201332013420135201362013720138201392014020141201422014320144201452014620147201482014920150201512015220153201542015520156201572015820159201602016120162201632016420165201662016720168201692017020171201722017320174201752017620177201782017920180201812018220183201842018520186201872018820189201902019120192201932019420195201962019720198201992020020201202022020320204202052020620207202082020920210202112021220213202142021520216202172021820219202202022120222202232022420225202262022720228202292023020231202322023320234202352023620237202382023920240202412024220243202442024520246202472024820249202502025120252202532025420255202562025720258202592026020261202622026320264202652026620267202682026920270202712027220273202742027520276202772027820279202802028120282202832028420285202862028720288202892029020291202922029320294202952029620297202982029920300203012030220303203042030520306203072030820309203102031120312203132031420315203162031720318203192032020321203222032320324203252032620327203282032920330203312033220333203342033520336203372033820339203402034120342203432034420345203462034720348203492035020351203522035320354203552035620357203582035920360203612036220363203642036520366203672036820369203702037120372203732037420375203762037720378203792038020381203822038320384203852038620387203882038920390203912039220393203942039520396203972039820399204002040120402204032040420405204062040720408204092041020411204122041320414204152041620417204182041920420204212042220423204242042520426204272042820429204302043120432204332043420435204362043720438204392044020441204422044320444204452044620447204482044920450204512045220453204542045520456204572045820459204602046120462204632046420465204662046720468204692047020471204722047320474204752047620477204782047920480204812048220483204842048520486204872048820489204902049120492204932049420495204962049720498204992050020501205022050320504205052050620507205082050920510205112051220513205142051520516205172051820519205202052120522205232052420525205262052720528205292053020531205322053320534205352053620537205382053920540205412054220543205442054520546205472054820549205502055120552205532055420555205562055720558205592056020561205622056320564205652056620567205682056920570205712057220573205742057520576205772057820579205802058120582205832058420585205862058720588205892059020591205922059320594205952059620597205982059920600206012060220603206042060520606206072060820609206102061120612206132061420615206162061720618206192062020621206222062320624206252062620627206282062920630206312063220633206342063520636206372063820639206402064120642206432064420645206462064720648206492065020651206522065320654206552065620657206582065920660206612066220663206642066520666206672066820669206702067120672206732067420675206762067720678206792068020681206822068320684206852068620687206882068920690206912069220693206942069520696206972069820699207002070120702207032070420705207062070720708207092071020711207122071320714207152071620717207182071920720207212072220723207242072520726207272072820729207302073120732207332073420735207362073720738207392074020741207422074320744207452074620747207482074920750207512075220753207542075520756207572075820759207602076120762207632076420765207662076720768207692077020771207722077320774207752077620777207782077920780207812078220783207842078520786207872078820789207902079120792207932079420795207962079720798207992080020801208022080320804208052080620807208082080920810208112081220813208142081520816208172081820819208202082120822208232082420825208262082720828208292083020831208322083320834208352083620837208382083920840208412084220843208442084520846208472084820849208502085120852208532085420855208562085720858208592086020861208622086320864208652086620867208682086920870208712087220873208742087520876208772087820879208802088120882208832088420885208862088720888208892089020891208922089320894208952089620897208982089920900209012090220903209042090520906209072090820909209102091120912209132091420915209162091720918209192092020921209222092320924209252092620927209282092920930209312093220933209342093520936209372093820939209402094120942209432094420945209462094720948209492095020951209522095320954209552095620957209582095920960209612096220963209642096520966209672096820969209702097120972209732097420975209762097720978209792098020981209822098320984209852098620987209882098920990209912099220993209942099520996209972099820999210002100121002210032100421005210062100721008210092101021011210122101321014210152101621017210182101921020210212102221023210242102521026210272102821029210302103121032210332103421035210362103721038210392104021041210422104321044210452104621047210482104921050210512105221053210542105521056210572105821059210602106121062210632106421065210662106721068210692107021071210722107321074210752107621077210782107921080210812108221083210842108521086210872108821089210902109121092210932109421095210962109721098210992110021101211022110321104211052110621107211082110921110211112111221113211142111521116211172111821119211202112121122211232112421125211262112721128211292113021131211322113321134211352113621137211382113921140211412114221143211442114521146211472114821149211502115121152211532115421155211562115721158211592116021161211622116321164211652116621167211682116921170211712117221173211742117521176211772117821179211802118121182211832118421185211862118721188211892119021191211922119321194211952119621197211982119921200212012120221203212042120521206212072120821209212102121121212212132121421215212162121721218212192122021221212222122321224212252122621227212282122921230212312123221233212342123521236212372123821239212402124121242212432124421245212462124721248212492125021251212522125321254212552125621257212582125921260212612126221263212642126521266212672126821269212702127121272212732127421275212762127721278212792128021281212822128321284212852128621287212882128921290212912129221293212942129521296212972129821299213002130121302213032130421305213062130721308213092131021311213122131321314213152131621317213182131921320213212132221323213242132521326213272132821329213302133121332213332133421335213362133721338213392134021341213422134321344213452134621347213482134921350213512135221353213542135521356213572135821359213602136121362213632136421365213662136721368213692137021371213722137321374213752137621377213782137921380213812138221383213842138521386213872138821389213902139121392213932139421395213962139721398213992140021401214022140321404214052140621407214082140921410214112141221413214142141521416214172141821419214202142121422214232142421425214262142721428214292143021431214322143321434214352143621437214382143921440214412144221443214442144521446214472144821449214502145121452214532145421455214562145721458214592146021461214622146321464214652146621467214682146921470214712147221473214742147521476214772147821479214802148121482214832148421485214862148721488214892149021491214922149321494214952149621497214982149921500215012150221503215042150521506215072150821509215102151121512215132151421515215162151721518215192152021521215222152321524215252152621527215282152921530215312153221533215342153521536215372153821539215402154121542215432154421545215462154721548215492155021551215522155321554215552155621557215582155921560215612156221563215642156521566215672156821569215702157121572215732157421575215762157721578215792158021581215822158321584215852158621587215882158921590215912159221593215942159521596215972159821599216002160121602216032160421605216062160721608216092161021611216122161321614216152161621617216182161921620216212162221623216242162521626216272162821629216302163121632216332163421635216362163721638216392164021641216422164321644216452164621647216482164921650216512165221653216542165521656216572165821659216602166121662216632166421665216662166721668216692167021671216722167321674216752167621677216782167921680216812168221683216842168521686216872168821689216902169121692216932169421695216962169721698216992170021701217022170321704217052170621707217082170921710217112171221713217142171521716217172171821719217202172121722217232172421725217262172721728217292173021731217322173321734217352173621737217382173921740217412174221743217442174521746217472174821749217502175121752217532175421755217562175721758217592176021761217622176321764217652176621767217682176921770217712177221773217742177521776217772177821779217802178121782217832178421785217862178721788217892179021791217922179321794217952179621797217982179921800218012180221803218042180521806218072180821809218102181121812218132181421815218162181721818218192182021821218222182321824218252182621827218282182921830218312183221833218342183521836218372183821839218402184121842218432184421845218462184721848218492185021851218522185321854218552185621857218582185921860218612186221863218642186521866218672186821869218702187121872218732187421875218762187721878218792188021881218822188321884218852188621887218882188921890218912189221893218942189521896218972189821899219002190121902219032190421905219062190721908219092191021911219122191321914219152191621917219182191921920219212192221923219242192521926219272192821929219302193121932219332193421935219362193721938219392194021941219422194321944219452194621947219482194921950219512195221953219542195521956219572195821959219602196121962219632196421965219662196721968219692197021971219722197321974219752197621977219782197921980219812198221983219842198521986219872198821989219902199121992219932199421995219962199721998219992200022001220022200322004220052200622007220082200922010220112201222013220142201522016220172201822019220202202122022220232202422025220262202722028220292203022031220322203322034220352203622037220382203922040220412204222043220442204522046220472204822049220502205122052220532205422055220562205722058220592206022061220622206322064220652206622067220682206922070220712207222073220742207522076220772207822079220802208122082220832208422085220862208722088220892209022091220922209322094220952209622097220982209922100221012210222103221042210522106221072210822109221102211122112221132211422115221162211722118221192212022121221222212322124221252212622127221282212922130221312213222133221342213522136221372213822139221402214122142221432214422145221462214722148221492215022151221522215322154221552215622157221582215922160221612216222163221642216522166221672216822169221702217122172221732217422175221762217722178221792218022181221822218322184221852218622187221882218922190221912219222193221942219522196221972219822199222002220122202222032220422205222062220722208222092221022211222122221322214222152221622217222182221922220222212222222223222242222522226222272222822229222302223122232222332223422235222362223722238222392224022241222422224322244222452224622247222482224922250222512225222253222542225522256222572225822259222602226122262222632226422265222662226722268222692227022271222722227322274222752227622277222782227922280222812228222283222842228522286222872228822289222902229122292222932229422295222962229722298222992230022301223022230322304223052230622307223082230922310223112231222313223142231522316223172231822319223202232122322223232232422325223262232722328223292233022331223322233322334223352233622337223382233922340223412234222343223442234522346223472234822349223502235122352223532235422355223562235722358223592236022361223622236322364223652236622367223682236922370223712237222373223742237522376223772237822379223802238122382223832238422385223862238722388223892239022391223922239322394223952239622397223982239922400224012240222403224042240522406224072240822409224102241122412224132241422415224162241722418224192242022421224222242322424224252242622427224282242922430224312243222433224342243522436224372243822439224402244122442224432244422445224462244722448224492245022451224522245322454224552245622457224582245922460224612246222463224642246522466224672246822469224702247122472224732247422475224762247722478224792248022481224822248322484224852248622487224882248922490224912249222493224942249522496224972249822499225002250122502225032250422505225062250722508225092251022511225122251322514225152251622517225182251922520225212252222523225242252522526225272252822529225302253122532225332253422535225362253722538225392254022541225422254322544225452254622547225482254922550225512255222553225542255522556225572255822559225602256122562225632256422565225662256722568225692257022571225722257322574225752257622577225782257922580225812258222583225842258522586225872258822589225902259122592225932259422595225962259722598225992260022601226022260322604226052260622607226082260922610226112261222613226142261522616226172261822619226202262122622226232262422625226262262722628226292263022631226322263322634226352263622637226382263922640226412264222643226442264522646226472264822649226502265122652226532265422655226562265722658226592266022661226622266322664226652266622667226682266922670226712267222673226742267522676226772267822679226802268122682226832268422685226862268722688226892269022691226922269322694226952269622697226982269922700227012270222703227042270522706227072270822709227102271122712227132271422715227162271722718227192272022721227222272322724227252272622727227282272922730227312273222733227342273522736227372273822739227402274122742227432274422745227462274722748227492275022751227522275322754227552275622757227582275922760227612276222763227642276522766227672276822769227702277122772227732277422775227762277722778227792278022781227822278322784227852278622787227882278922790227912279222793227942279522796227972279822799228002280122802228032280422805228062280722808228092281022811228122281322814228152281622817228182281922820228212282222823228242282522826228272282822829228302283122832228332283422835228362283722838228392284022841228422284322844228452284622847228482284922850228512285222853228542285522856228572285822859228602286122862228632286422865228662286722868228692287022871228722287322874228752287622877228782287922880228812288222883228842288522886228872288822889228902289122892228932289422895228962289722898228992290022901229022290322904229052290622907229082290922910229112291222913229142291522916229172291822919229202292122922229232292422925229262292722928229292293022931229322293322934229352293622937229382293922940229412294222943229442294522946229472294822949229502295122952229532295422955229562295722958229592296022961229622296322964229652296622967229682296922970229712297222973229742297522976229772297822979229802298122982229832298422985229862298722988229892299022991229922299322994229952299622997229982299923000230012300223003230042300523006230072300823009230102301123012230132301423015230162301723018230192302023021230222302323024230252302623027230282302923030230312303223033230342303523036230372303823039230402304123042230432304423045230462304723048230492305023051230522305323054230552305623057230582305923060230612306223063230642306523066230672306823069230702307123072230732307423075230762307723078230792308023081230822308323084230852308623087230882308923090230912309223093230942309523096230972309823099231002310123102231032310423105231062310723108231092311023111231122311323114231152311623117231182311923120231212312223123231242312523126231272312823129231302313123132231332313423135231362313723138231392314023141231422314323144231452314623147231482314923150231512315223153231542315523156231572315823159231602316123162231632316423165231662316723168231692317023171231722317323174231752317623177231782317923180231812318223183231842318523186231872318823189231902319123192231932319423195231962319723198231992320023201232022320323204232052320623207232082320923210232112321223213232142321523216232172321823219232202322123222232232322423225232262322723228232292323023231232322323323234232352323623237232382323923240232412324223243232442324523246232472324823249232502325123252232532325423255232562325723258232592326023261232622326323264232652326623267232682326923270232712327223273232742327523276232772327823279232802328123282232832328423285232862328723288232892329023291232922329323294232952329623297232982329923300233012330223303233042330523306233072330823309233102331123312233132331423315233162331723318233192332023321233222332323324233252332623327233282332923330233312333223333233342333523336233372333823339233402334123342233432334423345233462334723348233492335023351233522335323354233552335623357233582335923360233612336223363233642336523366233672336823369233702337123372233732337423375233762337723378233792338023381233822338323384233852338623387233882338923390233912339223393233942339523396233972339823399234002340123402234032340423405234062340723408234092341023411234122341323414234152341623417234182341923420234212342223423234242342523426234272342823429234302343123432234332343423435234362343723438234392344023441234422344323444234452344623447234482344923450234512345223453234542345523456234572345823459234602346123462234632346423465234662346723468234692347023471234722347323474234752347623477234782347923480234812348223483234842348523486234872348823489234902349123492234932349423495234962349723498234992350023501235022350323504235052350623507235082350923510235112351223513235142351523516235172351823519235202352123522235232352423525235262352723528235292353023531235322353323534235352353623537235382353923540235412354223543235442354523546235472354823549235502355123552235532355423555235562355723558235592356023561235622356323564235652356623567235682356923570235712357223573235742357523576235772357823579235802358123582235832358423585235862358723588235892359023591235922359323594235952359623597235982359923600236012360223603236042360523606236072360823609236102361123612236132361423615236162361723618236192362023621236222362323624236252362623627236282362923630236312363223633236342363523636236372363823639236402364123642236432364423645236462364723648236492365023651236522365323654236552365623657236582365923660236612366223663236642366523666236672366823669236702367123672236732367423675236762367723678236792368023681236822368323684236852368623687236882368923690236912369223693236942369523696236972369823699237002370123702237032370423705237062370723708237092371023711237122371323714237152371623717237182371923720237212372223723237242372523726237272372823729237302373123732237332373423735237362373723738237392374023741237422374323744237452374623747237482374923750237512375223753237542375523756237572375823759237602376123762237632376423765237662376723768237692377023771237722377323774237752377623777237782377923780237812378223783237842378523786237872378823789237902379123792237932379423795237962379723798237992380023801238022380323804238052380623807238082380923810238112381223813238142381523816238172381823819238202382123822238232382423825238262382723828238292383023831238322383323834238352383623837238382383923840238412384223843238442384523846238472384823849238502385123852238532385423855238562385723858238592386023861238622386323864238652386623867238682386923870238712387223873238742387523876238772387823879238802388123882238832388423885238862388723888238892389023891238922389323894238952389623897238982389923900239012390223903239042390523906239072390823909239102391123912239132391423915239162391723918239192392023921239222392323924239252392623927239282392923930239312393223933239342393523936239372393823939239402394123942239432394423945239462394723948239492395023951239522395323954239552395623957239582395923960239612396223963239642396523966239672396823969239702397123972239732397423975239762397723978239792398023981239822398323984239852398623987239882398923990239912399223993239942399523996239972399823999240002400124002240032400424005240062400724008240092401024011240122401324014240152401624017240182401924020240212402224023240242402524026240272402824029240302403124032240332403424035240362403724038240392404024041240422404324044240452404624047240482404924050240512405224053240542405524056240572405824059240602406124062240632406424065240662406724068240692407024071240722407324074240752407624077240782407924080240812408224083240842408524086240872408824089240902409124092240932409424095240962409724098240992410024101241022410324104241052410624107241082410924110241112411224113241142411524116241172411824119241202412124122241232412424125241262412724128241292413024131241322413324134241352413624137241382413924140241412414224143241442414524146241472414824149241502415124152241532415424155241562415724158241592416024161241622416324164241652416624167241682416924170241712417224173241742417524176241772417824179241802418124182241832418424185241862418724188241892419024191241922419324194241952419624197241982419924200242012420224203242042420524206242072420824209242102421124212242132421424215242162421724218242192422024221242222422324224242252422624227242282422924230242312423224233242342423524236242372423824239242402424124242242432424424245242462424724248242492425024251242522425324254242552425624257242582425924260242612426224263242642426524266242672426824269242702427124272242732427424275242762427724278242792428024281242822428324284242852428624287242882428924290242912429224293242942429524296242972429824299243002430124302243032430424305243062430724308243092431024311243122431324314243152431624317243182431924320243212432224323243242432524326243272432824329243302433124332243332433424335243362433724338243392434024341243422434324344243452434624347243482434924350243512435224353243542435524356243572435824359243602436124362243632436424365243662436724368243692437024371243722437324374243752437624377243782437924380243812438224383243842438524386243872438824389243902439124392243932439424395243962439724398243992440024401244022440324404244052440624407244082440924410244112441224413244142441524416244172441824419244202442124422244232442424425244262442724428244292443024431244322443324434244352443624437244382443924440244412444224443244442444524446244472444824449244502445124452244532445424455244562445724458244592446024461244622446324464244652446624467244682446924470244712447224473244742447524476244772447824479244802448124482244832448424485244862448724488244892449024491244922449324494244952449624497244982449924500245012450224503245042450524506245072450824509245102451124512245132451424515245162451724518245192452024521245222452324524245252452624527245282452924530245312453224533245342453524536245372453824539245402454124542245432454424545245462454724548245492455024551245522455324554245552455624557245582455924560245612456224563245642456524566245672456824569245702457124572245732457424575245762457724578245792458024581245822458324584245852458624587245882458924590245912459224593245942459524596245972459824599246002460124602246032460424605246062460724608246092461024611246122461324614246152461624617246182461924620246212462224623246242462524626246272462824629246302463124632246332463424635246362463724638246392464024641246422464324644246452464624647246482464924650246512465224653246542465524656246572465824659246602466124662246632466424665246662466724668246692467024671246722467324674246752467624677246782467924680246812468224683246842468524686246872468824689246902469124692246932469424695246962469724698246992470024701247022470324704247052470624707247082470924710247112471224713247142471524716247172471824719247202472124722247232472424725247262472724728247292473024731247322473324734247352473624737247382473924740247412474224743247442474524746247472474824749247502475124752247532475424755247562475724758247592476024761247622476324764247652476624767247682476924770247712477224773247742477524776247772477824779247802478124782247832478424785247862478724788247892479024791247922479324794247952479624797247982479924800248012480224803248042480524806248072480824809248102481124812248132481424815248162481724818248192482024821248222482324824248252482624827248282482924830248312483224833248342483524836248372483824839248402484124842248432484424845248462484724848248492485024851248522485324854248552485624857248582485924860248612486224863248642486524866248672486824869248702487124872248732487424875248762487724878248792488024881248822488324884248852488624887248882488924890248912489224893248942489524896248972489824899249002490124902249032490424905249062490724908249092491024911249122491324914249152491624917249182491924920249212492224923249242492524926249272492824929249302493124932249332493424935249362493724938249392494024941249422494324944249452494624947249482494924950249512495224953249542495524956249572495824959249602496124962249632496424965249662496724968249692497024971249722497324974249752497624977249782497924980249812498224983249842498524986249872498824989249902499124992249932499424995249962499724998249992500025001250022500325004250052500625007250082500925010250112501225013250142501525016250172501825019250202502125022250232502425025250262502725028250292503025031250322503325034250352503625037250382503925040250412504225043250442504525046250472504825049250502505125052250532505425055250562505725058250592506025061250622506325064250652506625067250682506925070250712507225073250742507525076250772507825079250802508125082250832508425085250862508725088250892509025091250922509325094250952509625097250982509925100251012510225103251042510525106251072510825109251102511125112251132511425115251162511725118251192512025121251222512325124251252512625127251282512925130251312513225133251342513525136251372513825139251402514125142251432514425145251462514725148251492515025151251522515325154251552515625157251582515925160251612516225163251642516525166251672516825169251702517125172251732517425175251762517725178251792518025181251822518325184251852518625187251882518925190251912519225193251942519525196251972519825199252002520125202252032520425205252062520725208252092521025211252122521325214252152521625217252182521925220252212522225223252242522525226252272522825229252302523125232252332523425235252362523725238252392524025241252422524325244252452524625247252482524925250252512525225253252542525525256252572525825259252602526125262252632526425265252662526725268252692527025271252722527325274252752527625277252782527925280252812528225283252842528525286252872528825289252902529125292252932529425295252962529725298252992530025301253022530325304253052530625307253082530925310253112531225313253142531525316253172531825319253202532125322253232532425325253262532725328253292533025331253322533325334253352533625337253382533925340253412534225343253442534525346253472534825349253502535125352253532535425355253562535725358253592536025361253622536325364253652536625367253682536925370253712537225373253742537525376253772537825379253802538125382253832538425385253862538725388253892539025391253922539325394253952539625397253982539925400254012540225403254042540525406254072540825409254102541125412254132541425415254162541725418254192542025421254222542325424254252542625427254282542925430254312543225433254342543525436254372543825439254402544125442254432544425445254462544725448254492545025451254522545325454254552545625457254582545925460254612546225463254642546525466254672546825469254702547125472254732547425475254762547725478254792548025481254822548325484254852548625487254882548925490254912549225493254942549525496254972549825499255002550125502255032550425505255062550725508255092551025511255122551325514255152551625517255182551925520255212552225523255242552525526255272552825529255302553125532255332553425535255362553725538255392554025541255422554325544255452554625547255482554925550255512555225553255542555525556255572555825559255602556125562255632556425565255662556725568255692557025571255722557325574255752557625577255782557925580255812558225583255842558525586255872558825589255902559125592255932559425595255962559725598255992560025601256022560325604256052560625607256082560925610256112561225613256142561525616256172561825619256202562125622256232562425625256262562725628256292563025631256322563325634256352563625637256382563925640256412564225643256442564525646256472564825649256502565125652256532565425655256562565725658256592566025661256622566325664256652566625667256682566925670256712567225673256742567525676256772567825679256802568125682256832568425685256862568725688256892569025691256922569325694256952569625697256982569925700257012570225703257042570525706257072570825709257102571125712257132571425715257162571725718257192572025721257222572325724257252572625727257282572925730257312573225733257342573525736257372573825739257402574125742257432574425745257462574725748257492575025751257522575325754257552575625757257582575925760257612576225763257642576525766257672576825769257702577125772257732577425775257762577725778257792578025781257822578325784257852578625787257882578925790257912579225793257942579525796257972579825799258002580125802258032580425805258062580725808258092581025811258122581325814258152581625817258182581925820258212582225823258242582525826258272582825829258302583125832258332583425835258362583725838258392584025841258422584325844258452584625847258482584925850258512585225853258542585525856258572585825859258602586125862258632586425865258662586725868258692587025871258722587325874258752587625877258782587925880258812588225883258842588525886258872588825889258902589125892258932589425895258962589725898258992590025901259022590325904259052590625907259082590925910259112591225913259142591525916259172591825919259202592125922259232592425925259262592725928259292593025931259322593325934259352593625937259382593925940259412594225943259442594525946259472594825949259502595125952259532595425955259562595725958259592596025961259622596325964259652596625967259682596925970259712597225973259742597525976259772597825979259802598125982259832598425985259862598725988259892599025991259922599325994259952599625997259982599926000260012600226003260042600526006260072600826009260102601126012260132601426015260162601726018260192602026021260222602326024260252602626027260282602926030260312603226033260342603526036260372603826039260402604126042260432604426045260462604726048260492605026051260522605326054260552605626057260582605926060260612606226063260642606526066260672606826069260702607126072260732607426075260762607726078260792608026081260822608326084260852608626087260882608926090260912609226093260942609526096260972609826099261002610126102261032610426105261062610726108261092611026111261122611326114261152611626117261182611926120261212612226123261242612526126261272612826129261302613126132261332613426135261362613726138261392614026141261422614326144261452614626147261482614926150261512615226153261542615526156261572615826159261602616126162261632616426165261662616726168261692617026171261722617326174261752617626177261782617926180261812618226183261842618526186261872618826189261902619126192261932619426195261962619726198261992620026201262022620326204262052620626207262082620926210262112621226213262142621526216262172621826219262202622126222262232622426225262262622726228262292623026231262322623326234262352623626237262382623926240262412624226243262442624526246262472624826249262502625126252262532625426255262562625726258262592626026261262622626326264262652626626267262682626926270262712627226273262742627526276262772627826279262802628126282262832628426285262862628726288262892629026291262922629326294262952629626297262982629926300263012630226303263042630526306263072630826309263102631126312263132631426315263162631726318263192632026321263222632326324263252632626327263282632926330263312633226333263342633526336263372633826339263402634126342263432634426345263462634726348263492635026351263522635326354263552635626357263582635926360263612636226363263642636526366263672636826369263702637126372263732637426375263762637726378263792638026381263822638326384263852638626387263882638926390263912639226393263942639526396263972639826399264002640126402264032640426405264062640726408264092641026411264122641326414264152641626417264182641926420264212642226423264242642526426264272642826429264302643126432264332643426435264362643726438264392644026441264422644326444264452644626447264482644926450264512645226453264542645526456264572645826459264602646126462264632646426465264662646726468264692647026471264722647326474264752647626477264782647926480264812648226483264842648526486264872648826489264902649126492264932649426495264962649726498264992650026501265022650326504265052650626507265082650926510265112651226513265142651526516265172651826519265202652126522265232652426525265262652726528265292653026531265322653326534265352653626537265382653926540265412654226543265442654526546265472654826549265502655126552265532655426555265562655726558265592656026561265622656326564265652656626567265682656926570265712657226573265742657526576265772657826579265802658126582265832658426585265862658726588265892659026591265922659326594265952659626597265982659926600266012660226603266042660526606266072660826609266102661126612266132661426615266162661726618266192662026621266222662326624266252662626627266282662926630266312663226633266342663526636266372663826639266402664126642266432664426645266462664726648266492665026651266522665326654266552665626657266582665926660266612666226663266642666526666266672666826669266702667126672266732667426675266762667726678266792668026681266822668326684266852668626687266882668926690266912669226693266942669526696266972669826699267002670126702267032670426705267062670726708267092671026711267122671326714267152671626717267182671926720267212672226723267242672526726267272672826729267302673126732267332673426735267362673726738267392674026741267422674326744267452674626747267482674926750267512675226753267542675526756267572675826759267602676126762267632676426765267662676726768267692677026771267722677326774267752677626777267782677926780267812678226783267842678526786267872678826789267902679126792267932679426795267962679726798267992680026801268022680326804268052680626807268082680926810268112681226813268142681526816268172681826819268202682126822268232682426825268262682726828268292683026831268322683326834268352683626837268382683926840268412684226843268442684526846268472684826849268502685126852268532685426855268562685726858268592686026861268622686326864268652686626867268682686926870268712687226873268742687526876268772687826879268802688126882268832688426885268862688726888268892689026891268922689326894268952689626897268982689926900269012690226903269042690526906269072690826909269102691126912269132691426915269162691726918269192692026921269222692326924269252692626927269282692926930269312693226933269342693526936269372693826939269402694126942269432694426945269462694726948269492695026951269522695326954269552695626957269582695926960269612696226963269642696526966269672696826969269702697126972269732697426975269762697726978269792698026981269822698326984269852698626987269882698926990269912699226993269942699526996269972699826999270002700127002270032700427005270062700727008270092701027011270122701327014270152701627017270182701927020270212702227023270242702527026270272702827029270302703127032270332703427035270362703727038270392704027041270422704327044270452704627047270482704927050270512705227053270542705527056270572705827059270602706127062270632706427065270662706727068270692707027071270722707327074270752707627077270782707927080270812708227083270842708527086270872708827089270902709127092270932709427095270962709727098270992710027101271022710327104271052710627107271082710927110271112711227113271142711527116271172711827119271202712127122271232712427125271262712727128271292713027131271322713327134271352713627137271382713927140271412714227143271442714527146271472714827149271502715127152271532715427155271562715727158271592716027161271622716327164271652716627167271682716927170271712717227173271742717527176271772717827179271802718127182271832718427185271862718727188271892719027191271922719327194271952719627197271982719927200272012720227203272042720527206272072720827209272102721127212272132721427215272162721727218272192722027221272222722327224272252722627227272282722927230272312723227233272342723527236272372723827239272402724127242272432724427245272462724727248272492725027251272522725327254272552725627257272582725927260272612726227263272642726527266272672726827269272702727127272272732727427275272762727727278272792728027281272822728327284272852728627287272882728927290272912729227293272942729527296272972729827299273002730127302273032730427305273062730727308273092731027311273122731327314273152731627317273182731927320273212732227323273242732527326273272732827329273302733127332273332733427335273362733727338273392734027341273422734327344273452734627347273482734927350273512735227353273542735527356273572735827359273602736127362273632736427365273662736727368273692737027371273722737327374273752737627377273782737927380273812738227383273842738527386273872738827389273902739127392273932739427395273962739727398273992740027401274022740327404274052740627407274082740927410274112741227413274142741527416274172741827419274202742127422274232742427425274262742727428274292743027431274322743327434274352743627437274382743927440274412744227443274442744527446274472744827449274502745127452274532745427455274562745727458274592746027461274622746327464274652746627467274682746927470274712747227473274742747527476274772747827479274802748127482274832748427485274862748727488274892749027491274922749327494274952749627497274982749927500275012750227503275042750527506275072750827509275102751127512275132751427515275162751727518275192752027521275222752327524275252752627527275282752927530275312753227533275342753527536275372753827539275402754127542275432754427545275462754727548275492755027551275522755327554275552755627557275582755927560275612756227563275642756527566275672756827569275702757127572275732757427575275762757727578275792758027581275822758327584275852758627587275882758927590275912759227593275942759527596275972759827599276002760127602276032760427605276062760727608276092761027611276122761327614276152761627617276182761927620276212762227623276242762527626276272762827629276302763127632276332763427635276362763727638276392764027641276422764327644276452764627647276482764927650276512765227653276542765527656276572765827659276602766127662276632766427665276662766727668276692767027671276722767327674276752767627677276782767927680276812768227683276842768527686276872768827689276902769127692276932769427695276962769727698276992770027701277022770327704277052770627707277082770927710277112771227713277142771527716277172771827719277202772127722277232772427725277262772727728277292773027731277322773327734277352773627737277382773927740277412774227743277442774527746277472774827749277502775127752277532775427755277562775727758277592776027761277622776327764277652776627767277682776927770277712777227773277742777527776277772777827779277802778127782277832778427785277862778727788277892779027791277922779327794277952779627797277982779927800278012780227803278042780527806278072780827809278102781127812278132781427815278162781727818278192782027821278222782327824278252782627827278282782927830278312783227833278342783527836278372783827839278402784127842278432784427845278462784727848278492785027851278522785327854278552785627857278582785927860278612786227863278642786527866278672786827869278702787127872278732787427875278762787727878278792788027881278822788327884278852788627887278882788927890278912789227893278942789527896278972789827899279002790127902279032790427905279062790727908279092791027911279122791327914279152791627917279182791927920279212792227923279242792527926279272792827929279302793127932279332793427935279362793727938279392794027941279422794327944279452794627947279482794927950279512795227953279542795527956279572795827959279602796127962279632796427965279662796727968279692797027971279722797327974279752797627977279782797927980279812798227983279842798527986279872798827989279902799127992279932799427995279962799727998279992800028001280022800328004280052800628007280082800928010280112801228013280142801528016280172801828019280202802128022280232802428025280262802728028280292803028031280322803328034280352803628037280382803928040280412804228043280442804528046280472804828049280502805128052280532805428055280562805728058280592806028061280622806328064280652806628067280682806928070280712807228073280742807528076280772807828079280802808128082280832808428085280862808728088280892809028091280922809328094280952809628097280982809928100281012810228103281042810528106281072810828109281102811128112281132811428115281162811728118281192812028121281222812328124281252812628127281282812928130281312813228133281342813528136281372813828139281402814128142281432814428145281462814728148281492815028151281522815328154281552815628157281582815928160281612816228163281642816528166281672816828169281702817128172281732817428175281762817728178281792818028181281822818328184281852818628187281882818928190281912819228193281942819528196281972819828199282002820128202282032820428205282062820728208282092821028211282122821328214282152821628217282182821928220282212822228223282242822528226282272822828229282302823128232282332823428235282362823728238282392824028241282422824328244282452824628247282482824928250282512825228253282542825528256282572825828259282602826128262282632826428265282662826728268282692827028271282722827328274282752827628277282782827928280282812828228283282842828528286282872828828289282902829128292282932829428295282962829728298282992830028301283022830328304283052830628307283082830928310283112831228313283142831528316283172831828319283202832128322283232832428325283262832728328283292833028331283322833328334283352833628337283382833928340283412834228343283442834528346283472834828349283502835128352283532835428355283562835728358283592836028361283622836328364283652836628367283682836928370283712837228373283742837528376283772837828379283802838128382283832838428385283862838728388283892839028391283922839328394283952839628397283982839928400284012840228403284042840528406284072840828409284102841128412284132841428415284162841728418284192842028421284222842328424284252842628427284282842928430284312843228433284342843528436284372843828439284402844128442284432844428445284462844728448284492845028451284522845328454284552845628457284582845928460284612846228463284642846528466284672846828469284702847128472284732847428475284762847728478284792848028481284822848328484284852848628487284882848928490284912849228493284942849528496284972849828499285002850128502285032850428505285062850728508285092851028511285122851328514285152851628517285182851928520285212852228523285242852528526285272852828529285302853128532285332853428535285362853728538285392854028541285422854328544285452854628547285482854928550285512855228553285542855528556285572855828559285602856128562285632856428565285662856728568285692857028571285722857328574285752857628577285782857928580285812858228583285842858528586285872858828589285902859128592285932859428595285962859728598285992860028601286022860328604286052860628607286082860928610286112861228613286142861528616286172861828619286202862128622286232862428625286262862728628286292863028631286322863328634286352863628637286382863928640286412864228643286442864528646286472864828649286502865128652286532865428655286562865728658286592866028661286622866328664286652866628667286682866928670286712867228673286742867528676286772867828679286802868128682286832868428685286862868728688286892869028691286922869328694286952869628697286982869928700287012870228703287042870528706287072870828709287102871128712287132871428715287162871728718287192872028721287222872328724287252872628727287282872928730287312873228733287342873528736287372873828739287402874128742287432874428745287462874728748287492875028751287522875328754287552875628757287582875928760287612876228763287642876528766287672876828769287702877128772287732877428775287762877728778287792878028781287822878328784287852878628787287882878928790287912879228793287942879528796287972879828799288002880128802288032880428805288062880728808288092881028811288122881328814288152881628817288182881928820288212882228823288242882528826288272882828829288302883128832288332883428835288362883728838288392884028841288422884328844288452884628847288482884928850288512885228853288542885528856288572885828859288602886128862288632886428865288662886728868288692887028871288722887328874288752887628877288782887928880288812888228883288842888528886288872888828889288902889128892288932889428895288962889728898288992890028901289022890328904289052890628907289082890928910289112891228913289142891528916289172891828919289202892128922289232892428925289262892728928289292893028931289322893328934289352893628937289382893928940289412894228943289442894528946289472894828949289502895128952289532895428955289562895728958289592896028961289622896328964289652896628967289682896928970289712897228973289742897528976289772897828979289802898128982289832898428985289862898728988289892899028991289922899328994289952899628997289982899929000290012900229003290042900529006290072900829009290102901129012290132901429015290162901729018290192902029021290222902329024290252902629027290282902929030290312903229033290342903529036290372903829039290402904129042290432904429045290462904729048290492905029051290522905329054290552905629057290582905929060290612906229063290642906529066290672906829069290702907129072290732907429075290762907729078290792908029081290822908329084290852908629087290882908929090290912909229093290942909529096290972909829099291002910129102291032910429105291062910729108291092911029111291122911329114291152911629117291182911929120291212912229123291242912529126291272912829129291302913129132291332913429135291362913729138291392914029141291422914329144291452914629147291482914929150291512915229153291542915529156291572915829159291602916129162291632916429165291662916729168291692917029171291722917329174291752917629177291782917929180291812918229183291842918529186291872918829189291902919129192291932919429195291962919729198291992920029201292022920329204292052920629207292082920929210292112921229213292142921529216292172921829219292202922129222292232922429225292262922729228292292923029231292322923329234292352923629237292382923929240292412924229243292442924529246292472924829249292502925129252292532925429255292562925729258292592926029261292622926329264292652926629267292682926929270292712927229273292742927529276292772927829279292802928129282292832928429285292862928729288292892929029291292922929329294292952929629297292982929929300293012930229303293042930529306293072930829309293102931129312293132931429315293162931729318293192932029321293222932329324293252932629327293282932929330293312933229333293342933529336293372933829339293402934129342293432934429345293462934729348293492935029351293522935329354293552935629357293582935929360293612936229363293642936529366293672936829369293702937129372293732937429375
  1. var UnityModule = (function() {
  2. var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
  3. return (
  4. function(UnityModule) {
  5. UnityModule = UnityModule || {};
  6. var Module = typeof UnityModule !== "undefined" ? UnityModule : {};
  7. if (typeof ENVIRONMENT_IS_PTHREAD === "undefined" || !ENVIRONMENT_IS_PTHREAD) {
  8. function CachedXMLHttpRequest() {
  9. var self = this, xhr = new CachedXMLHttpRequest.XMLHttpRequest, cache = {};
  10. function send() {
  11. var onload = xhr.onload;
  12. xhr.onload = (function(e) {
  13. var meta = {
  14. requestURL: cache.requestURL,
  15. responseURL: xhr.responseURL,
  16. responseType: xhr.responseType,
  17. lastModified: xhr.getResponseHeader("Last-Modified"),
  18. eTag: xhr.getResponseHeader("ETag")
  19. };
  20. if (xhr.status == 200 && (meta.lastModified || meta.eTag)) {
  21. meta.size = xhr.response.byteLength;
  22. CachedXMLHttpRequest.cache.put(cache.requestURL, meta, xhr.response, (function(err) {
  23. CachedXMLHttpRequest.log("'" + cache.requestURL + "' downloaded successfully (" + xhr.response.byteLength + " bytes) " + (err ? "but not stored in indexedDB cache due to error." : "and stored in indexedDB cache."));
  24. if (onload) onload(e);
  25. }));
  26. } else {
  27. if (xhr.status == 304) {
  28. cache.override = true;
  29. CachedXMLHttpRequest.log("'" + cache.requestURL + "' served from indexedDB cache (" + cache.response.byteLength + " bytes).");
  30. }
  31. if (onload) onload(e);
  32. }
  33. });
  34. return xhr.send.apply(xhr, arguments);
  35. }
  36. function revalidateCrossOriginRequest(meta, self, sendArguments) {
  37. var headXHR = new CachedXMLHttpRequest.XMLHttpRequest;
  38. headXHR.open("HEAD", meta.requestURL, false);
  39. headXHR.send();
  40. cache.override = meta.lastModified ? meta.lastModified == headXHR.getResponseHeader("Last-Modified") : meta.eTag && meta.eTag == headXHR.getResponseHeader("ETag");
  41. if (!cache.override) return send.apply(self, sendArguments);
  42. CachedXMLHttpRequest.log("'" + cache.requestURL + "' served from indexedDB cache (" + cache.response.byteLength + " bytes).");
  43. if (xhr.onload) xhr.onload();
  44. }
  45. Object.defineProperty(self, "open", {
  46. value: (function(method, url, async) {
  47. cache = {
  48. method: method,
  49. requestURL: CachedXMLHttpRequest.cache.requestURL(url),
  50. async: async
  51. };
  52. return xhr.open.apply(xhr, arguments);
  53. })
  54. });
  55. Object.defineProperty(self, "setRequestHeader", {
  56. value: (function() {
  57. cache.customHeaders = true;
  58. return xhr.setRequestHeader.apply(xhr, arguments);
  59. })
  60. });
  61. Object.defineProperty(self, "send", {
  62. value: (function(data) {
  63. var sendArguments = arguments;
  64. var absoluteUrlMatch = cache.requestURL.match("^https?://[^/]+/");
  65. if (!absoluteUrlMatch || cache.customHeaders || data || cache.method != "GET" || !cache.async || xhr.responseType != "arraybuffer") return xhr.send.apply(xhr, sendArguments);
  66. CachedXMLHttpRequest.cache.get(cache.requestURL, (function(err, result) {
  67. if (err || !result || !result.meta || result.meta.responseType != xhr.responseType) return send.apply(self, sendArguments);
  68. cache.status = 200;
  69. cache.statusText = "OK";
  70. cache.response = result.response;
  71. cache.responseURL = result.meta.responseURL;
  72. if (window.location.href.lastIndexOf(absoluteUrlMatch[0], 0)) return revalidateCrossOriginRequest(result.meta, self, sendArguments);
  73. if (result.meta.lastModified) xhr.setRequestHeader("If-Modified-Since", result.meta.lastModified); else if (result.meta.eTag) xhr.setRequestHeader("If-None-Match", result.meta.eTag);
  74. xhr.setRequestHeader("Cache-Control", "no-cache");
  75. return send.apply(self, sendArguments);
  76. }));
  77. })
  78. });
  79. [ "abort", "getAllResponseHeaders", "getResponseHeader", "overrideMimeType", "addEventListener" ].forEach((function(method) {
  80. Object.defineProperty(self, method, {
  81. value: (function() {
  82. return xhr[method].apply(xhr, arguments);
  83. })
  84. });
  85. }));
  86. [ "readyState", "response", "responseText", "responseType", "responseURL", "responseXML", "status", "statusText", "timeout", "upload", "withCredentials", "onloadstart", "onprogress", "onabort", "onerror", "onload", "ontimeout", "onloadend", "onreadystatechange" ].forEach((function(property) {
  87. Object.defineProperty(self, property, {
  88. get: (function() {
  89. return cache.override && cache[property] ? cache[property] : xhr[property];
  90. }),
  91. set: (function(value) {
  92. xhr[property] = value;
  93. })
  94. });
  95. }));
  96. }
  97. CachedXMLHttpRequest.XMLHttpRequest = window.XMLHttpRequest;
  98. CachedXMLHttpRequest.log = (function(message) {
  99. if (Module.CachedXMLHttpRequestSilent !== true) console.log("[CachedXMLHttpRequest] " + message);
  100. });
  101. CachedXMLHttpRequest.cache = {
  102. database: "CachedXMLHttpRequest",
  103. version: 1,
  104. store: "cache",
  105. indexedDB: window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB,
  106. link: document.createElement("a"),
  107. requestURL: (function(url) {
  108. this.link.href = url;
  109. return this.link.href;
  110. }),
  111. id: (function(requestURL) {
  112. return encodeURIComponent(requestURL);
  113. }),
  114. queue: [],
  115. processQueue: (function() {
  116. var self = this;
  117. self.queue.forEach((function(queued) {
  118. self[queued.action].apply(self, queued.arguments);
  119. }));
  120. self.queue = [];
  121. }),
  122. init: (function() {
  123. var self = this;
  124. if (!self.indexedDB) return CachedXMLHttpRequest.log("indexedDB is not available");
  125. var openDB;
  126. try {
  127. openDB = indexedDB.open(self.database, self.version);
  128. } catch (e) {
  129. return CachedXMLHttpRequest.log("indexedDB access denied");
  130. }
  131. openDB.onupgradeneeded = (function(e) {
  132. var db = e.target.result;
  133. var transaction = e.target.transaction;
  134. var objectStore;
  135. if (db.objectStoreNames.contains(self.store)) {
  136. objectStore = transaction.objectStore(self.store);
  137. } else {
  138. objectStore = db.createObjectStore(self.store, {
  139. keyPath: "id"
  140. });
  141. objectStore.createIndex("meta", "meta", {
  142. unique: false
  143. });
  144. }
  145. objectStore.clear();
  146. });
  147. openDB.onerror = (function(e) {
  148. CachedXMLHttpRequest.log("can not open indexedDB database");
  149. self.indexedDB = null;
  150. self.processQueue();
  151. });
  152. openDB.onsuccess = (function(e) {
  153. self.db = e.target.result;
  154. self.processQueue();
  155. });
  156. }),
  157. put: (function(requestURL, meta, response, callback) {
  158. var self = this;
  159. if (!self.indexedDB) return callback(new Error("indexedDB is not available"));
  160. if (!self.db) return self.queue.push({
  161. action: "put",
  162. arguments: arguments
  163. });
  164. meta.version = self.version;
  165. var putDB = self.db.transaction([ self.store ], "readwrite").objectStore(self.store).put({
  166. id: self.id(requestURL),
  167. meta: meta,
  168. response: response
  169. });
  170. putDB.onerror = (function(e) {
  171. callback(new Error("failed to put request into indexedDB cache"));
  172. });
  173. putDB.onsuccess = (function(e) {
  174. callback(null);
  175. });
  176. }),
  177. get: (function(requestURL, callback) {
  178. var self = this;
  179. if (!self.indexedDB) return callback(new Error("indexedDB is not available"));
  180. if (!self.db) return self.queue.push({
  181. action: "get",
  182. arguments: arguments
  183. });
  184. var getDB = self.db.transaction([ self.store ], "readonly").objectStore(self.store).get(self.id(requestURL));
  185. getDB.onerror = (function(e) {
  186. callback(new Error("failed to get request from indexedDB cache"));
  187. });
  188. getDB.onsuccess = (function(e) {
  189. callback(null, e.target.result);
  190. });
  191. })
  192. };
  193. CachedXMLHttpRequest.cache.init();
  194. CachedXMLHttpRequest.wrap = (function(func) {
  195. return (function() {
  196. var realXMLHttpRequest = XMLHttpRequest;
  197. XMLHttpRequest = CachedXMLHttpRequest;
  198. try {
  199. var result = func.apply(this, arguments);
  200. } catch (e) {
  201. XMLHttpRequest = realXMLHttpRequest;
  202. throw e;
  203. }
  204. XMLHttpRequest = realXMLHttpRequest;
  205. return result;
  206. });
  207. });
  208. if (Module.CachedXMLHttpRequestDisable !== true) {
  209. Object.defineProperty(Module, "asmLibraryArg", {
  210. get: (function() {
  211. return Module.realAsmLibraryArg;
  212. }),
  213. set: (function(value) {
  214. if (typeof value == "object" && typeof value._JS_WebRequest_Create == "function") value._JS_WebRequest_Create = CachedXMLHttpRequest.wrap(value._JS_WebRequest_Create);
  215. Module.realAsmLibraryArg = value;
  216. })
  217. });
  218. }
  219. }
  220. if (typeof ENVIRONMENT_IS_PTHREAD === "undefined" || !ENVIRONMENT_IS_PTHREAD) {
  221. Module["preRun"].push((function() {
  222. var unityFileSystemInit = Module["unityFileSystemInit"] || (function() {
  223. if (!Module.indexedDB) {
  224. console.log("IndexedDB is not available. Data will not persist in cache and PlayerPrefs will not be saved.");
  225. }
  226. FS.mkdir("/idbfs");
  227. FS.mount(IDBFS, {}, "/idbfs");
  228. Module.addRunDependency("JS_FileSystem_Mount");
  229. FS.syncfs(true, (function(err) {
  230. Module.removeRunDependency("JS_FileSystem_Mount");
  231. }));
  232. });
  233. unityFileSystemInit();
  234. }));
  235. }
  236. Module["SetFullscreen"] = (function(fullscreen) {
  237. if (typeof runtimeInitialized === "undefined" || !runtimeInitialized) {
  238. console.log("Runtime not initialized yet.");
  239. } else if (typeof JSEvents === "undefined") {
  240. console.log("Player not loaded yet.");
  241. } else {
  242. var tmp = JSEvents.canPerformEventHandlerRequests;
  243. JSEvents.canPerformEventHandlerRequests = (function() {
  244. return 1;
  245. });
  246. Module.ccall("SetFullscreen", null, [ "number" ], [ fullscreen ]);
  247. JSEvents.canPerformEventHandlerRequests = tmp;
  248. }
  249. });
  250. Module["demangle"] = demangle || (function(symbol) {
  251. return symbol;
  252. });
  253. var MediaDevices = [];
  254. if (typeof ENVIRONMENT_IS_PTHREAD === "undefined" || !ENVIRONMENT_IS_PTHREAD) {
  255. Module["preRun"].push((function() {
  256. var enumerateMediaDevices = (function() {
  257. var getMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia;
  258. if (!getMedia) return;
  259. function addDevice(label) {
  260. label = label ? label : "device #" + MediaDevices.length;
  261. var device = {
  262. deviceName: label,
  263. refCount: 0,
  264. video: null
  265. };
  266. MediaDevices.push(device);
  267. }
  268. if (!navigator.mediaDevices || !navigator.mediaDevices.enumerateDevices) {
  269. if (typeof MediaStreamTrack == "undefined" || typeof MediaStreamTrack.getSources == "undefined") {
  270. console.log("Media Devices cannot be enumerated on this browser.");
  271. return;
  272. }
  273. function gotSources(sourceInfos) {
  274. for (var i = 0; i !== sourceInfos.length; ++i) {
  275. var sourceInfo = sourceInfos[i];
  276. if (sourceInfo.kind === "video") addDevice(sourceInfo.label);
  277. }
  278. }
  279. MediaStreamTrack.getSources(gotSources);
  280. }
  281. navigator.mediaDevices.enumerateDevices().then((function(devices) {
  282. devices.forEach((function(device) {
  283. if (device.kind == "videoinput") addDevice(device.label);
  284. }));
  285. })).catch((function(err) {
  286. console.log(err.name + ": " + error.message);
  287. }));
  288. });
  289. enumerateMediaDevices();
  290. }));
  291. }
  292. function SendMessage(gameObject, func, param) {
  293. if (param === undefined) Module.ccall("SendMessage", null, [ "string", "string" ], [ gameObject, func ]); else if (typeof param === "string") Module.ccall("SendMessageString", null, [ "string", "string", "string" ], [ gameObject, func, param ]); else if (typeof param === "number") Module.ccall("SendMessageFloat", null, [ "string", "string", "number" ], [ gameObject, func, param ]); else throw "" + param + " is does not have a type which is supported by SendMessage.";
  294. }
  295. Module["SendMessage"] = SendMessage;
  296. var moduleOverrides = {};
  297. var key;
  298. for (key in Module) {
  299. if (Module.hasOwnProperty(key)) {
  300. moduleOverrides[key] = Module[key];
  301. }
  302. }
  303. Module["arguments"] = [];
  304. Module["thisProgram"] = "./this.program";
  305. Module["quit"] = (function(status, toThrow) {
  306. throw toThrow;
  307. });
  308. Module["preRun"] = [];
  309. Module["postRun"] = [];
  310. var ENVIRONMENT_IS_WEB = false;
  311. var ENVIRONMENT_IS_WORKER = false;
  312. var ENVIRONMENT_IS_NODE = false;
  313. var ENVIRONMENT_IS_SHELL = false;
  314. ENVIRONMENT_IS_WEB = typeof window === "object";
  315. ENVIRONMENT_IS_WORKER = typeof importScripts === "function";
  316. ENVIRONMENT_IS_NODE = typeof process === "object" && typeof require === "function" && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER;
  317. ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER;
  318. if (Module["ENVIRONMENT"]) {
  319. throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)");
  320. }
  321. assert(typeof Module["memoryInitializerPrefixURL"] === "undefined", "Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");
  322. assert(typeof Module["pthreadMainPrefixURL"] === "undefined", "Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");
  323. assert(typeof Module["cdInitializerPrefixURL"] === "undefined", "Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");
  324. assert(typeof Module["filePackagePrefixURL"] === "undefined", "Module.filePackagePrefixURL option was removed, use Module.locateFile instead");
  325. var scriptDirectory = "";
  326. function locateFile(path) {
  327. if (Module["locateFile"]) {
  328. return Module["locateFile"](path, scriptDirectory);
  329. } else {
  330. return scriptDirectory + path;
  331. }
  332. }
  333. if (ENVIRONMENT_IS_NODE) {
  334. scriptDirectory = __dirname + "/";
  335. var nodeFS;
  336. var nodePath;
  337. Module["read"] = function shell_read(filename, binary) {
  338. var ret;
  339. if (!nodeFS) nodeFS = require("fs");
  340. if (!nodePath) nodePath = require("path");
  341. filename = nodePath["normalize"](filename);
  342. ret = nodeFS["readFileSync"](filename);
  343. return binary ? ret : ret.toString();
  344. };
  345. Module["readBinary"] = function readBinary(filename) {
  346. var ret = Module["read"](filename, true);
  347. if (!ret.buffer) {
  348. ret = new Uint8Array(ret);
  349. }
  350. assert(ret.buffer);
  351. return ret;
  352. };
  353. if (process["argv"].length > 1) {
  354. Module["thisProgram"] = process["argv"][1].replace(/\\/g, "/");
  355. }
  356. Module["arguments"] = process["argv"].slice(2);
  357. process["on"]("uncaughtException", (function(ex) {
  358. if (!(ex instanceof ExitStatus)) {
  359. throw ex;
  360. }
  361. }));
  362. process["on"]("unhandledRejection", (function(reason, p) {
  363. err("node.js exiting due to unhandled promise rejection");
  364. process["exit"](1);
  365. }));
  366. Module["quit"] = (function(status) {
  367. process["exit"](status);
  368. });
  369. Module["inspect"] = (function() {
  370. return "[Emscripten Module object]";
  371. });
  372. } else if (ENVIRONMENT_IS_SHELL) {
  373. if (typeof read != "undefined") {
  374. Module["read"] = function shell_read(f) {
  375. return read(f);
  376. };
  377. }
  378. Module["readBinary"] = function readBinary(f) {
  379. var data;
  380. if (typeof readbuffer === "function") {
  381. return new Uint8Array(readbuffer(f));
  382. }
  383. data = read(f, "binary");
  384. assert(typeof data === "object");
  385. return data;
  386. };
  387. if (typeof scriptArgs != "undefined") {
  388. Module["arguments"] = scriptArgs;
  389. } else if (typeof arguments != "undefined") {
  390. Module["arguments"] = arguments;
  391. }
  392. if (typeof quit === "function") {
  393. Module["quit"] = (function(status) {
  394. quit(status);
  395. });
  396. }
  397. } else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {
  398. if (ENVIRONMENT_IS_WEB) {
  399. if (document.currentScript) {
  400. scriptDirectory = document.currentScript.src;
  401. }
  402. } else {
  403. scriptDirectory = self.location.href;
  404. }
  405. if (_scriptDir) {
  406. scriptDirectory = _scriptDir;
  407. }
  408. if (scriptDirectory.indexOf("blob:") !== 0) {
  409. scriptDirectory = scriptDirectory.split("/").slice(0, -1).join("/") + "/";
  410. } else {
  411. scriptDirectory = "";
  412. }
  413. Module["read"] = function shell_read(url) {
  414. var xhr = new XMLHttpRequest;
  415. xhr.open("GET", url, false);
  416. xhr.send(null);
  417. return xhr.responseText;
  418. };
  419. if (ENVIRONMENT_IS_WORKER) {
  420. Module["readBinary"] = function readBinary(url) {
  421. var xhr = new XMLHttpRequest;
  422. xhr.open("GET", url, false);
  423. xhr.responseType = "arraybuffer";
  424. xhr.send(null);
  425. return new Uint8Array(xhr.response);
  426. };
  427. }
  428. Module["readAsync"] = function readAsync(url, onload, onerror) {
  429. var xhr = new XMLHttpRequest;
  430. xhr.open("GET", url, true);
  431. xhr.responseType = "arraybuffer";
  432. xhr.onload = function xhr_onload() {
  433. if (xhr.status == 200 || xhr.status == 0 && xhr.response) {
  434. onload(xhr.response);
  435. return;
  436. }
  437. onerror();
  438. };
  439. xhr.onerror = onerror;
  440. xhr.send(null);
  441. };
  442. Module["setWindowTitle"] = (function(title) {
  443. document.title = title;
  444. });
  445. } else {
  446. throw new Error("environment detection error");
  447. }
  448. var out = Module["print"] || (typeof console !== "undefined" ? console.log.bind(console) : typeof print !== "undefined" ? print : null);
  449. var err = Module["printErr"] || (typeof printErr !== "undefined" ? printErr : typeof console !== "undefined" && console.warn.bind(console) || out);
  450. for (key in moduleOverrides) {
  451. if (moduleOverrides.hasOwnProperty(key)) {
  452. Module[key] = moduleOverrides[key];
  453. }
  454. }
  455. moduleOverrides = undefined;
  456. var STACK_ALIGN = 16;
  457. stackSave = stackRestore = stackAlloc = setTempRet0 = getTempRet0 = (function() {
  458. abort("cannot use the stack before compiled code is ready to run, and has provided stack access");
  459. });
  460. function staticAlloc(size) {
  461. assert(!staticSealed);
  462. var ret = STATICTOP;
  463. STATICTOP = STATICTOP + size + 15 & -16;
  464. assert(STATICTOP < TOTAL_MEMORY, "not enough memory for static allocation - increase TOTAL_MEMORY");
  465. return ret;
  466. }
  467. function dynamicAlloc(size) {
  468. assert(DYNAMICTOP_PTR);
  469. var ret = HEAP32[DYNAMICTOP_PTR >> 2];
  470. var end = ret + size + 15 & -16;
  471. HEAP32[DYNAMICTOP_PTR >> 2] = end;
  472. if (end >= TOTAL_MEMORY) {
  473. var success = enlargeMemory();
  474. if (!success) {
  475. HEAP32[DYNAMICTOP_PTR >> 2] = ret;
  476. return 0;
  477. }
  478. }
  479. return ret;
  480. }
  481. function alignMemory(size, factor) {
  482. if (!factor) factor = STACK_ALIGN;
  483. var ret = size = Math.ceil(size / factor) * factor;
  484. return ret;
  485. }
  486. function getNativeTypeSize(type) {
  487. switch (type) {
  488. case "i1":
  489. case "i8":
  490. return 1;
  491. case "i16":
  492. return 2;
  493. case "i32":
  494. return 4;
  495. case "i64":
  496. return 8;
  497. case "float":
  498. return 4;
  499. case "double":
  500. return 8;
  501. default:
  502. {
  503. if (type[type.length - 1] === "*") {
  504. return 4;
  505. } else if (type[0] === "i") {
  506. var bits = parseInt(type.substr(1));
  507. assert(bits % 8 === 0);
  508. return bits / 8;
  509. } else {
  510. return 0;
  511. }
  512. }
  513. }
  514. }
  515. function warnOnce(text) {
  516. if (!warnOnce.shown) warnOnce.shown = {};
  517. if (!warnOnce.shown[text]) {
  518. warnOnce.shown[text] = 1;
  519. err(text);
  520. }
  521. }
  522. var asm2wasmImports = {
  523. "f64-rem": (function(x, y) {
  524. return x % y;
  525. }),
  526. "debugger": (function() {
  527. debugger;
  528. })
  529. };
  530. var jsCallStartIndex = 1;
  531. var functionPointers = new Array(0);
  532. function addFunction(func, sig) {
  533. if (typeof sig === "undefined") {
  534. err("warning: addFunction(): You should provide a wasm function signature string as a second argument. This is not necessary for asm.js and asm2wasm, but is required for the LLVM wasm backend, so it is recommended for full portability.");
  535. }
  536. var base = 0;
  537. for (var i = base; i < base + 0; i++) {
  538. if (!functionPointers[i]) {
  539. functionPointers[i] = func;
  540. return jsCallStartIndex + i;
  541. }
  542. }
  543. throw "Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS.";
  544. }
  545. var funcWrappers = {};
  546. function getFuncWrapper(func, sig) {
  547. if (!func) return;
  548. assert(sig);
  549. if (!funcWrappers[sig]) {
  550. funcWrappers[sig] = {};
  551. }
  552. var sigCache = funcWrappers[sig];
  553. if (!sigCache[func]) {
  554. if (sig.length === 1) {
  555. sigCache[func] = function dynCall_wrapper() {
  556. return dynCall(sig, func);
  557. };
  558. } else if (sig.length === 2) {
  559. sigCache[func] = function dynCall_wrapper(arg) {
  560. return dynCall(sig, func, [ arg ]);
  561. };
  562. } else {
  563. sigCache[func] = function dynCall_wrapper() {
  564. return dynCall(sig, func, Array.prototype.slice.call(arguments));
  565. };
  566. }
  567. }
  568. return sigCache[func];
  569. }
  570. function makeBigInt(low, high, unsigned) {
  571. return unsigned ? +(low >>> 0) + +(high >>> 0) * 4294967296 : +(low >>> 0) + +(high | 0) * 4294967296;
  572. }
  573. function dynCall(sig, ptr, args) {
  574. if (args && args.length) {
  575. assert(args.length == sig.length - 1);
  576. assert("dynCall_" + sig in Module, "bad function pointer type - no table for sig '" + sig + "'");
  577. return Module["dynCall_" + sig].apply(null, [ ptr ].concat(args));
  578. } else {
  579. assert(sig.length == 1);
  580. assert("dynCall_" + sig in Module, "bad function pointer type - no table for sig '" + sig + "'");
  581. return Module["dynCall_" + sig].call(null, ptr);
  582. }
  583. }
  584. var GLOBAL_BASE = 1024;
  585. var ABORT = 0;
  586. var EXITSTATUS = 0;
  587. function assert(condition, text) {
  588. if (!condition) {
  589. abort("Assertion failed: " + text);
  590. }
  591. }
  592. function getCFunc(ident) {
  593. var func = Module["_" + ident];
  594. assert(func, "Cannot call unknown function " + ident + ", make sure it is exported");
  595. return func;
  596. }
  597. var JSfuncs = {
  598. "stackSave": (function() {
  599. stackSave();
  600. }),
  601. "stackRestore": (function() {
  602. stackRestore();
  603. }),
  604. "arrayToC": (function(arr) {
  605. var ret = stackAlloc(arr.length);
  606. writeArrayToMemory(arr, ret);
  607. return ret;
  608. }),
  609. "stringToC": (function(str) {
  610. var ret = 0;
  611. if (str !== null && str !== undefined && str !== 0) {
  612. var len = (str.length << 2) + 1;
  613. ret = stackAlloc(len);
  614. stringToUTF8(str, ret, len);
  615. }
  616. return ret;
  617. })
  618. };
  619. var toC = {
  620. "string": JSfuncs["stringToC"],
  621. "array": JSfuncs["arrayToC"]
  622. };
  623. function ccall(ident, returnType, argTypes, args, opts) {
  624. function convertReturnValue(ret) {
  625. if (returnType === "string") return Pointer_stringify(ret);
  626. if (returnType === "boolean") return Boolean(ret);
  627. return ret;
  628. }
  629. var func = getCFunc(ident);
  630. var cArgs = [];
  631. var stack = 0;
  632. assert(returnType !== "array", 'Return type should not be "array".');
  633. if (args) {
  634. for (var i = 0; i < args.length; i++) {
  635. var converter = toC[argTypes[i]];
  636. if (converter) {
  637. if (stack === 0) stack = stackSave();
  638. cArgs[i] = converter(args[i]);
  639. } else {
  640. cArgs[i] = args[i];
  641. }
  642. }
  643. }
  644. var ret = func.apply(null, cArgs);
  645. ret = convertReturnValue(ret);
  646. if (stack !== 0) stackRestore(stack);
  647. return ret;
  648. }
  649. function cwrap(ident, returnType, argTypes, opts) {
  650. return (function() {
  651. return ccall(ident, returnType, argTypes, arguments, opts);
  652. });
  653. }
  654. function setValue(ptr, value, type, noSafe) {
  655. type = type || "i8";
  656. if (type.charAt(type.length - 1) === "*") type = "i32";
  657. switch (type) {
  658. case "i1":
  659. HEAP8[ptr >> 0] = value;
  660. break;
  661. case "i8":
  662. HEAP8[ptr >> 0] = value;
  663. break;
  664. case "i16":
  665. HEAP16[ptr >> 1] = value;
  666. break;
  667. case "i32":
  668. HEAP32[ptr >> 2] = value;
  669. break;
  670. case "i64":
  671. tempI64 = [ value >>> 0, (tempDouble = value, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0) ], HEAP32[ptr >> 2] = tempI64[0], HEAP32[ptr + 4 >> 2] = tempI64[1];
  672. break;
  673. case "float":
  674. HEAPF32[ptr >> 2] = value;
  675. break;
  676. case "double":
  677. HEAPF64[ptr >> 3] = value;
  678. break;
  679. default:
  680. abort("invalid type for setValue: " + type);
  681. }
  682. }
  683. var ALLOC_NORMAL = 0;
  684. var ALLOC_STACK = 1;
  685. var ALLOC_STATIC = 2;
  686. var ALLOC_NONE = 4;
  687. function allocate(slab, types, allocator, ptr) {
  688. var zeroinit, size;
  689. if (typeof slab === "number") {
  690. zeroinit = true;
  691. size = slab;
  692. } else {
  693. zeroinit = false;
  694. size = slab.length;
  695. }
  696. var singleType = typeof types === "string" ? types : null;
  697. var ret;
  698. if (allocator == ALLOC_NONE) {
  699. ret = ptr;
  700. } else {
  701. ret = [ typeof _malloc === "function" ? _malloc : staticAlloc, stackAlloc, staticAlloc, dynamicAlloc ][allocator === undefined ? ALLOC_STATIC : allocator](Math.max(size, singleType ? 1 : types.length));
  702. }
  703. if (zeroinit) {
  704. var stop;
  705. ptr = ret;
  706. assert((ret & 3) == 0);
  707. stop = ret + (size & ~3);
  708. for (; ptr < stop; ptr += 4) {
  709. HEAP32[ptr >> 2] = 0;
  710. }
  711. stop = ret + size;
  712. while (ptr < stop) {
  713. HEAP8[ptr++ >> 0] = 0;
  714. }
  715. return ret;
  716. }
  717. if (singleType === "i8") {
  718. if (slab.subarray || slab.slice) {
  719. HEAPU8.set(slab, ret);
  720. } else {
  721. HEAPU8.set(new Uint8Array(slab), ret);
  722. }
  723. return ret;
  724. }
  725. var i = 0, type, typeSize, previousType;
  726. while (i < size) {
  727. var curr = slab[i];
  728. type = singleType || types[i];
  729. if (type === 0) {
  730. i++;
  731. continue;
  732. }
  733. assert(type, "Must know what type to store in allocate!");
  734. if (type == "i64") type = "i32";
  735. setValue(ret + i, curr, type);
  736. if (previousType !== type) {
  737. typeSize = getNativeTypeSize(type);
  738. previousType = type;
  739. }
  740. i += typeSize;
  741. }
  742. return ret;
  743. }
  744. function getMemory(size) {
  745. if (!staticSealed) return staticAlloc(size);
  746. if (!runtimeInitialized) return dynamicAlloc(size);
  747. return _malloc(size);
  748. }
  749. function Pointer_stringify(ptr, length) {
  750. if (length === 0 || !ptr) return "";
  751. var hasUtf = 0;
  752. var t;
  753. var i = 0;
  754. while (1) {
  755. assert(ptr + i < TOTAL_MEMORY);
  756. t = HEAPU8[ptr + i >> 0];
  757. hasUtf |= t;
  758. if (t == 0 && !length) break;
  759. i++;
  760. if (length && i == length) break;
  761. }
  762. if (!length) length = i;
  763. var ret = "";
  764. if (hasUtf < 128) {
  765. var MAX_CHUNK = 1024;
  766. var curr;
  767. while (length > 0) {
  768. curr = String.fromCharCode.apply(String, HEAPU8.subarray(ptr, ptr + Math.min(length, MAX_CHUNK)));
  769. ret = ret ? ret + curr : curr;
  770. ptr += MAX_CHUNK;
  771. length -= MAX_CHUNK;
  772. }
  773. return ret;
  774. }
  775. return UTF8ToString(ptr);
  776. }
  777. var UTF8Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf8") : undefined;
  778. function UTF8ArrayToString(u8Array, idx) {
  779. var endPtr = idx;
  780. while (u8Array[endPtr]) ++endPtr;
  781. if (endPtr - idx > 16 && u8Array.subarray && UTF8Decoder) {
  782. return UTF8Decoder.decode(u8Array.subarray(idx, endPtr));
  783. } else {
  784. var u0, u1, u2, u3, u4, u5;
  785. var str = "";
  786. while (1) {
  787. u0 = u8Array[idx++];
  788. if (!u0) return str;
  789. if (!(u0 & 128)) {
  790. str += String.fromCharCode(u0);
  791. continue;
  792. }
  793. u1 = u8Array[idx++] & 63;
  794. if ((u0 & 224) == 192) {
  795. str += String.fromCharCode((u0 & 31) << 6 | u1);
  796. continue;
  797. }
  798. u2 = u8Array[idx++] & 63;
  799. if ((u0 & 240) == 224) {
  800. u0 = (u0 & 15) << 12 | u1 << 6 | u2;
  801. } else {
  802. u3 = u8Array[idx++] & 63;
  803. if ((u0 & 248) == 240) {
  804. u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | u3;
  805. } else {
  806. u4 = u8Array[idx++] & 63;
  807. if ((u0 & 252) == 248) {
  808. u0 = (u0 & 3) << 24 | u1 << 18 | u2 << 12 | u3 << 6 | u4;
  809. } else {
  810. u5 = u8Array[idx++] & 63;
  811. u0 = (u0 & 1) << 30 | u1 << 24 | u2 << 18 | u3 << 12 | u4 << 6 | u5;
  812. }
  813. }
  814. }
  815. if (u0 < 65536) {
  816. str += String.fromCharCode(u0);
  817. } else {
  818. var ch = u0 - 65536;
  819. str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);
  820. }
  821. }
  822. }
  823. }
  824. function UTF8ToString(ptr) {
  825. return UTF8ArrayToString(HEAPU8, ptr);
  826. }
  827. function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) {
  828. if (!(maxBytesToWrite > 0)) return 0;
  829. var startIdx = outIdx;
  830. var endIdx = outIdx + maxBytesToWrite - 1;
  831. for (var i = 0; i < str.length; ++i) {
  832. var u = str.charCodeAt(i);
  833. if (u >= 55296 && u <= 57343) {
  834. var u1 = str.charCodeAt(++i);
  835. u = 65536 + ((u & 1023) << 10) | u1 & 1023;
  836. }
  837. if (u <= 127) {
  838. if (outIdx >= endIdx) break;
  839. outU8Array[outIdx++] = u;
  840. } else if (u <= 2047) {
  841. if (outIdx + 1 >= endIdx) break;
  842. outU8Array[outIdx++] = 192 | u >> 6;
  843. outU8Array[outIdx++] = 128 | u & 63;
  844. } else if (u <= 65535) {
  845. if (outIdx + 2 >= endIdx) break;
  846. outU8Array[outIdx++] = 224 | u >> 12;
  847. outU8Array[outIdx++] = 128 | u >> 6 & 63;
  848. outU8Array[outIdx++] = 128 | u & 63;
  849. } else if (u <= 2097151) {
  850. if (outIdx + 3 >= endIdx) break;
  851. outU8Array[outIdx++] = 240 | u >> 18;
  852. outU8Array[outIdx++] = 128 | u >> 12 & 63;
  853. outU8Array[outIdx++] = 128 | u >> 6 & 63;
  854. outU8Array[outIdx++] = 128 | u & 63;
  855. } else if (u <= 67108863) {
  856. if (outIdx + 4 >= endIdx) break;
  857. outU8Array[outIdx++] = 248 | u >> 24;
  858. outU8Array[outIdx++] = 128 | u >> 18 & 63;
  859. outU8Array[outIdx++] = 128 | u >> 12 & 63;
  860. outU8Array[outIdx++] = 128 | u >> 6 & 63;
  861. outU8Array[outIdx++] = 128 | u & 63;
  862. } else {
  863. if (outIdx + 5 >= endIdx) break;
  864. outU8Array[outIdx++] = 252 | u >> 30;
  865. outU8Array[outIdx++] = 128 | u >> 24 & 63;
  866. outU8Array[outIdx++] = 128 | u >> 18 & 63;
  867. outU8Array[outIdx++] = 128 | u >> 12 & 63;
  868. outU8Array[outIdx++] = 128 | u >> 6 & 63;
  869. outU8Array[outIdx++] = 128 | u & 63;
  870. }
  871. }
  872. outU8Array[outIdx] = 0;
  873. return outIdx - startIdx;
  874. }
  875. function stringToUTF8(str, outPtr, maxBytesToWrite) {
  876. assert(typeof maxBytesToWrite == "number", "stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");
  877. return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite);
  878. }
  879. function lengthBytesUTF8(str) {
  880. var len = 0;
  881. for (var i = 0; i < str.length; ++i) {
  882. var u = str.charCodeAt(i);
  883. if (u >= 55296 && u <= 57343) u = 65536 + ((u & 1023) << 10) | str.charCodeAt(++i) & 1023;
  884. if (u <= 127) {
  885. ++len;
  886. } else if (u <= 2047) {
  887. len += 2;
  888. } else if (u <= 65535) {
  889. len += 3;
  890. } else if (u <= 2097151) {
  891. len += 4;
  892. } else if (u <= 67108863) {
  893. len += 5;
  894. } else {
  895. len += 6;
  896. }
  897. }
  898. return len;
  899. }
  900. var UTF16Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-16le") : undefined;
  901. function allocateUTF8(str) {
  902. var size = lengthBytesUTF8(str) + 1;
  903. var ret = _malloc(size);
  904. if (ret) stringToUTF8Array(str, HEAP8, ret, size);
  905. return ret;
  906. }
  907. function allocateUTF8OnStack(str) {
  908. var size = lengthBytesUTF8(str) + 1;
  909. var ret = stackAlloc(size);
  910. stringToUTF8Array(str, HEAP8, ret, size);
  911. return ret;
  912. }
  913. function demangle(func) {
  914. var __cxa_demangle_func = Module["___cxa_demangle"] || Module["__cxa_demangle"];
  915. assert(__cxa_demangle_func);
  916. try {
  917. var s = func.substr(1);
  918. var len = lengthBytesUTF8(s) + 1;
  919. var buf = _malloc(len);
  920. stringToUTF8(s, buf, len);
  921. var status = _malloc(4);
  922. var ret = __cxa_demangle_func(buf, 0, 0, status);
  923. if (HEAP32[status >> 2] === 0 && ret) {
  924. return Pointer_stringify(ret);
  925. }
  926. } catch (e) {} finally {
  927. if (buf) _free(buf);
  928. if (status) _free(status);
  929. if (ret) _free(ret);
  930. }
  931. return func;
  932. }
  933. function demangleAll(text) {
  934. var regex = /__Z[\w\d_]+/g;
  935. return text.replace(regex, (function(x) {
  936. var y = demangle(x);
  937. return x === y ? x : x + " [" + y + "]";
  938. }));
  939. }
  940. function jsStackTrace() {
  941. var err = new Error;
  942. if (!err.stack) {
  943. try {
  944. throw new Error(0);
  945. } catch (e) {
  946. err = e;
  947. }
  948. if (!err.stack) {
  949. return "(no stack trace available)";
  950. }
  951. }
  952. return err.stack.toString();
  953. }
  954. function stackTrace() {
  955. var js = jsStackTrace();
  956. if (Module["extraStackTrace"]) js += "\n" + Module["extraStackTrace"]();
  957. return demangleAll(js);
  958. }
  959. var PAGE_SIZE = 16384;
  960. var WASM_PAGE_SIZE = 65536;
  961. var ASMJS_PAGE_SIZE = 16777216;
  962. var MIN_TOTAL_MEMORY = 16777216;
  963. function alignUp(x, multiple) {
  964. if (x % multiple > 0) {
  965. x += multiple - x % multiple;
  966. }
  967. return x;
  968. }
  969. var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;
  970. function updateGlobalBuffer(buf) {
  971. Module["buffer"] = buffer = buf;
  972. }
  973. function updateGlobalBufferViews() {
  974. Module["HEAP8"] = HEAP8 = new Int8Array(buffer);
  975. Module["HEAP16"] = HEAP16 = new Int16Array(buffer);
  976. Module["HEAP32"] = HEAP32 = new Int32Array(buffer);
  977. Module["HEAPU8"] = HEAPU8 = new Uint8Array(buffer);
  978. Module["HEAPU16"] = HEAPU16 = new Uint16Array(buffer);
  979. Module["HEAPU32"] = HEAPU32 = new Uint32Array(buffer);
  980. Module["HEAPF32"] = HEAPF32 = new Float32Array(buffer);
  981. Module["HEAPF64"] = HEAPF64 = new Float64Array(buffer);
  982. }
  983. var STATIC_BASE, STATICTOP, staticSealed;
  984. var STACK_BASE, STACKTOP, STACK_MAX;
  985. var DYNAMIC_BASE, DYNAMICTOP_PTR;
  986. STATIC_BASE = STATICTOP = STACK_BASE = STACKTOP = STACK_MAX = DYNAMIC_BASE = DYNAMICTOP_PTR = 0;
  987. staticSealed = false;
  988. function writeStackCookie() {
  989. assert((STACK_MAX & 3) == 0);
  990. HEAPU32[(STACK_MAX >> 2) - 1] = 34821223;
  991. HEAPU32[(STACK_MAX >> 2) - 2] = 2310721022;
  992. }
  993. function checkStackCookie() {
  994. if (HEAPU32[(STACK_MAX >> 2) - 1] != 34821223 || HEAPU32[(STACK_MAX >> 2) - 2] != 2310721022) {
  995. abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x" + HEAPU32[(STACK_MAX >> 2) - 2].toString(16) + " " + HEAPU32[(STACK_MAX >> 2) - 1].toString(16));
  996. }
  997. if (HEAP32[0] !== 1668509029) throw "Runtime error: The application has corrupted its heap memory area (address zero)!";
  998. }
  999. function abortStackOverflow(allocSize) {
  1000. abort("Stack overflow! Attempted to allocate " + allocSize + " bytes on the stack, but stack has only " + (STACK_MAX - stackSave() + allocSize) + " bytes available!");
  1001. }
  1002. function abortOnCannotGrowMemory() {
  1003. abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value " + TOTAL_MEMORY + ", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ");
  1004. }
  1005. if (!Module["reallocBuffer"]) Module["reallocBuffer"] = (function(size) {
  1006. var ret;
  1007. try {
  1008. if (ArrayBuffer.transfer) {
  1009. ret = ArrayBuffer.transfer(buffer, size);
  1010. } else {
  1011. var oldHEAP8 = HEAP8;
  1012. ret = new ArrayBuffer(size);
  1013. var temp = new Int8Array(ret);
  1014. temp.set(oldHEAP8);
  1015. }
  1016. } catch (e) {
  1017. return false;
  1018. }
  1019. var success = _emscripten_replace_memory(ret);
  1020. if (!success) return false;
  1021. return ret;
  1022. });
  1023. function enlargeMemory() {
  1024. assert(HEAP32[DYNAMICTOP_PTR >> 2] > TOTAL_MEMORY);
  1025. var PAGE_MULTIPLE = Module["usingWasm"] ? WASM_PAGE_SIZE : ASMJS_PAGE_SIZE;
  1026. var LIMIT = 2147483648 - PAGE_MULTIPLE;
  1027. if (HEAP32[DYNAMICTOP_PTR >> 2] > LIMIT) {
  1028. err("Cannot enlarge memory, asked to go up to " + HEAP32[DYNAMICTOP_PTR >> 2] + " bytes, but the limit is " + LIMIT + " bytes!");
  1029. return false;
  1030. }
  1031. var OLD_TOTAL_MEMORY = TOTAL_MEMORY;
  1032. TOTAL_MEMORY = Math.max(TOTAL_MEMORY, MIN_TOTAL_MEMORY);
  1033. while (TOTAL_MEMORY < HEAP32[DYNAMICTOP_PTR >> 2]) {
  1034. if (TOTAL_MEMORY <= 536870912) {
  1035. TOTAL_MEMORY = alignUp(2 * TOTAL_MEMORY, PAGE_MULTIPLE);
  1036. } else {
  1037. TOTAL_MEMORY = Math.min(alignUp((3 * TOTAL_MEMORY + 2147483648) / 4, PAGE_MULTIPLE), LIMIT);
  1038. if (TOTAL_MEMORY === OLD_TOTAL_MEMORY) {
  1039. warnOnce("Cannot ask for more memory since we reached the practical limit in browsers (which is just below 2GB), so the request would have failed. Requesting only " + TOTAL_MEMORY);
  1040. }
  1041. }
  1042. }
  1043. var start = Date.now();
  1044. var replacement = Module["reallocBuffer"](TOTAL_MEMORY);
  1045. if (!replacement || replacement.byteLength != TOTAL_MEMORY) {
  1046. err("Failed to grow the heap from " + OLD_TOTAL_MEMORY + " bytes to " + TOTAL_MEMORY + " bytes, not enough memory!");
  1047. if (replacement) {
  1048. err("Expected to get back a buffer of size " + TOTAL_MEMORY + " bytes, but instead got back a buffer of size " + replacement.byteLength);
  1049. }
  1050. TOTAL_MEMORY = OLD_TOTAL_MEMORY;
  1051. return false;
  1052. }
  1053. updateGlobalBuffer(replacement);
  1054. updateGlobalBufferViews();
  1055. if (!Module["usingWasm"]) {
  1056. err("Warning: Enlarging memory arrays, this is not fast! " + [ OLD_TOTAL_MEMORY, TOTAL_MEMORY ]);
  1057. }
  1058. return true;
  1059. }
  1060. var byteLength;
  1061. try {
  1062. byteLength = Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype, "byteLength").get);
  1063. byteLength(new ArrayBuffer(4));
  1064. } catch (e) {
  1065. byteLength = (function(buffer) {
  1066. return buffer.byteLength;
  1067. });
  1068. }
  1069. var TOTAL_STACK = Module["TOTAL_STACK"] || 5242880;
  1070. var TOTAL_MEMORY = Module["TOTAL_MEMORY"] || 33554432;
  1071. if (TOTAL_MEMORY < TOTAL_STACK) err("TOTAL_MEMORY should be larger than TOTAL_STACK, was " + TOTAL_MEMORY + "! (TOTAL_STACK=" + TOTAL_STACK + ")");
  1072. assert(typeof Int32Array !== "undefined" && typeof Float64Array !== "undefined" && Int32Array.prototype.subarray !== undefined && Int32Array.prototype.set !== undefined, "JS engine does not provide full typed array support");
  1073. if (Module["buffer"]) {
  1074. buffer = Module["buffer"];
  1075. assert(buffer.byteLength === TOTAL_MEMORY, "provided buffer should be " + TOTAL_MEMORY + " bytes, but it is " + buffer.byteLength);
  1076. } else {
  1077. if (typeof WebAssembly === "object" && typeof WebAssembly.Memory === "function") {
  1078. assert(TOTAL_MEMORY % WASM_PAGE_SIZE === 0);
  1079. Module["wasmMemory"] = new WebAssembly.Memory({
  1080. "initial": TOTAL_MEMORY / WASM_PAGE_SIZE
  1081. });
  1082. buffer = Module["wasmMemory"].buffer;
  1083. } else {
  1084. buffer = new ArrayBuffer(TOTAL_MEMORY);
  1085. }
  1086. assert(buffer.byteLength === TOTAL_MEMORY);
  1087. Module["buffer"] = buffer;
  1088. }
  1089. updateGlobalBufferViews();
  1090. function getTotalMemory() {
  1091. return TOTAL_MEMORY;
  1092. }
  1093. HEAP32[0] = 1668509029;
  1094. HEAP16[1] = 25459;
  1095. if (HEAPU8[2] !== 115 || HEAPU8[3] !== 99) throw "Runtime error: expected the system to be little-endian!";
  1096. function callRuntimeCallbacks(callbacks) {
  1097. while (callbacks.length > 0) {
  1098. var callback = callbacks.shift();
  1099. if (typeof callback == "function") {
  1100. callback();
  1101. continue;
  1102. }
  1103. var func = callback.func;
  1104. if (typeof func === "number") {
  1105. if (callback.arg === undefined) {
  1106. Module["dynCall_v"](func);
  1107. } else {
  1108. Module["dynCall_vi"](func, callback.arg);
  1109. }
  1110. } else {
  1111. func(callback.arg === undefined ? null : callback.arg);
  1112. }
  1113. }
  1114. }
  1115. var __ATPRERUN__ = [];
  1116. var __ATINIT__ = [];
  1117. var __ATMAIN__ = [];
  1118. var __ATEXIT__ = [];
  1119. var __ATPOSTRUN__ = [];
  1120. var runtimeInitialized = false;
  1121. var runtimeExited = false;
  1122. function preRun() {
  1123. if (Module["preRun"]) {
  1124. if (typeof Module["preRun"] == "function") Module["preRun"] = [ Module["preRun"] ];
  1125. while (Module["preRun"].length) {
  1126. addOnPreRun(Module["preRun"].shift());
  1127. }
  1128. }
  1129. callRuntimeCallbacks(__ATPRERUN__);
  1130. }
  1131. function ensureInitRuntime() {
  1132. checkStackCookie();
  1133. if (runtimeInitialized) return;
  1134. runtimeInitialized = true;
  1135. callRuntimeCallbacks(__ATINIT__);
  1136. }
  1137. function preMain() {
  1138. checkStackCookie();
  1139. callRuntimeCallbacks(__ATMAIN__);
  1140. }
  1141. function exitRuntime() {
  1142. checkStackCookie();
  1143. callRuntimeCallbacks(__ATEXIT__);
  1144. runtimeExited = true;
  1145. }
  1146. function postRun() {
  1147. checkStackCookie();
  1148. if (Module["postRun"]) {
  1149. if (typeof Module["postRun"] == "function") Module["postRun"] = [ Module["postRun"] ];
  1150. while (Module["postRun"].length) {
  1151. addOnPostRun(Module["postRun"].shift());
  1152. }
  1153. }
  1154. callRuntimeCallbacks(__ATPOSTRUN__);
  1155. }
  1156. function addOnPreRun(cb) {
  1157. __ATPRERUN__.unshift(cb);
  1158. }
  1159. function addOnPostRun(cb) {
  1160. __ATPOSTRUN__.unshift(cb);
  1161. }
  1162. function writeArrayToMemory(array, buffer) {
  1163. assert(array.length >= 0, "writeArrayToMemory array must have a length (should be an array or typed array)");
  1164. HEAP8.set(array, buffer);
  1165. }
  1166. function writeAsciiToMemory(str, buffer, dontAddNull) {
  1167. for (var i = 0; i < str.length; ++i) {
  1168. assert(str.charCodeAt(i) === str.charCodeAt(i) & 255);
  1169. HEAP8[buffer++ >> 0] = str.charCodeAt(i);
  1170. }
  1171. if (!dontAddNull) HEAP8[buffer >> 0] = 0;
  1172. }
  1173. function unSign(value, bits, ignore) {
  1174. if (value >= 0) {
  1175. return value;
  1176. }
  1177. return bits <= 32 ? 2 * Math.abs(1 << bits - 1) + value : Math.pow(2, bits) + value;
  1178. }
  1179. function reSign(value, bits, ignore) {
  1180. if (value <= 0) {
  1181. return value;
  1182. }
  1183. var half = bits <= 32 ? Math.abs(1 << bits - 1) : Math.pow(2, bits - 1);
  1184. if (value >= half && (bits <= 32 || value > half)) {
  1185. value = -2 * half + value;
  1186. }
  1187. return value;
  1188. }
  1189. assert(Math["imul"] && Math["fround"] && Math["clz32"] && Math["trunc"], "this is a legacy browser, build with LEGACY_VM_SUPPORT");
  1190. var Math_abs = Math.abs;
  1191. var Math_cos = Math.cos;
  1192. var Math_sin = Math.sin;
  1193. var Math_sqrt = Math.sqrt;
  1194. var Math_ceil = Math.ceil;
  1195. var Math_floor = Math.floor;
  1196. var Math_pow = Math.pow;
  1197. var Math_min = Math.min;
  1198. var Math_clz32 = Math.clz32;
  1199. var Math_trunc = Math.trunc;
  1200. var runDependencies = 0;
  1201. var runDependencyWatcher = null;
  1202. var dependenciesFulfilled = null;
  1203. var runDependencyTracking = {};
  1204. function getUniqueRunDependency(id) {
  1205. var orig = id;
  1206. while (1) {
  1207. if (!runDependencyTracking[id]) return id;
  1208. id = orig + Math.random();
  1209. }
  1210. return id;
  1211. }
  1212. function addRunDependency(id) {
  1213. runDependencies++;
  1214. if (Module["monitorRunDependencies"]) {
  1215. Module["monitorRunDependencies"](runDependencies);
  1216. }
  1217. if (id) {
  1218. assert(!runDependencyTracking[id]);
  1219. runDependencyTracking[id] = 1;
  1220. if (runDependencyWatcher === null && typeof setInterval !== "undefined") {
  1221. runDependencyWatcher = setInterval((function() {
  1222. if (ABORT) {
  1223. clearInterval(runDependencyWatcher);
  1224. runDependencyWatcher = null;
  1225. return;
  1226. }
  1227. var shown = false;
  1228. for (var dep in runDependencyTracking) {
  1229. if (!shown) {
  1230. shown = true;
  1231. err("still waiting on run dependencies:");
  1232. }
  1233. err("dependency: " + dep);
  1234. }
  1235. if (shown) {
  1236. err("(end of list)");
  1237. }
  1238. }), 1e4);
  1239. }
  1240. } else {
  1241. err("warning: run dependency added without ID");
  1242. }
  1243. }
  1244. function removeRunDependency(id) {
  1245. runDependencies--;
  1246. if (Module["monitorRunDependencies"]) {
  1247. Module["monitorRunDependencies"](runDependencies);
  1248. }
  1249. if (id) {
  1250. assert(runDependencyTracking[id]);
  1251. delete runDependencyTracking[id];
  1252. } else {
  1253. err("warning: run dependency removed without ID");
  1254. }
  1255. if (runDependencies == 0) {
  1256. if (runDependencyWatcher !== null) {
  1257. clearInterval(runDependencyWatcher);
  1258. runDependencyWatcher = null;
  1259. }
  1260. if (dependenciesFulfilled) {
  1261. var callback = dependenciesFulfilled;
  1262. dependenciesFulfilled = null;
  1263. callback();
  1264. }
  1265. }
  1266. }
  1267. Module["preloadedImages"] = {};
  1268. Module["preloadedAudios"] = {};
  1269. var dataURIPrefix = "data:application/octet-stream;base64,";
  1270. function isDataURI(filename) {
  1271. return String.prototype.startsWith ? filename.startsWith(dataURIPrefix) : filename.indexOf(dataURIPrefix) === 0;
  1272. }
  1273. function integrateWasmJS() {
  1274. var wasmTextFile = "build.wast";
  1275. var wasmBinaryFile = "build.wasm";
  1276. var asmjsCodeFile = "build.temp.asm.js";
  1277. if (!isDataURI(wasmTextFile)) {
  1278. wasmTextFile = locateFile(wasmTextFile);
  1279. }
  1280. if (!isDataURI(wasmBinaryFile)) {
  1281. wasmBinaryFile = locateFile(wasmBinaryFile);
  1282. }
  1283. if (!isDataURI(asmjsCodeFile)) {
  1284. asmjsCodeFile = locateFile(asmjsCodeFile);
  1285. }
  1286. var wasmPageSize = 64 * 1024;
  1287. var info = {
  1288. "global": null,
  1289. "env": null,
  1290. "asm2wasm": asm2wasmImports,
  1291. "parent": Module
  1292. };
  1293. var exports = null;
  1294. function mergeMemory(newBuffer) {
  1295. var oldBuffer = Module["buffer"];
  1296. if (newBuffer.byteLength < oldBuffer.byteLength) {
  1297. err("the new buffer in mergeMemory is smaller than the previous one. in native wasm, we should grow memory here");
  1298. }
  1299. var oldView = new Int8Array(oldBuffer);
  1300. var newView = new Int8Array(newBuffer);
  1301. newView.set(oldView);
  1302. updateGlobalBuffer(newBuffer);
  1303. updateGlobalBufferViews();
  1304. }
  1305. function fixImports(imports) {
  1306. return imports;
  1307. }
  1308. function getBinary() {
  1309. try {
  1310. if (Module["wasmBinary"]) {
  1311. return new Uint8Array(Module["wasmBinary"]);
  1312. }
  1313. if (Module["readBinary"]) {
  1314. return Module["readBinary"](wasmBinaryFile);
  1315. } else {
  1316. throw "both async and sync fetching of the wasm failed";
  1317. }
  1318. } catch (err) {
  1319. abort(err);
  1320. }
  1321. }
  1322. function getBinaryPromise() {
  1323. if (!Module["wasmBinary"] && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && typeof fetch === "function") {
  1324. return fetch(wasmBinaryFile, {
  1325. credentials: "same-origin"
  1326. }).then((function(response) {
  1327. if (!response["ok"]) {
  1328. throw "failed to load wasm binary file at '" + wasmBinaryFile + "'";
  1329. }
  1330. return response["arrayBuffer"]();
  1331. })).catch((function() {
  1332. return getBinary();
  1333. }));
  1334. }
  1335. return new Promise((function(resolve, reject) {
  1336. resolve(getBinary());
  1337. }));
  1338. }
  1339. function doNativeWasm(global, env, providedBuffer) {
  1340. if (typeof WebAssembly !== "object") {
  1341. abort("No WebAssembly support found. Build with -s WASM=0 to target JavaScript instead.");
  1342. err("no native wasm support detected");
  1343. return false;
  1344. }
  1345. if (!(Module["wasmMemory"] instanceof WebAssembly.Memory)) {
  1346. err("no native wasm Memory in use");
  1347. return false;
  1348. }
  1349. env["memory"] = Module["wasmMemory"];
  1350. info["global"] = {
  1351. "NaN": NaN,
  1352. "Infinity": Infinity
  1353. };
  1354. info["global.Math"] = Math;
  1355. info["env"] = env;
  1356. function receiveInstance(instance, module) {
  1357. exports = instance.exports;
  1358. if (exports.memory) mergeMemory(exports.memory);
  1359. Module["asm"] = exports;
  1360. Module["usingWasm"] = true;
  1361. removeRunDependency("wasm-instantiate");
  1362. }
  1363. addRunDependency("wasm-instantiate");
  1364. if (Module["instantiateWasm"]) {
  1365. try {
  1366. return Module["instantiateWasm"](info, receiveInstance);
  1367. } catch (e) {
  1368. err("Module.instantiateWasm callback failed with error: " + e);
  1369. return false;
  1370. }
  1371. }
  1372. var trueModule = Module;
  1373. function receiveInstantiatedSource(output) {
  1374. assert(Module === trueModule, "the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?");
  1375. trueModule = null;
  1376. receiveInstance(output["instance"], output["module"]);
  1377. }
  1378. function instantiateArrayBuffer(receiver) {
  1379. getBinaryPromise().then((function(binary) {
  1380. return WebAssembly.instantiate(binary, info);
  1381. })).then(receiver).catch((function(reason) {
  1382. err("failed to asynchronously prepare wasm: " + reason);
  1383. abort(reason);
  1384. }));
  1385. }
  1386. if (!Module["wasmBinary"] && typeof WebAssembly.instantiateStreaming === "function" && !isDataURI(wasmBinaryFile) && typeof fetch === "function") {
  1387. WebAssembly.instantiateStreaming(fetch(wasmBinaryFile, {
  1388. credentials: "same-origin"
  1389. }), info).then(receiveInstantiatedSource).catch((function(reason) {
  1390. err("wasm streaming compile failed: " + reason);
  1391. err("falling back to ArrayBuffer instantiation");
  1392. instantiateArrayBuffer(receiveInstantiatedSource);
  1393. }));
  1394. } else {
  1395. instantiateArrayBuffer(receiveInstantiatedSource);
  1396. }
  1397. return {};
  1398. }
  1399. Module["asmPreload"] = Module["asm"];
  1400. var asmjsReallocBuffer = Module["reallocBuffer"];
  1401. var wasmReallocBuffer = (function(size) {
  1402. var PAGE_MULTIPLE = Module["usingWasm"] ? WASM_PAGE_SIZE : ASMJS_PAGE_SIZE;
  1403. size = alignUp(size, PAGE_MULTIPLE);
  1404. var old = Module["buffer"];
  1405. var oldSize = old.byteLength;
  1406. if (Module["usingWasm"]) {
  1407. try {
  1408. var result = Module["wasmMemory"].grow((size - oldSize) / wasmPageSize);
  1409. if (result !== (-1 | 0)) {
  1410. return Module["buffer"] = Module["wasmMemory"].buffer;
  1411. } else {
  1412. return null;
  1413. }
  1414. } catch (e) {
  1415. console.error("Module.reallocBuffer: Attempted to grow from " + oldSize + " bytes to " + size + " bytes, but got error: " + e);
  1416. return null;
  1417. }
  1418. }
  1419. });
  1420. Module["reallocBuffer"] = (function(size) {
  1421. if (finalMethod === "asmjs") {
  1422. return asmjsReallocBuffer(size);
  1423. } else {
  1424. return wasmReallocBuffer(size);
  1425. }
  1426. });
  1427. var finalMethod = "";
  1428. Module["asm"] = (function(global, env, providedBuffer) {
  1429. env = fixImports(env);
  1430. if (!env["table"]) {
  1431. var TABLE_SIZE = Module["wasmTableSize"];
  1432. if (TABLE_SIZE === undefined) TABLE_SIZE = 1024;
  1433. var MAX_TABLE_SIZE = Module["wasmMaxTableSize"];
  1434. if (typeof WebAssembly === "object" && typeof WebAssembly.Table === "function") {
  1435. if (MAX_TABLE_SIZE !== undefined) {
  1436. env["table"] = new WebAssembly.Table({
  1437. "initial": TABLE_SIZE,
  1438. "maximum": MAX_TABLE_SIZE,
  1439. "element": "anyfunc"
  1440. });
  1441. } else {
  1442. env["table"] = new WebAssembly.Table({
  1443. "initial": TABLE_SIZE,
  1444. element: "anyfunc"
  1445. });
  1446. }
  1447. } else {
  1448. env["table"] = new Array(TABLE_SIZE);
  1449. }
  1450. Module["wasmTable"] = env["table"];
  1451. }
  1452. if (!env["memoryBase"]) {
  1453. env["memoryBase"] = Module["STATIC_BASE"];
  1454. }
  1455. if (!env["tableBase"]) {
  1456. env["tableBase"] = 0;
  1457. }
  1458. var exports;
  1459. exports = doNativeWasm(global, env, providedBuffer);
  1460. assert(exports, "no binaryen method succeeded. consider enabling more options, like interpreting, if you want that: https://github.com/kripken/emscripten/wiki/WebAssembly#binaryen-methods");
  1461. return exports;
  1462. });
  1463. }
  1464. integrateWasmJS();
  1465. var ASM_CONSTS = [ (function() {
  1466. return Module.webglContextAttributes.premultipliedAlpha;
  1467. }), (function() {
  1468. return Module.webglContextAttributes.preserveDrawingBuffer;
  1469. }), (function($0) {
  1470. throw new Error('Internal Unity error: gles::GetProcAddress("' + Pointer_stringify($0) + '") was called but gles::GetProcAddress() is not implemented on Unity WebGL. Please report a bug.');
  1471. }), (function() {
  1472. Module["emscripten_get_now_backup"] = performance.now;
  1473. }), (function($0) {
  1474. performance.now = (function() {
  1475. return $0;
  1476. });
  1477. }), (function() {
  1478. performance.now = Module["emscripten_get_now_backup"];
  1479. }), (function() {
  1480. return typeof Module.shouldQuit != "undefined";
  1481. }), (function() {
  1482. for (var id in Module.intervals) {
  1483. window.clearInterval(id);
  1484. }
  1485. Module.intervals = {};
  1486. for (var i = 0; i < Module.deinitializers.length; i++) {
  1487. Module.deinitializers[i]();
  1488. }
  1489. Module.deinitializers = [];
  1490. if (typeof Module.onQuit == "function") Module.onQuit();
  1491. }) ];
  1492. function _emscripten_asm_const_i(code) {
  1493. return ASM_CONSTS[code]();
  1494. }
  1495. function _emscripten_asm_const_sync_on_main_thread_i(code) {
  1496. return ASM_CONSTS[code]();
  1497. }
  1498. function _emscripten_asm_const_id(code, a0) {
  1499. return ASM_CONSTS[code](a0);
  1500. }
  1501. function _emscripten_asm_const_ii(code, a0) {
  1502. return ASM_CONSTS[code](a0);
  1503. }
  1504. STATIC_BASE = GLOBAL_BASE;
  1505. STATICTOP = STATIC_BASE + 4805696;
  1506. __ATINIT__.push({
  1507. func: (function() {
  1508. __GLOBAL__sub_I_AccessibilityScriptingClasses_cpp();
  1509. })
  1510. }, {
  1511. func: (function() {
  1512. __GLOBAL__sub_I_AIScriptingClasses_cpp();
  1513. })
  1514. }, {
  1515. func: (function() {
  1516. ___cxx_global_var_init_47();
  1517. })
  1518. }, {
  1519. func: (function() {
  1520. ___cxx_global_var_init_48();
  1521. })
  1522. }, {
  1523. func: (function() {
  1524. __GLOBAL__sub_I_Modules_AI_0_cpp();
  1525. })
  1526. }, {
  1527. func: (function() {
  1528. __GLOBAL__sub_I_Modules_AI_Builder_0_cpp();
  1529. })
  1530. }, {
  1531. func: (function() {
  1532. __GLOBAL__sub_I_Modules_AI_Crowd_0_cpp();
  1533. })
  1534. }, {
  1535. func: (function() {
  1536. __GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp();
  1537. })
  1538. }, {
  1539. func: (function() {
  1540. __GLOBAL__sub_I_Modules_AI_Obstacles_0_cpp();
  1541. })
  1542. }, {
  1543. func: (function() {
  1544. ___cxx_global_var_init();
  1545. })
  1546. }, {
  1547. func: (function() {
  1548. __GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp();
  1549. })
  1550. }, {
  1551. func: (function() {
  1552. __GLOBAL__sub_I_AnimationScriptingClasses_cpp();
  1553. })
  1554. }, {
  1555. func: (function() {
  1556. ___cxx_global_var_init_114();
  1557. })
  1558. }, {
  1559. func: (function() {
  1560. ___cxx_global_var_init_115();
  1561. })
  1562. }, {
  1563. func: (function() {
  1564. __GLOBAL__sub_I_Modules_Animation_0_cpp();
  1565. })
  1566. }, {
  1567. func: (function() {
  1568. __GLOBAL__sub_I_Modules_Animation_1_cpp();
  1569. })
  1570. }, {
  1571. func: (function() {
  1572. __GLOBAL__sub_I_Modules_Animation_2_cpp();
  1573. })
  1574. }, {
  1575. func: (function() {
  1576. __GLOBAL__sub_I_Modules_Animation_3_cpp();
  1577. })
  1578. }, {
  1579. func: (function() {
  1580. __GLOBAL__sub_I_Modules_Animation_5_cpp();
  1581. })
  1582. }, {
  1583. func: (function() {
  1584. __GLOBAL__sub_I_Modules_Animation_6_cpp();
  1585. })
  1586. }, {
  1587. func: (function() {
  1588. __GLOBAL__sub_I_Modules_Animation_Director_0_cpp();
  1589. })
  1590. }, {
  1591. func: (function() {
  1592. __GLOBAL__sub_I_Modules_Animation_Director_1_cpp();
  1593. })
  1594. }, {
  1595. func: (function() {
  1596. __GLOBAL__sub_I_Avatar_cpp();
  1597. })
  1598. }, {
  1599. func: (function() {
  1600. __GLOBAL__sub_I_ConstraintJob_cpp();
  1601. })
  1602. }, {
  1603. func: (function() {
  1604. ___cxx_global_var_init_7();
  1605. })
  1606. }, {
  1607. func: (function() {
  1608. __GLOBAL__sub_I_ConstraintManager_cpp();
  1609. })
  1610. }, {
  1611. func: (function() {
  1612. __GLOBAL__sub_I_clipmuscle_cpp();
  1613. })
  1614. }, {
  1615. func: (function() {
  1616. __GLOBAL__sub_I_AnimationClip_cpp();
  1617. })
  1618. }, {
  1619. func: (function() {
  1620. __GLOBAL__sub_I_AssetBundleScriptingClasses_cpp();
  1621. })
  1622. }, {
  1623. func: (function() {
  1624. __GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp();
  1625. })
  1626. }, {
  1627. func: (function() {
  1628. __GLOBAL__sub_I_Modules_AssetBundle_Public_1_cpp();
  1629. })
  1630. }, {
  1631. func: (function() {
  1632. __GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp();
  1633. })
  1634. }, {
  1635. func: (function() {
  1636. __GLOBAL__sub_I_AudioScriptingClasses_cpp();
  1637. })
  1638. }, {
  1639. func: (function() {
  1640. __GLOBAL__sub_I_Runtime_Video_0_cpp();
  1641. })
  1642. }, {
  1643. func: (function() {
  1644. ___cxx_global_var_init_77();
  1645. })
  1646. }, {
  1647. func: (function() {
  1648. ___cxx_global_var_init_4_669();
  1649. })
  1650. }, {
  1651. func: (function() {
  1652. ___cxx_global_var_init_5();
  1653. })
  1654. }, {
  1655. func: (function() {
  1656. __GLOBAL__sub_I_Modules_Audio_Public_0_cpp();
  1657. })
  1658. }, {
  1659. func: (function() {
  1660. ___cxx_global_var_init_151();
  1661. })
  1662. }, {
  1663. func: (function() {
  1664. __GLOBAL__sub_I_Modules_Audio_Public_1_cpp();
  1665. })
  1666. }, {
  1667. func: (function() {
  1668. __GLOBAL__sub_I_Modules_Audio_Public_3_cpp();
  1669. })
  1670. }, {
  1671. func: (function() {
  1672. __GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp();
  1673. })
  1674. }, {
  1675. func: (function() {
  1676. __GLOBAL__sub_I_Modules_Audio_Public_sound_0_cpp();
  1677. })
  1678. }, {
  1679. func: (function() {
  1680. __GLOBAL__sub_I_ClothScriptingClasses_cpp();
  1681. })
  1682. }, {
  1683. func: (function() {
  1684. ___cxx_global_var_init_24();
  1685. })
  1686. }, {
  1687. func: (function() {
  1688. ___cxx_global_var_init_25();
  1689. })
  1690. }, {
  1691. func: (function() {
  1692. __GLOBAL__sub_I_Modules_Cloth_0_cpp();
  1693. })
  1694. }, {
  1695. func: (function() {
  1696. ___cxx_global_var_init_18();
  1697. })
  1698. }, {
  1699. func: (function() {
  1700. __GLOBAL__sub_I_nvcloth_src_0_cpp();
  1701. })
  1702. }, {
  1703. func: (function() {
  1704. __GLOBAL__sub_I_nvcloth_src_1_cpp();
  1705. })
  1706. }, {
  1707. func: (function() {
  1708. __GLOBAL__sub_I_SwInterCollision_cpp();
  1709. })
  1710. }, {
  1711. func: (function() {
  1712. __GLOBAL__sub_I_SwSolverKernel_cpp();
  1713. })
  1714. }, {
  1715. func: (function() {
  1716. __GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp();
  1717. })
  1718. }, {
  1719. func: (function() {
  1720. __GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp();
  1721. })
  1722. }, {
  1723. func: (function() {
  1724. __GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp();
  1725. })
  1726. }, {
  1727. func: (function() {
  1728. __GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp();
  1729. })
  1730. }, {
  1731. func: (function() {
  1732. __GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp();
  1733. })
  1734. }, {
  1735. func: (function() {
  1736. __GLOBAL__sub_I_Runtime_Input_0_cpp();
  1737. })
  1738. }, {
  1739. func: (function() {
  1740. __GLOBAL__sub_I_GfxDeviceNull_cpp();
  1741. })
  1742. }, {
  1743. func: (function() {
  1744. __GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp();
  1745. })
  1746. }, {
  1747. func: (function() {
  1748. __GLOBAL__sub_I_Runtime_2D_Renderer_0_cpp();
  1749. })
  1750. }, {
  1751. func: (function() {
  1752. ___cxx_global_var_init_19();
  1753. })
  1754. }, {
  1755. func: (function() {
  1756. __GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp();
  1757. })
  1758. }, {
  1759. func: (function() {
  1760. ___cxx_global_var_init_16();
  1761. })
  1762. }, {
  1763. func: (function() {
  1764. __GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp();
  1765. })
  1766. }, {
  1767. func: (function() {
  1768. __GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp();
  1769. })
  1770. }, {
  1771. func: (function() {
  1772. __GLOBAL__sub_I_Runtime_Allocator_0_cpp();
  1773. })
  1774. }, {
  1775. func: (function() {
  1776. __GLOBAL__sub_I_Runtime_Allocator_2_cpp();
  1777. })
  1778. }, {
  1779. func: (function() {
  1780. __GLOBAL__sub_I_Runtime_Allocator_3_cpp();
  1781. })
  1782. }, {
  1783. func: (function() {
  1784. __GLOBAL__sub_I_Runtime_Application_0_cpp();
  1785. })
  1786. }, {
  1787. func: (function() {
  1788. __GLOBAL__sub_I_Runtime_BaseClasses_0_cpp();
  1789. })
  1790. }, {
  1791. func: (function() {
  1792. __GLOBAL__sub_I_Runtime_BaseClasses_1_cpp();
  1793. })
  1794. }, {
  1795. func: (function() {
  1796. __GLOBAL__sub_I_Runtime_BaseClasses_2_cpp();
  1797. })
  1798. }, {
  1799. func: (function() {
  1800. __GLOBAL__sub_I_Runtime_BaseClasses_3_cpp();
  1801. })
  1802. }, {
  1803. func: (function() {
  1804. __GLOBAL__sub_I_Runtime_Burst_0_cpp();
  1805. })
  1806. }, {
  1807. func: (function() {
  1808. ___cxx_global_var_init_53();
  1809. })
  1810. }, {
  1811. func: (function() {
  1812. __GLOBAL__sub_I_Runtime_Camera_0_cpp();
  1813. })
  1814. }, {
  1815. func: (function() {
  1816. __GLOBAL__sub_I_Runtime_Camera_1_cpp();
  1817. })
  1818. }, {
  1819. func: (function() {
  1820. __GLOBAL__sub_I_Runtime_Camera_2_cpp();
  1821. })
  1822. }, {
  1823. func: (function() {
  1824. ___cxx_global_var_init_122();
  1825. })
  1826. }, {
  1827. func: (function() {
  1828. ___cxx_global_var_init_123();
  1829. })
  1830. }, {
  1831. func: (function() {
  1832. __GLOBAL__sub_I_Runtime_Camera_3_cpp();
  1833. })
  1834. }, {
  1835. func: (function() {
  1836. __GLOBAL__sub_I_Runtime_Camera_4_cpp();
  1837. })
  1838. }, {
  1839. func: (function() {
  1840. ___cxx_global_var_init_68();
  1841. })
  1842. }, {
  1843. func: (function() {
  1844. ___cxx_global_var_init_69();
  1845. })
  1846. }, {
  1847. func: (function() {
  1848. __GLOBAL__sub_I_Runtime_Camera_5_cpp();
  1849. })
  1850. }, {
  1851. func: (function() {
  1852. __GLOBAL__sub_I_Runtime_Camera_6_cpp();
  1853. })
  1854. }, {
  1855. func: (function() {
  1856. __GLOBAL__sub_I_Runtime_Camera_7_cpp();
  1857. })
  1858. }, {
  1859. func: (function() {
  1860. __GLOBAL__sub_I_Shadows_cpp();
  1861. })
  1862. }, {
  1863. func: (function() {
  1864. __GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp();
  1865. })
  1866. }, {
  1867. func: (function() {
  1868. __GLOBAL__sub_I_GUITexture_cpp();
  1869. })
  1870. }, {
  1871. func: (function() {
  1872. __GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp();
  1873. })
  1874. }, {
  1875. func: (function() {
  1876. __GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_cpp();
  1877. })
  1878. }, {
  1879. func: (function() {
  1880. __GLOBAL__sub_I_Runtime_Containers_0_cpp();
  1881. })
  1882. }, {
  1883. func: (function() {
  1884. __GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp();
  1885. })
  1886. }, {
  1887. func: (function() {
  1888. __GLOBAL__sub_I_Runtime_File_0_cpp();
  1889. })
  1890. }, {
  1891. func: (function() {
  1892. __GLOBAL__sub_I_Runtime_GameCode_0_cpp();
  1893. })
  1894. }, {
  1895. func: (function() {
  1896. __GLOBAL__sub_I_Runtime_Geometry_1_cpp();
  1897. })
  1898. }, {
  1899. func: (function() {
  1900. __GLOBAL__sub_I_Runtime_Geometry_2_cpp();
  1901. })
  1902. }, {
  1903. func: (function() {
  1904. __GLOBAL__sub_I_Runtime_Graphics_0_cpp();
  1905. })
  1906. }, {
  1907. func: (function() {
  1908. ___cxx_global_var_init_130();
  1909. })
  1910. }, {
  1911. func: (function() {
  1912. ___cxx_global_var_init_131();
  1913. })
  1914. }, {
  1915. func: (function() {
  1916. __GLOBAL__sub_I_Runtime_Graphics_1_cpp();
  1917. })
  1918. }, {
  1919. func: (function() {
  1920. __GLOBAL__sub_I_Runtime_Graphics_2_cpp();
  1921. })
  1922. }, {
  1923. func: (function() {
  1924. ___cxx_global_var_init_70();
  1925. })
  1926. }, {
  1927. func: (function() {
  1928. __GLOBAL__sub_I_Runtime_Graphics_4_cpp();
  1929. })
  1930. }, {
  1931. func: (function() {
  1932. __GLOBAL__sub_I_Runtime_Graphics_5_cpp();
  1933. })
  1934. }, {
  1935. func: (function() {
  1936. __GLOBAL__sub_I_Runtime_Graphics_6_cpp();
  1937. })
  1938. }, {
  1939. func: (function() {
  1940. __GLOBAL__sub_I_Runtime_Graphics_8_cpp();
  1941. })
  1942. }, {
  1943. func: (function() {
  1944. __GLOBAL__sub_I_Runtime_Graphics_9_cpp();
  1945. })
  1946. }, {
  1947. func: (function() {
  1948. __GLOBAL__sub_I_Runtime_Graphics_10_cpp();
  1949. })
  1950. }, {
  1951. func: (function() {
  1952. __GLOBAL__sub_I_Runtime_Graphics_11_cpp();
  1953. })
  1954. }, {
  1955. func: (function() {
  1956. __GLOBAL__sub_I_Runtime_Graphics_12_cpp();
  1957. })
  1958. }, {
  1959. func: (function() {
  1960. __GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp();
  1961. })
  1962. }, {
  1963. func: (function() {
  1964. __GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp();
  1965. })
  1966. }, {
  1967. func: (function() {
  1968. __GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp();
  1969. })
  1970. }, {
  1971. func: (function() {
  1972. __GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp();
  1973. })
  1974. }, {
  1975. func: (function() {
  1976. __GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp();
  1977. })
  1978. }, {
  1979. func: (function() {
  1980. ___cxx_global_var_init_81();
  1981. })
  1982. }, {
  1983. func: (function() {
  1984. __GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp();
  1985. })
  1986. }, {
  1987. func: (function() {
  1988. __GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp();
  1989. })
  1990. }, {
  1991. func: (function() {
  1992. __GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp();
  1993. })
  1994. }, {
  1995. func: (function() {
  1996. ___cxx_global_var_init_50();
  1997. })
  1998. }, {
  1999. func: (function() {
  2000. __GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp();
  2001. })
  2002. }, {
  2003. func: (function() {
  2004. __GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp();
  2005. })
  2006. }, {
  2007. func: (function() {
  2008. __GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp();
  2009. })
  2010. }, {
  2011. func: (function() {
  2012. __GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp();
  2013. })
  2014. }, {
  2015. func: (function() {
  2016. __GLOBAL__sub_I_Runtime_Interfaces_0_cpp();
  2017. })
  2018. }, {
  2019. func: (function() {
  2020. __GLOBAL__sub_I_Runtime_Interfaces_1_cpp();
  2021. })
  2022. }, {
  2023. func: (function() {
  2024. __GLOBAL__sub_I_Runtime_Interfaces_2_cpp();
  2025. })
  2026. }, {
  2027. func: (function() {
  2028. __GLOBAL__sub_I_Runtime_Jobs_0_cpp();
  2029. })
  2030. }, {
  2031. func: (function() {
  2032. __GLOBAL__sub_I_Runtime_Jobs_1_cpp();
  2033. })
  2034. }, {
  2035. func: (function() {
  2036. __GLOBAL__sub_I_Runtime_Jobs_2_cpp();
  2037. })
  2038. }, {
  2039. func: (function() {
  2040. __GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp();
  2041. })
  2042. }, {
  2043. func: (function() {
  2044. __GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp();
  2045. })
  2046. }, {
  2047. func: (function() {
  2048. __GLOBAL__sub_I_Runtime_Math_2_cpp();
  2049. })
  2050. }, {
  2051. func: (function() {
  2052. __GLOBAL__sub_I_Runtime_Math_Random_0_cpp();
  2053. })
  2054. }, {
  2055. func: (function() {
  2056. __GLOBAL__sub_I_Runtime_Misc_0_cpp();
  2057. })
  2058. }, {
  2059. func: (function() {
  2060. ___cxx_global_var_init_75();
  2061. })
  2062. }, {
  2063. func: (function() {
  2064. ___cxx_global_var_init_77_1167();
  2065. })
  2066. }, {
  2067. func: (function() {
  2068. __GLOBAL__sub_I_Runtime_Misc_1_cpp();
  2069. })
  2070. }, {
  2071. func: (function() {
  2072. ___cxx_global_var_init_182();
  2073. })
  2074. }, {
  2075. func: (function() {
  2076. ___cxx_global_var_init_183();
  2077. })
  2078. }, {
  2079. func: (function() {
  2080. ___cxx_global_var_init_184();
  2081. })
  2082. }, {
  2083. func: (function() {
  2084. ___cxx_global_var_init_185();
  2085. })
  2086. }, {
  2087. func: (function() {
  2088. ___cxx_global_var_init_186();
  2089. })
  2090. }, {
  2091. func: (function() {
  2092. ___cxx_global_var_init_187();
  2093. })
  2094. }, {
  2095. func: (function() {
  2096. ___cxx_global_var_init_188();
  2097. })
  2098. }, {
  2099. func: (function() {
  2100. __GLOBAL__sub_I_Runtime_Misc_2_cpp();
  2101. })
  2102. }, {
  2103. func: (function() {
  2104. ___cxx_global_var_init_161();
  2105. })
  2106. }, {
  2107. func: (function() {
  2108. __GLOBAL__sub_I_Runtime_Misc_3_cpp();
  2109. })
  2110. }, {
  2111. func: (function() {
  2112. ___cxx_global_var_init_13();
  2113. })
  2114. }, {
  2115. func: (function() {
  2116. __GLOBAL__sub_I_Runtime_Misc_4_cpp();
  2117. })
  2118. }, {
  2119. func: (function() {
  2120. ___cxx_global_var_init_165();
  2121. })
  2122. }, {
  2123. func: (function() {
  2124. ___cxx_global_var_init_166();
  2125. })
  2126. }, {
  2127. func: (function() {
  2128. ___cxx_global_var_init_167();
  2129. })
  2130. }, {
  2131. func: (function() {
  2132. ___cxx_global_var_init_168();
  2133. })
  2134. }, {
  2135. func: (function() {
  2136. ___cxx_global_var_init_169();
  2137. })
  2138. }, {
  2139. func: (function() {
  2140. ___cxx_global_var_init_170();
  2141. })
  2142. }, {
  2143. func: (function() {
  2144. ___cxx_global_var_init_171();
  2145. })
  2146. }, {
  2147. func: (function() {
  2148. ___cxx_global_var_init_172();
  2149. })
  2150. }, {
  2151. func: (function() {
  2152. ___cxx_global_var_init_173();
  2153. })
  2154. }, {
  2155. func: (function() {
  2156. ___cxx_global_var_init_174();
  2157. })
  2158. }, {
  2159. func: (function() {
  2160. ___cxx_global_var_init_175();
  2161. })
  2162. }, {
  2163. func: (function() {
  2164. ___cxx_global_var_init_176();
  2165. })
  2166. }, {
  2167. func: (function() {
  2168. ___cxx_global_var_init_177();
  2169. })
  2170. }, {
  2171. func: (function() {
  2172. ___cxx_global_var_init_178();
  2173. })
  2174. }, {
  2175. func: (function() {
  2176. ___cxx_global_var_init_179();
  2177. })
  2178. }, {
  2179. func: (function() {
  2180. ___cxx_global_var_init_180();
  2181. })
  2182. }, {
  2183. func: (function() {
  2184. ___cxx_global_var_init_181();
  2185. })
  2186. }, {
  2187. func: (function() {
  2188. ___cxx_global_var_init_182_8669();
  2189. })
  2190. }, {
  2191. func: (function() {
  2192. ___cxx_global_var_init_183_8670();
  2193. })
  2194. }, {
  2195. func: (function() {
  2196. ___cxx_global_var_init_184_8671();
  2197. })
  2198. }, {
  2199. func: (function() {
  2200. ___cxx_global_var_init_185_8672();
  2201. })
  2202. }, {
  2203. func: (function() {
  2204. ___cxx_global_var_init_186_8673();
  2205. })
  2206. }, {
  2207. func: (function() {
  2208. ___cxx_global_var_init_187_8674();
  2209. })
  2210. }, {
  2211. func: (function() {
  2212. ___cxx_global_var_init_188_8675();
  2213. })
  2214. }, {
  2215. func: (function() {
  2216. ___cxx_global_var_init_189();
  2217. })
  2218. }, {
  2219. func: (function() {
  2220. ___cxx_global_var_init_190();
  2221. })
  2222. }, {
  2223. func: (function() {
  2224. ___cxx_global_var_init_191();
  2225. })
  2226. }, {
  2227. func: (function() {
  2228. ___cxx_global_var_init_192();
  2229. })
  2230. }, {
  2231. func: (function() {
  2232. ___cxx_global_var_init_193();
  2233. })
  2234. }, {
  2235. func: (function() {
  2236. ___cxx_global_var_init_194();
  2237. })
  2238. }, {
  2239. func: (function() {
  2240. ___cxx_global_var_init_195();
  2241. })
  2242. }, {
  2243. func: (function() {
  2244. ___cxx_global_var_init_196();
  2245. })
  2246. }, {
  2247. func: (function() {
  2248. ___cxx_global_var_init_197();
  2249. })
  2250. }, {
  2251. func: (function() {
  2252. ___cxx_global_var_init_198();
  2253. })
  2254. }, {
  2255. func: (function() {
  2256. ___cxx_global_var_init_199();
  2257. })
  2258. }, {
  2259. func: (function() {
  2260. ___cxx_global_var_init_200();
  2261. })
  2262. }, {
  2263. func: (function() {
  2264. ___cxx_global_var_init_201();
  2265. })
  2266. }, {
  2267. func: (function() {
  2268. ___cxx_global_var_init_202();
  2269. })
  2270. }, {
  2271. func: (function() {
  2272. ___cxx_global_var_init_203();
  2273. })
  2274. }, {
  2275. func: (function() {
  2276. ___cxx_global_var_init_204();
  2277. })
  2278. }, {
  2279. func: (function() {
  2280. ___cxx_global_var_init_205();
  2281. })
  2282. }, {
  2283. func: (function() {
  2284. ___cxx_global_var_init_206();
  2285. })
  2286. }, {
  2287. func: (function() {
  2288. ___cxx_global_var_init_207();
  2289. })
  2290. }, {
  2291. func: (function() {
  2292. ___cxx_global_var_init_208();
  2293. })
  2294. }, {
  2295. func: (function() {
  2296. ___cxx_global_var_init_209();
  2297. })
  2298. }, {
  2299. func: (function() {
  2300. ___cxx_global_var_init_210();
  2301. })
  2302. }, {
  2303. func: (function() {
  2304. ___cxx_global_var_init_211();
  2305. })
  2306. }, {
  2307. func: (function() {
  2308. ___cxx_global_var_init_212();
  2309. })
  2310. }, {
  2311. func: (function() {
  2312. ___cxx_global_var_init_213();
  2313. })
  2314. }, {
  2315. func: (function() {
  2316. ___cxx_global_var_init_214();
  2317. })
  2318. }, {
  2319. func: (function() {
  2320. ___cxx_global_var_init_215_1168();
  2321. })
  2322. }, {
  2323. func: (function() {
  2324. __GLOBAL__sub_I_Runtime_Misc_5_cpp();
  2325. })
  2326. }, {
  2327. func: (function() {
  2328. __GLOBAL__sub_I_Runtime_Network_0_cpp();
  2329. })
  2330. }, {
  2331. func: (function() {
  2332. __GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp();
  2333. })
  2334. }, {
  2335. func: (function() {
  2336. ___cxx_global_var_init_30_9055();
  2337. })
  2338. }, {
  2339. func: (function() {
  2340. ___cxx_global_var_init_31();
  2341. })
  2342. }, {
  2343. func: (function() {
  2344. ___cxx_global_var_init_32_9056();
  2345. })
  2346. }, {
  2347. func: (function() {
  2348. ___cxx_global_var_init_33();
  2349. })
  2350. }, {
  2351. func: (function() {
  2352. ___cxx_global_var_init_34_9057();
  2353. })
  2354. }, {
  2355. func: (function() {
  2356. __GLOBAL__sub_I_Runtime_PreloadManager_0_cpp();
  2357. })
  2358. }, {
  2359. func: (function() {
  2360. __GLOBAL__sub_I_Runtime_Profiler_0_cpp();
  2361. })
  2362. }, {
  2363. func: (function() {
  2364. __GLOBAL__sub_I_Runtime_Profiler_1_cpp();
  2365. })
  2366. }, {
  2367. func: (function() {
  2368. __GLOBAL__sub_I_Runtime_Profiler_2_cpp();
  2369. })
  2370. }, {
  2371. func: (function() {
  2372. __GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp();
  2373. })
  2374. }, {
  2375. func: (function() {
  2376. ___cxx_global_var_init_22_9270();
  2377. })
  2378. }, {
  2379. func: (function() {
  2380. ___cxx_global_var_init_23();
  2381. })
  2382. }, {
  2383. func: (function() {
  2384. ___cxx_global_var_init_24_9271();
  2385. })
  2386. }, {
  2387. func: (function() {
  2388. ___cxx_global_var_init_25_1169();
  2389. })
  2390. }, {
  2391. func: (function() {
  2392. ___cxx_global_var_init_26_9272();
  2393. })
  2394. }, {
  2395. func: (function() {
  2396. __GLOBAL__sub_I_Runtime_SceneManager_0_cpp();
  2397. })
  2398. }, {
  2399. func: (function() {
  2400. __GLOBAL__sub_I_Runtime_Shaders_0_cpp();
  2401. })
  2402. }, {
  2403. func: (function() {
  2404. ___cxx_global_var_init_120();
  2405. })
  2406. }, {
  2407. func: (function() {
  2408. __GLOBAL__sub_I_Runtime_Shaders_1_cpp();
  2409. })
  2410. }, {
  2411. func: (function() {
  2412. ___cxx_global_var_init_31_9866();
  2413. })
  2414. }, {
  2415. func: (function() {
  2416. __GLOBAL__sub_I_Runtime_Shaders_2_cpp();
  2417. })
  2418. }, {
  2419. func: (function() {
  2420. __GLOBAL__sub_I_Runtime_Shaders_3_cpp();
  2421. })
  2422. }, {
  2423. func: (function() {
  2424. __GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp();
  2425. })
  2426. }, {
  2427. func: (function() {
  2428. __GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp();
  2429. })
  2430. }, {
  2431. func: (function() {
  2432. __GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp();
  2433. })
  2434. }, {
  2435. func: (function() {
  2436. __GLOBAL__sub_I_Runtime_Streaming_0_cpp();
  2437. })
  2438. }, {
  2439. func: (function() {
  2440. __GLOBAL__sub_I_Runtime_Streaming_1_cpp();
  2441. })
  2442. }, {
  2443. func: (function() {
  2444. ___cxx_global_var_init_21();
  2445. })
  2446. }, {
  2447. func: (function() {
  2448. __GLOBAL__sub_I_Runtime_Transform_0_cpp();
  2449. })
  2450. }, {
  2451. func: (function() {
  2452. __GLOBAL__sub_I_Runtime_Transform_1_cpp();
  2453. })
  2454. }, {
  2455. func: (function() {
  2456. __GLOBAL__sub_I_Runtime_Utilities_2_cpp();
  2457. })
  2458. }, {
  2459. func: (function() {
  2460. ___cxx_global_var_init_2_10890();
  2461. })
  2462. }, {
  2463. func: (function() {
  2464. __GLOBAL__sub_I_Runtime_Utilities_5_cpp();
  2465. })
  2466. }, {
  2467. func: (function() {
  2468. __GLOBAL__sub_I_Runtime_Utilities_6_cpp();
  2469. })
  2470. }, {
  2471. func: (function() {
  2472. __GLOBAL__sub_I_Runtime_Utilities_7_cpp();
  2473. })
  2474. }, {
  2475. func: (function() {
  2476. __GLOBAL__sub_I_Runtime_Utilities_8_cpp();
  2477. })
  2478. }, {
  2479. func: (function() {
  2480. __GLOBAL__sub_I_Runtime_Utilities_9_cpp();
  2481. })
  2482. }, {
  2483. func: (function() {
  2484. __GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp();
  2485. })
  2486. }, {
  2487. func: (function() {
  2488. __GLOBAL__sub_I_AssetBundleFileSystem_cpp();
  2489. })
  2490. }, {
  2491. func: (function() {
  2492. __GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp();
  2493. })
  2494. }, {
  2495. func: (function() {
  2496. __GLOBAL__sub_I_Runtime_Modules_0_cpp();
  2497. })
  2498. }, {
  2499. func: (function() {
  2500. ___cxx_global_var_init_57();
  2501. })
  2502. }, {
  2503. func: (function() {
  2504. ___cxx_global_var_init_58();
  2505. })
  2506. }, {
  2507. func: (function() {
  2508. __GLOBAL__sub_I_Modules_Profiler_Public_0_cpp();
  2509. })
  2510. }, {
  2511. func: (function() {
  2512. __GLOBAL__sub_I_Modules_Profiler_Runtime_0_cpp();
  2513. })
  2514. }, {
  2515. func: (function() {
  2516. __GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp();
  2517. })
  2518. }, {
  2519. func: (function() {
  2520. __GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp();
  2521. })
  2522. }, {
  2523. func: (function() {
  2524. __GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp();
  2525. })
  2526. }, {
  2527. func: (function() {
  2528. __GLOBAL__sub_I_UnsafeUtility_bindings_cpp();
  2529. })
  2530. }, {
  2531. func: (function() {
  2532. __GLOBAL__sub_I_Runtime_GfxDevice_1_cpp();
  2533. })
  2534. }, {
  2535. func: (function() {
  2536. __GLOBAL__sub_I_Runtime_GfxDevice_2_cpp();
  2537. })
  2538. }, {
  2539. func: (function() {
  2540. __GLOBAL__sub_I_Runtime_GfxDevice_3_cpp();
  2541. })
  2542. }, {
  2543. func: (function() {
  2544. ___cxx_global_var_init_36();
  2545. })
  2546. }, {
  2547. func: (function() {
  2548. ___cxx_global_var_init_37();
  2549. })
  2550. }, {
  2551. func: (function() {
  2552. ___cxx_global_var_init_38();
  2553. })
  2554. }, {
  2555. func: (function() {
  2556. __GLOBAL__sub_I_Runtime_GfxDevice_4_cpp();
  2557. })
  2558. }, {
  2559. func: (function() {
  2560. __GLOBAL__sub_I_Runtime_GfxDevice_5_cpp();
  2561. })
  2562. }, {
  2563. func: (function() {
  2564. __GLOBAL__sub_I_Runtime_PluginInterface_0_cpp();
  2565. })
  2566. }, {
  2567. func: (function() {
  2568. ___cxx_global_var_init_35();
  2569. })
  2570. }, {
  2571. func: (function() {
  2572. ___cxx_global_var_init_36_12649();
  2573. })
  2574. }, {
  2575. func: (function() {
  2576. ___cxx_global_var_init_37_12650();
  2577. })
  2578. }, {
  2579. func: (function() {
  2580. ___cxx_global_var_init_38_12651();
  2581. })
  2582. }, {
  2583. func: (function() {
  2584. ___cxx_global_var_init_39();
  2585. })
  2586. }, {
  2587. func: (function() {
  2588. ___cxx_global_var_init_40();
  2589. })
  2590. }, {
  2591. func: (function() {
  2592. ___cxx_global_var_init_41();
  2593. })
  2594. }, {
  2595. func: (function() {
  2596. ___cxx_global_var_init_42();
  2597. })
  2598. }, {
  2599. func: (function() {
  2600. ___cxx_global_var_init_43();
  2601. })
  2602. }, {
  2603. func: (function() {
  2604. ___cxx_global_var_init_44();
  2605. })
  2606. }, {
  2607. func: (function() {
  2608. ___cxx_global_var_init_45();
  2609. })
  2610. }, {
  2611. func: (function() {
  2612. ___cxx_global_var_init_46();
  2613. })
  2614. }, {
  2615. func: (function() {
  2616. ___cxx_global_var_init_47_1170();
  2617. })
  2618. }, {
  2619. func: (function() {
  2620. ___cxx_global_var_init_48_1171();
  2621. })
  2622. }, {
  2623. func: (function() {
  2624. __GLOBAL__sub_I_Runtime_Director_Core_1_cpp();
  2625. })
  2626. }, {
  2627. func: (function() {
  2628. __GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp();
  2629. })
  2630. }, {
  2631. func: (function() {
  2632. ___cxx_global_var_init_149();
  2633. })
  2634. }, {
  2635. func: (function() {
  2636. __GLOBAL__sub_I_Runtime_Scripting_0_cpp();
  2637. })
  2638. }, {
  2639. func: (function() {
  2640. __GLOBAL__sub_I_Runtime_Scripting_2_cpp();
  2641. })
  2642. }, {
  2643. func: (function() {
  2644. ___cxx_global_var_init_40_13342();
  2645. })
  2646. }, {
  2647. func: (function() {
  2648. __GLOBAL__sub_I_Runtime_Scripting_3_cpp();
  2649. })
  2650. }, {
  2651. func: (function() {
  2652. ___cxx_global_var_init_63();
  2653. })
  2654. }, {
  2655. func: (function() {
  2656. __GLOBAL__sub_I_Runtime_Mono_0_cpp();
  2657. })
  2658. }, {
  2659. func: (function() {
  2660. __GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp();
  2661. })
  2662. }, {
  2663. func: (function() {
  2664. __GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp();
  2665. })
  2666. }, {
  2667. func: (function() {
  2668. __GLOBAL__sub_I_TemplateInstantiations_cpp();
  2669. })
  2670. }, {
  2671. func: (function() {
  2672. __GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp();
  2673. })
  2674. }, {
  2675. func: (function() {
  2676. __GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp();
  2677. })
  2678. }, {
  2679. func: (function() {
  2680. __GLOBAL__sub_I_Runtime_Serialize_0_cpp();
  2681. })
  2682. }, {
  2683. func: (function() {
  2684. __GLOBAL__sub_I_Runtime_Serialize_1_cpp();
  2685. })
  2686. }, {
  2687. func: (function() {
  2688. __GLOBAL__sub_I_Runtime_Serialize_2_cpp();
  2689. })
  2690. }, {
  2691. func: (function() {
  2692. __GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp();
  2693. })
  2694. }, {
  2695. func: (function() {
  2696. __GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp();
  2697. })
  2698. }, {
  2699. func: (function() {
  2700. __GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp();
  2701. })
  2702. }, {
  2703. func: (function() {
  2704. ___cxx_global_var_init_144();
  2705. })
  2706. }, {
  2707. func: (function() {
  2708. __GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp();
  2709. })
  2710. }, {
  2711. func: (function() {
  2712. __GLOBAL__sub_I_LineRenderer_cpp();
  2713. })
  2714. }, {
  2715. func: (function() {
  2716. __GLOBAL__sub_I_TrailRenderer_cpp();
  2717. })
  2718. }, {
  2719. func: (function() {
  2720. __GLOBAL__sub_I_SkinnedMeshRendererManager_cpp();
  2721. })
  2722. }, {
  2723. func: (function() {
  2724. __GLOBAL__sub_I_LogAssert_cpp();
  2725. })
  2726. }, {
  2727. func: (function() {
  2728. __GLOBAL__sub_I_Shader_cpp();
  2729. })
  2730. }, {
  2731. func: (function() {
  2732. __GLOBAL__sub_I_Transform_cpp();
  2733. })
  2734. }, {
  2735. func: (function() {
  2736. __GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Platforms_WebGL_Source_0_cpp();
  2737. })
  2738. }, {
  2739. func: (function() {
  2740. __GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp();
  2741. })
  2742. }, {
  2743. func: (function() {
  2744. __GLOBAL__sub_I_DirectorScriptingClasses_cpp();
  2745. })
  2746. }, {
  2747. func: (function() {
  2748. __GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp();
  2749. })
  2750. }, {
  2751. func: (function() {
  2752. __GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp();
  2753. })
  2754. }, {
  2755. func: (function() {
  2756. __GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp();
  2757. })
  2758. }, {
  2759. func: (function() {
  2760. __GLOBAL__sub_I_GridScriptingClasses_cpp();
  2761. })
  2762. }, {
  2763. func: (function() {
  2764. __GLOBAL__sub_I_Modules_Grid_Public_0_cpp();
  2765. })
  2766. }, {
  2767. func: (function() {
  2768. ___cxx_global_var_init_3826();
  2769. })
  2770. }, {
  2771. func: (function() {
  2772. __GLOBAL__sub_I_IMGUIScriptingClasses_cpp();
  2773. })
  2774. }, {
  2775. func: (function() {
  2776. __GLOBAL__sub_I_Modules_IMGUI_0_cpp();
  2777. })
  2778. }, {
  2779. func: (function() {
  2780. ___cxx_global_var_init_27();
  2781. })
  2782. }, {
  2783. func: (function() {
  2784. ___cxx_global_var_init_28_3916();
  2785. })
  2786. }, {
  2787. func: (function() {
  2788. ___cxx_global_var_init_29();
  2789. })
  2790. }, {
  2791. func: (function() {
  2792. __GLOBAL__sub_I_Modules_IMGUI_1_cpp();
  2793. })
  2794. }, {
  2795. func: (function() {
  2796. __GLOBAL__sub_I_InputLegacyScriptingClasses_cpp();
  2797. })
  2798. }, {
  2799. func: (function() {
  2800. ___cxx_global_var_init_3_4139();
  2801. })
  2802. }, {
  2803. func: (function() {
  2804. __GLOBAL__sub_I_InputLegacyModuleRegistration_cpp();
  2805. })
  2806. }, {
  2807. func: (function() {
  2808. __GLOBAL__sub_I_InputScriptingClasses_cpp();
  2809. })
  2810. }, {
  2811. func: (function() {
  2812. ___cxx_global_var_init_6_4226();
  2813. })
  2814. }, {
  2815. func: (function() {
  2816. ___cxx_global_var_init_7_4227();
  2817. })
  2818. }, {
  2819. func: (function() {
  2820. ___cxx_global_var_init_8_4228();
  2821. })
  2822. }, {
  2823. func: (function() {
  2824. ___cxx_global_var_init_9();
  2825. })
  2826. }, {
  2827. func: (function() {
  2828. __GLOBAL__sub_I_Modules_Input_Private_0_cpp();
  2829. })
  2830. }, {
  2831. func: (function() {
  2832. __GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp();
  2833. })
  2834. }, {
  2835. func: (function() {
  2836. __GLOBAL__sub_I_Modules_ParticleSystem_0_cpp();
  2837. })
  2838. }, {
  2839. func: (function() {
  2840. ___cxx_global_var_init_44_4479();
  2841. })
  2842. }, {
  2843. func: (function() {
  2844. ___cxx_global_var_init_45_4480();
  2845. })
  2846. }, {
  2847. func: (function() {
  2848. ___cxx_global_var_init_46_4481();
  2849. })
  2850. }, {
  2851. func: (function() {
  2852. __GLOBAL__sub_I_Modules_ParticleSystem_1_cpp();
  2853. })
  2854. }, {
  2855. func: (function() {
  2856. __GLOBAL__sub_I_Modules_ParticleSystem_Modules_0_cpp();
  2857. })
  2858. }, {
  2859. func: (function() {
  2860. __GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp();
  2861. })
  2862. }, {
  2863. func: (function() {
  2864. __GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp();
  2865. })
  2866. }, {
  2867. func: (function() {
  2868. __GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp();
  2869. })
  2870. }, {
  2871. func: (function() {
  2872. __GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp();
  2873. })
  2874. }, {
  2875. func: (function() {
  2876. __GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp();
  2877. })
  2878. }, {
  2879. func: (function() {
  2880. __GLOBAL__sub_I_ParticleSystemGeometryJob_cpp();
  2881. })
  2882. }, {
  2883. func: (function() {
  2884. ___cxx_global_var_init_28_4482();
  2885. })
  2886. }, {
  2887. func: (function() {
  2888. __GLOBAL__sub_I_ParticleSystemRenderer_cpp();
  2889. })
  2890. }, {
  2891. func: (function() {
  2892. __GLOBAL__sub_I_ShapeModule_cpp();
  2893. })
  2894. }, {
  2895. func: (function() {
  2896. ___cxx_global_var_init_26_5292();
  2897. })
  2898. }, {
  2899. func: (function() {
  2900. __GLOBAL__sub_I_Modules_PerformanceReporting_0_cpp();
  2901. })
  2902. }, {
  2903. func: (function() {
  2904. __GLOBAL__sub_I_Physics2DScriptingClasses_cpp();
  2905. })
  2906. }, {
  2907. func: (function() {
  2908. __GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_0_cpp();
  2909. })
  2910. }, {
  2911. func: (function() {
  2912. __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp();
  2913. })
  2914. }, {
  2915. func: (function() {
  2916. __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp();
  2917. })
  2918. }, {
  2919. func: (function() {
  2920. __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp();
  2921. })
  2922. }, {
  2923. func: (function() {
  2924. __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp();
  2925. })
  2926. }, {
  2927. func: (function() {
  2928. ___cxx_global_var_init_111();
  2929. })
  2930. }, {
  2931. func: (function() {
  2932. ___cxx_global_var_init_112();
  2933. })
  2934. }, {
  2935. func: (function() {
  2936. __GLOBAL__sub_I_Modules_Physics2D_0_cpp();
  2937. })
  2938. }, {
  2939. func: (function() {
  2940. __GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp();
  2941. })
  2942. }, {
  2943. func: (function() {
  2944. __GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp();
  2945. })
  2946. }, {
  2947. func: (function() {
  2948. __GLOBAL__sub_I_PhysicsScriptingClasses_cpp();
  2949. })
  2950. }, {
  2951. func: (function() {
  2952. ___cxx_global_var_init_77_5879();
  2953. })
  2954. }, {
  2955. func: (function() {
  2956. ___cxx_global_var_init_78();
  2957. })
  2958. }, {
  2959. func: (function() {
  2960. ___cxx_global_var_init_79();
  2961. })
  2962. }, {
  2963. func: (function() {
  2964. ___cxx_global_var_init_80();
  2965. })
  2966. }, {
  2967. func: (function() {
  2968. ___cxx_global_var_init_81_5880();
  2969. })
  2970. }, {
  2971. func: (function() {
  2972. __GLOBAL__sub_I_Modules_Physics_0_cpp();
  2973. })
  2974. }, {
  2975. func: (function() {
  2976. __GLOBAL__sub_I_Modules_Physics_1_cpp();
  2977. })
  2978. }, {
  2979. func: (function() {
  2980. __GLOBAL__sub_I_Modules_Physics_3_cpp();
  2981. })
  2982. }, {
  2983. func: (function() {
  2984. __GLOBAL__sub_I_PhysicsQuery_cpp();
  2985. })
  2986. }, {
  2987. func: (function() {
  2988. __GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp();
  2989. })
  2990. }, {
  2991. func: (function() {
  2992. __GLOBAL__sub_I_PhysicsScene_cpp();
  2993. })
  2994. }, {
  2995. func: (function() {
  2996. ___cxx_global_var_init_7_6648();
  2997. })
  2998. }, {
  2999. func: (function() {
  3000. ___cxx_global_var_init_11();
  3001. })
  3002. }, {
  3003. func: (function() {
  3004. __GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp();
  3005. })
  3006. }, {
  3007. func: (function() {
  3008. __GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp();
  3009. })
  3010. }, {
  3011. func: (function() {
  3012. ___cxx_global_var_init_4_6710();
  3013. })
  3014. }, {
  3015. func: (function() {
  3016. ___cxx_global_var_init_1_6764();
  3017. })
  3018. }, {
  3019. func: (function() {
  3020. __GLOBAL__sub_I_SubsystemsScriptingClasses_cpp();
  3021. })
  3022. }, {
  3023. func: (function() {
  3024. ___cxx_global_var_init_29_6803();
  3025. })
  3026. }, {
  3027. func: (function() {
  3028. ___cxx_global_var_init_30_6804();
  3029. })
  3030. }, {
  3031. func: (function() {
  3032. __GLOBAL__sub_I_Modules_Subsystems_0_cpp();
  3033. })
  3034. }, {
  3035. func: (function() {
  3036. __GLOBAL__sub_I_TerrainScriptingClasses_cpp();
  3037. })
  3038. }, {
  3039. func: (function() {
  3040. __GLOBAL__sub_I_Modules_Terrain_Public_0_cpp();
  3041. })
  3042. }, {
  3043. func: (function() {
  3044. ___cxx_global_var_init_87();
  3045. })
  3046. }, {
  3047. func: (function() {
  3048. __GLOBAL__sub_I_Modules_Terrain_Public_1_cpp();
  3049. })
  3050. }, {
  3051. func: (function() {
  3052. ___cxx_global_var_init_123_6888();
  3053. })
  3054. }, {
  3055. func: (function() {
  3056. __GLOBAL__sub_I_Modules_Terrain_Public_2_cpp();
  3057. })
  3058. }, {
  3059. func: (function() {
  3060. __GLOBAL__sub_I_Modules_Terrain_Public_3_cpp();
  3061. })
  3062. }, {
  3063. func: (function() {
  3064. __GLOBAL__sub_I_Modules_Terrain_VR_0_cpp();
  3065. })
  3066. }, {
  3067. func: (function() {
  3068. __GLOBAL__sub_I_Modules_TerrainPhysics_0_cpp();
  3069. })
  3070. }, {
  3071. func: (function() {
  3072. __GLOBAL__sub_I_TextCoreScriptingClasses_cpp();
  3073. })
  3074. }, {
  3075. func: (function() {
  3076. __GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_cpp();
  3077. })
  3078. }, {
  3079. func: (function() {
  3080. __GLOBAL__sub_I_TextRenderingScriptingClasses_cpp();
  3081. })
  3082. }, {
  3083. func: (function() {
  3084. ___cxx_global_var_init_7295();
  3085. })
  3086. }, {
  3087. func: (function() {
  3088. ___cxx_global_var_init_35_7296();
  3089. })
  3090. }, {
  3091. func: (function() {
  3092. __GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp();
  3093. })
  3094. }, {
  3095. func: (function() {
  3096. __GLOBAL__sub_I_TilemapScriptingClasses_cpp();
  3097. })
  3098. }, {
  3099. func: (function() {
  3100. __GLOBAL__sub_I_Modules_Tilemap_0_cpp();
  3101. })
  3102. }, {
  3103. func: (function() {
  3104. ___cxx_global_var_init_44_7480();
  3105. })
  3106. }, {
  3107. func: (function() {
  3108. __GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp();
  3109. })
  3110. }, {
  3111. func: (function() {
  3112. __GLOBAL__sub_I_UIElementsScriptingClasses_cpp();
  3113. })
  3114. }, {
  3115. func: (function() {
  3116. __GLOBAL__sub_I_External_Yoga_Yoga_0_cpp();
  3117. })
  3118. }, {
  3119. func: (function() {
  3120. ___cxx_global_var_init_10_7621();
  3121. })
  3122. }, {
  3123. func: (function() {
  3124. __GLOBAL__sub_I_Modules_UIElements_0_cpp();
  3125. })
  3126. }, {
  3127. func: (function() {
  3128. __GLOBAL__sub_I_UIScriptingClasses_cpp();
  3129. })
  3130. }, {
  3131. func: (function() {
  3132. ___cxx_global_var_init_39_7786();
  3133. })
  3134. }, {
  3135. func: (function() {
  3136. ___cxx_global_var_init_40_7787();
  3137. })
  3138. }, {
  3139. func: (function() {
  3140. ___cxx_global_var_init_41_7788();
  3141. })
  3142. }, {
  3143. func: (function() {
  3144. ___cxx_global_var_init_42_7789();
  3145. })
  3146. }, {
  3147. func: (function() {
  3148. ___cxx_global_var_init_43_7790();
  3149. })
  3150. }, {
  3151. func: (function() {
  3152. ___cxx_global_var_init_44_7791();
  3153. })
  3154. }, {
  3155. func: (function() {
  3156. ___cxx_global_var_init_45_7792();
  3157. })
  3158. }, {
  3159. func: (function() {
  3160. __GLOBAL__sub_I_Modules_UI_0_cpp();
  3161. })
  3162. }, {
  3163. func: (function() {
  3164. __GLOBAL__sub_I_Modules_UI_1_cpp();
  3165. })
  3166. }, {
  3167. func: (function() {
  3168. __GLOBAL__sub_I_Modules_UI_2_cpp();
  3169. })
  3170. }, {
  3171. func: (function() {
  3172. __GLOBAL__sub_I_umbra_cpp();
  3173. })
  3174. }, {
  3175. func: (function() {
  3176. __GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp();
  3177. })
  3178. }, {
  3179. func: (function() {
  3180. ___cxx_global_var_init_67();
  3181. })
  3182. }, {
  3183. func: (function() {
  3184. __GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp();
  3185. })
  3186. }, {
  3187. func: (function() {
  3188. ___cxx_global_var_init_8030();
  3189. })
  3190. }, {
  3191. func: (function() {
  3192. __GLOBAL__sub_I_Modules_UnityAnalytics_Dispatcher_0_cpp();
  3193. })
  3194. }, {
  3195. func: (function() {
  3196. __GLOBAL__sub_I_UnityAdsSettings_cpp();
  3197. })
  3198. }, {
  3199. func: (function() {
  3200. __GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp();
  3201. })
  3202. }, {
  3203. func: (function() {
  3204. __GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp();
  3205. })
  3206. }, {
  3207. func: (function() {
  3208. __GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp();
  3209. })
  3210. }, {
  3211. func: (function() {
  3212. __GLOBAL__sub_I_Modules_Vehicles_0_cpp();
  3213. })
  3214. }, {
  3215. func: (function() {
  3216. __GLOBAL__sub_I_VFXScriptingClasses_cpp();
  3217. })
  3218. }, {
  3219. func: (function() {
  3220. ___cxx_global_var_init_75_8813();
  3221. })
  3222. }, {
  3223. func: (function() {
  3224. __GLOBAL__sub_I_Modules_VFX_Public_0_cpp();
  3225. })
  3226. }, {
  3227. func: (function() {
  3228. __GLOBAL__sub_I_Modules_VFX_Public_1_cpp();
  3229. })
  3230. }, {
  3231. func: (function() {
  3232. __GLOBAL__sub_I_Modules_VFX_Public_2_cpp();
  3233. })
  3234. }, {
  3235. func: (function() {
  3236. __GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp();
  3237. })
  3238. }, {
  3239. func: (function() {
  3240. __GLOBAL__sub_I_VideoScriptingClasses_cpp();
  3241. })
  3242. }, {
  3243. func: (function() {
  3244. __GLOBAL__sub_I_Modules_Video_Public_Base_0_cpp();
  3245. })
  3246. }, {
  3247. func: (function() {
  3248. ___cxx_global_var_init_8981();
  3249. })
  3250. }, {
  3251. func: (function() {
  3252. ___cxx_global_var_init_1_8982();
  3253. })
  3254. }, {
  3255. func: (function() {
  3256. __GLOBAL__sub_I_Modules_Video_Public_0_cpp();
  3257. })
  3258. }, {
  3259. func: (function() {
  3260. __GLOBAL__sub_I_VRScriptingClasses_cpp();
  3261. })
  3262. }, {
  3263. func: (function() {
  3264. ___cxx_global_var_init_40_9172();
  3265. })
  3266. }, {
  3267. func: (function() {
  3268. ___cxx_global_var_init_41_9173();
  3269. })
  3270. }, {
  3271. func: (function() {
  3272. ___cxx_global_var_init_42_9174();
  3273. })
  3274. }, {
  3275. func: (function() {
  3276. ___cxx_global_var_init_43_9175();
  3277. })
  3278. }, {
  3279. func: (function() {
  3280. ___cxx_global_var_init_44_9176();
  3281. })
  3282. }, {
  3283. func: (function() {
  3284. __GLOBAL__sub_I_Modules_VR_0_cpp();
  3285. })
  3286. }, {
  3287. func: (function() {
  3288. ___cxx_global_var_init_16_9177();
  3289. })
  3290. }, {
  3291. func: (function() {
  3292. ___cxx_global_var_init_17();
  3293. })
  3294. }, {
  3295. func: (function() {
  3296. ___cxx_global_var_init_18_9178();
  3297. })
  3298. }, {
  3299. func: (function() {
  3300. ___cxx_global_var_init_19_9179();
  3301. })
  3302. }, {
  3303. func: (function() {
  3304. ___cxx_global_var_init_20_9180();
  3305. })
  3306. }, {
  3307. func: (function() {
  3308. ___cxx_global_var_init_21_9181();
  3309. })
  3310. }, {
  3311. func: (function() {
  3312. ___cxx_global_var_init_22_9182();
  3313. })
  3314. }, {
  3315. func: (function() {
  3316. ___cxx_global_var_init_23_9183();
  3317. })
  3318. }, {
  3319. func: (function() {
  3320. ___cxx_global_var_init_24_9184();
  3321. })
  3322. }, {
  3323. func: (function() {
  3324. __GLOBAL__sub_I_Modules_VR_2_cpp();
  3325. })
  3326. }, {
  3327. func: (function() {
  3328. __GLOBAL__sub_I_Modules_VR_3_cpp();
  3329. })
  3330. }, {
  3331. func: (function() {
  3332. __GLOBAL__sub_I_Modules_VR_PluginInterface_0_cpp();
  3333. })
  3334. }, {
  3335. func: (function() {
  3336. __GLOBAL__sub_I_Wind_cpp();
  3337. })
  3338. }, {
  3339. func: (function() {
  3340. __GLOBAL__sub_I_XRScriptingClasses_cpp();
  3341. })
  3342. }, {
  3343. func: (function() {
  3344. __GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp();
  3345. })
  3346. }, {
  3347. func: (function() {
  3348. __GLOBAL__sub_I_Lump_libil2cpp_os_cpp();
  3349. })
  3350. }, {
  3351. func: (function() {
  3352. __GLOBAL__sub_I_Il2CppCodeRegistration_cpp();
  3353. })
  3354. }, {
  3355. func: (function() {
  3356. __GLOBAL__sub_I_Lump_libil2cpp_vm_cpp();
  3357. })
  3358. }, {
  3359. func: (function() {
  3360. __GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp();
  3361. })
  3362. }, {
  3363. func: (function() {
  3364. __GLOBAL__sub_I_Lump_libil2cpp_utils_cpp();
  3365. })
  3366. }, {
  3367. func: (function() {
  3368. __GLOBAL__sub_I_Lump_libil2cpp_gc_cpp();
  3369. })
  3370. }, {
  3371. func: (function() {
  3372. ___emscripten_environ_constructor();
  3373. })
  3374. });
  3375. var STATIC_BUMP = 4805696;
  3376. Module["STATIC_BASE"] = STATIC_BASE;
  3377. Module["STATIC_BUMP"] = STATIC_BUMP;
  3378. var tempDoublePtr = STATICTOP;
  3379. STATICTOP += 16;
  3380. assert(tempDoublePtr % 8 == 0);
  3381. function _JS_Cursor_SetImage(ptr, length) {
  3382. var binary = "";
  3383. for (var i = 0; i < length; i++) binary += String.fromCharCode(HEAPU8[ptr + i]);
  3384. Module.canvas.style.cursor = "url(data:image/cur;base64," + btoa(binary) + "),default";
  3385. }
  3386. function _JS_Cursor_SetShow(show) {
  3387. Module.canvas.style.cursor = show ? "default" : "none";
  3388. }
  3389. function _JS_Eval_ClearTimeout(id) {
  3390. window.clearTimeout(id);
  3391. }
  3392. function _JS_Eval_SetTimeout(func, arg, millis) {
  3393. Module["noExitRuntime"] = true;
  3394. function wrapper() {
  3395. getFuncWrapper(func, "vi")(arg);
  3396. }
  3397. return Browser.safeSetTimeout(wrapper, millis);
  3398. }
  3399. var fs = {
  3400. numPendingSync: 0,
  3401. syncInternal: 1e3,
  3402. syncInProgress: false,
  3403. sync: (function(onlyPendingSync) {
  3404. if (onlyPendingSync) {
  3405. if (fs.numPendingSync == 0) return;
  3406. } else if (fs.syncInProgress) {
  3407. fs.numPendingSync++;
  3408. return;
  3409. }
  3410. fs.syncInProgress = true;
  3411. FS.syncfs(false, (function(err) {
  3412. fs.syncInProgress = false;
  3413. }));
  3414. fs.numPendingSync = 0;
  3415. })
  3416. };
  3417. function _JS_FileSystem_Initialize() {
  3418. if (!Module.indexedDB) return;
  3419. Module.setInterval((function() {
  3420. fs.sync(true);
  3421. }), fs.syncInternal);
  3422. }
  3423. function _JS_FileSystem_Sync() {
  3424. if (!Module.indexedDB) return;
  3425. fs.sync(false);
  3426. }
  3427. function _JS_Log_Dump(ptr, type) {
  3428. var str = Pointer_stringify(ptr);
  3429. if (typeof dump == "function") dump(str);
  3430. switch (type) {
  3431. case 0:
  3432. case 1:
  3433. case 4:
  3434. console.error(str);
  3435. return;
  3436. case 2:
  3437. console.warn(str);
  3438. return;
  3439. case 3:
  3440. case 5:
  3441. console.log(str);
  3442. return;
  3443. default:
  3444. console.error("Unknown console message type!");
  3445. console.error(str);
  3446. }
  3447. }
  3448. function _JS_Log_StackTrace(buffer, bufferSize) {
  3449. var trace = stackTrace();
  3450. if (buffer) stringToUTF8(trace, buffer, bufferSize);
  3451. return lengthBytesUTF8(trace);
  3452. }
  3453. function _JS_Profiler_InjectJobs() {
  3454. for (var jobname in Module["Jobs"]) {
  3455. var job = Module["Jobs"][jobname];
  3456. if (typeof job["endtime"] != "undefined") Module.ccall("InjectProfilerSample", null, [ "string", "number", "number" ], [ jobname, job.starttime, job.endtime ]);
  3457. }
  3458. }
  3459. var WEBAudio = {
  3460. audioInstances: [],
  3461. audioContext: {},
  3462. audioWebEnabled: 0
  3463. };
  3464. function _JS_Sound_Create_Channel(callback, userData) {
  3465. if (WEBAudio.audioWebEnabled == 0) return;
  3466. var channel = {
  3467. gain: WEBAudio.audioContext.createGain(),
  3468. panner: WEBAudio.audioContext.createPanner(),
  3469. threeD: false,
  3470. playBuffer: (function(delay, buffer, offset) {
  3471. this.source.buffer = buffer;
  3472. var chan = this;
  3473. this.source.onended = (function() {
  3474. if (callback) dynCall("vi", callback, [ userData ]);
  3475. chan.setup();
  3476. });
  3477. this.source.start(delay, offset);
  3478. }),
  3479. setup: (function() {
  3480. this.source = WEBAudio.audioContext.createBufferSource();
  3481. this.setupPanning();
  3482. }),
  3483. setupPanning: (function() {
  3484. if (this.threeD) {
  3485. this.source.disconnect();
  3486. this.source.connect(this.panner);
  3487. this.panner.connect(this.gain);
  3488. } else {
  3489. this.panner.disconnect();
  3490. this.source.connect(this.gain);
  3491. }
  3492. })
  3493. };
  3494. channel.panner.rolloffFactor = 0;
  3495. channel.gain.connect(WEBAudio.audioContext.destination);
  3496. channel.setup();
  3497. return WEBAudio.audioInstances.push(channel) - 1;
  3498. }
  3499. function _JS_Sound_GetLength(bufferInstance) {
  3500. if (WEBAudio.audioWebEnabled == 0) return 0;
  3501. var sound = WEBAudio.audioInstances[bufferInstance];
  3502. var sampleRateRatio = 44100 / sound.buffer.sampleRate;
  3503. return sound.buffer.length * sampleRateRatio;
  3504. }
  3505. function _JS_Sound_GetLoadState(bufferInstance) {
  3506. if (WEBAudio.audioWebEnabled == 0) return 2;
  3507. var sound = WEBAudio.audioInstances[bufferInstance];
  3508. if (sound.error) return 2;
  3509. if (sound.buffer) return 0;
  3510. return 1;
  3511. }
  3512. function _JS_Sound_Init() {
  3513. try {
  3514. window.AudioContext = window.AudioContext || window.webkitAudioContext;
  3515. WEBAudio.audioContext = new AudioContext;
  3516. var tryToResumeAudioContext = (function() {
  3517. if (WEBAudio.audioContext.state === "suspended") WEBAudio.audioContext.resume(); else Module.clearInterval(resumeInterval);
  3518. });
  3519. var resumeInterval = Module.setInterval(tryToResumeAudioContext, 400);
  3520. WEBAudio.audioWebEnabled = 1;
  3521. } catch (e) {
  3522. alert("Web Audio API is not supported in this browser");
  3523. }
  3524. }
  3525. function _JS_Sound_Load(ptr, length) {
  3526. if (WEBAudio.audioWebEnabled == 0) return 0;
  3527. var sound = {
  3528. buffer: null,
  3529. error: false
  3530. };
  3531. var instance = WEBAudio.audioInstances.push(sound) - 1;
  3532. var audioData = HEAPU8.buffer.slice(ptr, ptr + length);
  3533. WEBAudio.audioContext.decodeAudioData(audioData, (function(buffer) {
  3534. sound.buffer = buffer;
  3535. }), (function() {
  3536. sound.error = true;
  3537. console.log("Decode error.");
  3538. }));
  3539. return instance;
  3540. }
  3541. function _JS_Sound_Load_PCM(channels, length, sampleRate, ptr) {
  3542. if (WEBAudio.audioWebEnabled == 0) return 0;
  3543. var sound = {
  3544. buffer: WEBAudio.audioContext.createBuffer(channels, length, sampleRate),
  3545. error: false
  3546. };
  3547. for (var i = 0; i < channels; i++) {
  3548. var offs = (ptr >> 2) + length * i;
  3549. var buffer = sound.buffer;
  3550. var copyToChannel = buffer["copyToChannel"] || (function(source, channelNumber, startInChannel) {
  3551. var clipped = source.subarray(0, Math.min(source.length, this.length - (startInChannel | 0)));
  3552. this.getChannelData(channelNumber | 0).set(clipped, startInChannel | 0);
  3553. });
  3554. copyToChannel.apply(buffer, [ HEAPF32.subarray(offs, offs + length), i, 0 ]);
  3555. }
  3556. var instance = WEBAudio.audioInstances.push(sound) - 1;
  3557. return instance;
  3558. }
  3559. function _JS_Sound_Play(bufferInstance, channelInstance, offset, delay) {
  3560. _JS_Sound_Stop(channelInstance, 0);
  3561. if (WEBAudio.audioWebEnabled == 0) return;
  3562. var sound = WEBAudio.audioInstances[bufferInstance];
  3563. var channel = WEBAudio.audioInstances[channelInstance];
  3564. if (sound.buffer) {
  3565. try {
  3566. channel.playBuffer(WEBAudio.audioContext.currentTime + delay, sound.buffer, offset);
  3567. } catch (e) {
  3568. console.error("playBuffer error. Exception: " + e);
  3569. }
  3570. } else console.log("Trying to play sound which is not loaded.");
  3571. }
  3572. function _JS_Sound_ReleaseInstance(instance) {
  3573. WEBAudio.audioInstances[instance] = null;
  3574. }
  3575. function _JS_Sound_ResumeIfNeeded() {
  3576. if (WEBAudio.audioWebEnabled == 0) return;
  3577. if (WEBAudio.audioContext.state === "suspended") WEBAudio.audioContext.resume();
  3578. }
  3579. function _JS_Sound_Set3D(channelInstance, threeD) {
  3580. var channel = WEBAudio.audioInstances[channelInstance];
  3581. if (channel.threeD != threeD) {
  3582. channel.threeD = threeD;
  3583. channel.setupPanning();
  3584. }
  3585. }
  3586. function _JS_Sound_SetListenerOrientation(x, y, z, xUp, yUp, zUp) {
  3587. if (WEBAudio.audioWebEnabled == 0) return;
  3588. if (WEBAudio.audioContext.listener.forwardX) {
  3589. WEBAudio.audioContext.listener.forwardX.setValueAtTime(-x, WEBAudio.audioContext.currentTime);
  3590. WEBAudio.audioContext.listener.forwardY.setValueAtTime(-y, WEBAudio.audioContext.currentTime);
  3591. WEBAudio.audioContext.listener.forwardZ.setValueAtTime(-z, WEBAudio.audioContext.currentTime);
  3592. WEBAudio.audioContext.listener.upX.setValueAtTime(xUp, WEBAudio.audioContext.currentTime);
  3593. WEBAudio.audioContext.listener.upY.setValueAtTime(yUp, WEBAudio.audioContext.currentTime);
  3594. WEBAudio.audioContext.listener.upZ.setValueAtTime(zUp, WEBAudio.audioContext.currentTime);
  3595. } else {
  3596. WEBAudio.audioContext.listener.setOrientation(-x, -y, -z, xUp, yUp, zUp);
  3597. }
  3598. }
  3599. function _JS_Sound_SetListenerPosition(x, y, z) {
  3600. if (WEBAudio.audioWebEnabled == 0) return;
  3601. if (WEBAudio.audioContext.listener.positionX) {
  3602. WEBAudio.audioContext.listener.positionX.setValueAtTime(x, WEBAudio.audioContext.currentTime);
  3603. WEBAudio.audioContext.listener.positionY.setValueAtTime(y, WEBAudio.audioContext.currentTime);
  3604. WEBAudio.audioContext.listener.positionZ.setValueAtTime(z, WEBAudio.audioContext.currentTime);
  3605. } else {
  3606. WEBAudio.audioContext.listener.setPosition(x, y, z);
  3607. }
  3608. }
  3609. function _JS_Sound_SetLoop(channelInstance, loop) {
  3610. if (WEBAudio.audioWebEnabled == 0) return;
  3611. WEBAudio.audioInstances[channelInstance].source.loop = loop;
  3612. }
  3613. function _JS_Sound_SetLoopPoints(channelInstance, loopStart, loopEnd) {
  3614. if (WEBAudio.audioWebEnabled == 0) return;
  3615. var channel = WEBAudio.audioInstances[channelInstance];
  3616. channel.source.loopStart = loopStart;
  3617. channel.source.loopEnd = loopEnd;
  3618. }
  3619. function _JS_Sound_SetPitch(channelInstance, v) {
  3620. if (WEBAudio.audioWebEnabled == 0) return;
  3621. WEBAudio.audioInstances[channelInstance].source.playbackRate.setValueAtTime(v, WEBAudio.audioContext.currentTime);
  3622. }
  3623. function _JS_Sound_SetPosition(channelInstance, x, y, z) {
  3624. if (WEBAudio.audioWebEnabled == 0) return;
  3625. WEBAudio.audioInstances[channelInstance].panner.setPosition(x, y, z);
  3626. }
  3627. function _JS_Sound_SetVolume(channelInstance, v) {
  3628. if (WEBAudio.audioWebEnabled == 0) return;
  3629. WEBAudio.audioInstances[channelInstance].gain.gain.setValueAtTime(v, WEBAudio.audioContext.currentTime);
  3630. }
  3631. function _JS_Sound_Stop(channelInstance, delay) {
  3632. if (WEBAudio.audioWebEnabled == 0) return;
  3633. var channel = WEBAudio.audioInstances[channelInstance];
  3634. if (channel.source.buffer) {
  3635. try {
  3636. channel.source.stop(WEBAudio.audioContext.currentTime + delay);
  3637. } catch (e) {
  3638. channel.source.disconnect();
  3639. }
  3640. if (delay == 0) {
  3641. channel.source.onended = (function() {});
  3642. channel.setup();
  3643. }
  3644. }
  3645. }
  3646. function _JS_SystemInfo_GetCanvasClientSize(domElementSelector, outWidth, outHeight) {
  3647. var selector = UTF8ToString(domElementSelector);
  3648. var canvas = selector == "#canvas" ? Module["canvas"] : document.querySelector(selector);
  3649. HEAPF64[outWidth >> 3] = canvas ? canvas.clientWidth : 0;
  3650. HEAPF64[outHeight >> 3] = canvas ? canvas.clientHeight : 0;
  3651. }
  3652. function _JS_SystemInfo_GetDocumentURL(buffer, bufferSize) {
  3653. if (buffer) stringToUTF8(document.URL, buffer, bufferSize);
  3654. return lengthBytesUTF8(document.URL);
  3655. }
  3656. function _JS_SystemInfo_GetGPUInfo(buffer, bufferSize) {
  3657. var gpuinfo = UnityLoader.SystemInfo.gpu;
  3658. if (buffer) stringToUTF8(gpuinfo, buffer, bufferSize);
  3659. return lengthBytesUTF8(gpuinfo);
  3660. }
  3661. function _JS_SystemInfo_GetMemory() {
  3662. return TOTAL_MEMORY / (1024 * 1024);
  3663. }
  3664. function _JS_SystemInfo_GetOS(buffer, bufferSize) {
  3665. var browser = UnityLoader.SystemInfo.os + " " + UnityLoader.SystemInfo.osVersion;
  3666. if (buffer) stringToUTF8(browser, buffer, bufferSize);
  3667. return lengthBytesUTF8(browser);
  3668. }
  3669. function _JS_SystemInfo_GetPreferredDevicePixelRatio() {
  3670. return Module.devicePixelRatio || window.devicePixelRatio || 1;
  3671. }
  3672. function _JS_SystemInfo_GetScreenSize(outWidth, outHeight) {
  3673. HEAPF64[outWidth >> 3] = UnityLoader.SystemInfo.width;
  3674. HEAPF64[outHeight >> 3] = UnityLoader.SystemInfo.height;
  3675. }
  3676. function _JS_SystemInfo_GetStreamingAssetsURL(buffer, bufferSize) {
  3677. var streamingAssetsUrl = Module.streamingAssetsUrl();
  3678. if (buffer) stringToUTF8(streamingAssetsUrl, buffer, bufferSize);
  3679. return lengthBytesUTF8(streamingAssetsUrl);
  3680. }
  3681. function _JS_SystemInfo_HasCursorLock() {
  3682. return UnityLoader.SystemInfo.hasCursorLock;
  3683. }
  3684. function _JS_SystemInfo_HasFullscreen() {
  3685. return UnityLoader.SystemInfo.hasFullscreen;
  3686. }
  3687. function _JS_SystemInfo_HasWebGL() {
  3688. return UnityLoader.SystemInfo.hasWebGL;
  3689. }
  3690. var videoInstances = [];
  3691. function _JS_Video_CanPlayFormat(format) {
  3692. var str = Pointer_stringify(format);
  3693. var video = document.createElement("video");
  3694. return video.canPlayType(str) != "";
  3695. }
  3696. function _JS_Video_Create(url) {
  3697. var str = Pointer_stringify(url);
  3698. var video = document.createElement("video");
  3699. video.style.display = "none";
  3700. video.src = str;
  3701. video.detached = false;
  3702. video.crossOrigin = "anonymous";
  3703. video.looping = false;
  3704. video.addEventListener("ended", (function(evt) {
  3705. if (video.looping && !video.detached) {
  3706. video.play();
  3707. }
  3708. }));
  3709. return videoInstances.push(video) - 1;
  3710. }
  3711. function _JS_Video_Destroy(video) {
  3712. videoInstances[video].detached = true;
  3713. videoInstances[video] = null;
  3714. }
  3715. function _JS_Video_Duration(video) {
  3716. return videoInstances[video].duration;
  3717. }
  3718. function _JS_Video_EnableAudioTrack(video, trackIndex, enabled) {
  3719. var tracks = videoInstances[video].audioTracks;
  3720. if (!tracks) return;
  3721. var track = tracks[trackIndex];
  3722. if (track) track.enabled = enabled ? true : false;
  3723. }
  3724. function _JS_Video_GetAudioLanguageCode(video, trackIndex) {
  3725. var tracks = videoInstances[video].audioTracks;
  3726. if (!tracks) return "";
  3727. var track = tracks[trackIndex];
  3728. return track ? track.language : "";
  3729. }
  3730. function _JS_Video_GetNumAudioTracks(video) {
  3731. var tracks = videoInstances[video].audioTracks;
  3732. return tracks ? tracks.length : 1;
  3733. }
  3734. function _JS_Video_Height(video) {
  3735. return videoInstances[video].videoHeight;
  3736. }
  3737. function _JS_Video_IsPlaying(video) {
  3738. var element = videoInstances[video];
  3739. return !element.paused && !element.ended;
  3740. }
  3741. function _JS_Video_IsReady(video) {
  3742. if (!videoInstances[video].isReady && videoInstances[video].readyState >= videoInstances[video].HAVE_ENOUGH_DATA) videoInstances[video].isReady = true;
  3743. return videoInstances[video].isReady;
  3744. }
  3745. function _JS_Video_Pause(video) {
  3746. videoInstances[video].pause();
  3747. }
  3748. function _JS_Video_Play(video) {
  3749. videoInstances[video].play();
  3750. }
  3751. function _JS_Video_Seek(video, time) {
  3752. videoInstances[video].currentTime = time;
  3753. }
  3754. function _JS_Video_SetEndedHandler(video, ref, onended) {
  3755. var instance = videoInstances[video];
  3756. instance.addEventListener("ended", (function(evt) {
  3757. if (!instance.detached) {
  3758. dynCall("vi", onended, [ ref ]);
  3759. }
  3760. }));
  3761. }
  3762. function _JS_Video_SetErrorHandler(video, ref, onerror) {
  3763. var instance = videoInstances[video];
  3764. instance.onerror = (function(evt) {
  3765. if (!instance.detached) {
  3766. dynCall("vii", onerror, [ ref, evt.target.error.code ]);
  3767. }
  3768. });
  3769. }
  3770. function _JS_Video_SetLoop(video, loop) {
  3771. videoInstances[video].looping = loop;
  3772. }
  3773. function _JS_Video_SetMute(video, muted) {
  3774. videoInstances[video].muted = muted;
  3775. }
  3776. function _JS_Video_SetPlaybackRate(video, rate) {
  3777. videoInstances[video].playbackRate = rate;
  3778. }
  3779. function _JS_Video_SetReadyHandler(video, ref, onready) {
  3780. var instance = videoInstances[video];
  3781. instance.addEventListener("canplay", (function(evt) {
  3782. if (!instance.detached) {
  3783. dynCall("vi", onready, [ ref ]);
  3784. }
  3785. }));
  3786. }
  3787. function _JS_Video_SetSeekedOnceHandler(video, ref, onseeked) {
  3788. var instance = videoInstances[video];
  3789. instance.addEventListener("seeked", function listener(evt) {
  3790. instance.removeEventListener("seeked", listener);
  3791. if (!instance.detached) {
  3792. dynCall("vi", onseeked, [ ref ]);
  3793. }
  3794. });
  3795. }
  3796. function _JS_Video_SetVolume(video, volume) {
  3797. videoInstances[video].volume = volume;
  3798. }
  3799. function _JS_Video_Time(video) {
  3800. return videoInstances[video].currentTime;
  3801. }
  3802. function _JS_Video_UpdateToTexture(video, tex) {
  3803. var v = videoInstances[video];
  3804. if (!(v.videoWidth > 0 && v.videoHeight > 0)) return false;
  3805. if (v.lastUpdateTextureTime === v.currentTime) return false;
  3806. v.lastUpdateTextureTime = v.currentTime;
  3807. GLctx.pixelStorei(GLctx.UNPACK_FLIP_Y_WEBGL, true);
  3808. if (v.previousUploadedWidth != v.videoWidth || v.previousUploadedHeight != v.videoHeight) {
  3809. GLctx.deleteTexture(GL.textures[tex]);
  3810. var t = GLctx.createTexture();
  3811. t.name = tex;
  3812. GL.textures[tex] = t;
  3813. GLctx.bindTexture(GLctx.TEXTURE_2D, t);
  3814. GLctx.texParameteri(GLctx.TEXTURE_2D, GLctx.TEXTURE_WRAP_S, GLctx.CLAMP_TO_EDGE);
  3815. GLctx.texParameteri(GLctx.TEXTURE_2D, GLctx.TEXTURE_WRAP_T, GLctx.CLAMP_TO_EDGE);
  3816. GLctx.texParameteri(GLctx.TEXTURE_2D, GLctx.TEXTURE_MIN_FILTER, GLctx.LINEAR);
  3817. GLctx.texImage2D(GLctx.TEXTURE_2D, 0, GLctx.RGBA, GLctx.RGBA, GLctx.UNSIGNED_BYTE, v);
  3818. v.previousUploadedWidth = v.videoWidth;
  3819. v.previousUploadedHeight = v.videoHeight;
  3820. } else {
  3821. GLctx.bindTexture(GLctx.TEXTURE_2D, GL.textures[tex]);
  3822. GLctx.texSubImage2D(GLctx.TEXTURE_2D, 0, 0, 0, GLctx.RGBA, GLctx.UNSIGNED_BYTE, v);
  3823. }
  3824. GLctx.pixelStorei(GLctx.UNPACK_FLIP_Y_WEBGL, false);
  3825. return true;
  3826. }
  3827. function _JS_Video_Width(video) {
  3828. return videoInstances[video].videoWidth;
  3829. }
  3830. var wr = {
  3831. requestInstances: {},
  3832. nextRequestId: 1
  3833. };
  3834. function _JS_WebRequest_Abort(request) {
  3835. wr.requestInstances[request].abort();
  3836. }
  3837. function _JS_WebRequest_Create(url, method) {
  3838. var http = new XMLHttpRequest;
  3839. var _url = Pointer_stringify(url);
  3840. var _method = Pointer_stringify(method);
  3841. http.open(_method, _url, true);
  3842. http.responseType = "arraybuffer";
  3843. wr.requestInstances[wr.nextRequestId] = http;
  3844. return wr.nextRequestId++;
  3845. }
  3846. function _JS_WebRequest_GetResponseHeaders(request, buffer, bufferSize) {
  3847. var headers = wr.requestInstances[request].getAllResponseHeaders();
  3848. if (buffer) stringToUTF8(headers, buffer, bufferSize);
  3849. return lengthBytesUTF8(headers);
  3850. }
  3851. function _JS_WebRequest_Release(request) {
  3852. var http = wr.requestInstances[request];
  3853. http.onload = null;
  3854. http.onerror = null;
  3855. http.ontimeout = null;
  3856. http.onabort = null;
  3857. delete http;
  3858. wr.requestInstances[request] = null;
  3859. }
  3860. function _JS_WebRequest_Send(request, ptr, length) {
  3861. var http = wr.requestInstances[request];
  3862. try {
  3863. if (length > 0) {
  3864. var postData = HEAPU8.subarray(ptr, ptr + length);
  3865. http.send(postData);
  3866. } else http.send();
  3867. } catch (e) {
  3868. console.error(e.name + ": " + e.message);
  3869. }
  3870. }
  3871. function _JS_WebRequest_SetProgressHandler(request, arg, onprogress) {
  3872. var http = wr.requestInstances[request];
  3873. http.onprogress = function http_onprogress(e) {
  3874. if (onprogress) {
  3875. if (e.lengthComputable) dynCall("viii", onprogress, [ arg, e.loaded, e.total ]);
  3876. }
  3877. };
  3878. }
  3879. function _JS_WebRequest_SetRequestHeader(request, header, value) {
  3880. var _header = Pointer_stringify(header);
  3881. var _value = Pointer_stringify(value);
  3882. wr.requestInstances[request].setRequestHeader(_header, _value);
  3883. }
  3884. function _JS_WebRequest_SetResponseHandler(request, arg, onresponse) {
  3885. var http = wr.requestInstances[request];
  3886. http.onload = function http_onload(e) {
  3887. if (onresponse) {
  3888. var kWebRequestOK = 0;
  3889. var byteArray = new Uint8Array(http.response);
  3890. if (byteArray.length != 0) {
  3891. var buffer = _malloc(byteArray.length);
  3892. HEAPU8.set(byteArray, buffer);
  3893. dynCall("viiiiii", onresponse, [ arg, http.status, buffer, byteArray.length, 0, kWebRequestOK ]);
  3894. } else {
  3895. dynCall("viiiiii", onresponse, [ arg, http.status, 0, 0, 0, kWebRequestOK ]);
  3896. }
  3897. }
  3898. };
  3899. function HandleError(err, code) {
  3900. if (onresponse) {
  3901. var len = lengthBytesUTF8(err) + 1;
  3902. var buffer = _malloc(len);
  3903. stringToUTF8(err, buffer, len);
  3904. dynCall("viiiiii", onresponse, [ arg, http.status, 0, 0, buffer, code ]);
  3905. _free(buffer);
  3906. }
  3907. }
  3908. http.onerror = function http_onerror(e) {
  3909. var kWebErrorUnknown = 2;
  3910. HandleError("Unknown error.", kWebErrorUnknown);
  3911. };
  3912. http.ontimeout = function http_onerror(e) {
  3913. var kWebErrorTimeout = 14;
  3914. HandleError("Connection timed out.", kWebErrorTimeout);
  3915. };
  3916. http.onabort = function http_onerror(e) {
  3917. var kWebErrorAborted = 17;
  3918. HandleError("Aborted.", kWebErrorAborted);
  3919. };
  3920. }
  3921. function _JS_WebRequest_SetTimeout(request, timeout) {
  3922. wr.requestInstances[request].timeout = timeout;
  3923. }
  3924. function ___atomic_fetch_add_8(ptr, vall, valh, memmodel) {
  3925. var l = HEAP32[ptr >> 2];
  3926. var h = HEAP32[ptr + 4 >> 2];
  3927. HEAP32[ptr >> 2] = _i64Add(l, h, vall, valh);
  3928. HEAP32[ptr + 4 >> 2] = getTempRet0();
  3929. return (setTempRet0(h), l) | 0;
  3930. }
  3931. var ENV = {};
  3932. function ___buildEnvironment(environ) {
  3933. var MAX_ENV_VALUES = 64;
  3934. var TOTAL_ENV_SIZE = 1024;
  3935. var poolPtr;
  3936. var envPtr;
  3937. if (!___buildEnvironment.called) {
  3938. ___buildEnvironment.called = true;
  3939. ENV["USER"] = ENV["LOGNAME"] = "web_user";
  3940. ENV["PATH"] = "/";
  3941. ENV["PWD"] = "/";
  3942. ENV["HOME"] = "/home/web_user";
  3943. ENV["LANG"] = "C.UTF-8";
  3944. ENV["_"] = Module["thisProgram"];
  3945. poolPtr = getMemory(TOTAL_ENV_SIZE);
  3946. envPtr = getMemory(MAX_ENV_VALUES * 4);
  3947. HEAP32[envPtr >> 2] = poolPtr;
  3948. HEAP32[environ >> 2] = envPtr;
  3949. } else {
  3950. envPtr = HEAP32[environ >> 2];
  3951. poolPtr = HEAP32[envPtr >> 2];
  3952. }
  3953. var strings = [];
  3954. var totalSize = 0;
  3955. for (var key in ENV) {
  3956. if (typeof ENV[key] === "string") {
  3957. var line = key + "=" + ENV[key];
  3958. strings.push(line);
  3959. totalSize += line.length;
  3960. }
  3961. }
  3962. if (totalSize > TOTAL_ENV_SIZE) {
  3963. throw new Error("Environment size exceeded TOTAL_ENV_SIZE!");
  3964. }
  3965. var ptrSize = 4;
  3966. for (var i = 0; i < strings.length; i++) {
  3967. var line = strings[i];
  3968. writeAsciiToMemory(line, poolPtr);
  3969. HEAP32[envPtr + i * ptrSize >> 2] = poolPtr;
  3970. poolPtr += line.length + 1;
  3971. }
  3972. HEAP32[envPtr + strings.length * ptrSize >> 2] = 0;
  3973. }
  3974. function ___cxa_allocate_exception(size) {
  3975. return _malloc(size);
  3976. }
  3977. function __ZSt18uncaught_exceptionv() {
  3978. return !!__ZSt18uncaught_exceptionv.uncaught_exception;
  3979. }
  3980. var EXCEPTIONS = {
  3981. last: 0,
  3982. caught: [],
  3983. infos: {},
  3984. deAdjust: (function(adjusted) {
  3985. if (!adjusted || EXCEPTIONS.infos[adjusted]) return adjusted;
  3986. for (var key in EXCEPTIONS.infos) {
  3987. var ptr = +key;
  3988. var info = EXCEPTIONS.infos[ptr];
  3989. if (info.adjusted === adjusted) {
  3990. return ptr;
  3991. }
  3992. }
  3993. return adjusted;
  3994. }),
  3995. addRef: (function(ptr) {
  3996. if (!ptr) return;
  3997. var info = EXCEPTIONS.infos[ptr];
  3998. info.refcount++;
  3999. }),
  4000. decRef: (function(ptr) {
  4001. if (!ptr) return;
  4002. var info = EXCEPTIONS.infos[ptr];
  4003. assert(info.refcount > 0);
  4004. info.refcount--;
  4005. if (info.refcount === 0 && !info.rethrown) {
  4006. if (info.destructor) {
  4007. Module["dynCall_vi"](info.destructor, ptr);
  4008. }
  4009. delete EXCEPTIONS.infos[ptr];
  4010. ___cxa_free_exception(ptr);
  4011. }
  4012. }),
  4013. clearRef: (function(ptr) {
  4014. if (!ptr) return;
  4015. var info = EXCEPTIONS.infos[ptr];
  4016. info.refcount = 0;
  4017. })
  4018. };
  4019. function ___cxa_begin_catch(ptr) {
  4020. var info = EXCEPTIONS.infos[ptr];
  4021. if (info && !info.caught) {
  4022. info.caught = true;
  4023. __ZSt18uncaught_exceptionv.uncaught_exception--;
  4024. }
  4025. if (info) info.rethrown = false;
  4026. EXCEPTIONS.caught.push(ptr);
  4027. EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));
  4028. return ptr;
  4029. }
  4030. function ___cxa_free_exception(ptr) {
  4031. try {
  4032. return _free(ptr);
  4033. } catch (e) {
  4034. err("exception during cxa_free_exception: " + e);
  4035. }
  4036. }
  4037. function ___cxa_end_catch() {
  4038. Module["setThrew"](0);
  4039. var ptr = EXCEPTIONS.caught.pop();
  4040. if (ptr) {
  4041. EXCEPTIONS.decRef(EXCEPTIONS.deAdjust(ptr));
  4042. EXCEPTIONS.last = 0;
  4043. }
  4044. }
  4045. function ___cxa_find_matching_catch_2() {
  4046. return ___cxa_find_matching_catch.apply(null, arguments);
  4047. }
  4048. function ___cxa_find_matching_catch_3() {
  4049. return ___cxa_find_matching_catch.apply(null, arguments);
  4050. }
  4051. function ___cxa_find_matching_catch_4() {
  4052. return ___cxa_find_matching_catch.apply(null, arguments);
  4053. }
  4054. function ___cxa_pure_virtual() {
  4055. ABORT = true;
  4056. throw "Pure virtual function called!";
  4057. }
  4058. function ___cxa_rethrow() {
  4059. var ptr = EXCEPTIONS.caught.pop();
  4060. ptr = EXCEPTIONS.deAdjust(ptr);
  4061. if (!EXCEPTIONS.infos[ptr].rethrown) {
  4062. EXCEPTIONS.caught.push(ptr);
  4063. EXCEPTIONS.infos[ptr].rethrown = true;
  4064. }
  4065. EXCEPTIONS.last = ptr;
  4066. throw ptr;
  4067. }
  4068. function ___resumeException(ptr) {
  4069. if (!EXCEPTIONS.last) {
  4070. EXCEPTIONS.last = ptr;
  4071. }
  4072. throw ptr;
  4073. }
  4074. function ___cxa_find_matching_catch() {
  4075. var thrown = EXCEPTIONS.last;
  4076. if (!thrown) {
  4077. return (setTempRet0(0), 0) | 0;
  4078. }
  4079. var info = EXCEPTIONS.infos[thrown];
  4080. var throwntype = info.type;
  4081. if (!throwntype) {
  4082. return (setTempRet0(0), thrown) | 0;
  4083. }
  4084. var typeArray = Array.prototype.slice.call(arguments);
  4085. var pointer = Module["___cxa_is_pointer_type"](throwntype);
  4086. if (!___cxa_find_matching_catch.buffer) ___cxa_find_matching_catch.buffer = _malloc(4);
  4087. HEAP32[___cxa_find_matching_catch.buffer >> 2] = thrown;
  4088. thrown = ___cxa_find_matching_catch.buffer;
  4089. for (var i = 0; i < typeArray.length; i++) {
  4090. if (typeArray[i] && Module["___cxa_can_catch"](typeArray[i], throwntype, thrown)) {
  4091. thrown = HEAP32[thrown >> 2];
  4092. info.adjusted = thrown;
  4093. return (setTempRet0(typeArray[i]), thrown) | 0;
  4094. }
  4095. }
  4096. thrown = HEAP32[thrown >> 2];
  4097. return (setTempRet0(throwntype), thrown) | 0;
  4098. }
  4099. function ___cxa_throw(ptr, type, destructor) {
  4100. EXCEPTIONS.infos[ptr] = {
  4101. ptr: ptr,
  4102. adjusted: ptr,
  4103. type: type,
  4104. destructor: destructor,
  4105. refcount: 0,
  4106. caught: false,
  4107. rethrown: false
  4108. };
  4109. EXCEPTIONS.last = ptr;
  4110. if (!("uncaught_exception" in __ZSt18uncaught_exceptionv)) {
  4111. __ZSt18uncaught_exceptionv.uncaught_exception = 1;
  4112. } else {
  4113. __ZSt18uncaught_exceptionv.uncaught_exception++;
  4114. }
  4115. throw ptr;
  4116. }
  4117. function ___gxx_personality_v0() {}
  4118. function ___lock() {}
  4119. var ERRNO_CODES = {
  4120. EPERM: 1,
  4121. ENOENT: 2,
  4122. ESRCH: 3,
  4123. EINTR: 4,
  4124. EIO: 5,
  4125. ENXIO: 6,
  4126. E2BIG: 7,
  4127. ENOEXEC: 8,
  4128. EBADF: 9,
  4129. ECHILD: 10,
  4130. EAGAIN: 11,
  4131. EWOULDBLOCK: 11,
  4132. ENOMEM: 12,
  4133. EACCES: 13,
  4134. EFAULT: 14,
  4135. ENOTBLK: 15,
  4136. EBUSY: 16,
  4137. EEXIST: 17,
  4138. EXDEV: 18,
  4139. ENODEV: 19,
  4140. ENOTDIR: 20,
  4141. EISDIR: 21,
  4142. EINVAL: 22,
  4143. ENFILE: 23,
  4144. EMFILE: 24,
  4145. ENOTTY: 25,
  4146. ETXTBSY: 26,
  4147. EFBIG: 27,
  4148. ENOSPC: 28,
  4149. ESPIPE: 29,
  4150. EROFS: 30,
  4151. EMLINK: 31,
  4152. EPIPE: 32,
  4153. EDOM: 33,
  4154. ERANGE: 34,
  4155. ENOMSG: 42,
  4156. EIDRM: 43,
  4157. ECHRNG: 44,
  4158. EL2NSYNC: 45,
  4159. EL3HLT: 46,
  4160. EL3RST: 47,
  4161. ELNRNG: 48,
  4162. EUNATCH: 49,
  4163. ENOCSI: 50,
  4164. EL2HLT: 51,
  4165. EDEADLK: 35,
  4166. ENOLCK: 37,
  4167. EBADE: 52,
  4168. EBADR: 53,
  4169. EXFULL: 54,
  4170. ENOANO: 55,
  4171. EBADRQC: 56,
  4172. EBADSLT: 57,
  4173. EDEADLOCK: 35,
  4174. EBFONT: 59,
  4175. ENOSTR: 60,
  4176. ENODATA: 61,
  4177. ETIME: 62,
  4178. ENOSR: 63,
  4179. ENONET: 64,
  4180. ENOPKG: 65,
  4181. EREMOTE: 66,
  4182. ENOLINK: 67,
  4183. EADV: 68,
  4184. ESRMNT: 69,
  4185. ECOMM: 70,
  4186. EPROTO: 71,
  4187. EMULTIHOP: 72,
  4188. EDOTDOT: 73,
  4189. EBADMSG: 74,
  4190. ENOTUNIQ: 76,
  4191. EBADFD: 77,
  4192. EREMCHG: 78,
  4193. ELIBACC: 79,
  4194. ELIBBAD: 80,
  4195. ELIBSCN: 81,
  4196. ELIBMAX: 82,
  4197. ELIBEXEC: 83,
  4198. ENOSYS: 38,
  4199. ENOTEMPTY: 39,
  4200. ENAMETOOLONG: 36,
  4201. ELOOP: 40,
  4202. EOPNOTSUPP: 95,
  4203. EPFNOSUPPORT: 96,
  4204. ECONNRESET: 104,
  4205. ENOBUFS: 105,
  4206. EAFNOSUPPORT: 97,
  4207. EPROTOTYPE: 91,
  4208. ENOTSOCK: 88,
  4209. ENOPROTOOPT: 92,
  4210. ESHUTDOWN: 108,
  4211. ECONNREFUSED: 111,
  4212. EADDRINUSE: 98,
  4213. ECONNABORTED: 103,
  4214. ENETUNREACH: 101,
  4215. ENETDOWN: 100,
  4216. ETIMEDOUT: 110,
  4217. EHOSTDOWN: 112,
  4218. EHOSTUNREACH: 113,
  4219. EINPROGRESS: 115,
  4220. EALREADY: 114,
  4221. EDESTADDRREQ: 89,
  4222. EMSGSIZE: 90,
  4223. EPROTONOSUPPORT: 93,
  4224. ESOCKTNOSUPPORT: 94,
  4225. EADDRNOTAVAIL: 99,
  4226. ENETRESET: 102,
  4227. EISCONN: 106,
  4228. ENOTCONN: 107,
  4229. ETOOMANYREFS: 109,
  4230. EUSERS: 87,
  4231. EDQUOT: 122,
  4232. ESTALE: 116,
  4233. ENOTSUP: 95,
  4234. ENOMEDIUM: 123,
  4235. EILSEQ: 84,
  4236. EOVERFLOW: 75,
  4237. ECANCELED: 125,
  4238. ENOTRECOVERABLE: 131,
  4239. EOWNERDEAD: 130,
  4240. ESTRPIPE: 86
  4241. };
  4242. function ___setErrNo(value) {
  4243. if (Module["___errno_location"]) HEAP32[Module["___errno_location"]() >> 2] = value; else err("failed to set errno from JS");
  4244. return value;
  4245. }
  4246. function ___map_file(pathname, size) {
  4247. ___setErrNo(ERRNO_CODES.EPERM);
  4248. return -1;
  4249. }
  4250. var ERRNO_MESSAGES = {
  4251. 0: "Success",
  4252. 1: "Not super-user",
  4253. 2: "No such file or directory",
  4254. 3: "No such process",
  4255. 4: "Interrupted system call",
  4256. 5: "I/O error",
  4257. 6: "No such device or address",
  4258. 7: "Arg list too long",
  4259. 8: "Exec format error",
  4260. 9: "Bad file number",
  4261. 10: "No children",
  4262. 11: "No more processes",
  4263. 12: "Not enough core",
  4264. 13: "Permission denied",
  4265. 14: "Bad address",
  4266. 15: "Block device required",
  4267. 16: "Mount device busy",
  4268. 17: "File exists",
  4269. 18: "Cross-device link",
  4270. 19: "No such device",
  4271. 20: "Not a directory",
  4272. 21: "Is a directory",
  4273. 22: "Invalid argument",
  4274. 23: "Too many open files in system",
  4275. 24: "Too many open files",
  4276. 25: "Not a typewriter",
  4277. 26: "Text file busy",
  4278. 27: "File too large",
  4279. 28: "No space left on device",
  4280. 29: "Illegal seek",
  4281. 30: "Read only file system",
  4282. 31: "Too many links",
  4283. 32: "Broken pipe",
  4284. 33: "Math arg out of domain of func",
  4285. 34: "Math result not representable",
  4286. 35: "File locking deadlock error",
  4287. 36: "File or path name too long",
  4288. 37: "No record locks available",
  4289. 38: "Function not implemented",
  4290. 39: "Directory not empty",
  4291. 40: "Too many symbolic links",
  4292. 42: "No message of desired type",
  4293. 43: "Identifier removed",
  4294. 44: "Channel number out of range",
  4295. 45: "Level 2 not synchronized",
  4296. 46: "Level 3 halted",
  4297. 47: "Level 3 reset",
  4298. 48: "Link number out of range",
  4299. 49: "Protocol driver not attached",
  4300. 50: "No CSI structure available",
  4301. 51: "Level 2 halted",
  4302. 52: "Invalid exchange",
  4303. 53: "Invalid request descriptor",
  4304. 54: "Exchange full",
  4305. 55: "No anode",
  4306. 56: "Invalid request code",
  4307. 57: "Invalid slot",
  4308. 59: "Bad font file fmt",
  4309. 60: "Device not a stream",
  4310. 61: "No data (for no delay io)",
  4311. 62: "Timer expired",
  4312. 63: "Out of streams resources",
  4313. 64: "Machine is not on the network",
  4314. 65: "Package not installed",
  4315. 66: "The object is remote",
  4316. 67: "The link has been severed",
  4317. 68: "Advertise error",
  4318. 69: "Srmount error",
  4319. 70: "Communication error on send",
  4320. 71: "Protocol error",
  4321. 72: "Multihop attempted",
  4322. 73: "Cross mount point (not really error)",
  4323. 74: "Trying to read unreadable message",
  4324. 75: "Value too large for defined data type",
  4325. 76: "Given log. name not unique",
  4326. 77: "f.d. invalid for this operation",
  4327. 78: "Remote address changed",
  4328. 79: "Can access a needed shared lib",
  4329. 80: "Accessing a corrupted shared lib",
  4330. 81: ".lib section in a.out corrupted",
  4331. 82: "Attempting to link in too many libs",
  4332. 83: "Attempting to exec a shared library",
  4333. 84: "Illegal byte sequence",
  4334. 86: "Streams pipe error",
  4335. 87: "Too many users",
  4336. 88: "Socket operation on non-socket",
  4337. 89: "Destination address required",
  4338. 90: "Message too long",
  4339. 91: "Protocol wrong type for socket",
  4340. 92: "Protocol not available",
  4341. 93: "Unknown protocol",
  4342. 94: "Socket type not supported",
  4343. 95: "Not supported",
  4344. 96: "Protocol family not supported",
  4345. 97: "Address family not supported by protocol family",
  4346. 98: "Address already in use",
  4347. 99: "Address not available",
  4348. 100: "Network interface is not configured",
  4349. 101: "Network is unreachable",
  4350. 102: "Connection reset by network",
  4351. 103: "Connection aborted",
  4352. 104: "Connection reset by peer",
  4353. 105: "No buffer space available",
  4354. 106: "Socket is already connected",
  4355. 107: "Socket is not connected",
  4356. 108: "Can't send after socket shutdown",
  4357. 109: "Too many references",
  4358. 110: "Connection timed out",
  4359. 111: "Connection refused",
  4360. 112: "Host is down",
  4361. 113: "Host is unreachable",
  4362. 114: "Socket already connected",
  4363. 115: "Connection already in progress",
  4364. 116: "Stale file handle",
  4365. 122: "Quota exceeded",
  4366. 123: "No medium (in tape drive)",
  4367. 125: "Operation canceled",
  4368. 130: "Previous owner died",
  4369. 131: "State not recoverable"
  4370. };
  4371. var PATH = {
  4372. splitPath: (function(filename) {
  4373. var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;
  4374. return splitPathRe.exec(filename).slice(1);
  4375. }),
  4376. normalizeArray: (function(parts, allowAboveRoot) {
  4377. var up = 0;
  4378. for (var i = parts.length - 1; i >= 0; i--) {
  4379. var last = parts[i];
  4380. if (last === ".") {
  4381. parts.splice(i, 1);
  4382. } else if (last === "..") {
  4383. parts.splice(i, 1);
  4384. up++;
  4385. } else if (up) {
  4386. parts.splice(i, 1);
  4387. up--;
  4388. }
  4389. }
  4390. if (allowAboveRoot) {
  4391. for (; up; up--) {
  4392. parts.unshift("..");
  4393. }
  4394. }
  4395. return parts;
  4396. }),
  4397. normalize: (function(path) {
  4398. var isAbsolute = path.charAt(0) === "/", trailingSlash = path.substr(-1) === "/";
  4399. path = PATH.normalizeArray(path.split("/").filter((function(p) {
  4400. return !!p;
  4401. })), !isAbsolute).join("/");
  4402. if (!path && !isAbsolute) {
  4403. path = ".";
  4404. }
  4405. if (path && trailingSlash) {
  4406. path += "/";
  4407. }
  4408. return (isAbsolute ? "/" : "") + path;
  4409. }),
  4410. dirname: (function(path) {
  4411. var result = PATH.splitPath(path), root = result[0], dir = result[1];
  4412. if (!root && !dir) {
  4413. return ".";
  4414. }
  4415. if (dir) {
  4416. dir = dir.substr(0, dir.length - 1);
  4417. }
  4418. return root + dir;
  4419. }),
  4420. basename: (function(path) {
  4421. if (path === "/") return "/";
  4422. var lastSlash = path.lastIndexOf("/");
  4423. if (lastSlash === -1) return path;
  4424. return path.substr(lastSlash + 1);
  4425. }),
  4426. extname: (function(path) {
  4427. return PATH.splitPath(path)[3];
  4428. }),
  4429. join: (function() {
  4430. var paths = Array.prototype.slice.call(arguments, 0);
  4431. return PATH.normalize(paths.join("/"));
  4432. }),
  4433. join2: (function(l, r) {
  4434. return PATH.normalize(l + "/" + r);
  4435. }),
  4436. resolve: (function() {
  4437. var resolvedPath = "", resolvedAbsolute = false;
  4438. for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) {
  4439. var path = i >= 0 ? arguments[i] : FS.cwd();
  4440. if (typeof path !== "string") {
  4441. throw new TypeError("Arguments to path.resolve must be strings");
  4442. } else if (!path) {
  4443. return "";
  4444. }
  4445. resolvedPath = path + "/" + resolvedPath;
  4446. resolvedAbsolute = path.charAt(0) === "/";
  4447. }
  4448. resolvedPath = PATH.normalizeArray(resolvedPath.split("/").filter((function(p) {
  4449. return !!p;
  4450. })), !resolvedAbsolute).join("/");
  4451. return (resolvedAbsolute ? "/" : "") + resolvedPath || ".";
  4452. }),
  4453. relative: (function(from, to) {
  4454. from = PATH.resolve(from).substr(1);
  4455. to = PATH.resolve(to).substr(1);
  4456. function trim(arr) {
  4457. var start = 0;
  4458. for (; start < arr.length; start++) {
  4459. if (arr[start] !== "") break;
  4460. }
  4461. var end = arr.length - 1;
  4462. for (; end >= 0; end--) {
  4463. if (arr[end] !== "") break;
  4464. }
  4465. if (start > end) return [];
  4466. return arr.slice(start, end - start + 1);
  4467. }
  4468. var fromParts = trim(from.split("/"));
  4469. var toParts = trim(to.split("/"));
  4470. var length = Math.min(fromParts.length, toParts.length);
  4471. var samePartsLength = length;
  4472. for (var i = 0; i < length; i++) {
  4473. if (fromParts[i] !== toParts[i]) {
  4474. samePartsLength = i;
  4475. break;
  4476. }
  4477. }
  4478. var outputParts = [];
  4479. for (var i = samePartsLength; i < fromParts.length; i++) {
  4480. outputParts.push("..");
  4481. }
  4482. outputParts = outputParts.concat(toParts.slice(samePartsLength));
  4483. return outputParts.join("/");
  4484. })
  4485. };
  4486. var TTY = {
  4487. ttys: [],
  4488. init: (function() {}),
  4489. shutdown: (function() {}),
  4490. register: (function(dev, ops) {
  4491. TTY.ttys[dev] = {
  4492. input: [],
  4493. output: [],
  4494. ops: ops
  4495. };
  4496. FS.registerDevice(dev, TTY.stream_ops);
  4497. }),
  4498. stream_ops: {
  4499. open: (function(stream) {
  4500. var tty = TTY.ttys[stream.node.rdev];
  4501. if (!tty) {
  4502. throw new FS.ErrnoError(ERRNO_CODES.ENODEV);
  4503. }
  4504. stream.tty = tty;
  4505. stream.seekable = false;
  4506. }),
  4507. close: (function(stream) {
  4508. stream.tty.ops.flush(stream.tty);
  4509. }),
  4510. flush: (function(stream) {
  4511. stream.tty.ops.flush(stream.tty);
  4512. }),
  4513. read: (function(stream, buffer, offset, length, pos) {
  4514. if (!stream.tty || !stream.tty.ops.get_char) {
  4515. throw new FS.ErrnoError(ERRNO_CODES.ENXIO);
  4516. }
  4517. var bytesRead = 0;
  4518. for (var i = 0; i < length; i++) {
  4519. var result;
  4520. try {
  4521. result = stream.tty.ops.get_char(stream.tty);
  4522. } catch (e) {
  4523. throw new FS.ErrnoError(ERRNO_CODES.EIO);
  4524. }
  4525. if (result === undefined && bytesRead === 0) {
  4526. throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);
  4527. }
  4528. if (result === null || result === undefined) break;
  4529. bytesRead++;
  4530. buffer[offset + i] = result;
  4531. }
  4532. if (bytesRead) {
  4533. stream.node.timestamp = Date.now();
  4534. }
  4535. return bytesRead;
  4536. }),
  4537. write: (function(stream, buffer, offset, length, pos) {
  4538. if (!stream.tty || !stream.tty.ops.put_char) {
  4539. throw new FS.ErrnoError(ERRNO_CODES.ENXIO);
  4540. }
  4541. for (var i = 0; i < length; i++) {
  4542. try {
  4543. stream.tty.ops.put_char(stream.tty, buffer[offset + i]);
  4544. } catch (e) {
  4545. throw new FS.ErrnoError(ERRNO_CODES.EIO);
  4546. }
  4547. }
  4548. if (length) {
  4549. stream.node.timestamp = Date.now();
  4550. }
  4551. return i;
  4552. })
  4553. },
  4554. default_tty_ops: {
  4555. get_char: (function(tty) {
  4556. if (!tty.input.length) {
  4557. var result = null;
  4558. if (ENVIRONMENT_IS_NODE) {
  4559. var BUFSIZE = 256;
  4560. var buf = new Buffer(BUFSIZE);
  4561. var bytesRead = 0;
  4562. var isPosixPlatform = process.platform != "win32";
  4563. var fd = process.stdin.fd;
  4564. if (isPosixPlatform) {
  4565. var usingDevice = false;
  4566. try {
  4567. fd = fs.openSync("/dev/stdin", "r");
  4568. usingDevice = true;
  4569. } catch (e) {}
  4570. }
  4571. try {
  4572. bytesRead = fs.readSync(fd, buf, 0, BUFSIZE, null);
  4573. } catch (e) {
  4574. if (e.toString().indexOf("EOF") != -1) bytesRead = 0; else throw e;
  4575. }
  4576. if (usingDevice) {
  4577. fs.closeSync(fd);
  4578. }
  4579. if (bytesRead > 0) {
  4580. result = buf.slice(0, bytesRead).toString("utf-8");
  4581. } else {
  4582. result = null;
  4583. }
  4584. } else if (typeof window != "undefined" && typeof window.prompt == "function") {
  4585. result = window.prompt("Input: ");
  4586. if (result !== null) {
  4587. result += "\n";
  4588. }
  4589. } else if (typeof readline == "function") {
  4590. result = readline();
  4591. if (result !== null) {
  4592. result += "\n";
  4593. }
  4594. }
  4595. if (!result) {
  4596. return null;
  4597. }
  4598. tty.input = intArrayFromString(result, true);
  4599. }
  4600. return tty.input.shift();
  4601. }),
  4602. put_char: (function(tty, val) {
  4603. if (val === null || val === 10) {
  4604. out(UTF8ArrayToString(tty.output, 0));
  4605. tty.output = [];
  4606. } else {
  4607. if (val != 0) tty.output.push(val);
  4608. }
  4609. }),
  4610. flush: (function(tty) {
  4611. if (tty.output && tty.output.length > 0) {
  4612. out(UTF8ArrayToString(tty.output, 0));
  4613. tty.output = [];
  4614. }
  4615. })
  4616. },
  4617. default_tty1_ops: {
  4618. put_char: (function(tty, val) {
  4619. if (val === null || val === 10) {
  4620. err(UTF8ArrayToString(tty.output, 0));
  4621. tty.output = [];
  4622. } else {
  4623. if (val != 0) tty.output.push(val);
  4624. }
  4625. }),
  4626. flush: (function(tty) {
  4627. if (tty.output && tty.output.length > 0) {
  4628. err(UTF8ArrayToString(tty.output, 0));
  4629. tty.output = [];
  4630. }
  4631. })
  4632. }
  4633. };
  4634. var MEMFS = {
  4635. ops_table: null,
  4636. mount: (function(mount) {
  4637. return MEMFS.createNode(null, "/", 16384 | 511, 0);
  4638. }),
  4639. createNode: (function(parent, name, mode, dev) {
  4640. if (FS.isBlkdev(mode) || FS.isFIFO(mode)) {
  4641. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  4642. }
  4643. if (!MEMFS.ops_table) {
  4644. MEMFS.ops_table = {
  4645. dir: {
  4646. node: {
  4647. getattr: MEMFS.node_ops.getattr,
  4648. setattr: MEMFS.node_ops.setattr,
  4649. lookup: MEMFS.node_ops.lookup,
  4650. mknod: MEMFS.node_ops.mknod,
  4651. rename: MEMFS.node_ops.rename,
  4652. unlink: MEMFS.node_ops.unlink,
  4653. rmdir: MEMFS.node_ops.rmdir,
  4654. readdir: MEMFS.node_ops.readdir,
  4655. symlink: MEMFS.node_ops.symlink
  4656. },
  4657. stream: {
  4658. llseek: MEMFS.stream_ops.llseek
  4659. }
  4660. },
  4661. file: {
  4662. node: {
  4663. getattr: MEMFS.node_ops.getattr,
  4664. setattr: MEMFS.node_ops.setattr
  4665. },
  4666. stream: {
  4667. llseek: MEMFS.stream_ops.llseek,
  4668. read: MEMFS.stream_ops.read,
  4669. write: MEMFS.stream_ops.write,
  4670. allocate: MEMFS.stream_ops.allocate,
  4671. mmap: MEMFS.stream_ops.mmap,
  4672. msync: MEMFS.stream_ops.msync
  4673. }
  4674. },
  4675. link: {
  4676. node: {
  4677. getattr: MEMFS.node_ops.getattr,
  4678. setattr: MEMFS.node_ops.setattr,
  4679. readlink: MEMFS.node_ops.readlink
  4680. },
  4681. stream: {}
  4682. },
  4683. chrdev: {
  4684. node: {
  4685. getattr: MEMFS.node_ops.getattr,
  4686. setattr: MEMFS.node_ops.setattr
  4687. },
  4688. stream: FS.chrdev_stream_ops
  4689. }
  4690. };
  4691. }
  4692. var node = FS.createNode(parent, name, mode, dev);
  4693. if (FS.isDir(node.mode)) {
  4694. node.node_ops = MEMFS.ops_table.dir.node;
  4695. node.stream_ops = MEMFS.ops_table.dir.stream;
  4696. node.contents = {};
  4697. } else if (FS.isFile(node.mode)) {
  4698. node.node_ops = MEMFS.ops_table.file.node;
  4699. node.stream_ops = MEMFS.ops_table.file.stream;
  4700. node.usedBytes = 0;
  4701. node.contents = null;
  4702. } else if (FS.isLink(node.mode)) {
  4703. node.node_ops = MEMFS.ops_table.link.node;
  4704. node.stream_ops = MEMFS.ops_table.link.stream;
  4705. } else if (FS.isChrdev(node.mode)) {
  4706. node.node_ops = MEMFS.ops_table.chrdev.node;
  4707. node.stream_ops = MEMFS.ops_table.chrdev.stream;
  4708. }
  4709. node.timestamp = Date.now();
  4710. if (parent) {
  4711. parent.contents[name] = node;
  4712. }
  4713. return node;
  4714. }),
  4715. getFileDataAsRegularArray: (function(node) {
  4716. if (node.contents && node.contents.subarray) {
  4717. var arr = [];
  4718. for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]);
  4719. return arr;
  4720. }
  4721. return node.contents;
  4722. }),
  4723. getFileDataAsTypedArray: (function(node) {
  4724. if (!node.contents) return new Uint8Array;
  4725. if (node.contents.subarray) return node.contents.subarray(0, node.usedBytes);
  4726. return new Uint8Array(node.contents);
  4727. }),
  4728. expandFileStorage: (function(node, newCapacity) {
  4729. if (node.contents && node.contents.subarray && newCapacity > node.contents.length) {
  4730. node.contents = MEMFS.getFileDataAsRegularArray(node);
  4731. node.usedBytes = node.contents.length;
  4732. }
  4733. if (!node.contents || node.contents.subarray) {
  4734. var prevCapacity = node.contents ? node.contents.length : 0;
  4735. if (prevCapacity >= newCapacity) return;
  4736. var CAPACITY_DOUBLING_MAX = 1024 * 1024;
  4737. newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) | 0);
  4738. if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256);
  4739. var oldContents = node.contents;
  4740. node.contents = new Uint8Array(newCapacity);
  4741. if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, node.usedBytes), 0);
  4742. return;
  4743. }
  4744. if (!node.contents && newCapacity > 0) node.contents = [];
  4745. while (node.contents.length < newCapacity) node.contents.push(0);
  4746. }),
  4747. resizeFileStorage: (function(node, newSize) {
  4748. if (node.usedBytes == newSize) return;
  4749. if (newSize == 0) {
  4750. node.contents = null;
  4751. node.usedBytes = 0;
  4752. return;
  4753. }
  4754. if (!node.contents || node.contents.subarray) {
  4755. var oldContents = node.contents;
  4756. node.contents = new Uint8Array(new ArrayBuffer(newSize));
  4757. if (oldContents) {
  4758. node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes)));
  4759. }
  4760. node.usedBytes = newSize;
  4761. return;
  4762. }
  4763. if (!node.contents) node.contents = [];
  4764. if (node.contents.length > newSize) node.contents.length = newSize; else while (node.contents.length < newSize) node.contents.push(0);
  4765. node.usedBytes = newSize;
  4766. }),
  4767. node_ops: {
  4768. getattr: (function(node) {
  4769. var attr = {};
  4770. attr.dev = FS.isChrdev(node.mode) ? node.id : 1;
  4771. attr.ino = node.id;
  4772. attr.mode = node.mode;
  4773. attr.nlink = 1;
  4774. attr.uid = 0;
  4775. attr.gid = 0;
  4776. attr.rdev = node.rdev;
  4777. if (FS.isDir(node.mode)) {
  4778. attr.size = 4096;
  4779. } else if (FS.isFile(node.mode)) {
  4780. attr.size = node.usedBytes;
  4781. } else if (FS.isLink(node.mode)) {
  4782. attr.size = node.link.length;
  4783. } else {
  4784. attr.size = 0;
  4785. }
  4786. attr.atime = new Date(node.timestamp);
  4787. attr.mtime = new Date(node.timestamp);
  4788. attr.ctime = new Date(node.timestamp);
  4789. attr.blksize = 4096;
  4790. attr.blocks = Math.ceil(attr.size / attr.blksize);
  4791. return attr;
  4792. }),
  4793. setattr: (function(node, attr) {
  4794. if (attr.mode !== undefined) {
  4795. node.mode = attr.mode;
  4796. }
  4797. if (attr.timestamp !== undefined) {
  4798. node.timestamp = attr.timestamp;
  4799. }
  4800. if (attr.size !== undefined) {
  4801. MEMFS.resizeFileStorage(node, attr.size);
  4802. }
  4803. }),
  4804. lookup: (function(parent, name) {
  4805. throw FS.genericErrors[ERRNO_CODES.ENOENT];
  4806. }),
  4807. mknod: (function(parent, name, mode, dev) {
  4808. return MEMFS.createNode(parent, name, mode, dev);
  4809. }),
  4810. rename: (function(old_node, new_dir, new_name) {
  4811. if (FS.isDir(old_node.mode)) {
  4812. var new_node;
  4813. try {
  4814. new_node = FS.lookupNode(new_dir, new_name);
  4815. } catch (e) {}
  4816. if (new_node) {
  4817. for (var i in new_node.contents) {
  4818. throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY);
  4819. }
  4820. }
  4821. }
  4822. delete old_node.parent.contents[old_node.name];
  4823. old_node.name = new_name;
  4824. new_dir.contents[new_name] = old_node;
  4825. old_node.parent = new_dir;
  4826. }),
  4827. unlink: (function(parent, name) {
  4828. delete parent.contents[name];
  4829. }),
  4830. rmdir: (function(parent, name) {
  4831. var node = FS.lookupNode(parent, name);
  4832. for (var i in node.contents) {
  4833. throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY);
  4834. }
  4835. delete parent.contents[name];
  4836. }),
  4837. readdir: (function(node) {
  4838. var entries = [ ".", ".." ];
  4839. for (var key in node.contents) {
  4840. if (!node.contents.hasOwnProperty(key)) {
  4841. continue;
  4842. }
  4843. entries.push(key);
  4844. }
  4845. return entries;
  4846. }),
  4847. symlink: (function(parent, newname, oldpath) {
  4848. var node = MEMFS.createNode(parent, newname, 511 | 40960, 0);
  4849. node.link = oldpath;
  4850. return node;
  4851. }),
  4852. readlink: (function(node) {
  4853. if (!FS.isLink(node.mode)) {
  4854. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  4855. }
  4856. return node.link;
  4857. })
  4858. },
  4859. stream_ops: {
  4860. read: (function(stream, buffer, offset, length, position) {
  4861. var contents = stream.node.contents;
  4862. if (position >= stream.node.usedBytes) return 0;
  4863. var size = Math.min(stream.node.usedBytes - position, length);
  4864. assert(size >= 0);
  4865. if (size > 8 && contents.subarray) {
  4866. buffer.set(contents.subarray(position, position + size), offset);
  4867. } else {
  4868. for (var i = 0; i < size; i++) buffer[offset + i] = contents[position + i];
  4869. }
  4870. return size;
  4871. }),
  4872. write: (function(stream, buffer, offset, length, position, canOwn) {
  4873. if (!length) return 0;
  4874. var node = stream.node;
  4875. node.timestamp = Date.now();
  4876. if (buffer.subarray && (!node.contents || node.contents.subarray)) {
  4877. if (canOwn) {
  4878. assert(position === 0, "canOwn must imply no weird position inside the file");
  4879. node.contents = buffer.subarray(offset, offset + length);
  4880. node.usedBytes = length;
  4881. return length;
  4882. } else if (node.usedBytes === 0 && position === 0) {
  4883. node.contents = new Uint8Array(buffer.subarray(offset, offset + length));
  4884. node.usedBytes = length;
  4885. return length;
  4886. } else if (position + length <= node.usedBytes) {
  4887. node.contents.set(buffer.subarray(offset, offset + length), position);
  4888. return length;
  4889. }
  4890. }
  4891. MEMFS.expandFileStorage(node, position + length);
  4892. if (node.contents.subarray && buffer.subarray) node.contents.set(buffer.subarray(offset, offset + length), position); else {
  4893. for (var i = 0; i < length; i++) {
  4894. node.contents[position + i] = buffer[offset + i];
  4895. }
  4896. }
  4897. node.usedBytes = Math.max(node.usedBytes, position + length);
  4898. return length;
  4899. }),
  4900. llseek: (function(stream, offset, whence) {
  4901. var position = offset;
  4902. if (whence === 1) {
  4903. position += stream.position;
  4904. } else if (whence === 2) {
  4905. if (FS.isFile(stream.node.mode)) {
  4906. position += stream.node.usedBytes;
  4907. }
  4908. }
  4909. if (position < 0) {
  4910. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  4911. }
  4912. return position;
  4913. }),
  4914. allocate: (function(stream, offset, length) {
  4915. MEMFS.expandFileStorage(stream.node, offset + length);
  4916. stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length);
  4917. }),
  4918. mmap: (function(stream, buffer, offset, length, position, prot, flags) {
  4919. if (!FS.isFile(stream.node.mode)) {
  4920. throw new FS.ErrnoError(ERRNO_CODES.ENODEV);
  4921. }
  4922. var ptr;
  4923. var allocated;
  4924. var contents = stream.node.contents;
  4925. if (!(flags & 2) && (contents.buffer === buffer || contents.buffer === buffer.buffer)) {
  4926. allocated = false;
  4927. ptr = contents.byteOffset;
  4928. } else {
  4929. if (position > 0 || position + length < stream.node.usedBytes) {
  4930. if (contents.subarray) {
  4931. contents = contents.subarray(position, position + length);
  4932. } else {
  4933. contents = Array.prototype.slice.call(contents, position, position + length);
  4934. }
  4935. }
  4936. allocated = true;
  4937. ptr = _malloc(length);
  4938. if (!ptr) {
  4939. throw new FS.ErrnoError(ERRNO_CODES.ENOMEM);
  4940. }
  4941. buffer.set(contents, ptr);
  4942. }
  4943. return {
  4944. ptr: ptr,
  4945. allocated: allocated
  4946. };
  4947. }),
  4948. msync: (function(stream, buffer, offset, length, mmapFlags) {
  4949. if (!FS.isFile(stream.node.mode)) {
  4950. throw new FS.ErrnoError(ERRNO_CODES.ENODEV);
  4951. }
  4952. if (mmapFlags & 2) {
  4953. return 0;
  4954. }
  4955. var bytesWritten = MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false);
  4956. return 0;
  4957. })
  4958. }
  4959. };
  4960. var IDBFS = {
  4961. dbs: {},
  4962. indexedDB: (function() {
  4963. if (typeof indexedDB !== "undefined") return indexedDB;
  4964. var ret = null;
  4965. if (typeof window === "object") ret = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
  4966. assert(ret, "IDBFS used, but indexedDB not supported");
  4967. return ret;
  4968. }),
  4969. DB_VERSION: 21,
  4970. DB_STORE_NAME: "FILE_DATA",
  4971. mount: (function(mount) {
  4972. return MEMFS.mount.apply(null, arguments);
  4973. }),
  4974. syncfs: (function(mount, populate, callback) {
  4975. IDBFS.getLocalSet(mount, (function(err, local) {
  4976. if (err) return callback(err);
  4977. IDBFS.getRemoteSet(mount, (function(err, remote) {
  4978. if (err) return callback(err);
  4979. var src = populate ? remote : local;
  4980. var dst = populate ? local : remote;
  4981. IDBFS.reconcile(src, dst, callback);
  4982. }));
  4983. }));
  4984. }),
  4985. getDB: (function(name, callback) {
  4986. var db = IDBFS.dbs[name];
  4987. if (db) {
  4988. return callback(null, db);
  4989. }
  4990. var req;
  4991. try {
  4992. req = IDBFS.indexedDB().open(name, IDBFS.DB_VERSION);
  4993. } catch (e) {
  4994. return callback(e);
  4995. }
  4996. if (!req) {
  4997. return callback("Unable to connect to IndexedDB");
  4998. }
  4999. req.onupgradeneeded = (function(e) {
  5000. var db = e.target.result;
  5001. var transaction = e.target.transaction;
  5002. var fileStore;
  5003. if (db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)) {
  5004. fileStore = transaction.objectStore(IDBFS.DB_STORE_NAME);
  5005. } else {
  5006. fileStore = db.createObjectStore(IDBFS.DB_STORE_NAME);
  5007. }
  5008. if (!fileStore.indexNames.contains("timestamp")) {
  5009. fileStore.createIndex("timestamp", "timestamp", {
  5010. unique: false
  5011. });
  5012. }
  5013. });
  5014. req.onsuccess = (function() {
  5015. db = req.result;
  5016. IDBFS.dbs[name] = db;
  5017. callback(null, db);
  5018. });
  5019. req.onerror = (function(e) {
  5020. callback(this.error);
  5021. e.preventDefault();
  5022. });
  5023. }),
  5024. getLocalSet: (function(mount, callback) {
  5025. var entries = {};
  5026. function isRealDir(p) {
  5027. return p !== "." && p !== "..";
  5028. }
  5029. function toAbsolute(root) {
  5030. return (function(p) {
  5031. return PATH.join2(root, p);
  5032. });
  5033. }
  5034. var check = FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint));
  5035. while (check.length) {
  5036. var path = check.pop();
  5037. var stat;
  5038. try {
  5039. stat = FS.stat(path);
  5040. } catch (e) {
  5041. return callback(e);
  5042. }
  5043. if (FS.isDir(stat.mode)) {
  5044. check.push.apply(check, FS.readdir(path).filter(isRealDir).map(toAbsolute(path)));
  5045. }
  5046. entries[path] = {
  5047. timestamp: stat.mtime
  5048. };
  5049. }
  5050. return callback(null, {
  5051. type: "local",
  5052. entries: entries
  5053. });
  5054. }),
  5055. getRemoteSet: (function(mount, callback) {
  5056. var entries = {};
  5057. IDBFS.getDB(mount.mountpoint, (function(err, db) {
  5058. if (err) return callback(err);
  5059. try {
  5060. var transaction = db.transaction([ IDBFS.DB_STORE_NAME ], "readonly");
  5061. transaction.onerror = (function(e) {
  5062. callback(this.error);
  5063. e.preventDefault();
  5064. });
  5065. var store = transaction.objectStore(IDBFS.DB_STORE_NAME);
  5066. var index = store.index("timestamp");
  5067. index.openKeyCursor().onsuccess = (function(event) {
  5068. var cursor = event.target.result;
  5069. if (!cursor) {
  5070. return callback(null, {
  5071. type: "remote",
  5072. db: db,
  5073. entries: entries
  5074. });
  5075. }
  5076. entries[cursor.primaryKey] = {
  5077. timestamp: cursor.key
  5078. };
  5079. cursor.continue();
  5080. });
  5081. } catch (e) {
  5082. return callback(e);
  5083. }
  5084. }));
  5085. }),
  5086. loadLocalEntry: (function(path, callback) {
  5087. var stat, node;
  5088. try {
  5089. var lookup = FS.lookupPath(path);
  5090. node = lookup.node;
  5091. stat = FS.stat(path);
  5092. } catch (e) {
  5093. return callback(e);
  5094. }
  5095. if (FS.isDir(stat.mode)) {
  5096. return callback(null, {
  5097. timestamp: stat.mtime,
  5098. mode: stat.mode
  5099. });
  5100. } else if (FS.isFile(stat.mode)) {
  5101. node.contents = MEMFS.getFileDataAsTypedArray(node);
  5102. return callback(null, {
  5103. timestamp: stat.mtime,
  5104. mode: stat.mode,
  5105. contents: node.contents
  5106. });
  5107. } else {
  5108. return callback(new Error("node type not supported"));
  5109. }
  5110. }),
  5111. storeLocalEntry: (function(path, entry, callback) {
  5112. try {
  5113. if (FS.isDir(entry.mode)) {
  5114. FS.mkdir(path, entry.mode);
  5115. } else if (FS.isFile(entry.mode)) {
  5116. FS.writeFile(path, entry.contents, {
  5117. canOwn: true
  5118. });
  5119. } else {
  5120. return callback(new Error("node type not supported"));
  5121. }
  5122. FS.chmod(path, entry.mode);
  5123. FS.utime(path, entry.timestamp, entry.timestamp);
  5124. } catch (e) {
  5125. return callback(e);
  5126. }
  5127. callback(null);
  5128. }),
  5129. removeLocalEntry: (function(path, callback) {
  5130. try {
  5131. var lookup = FS.lookupPath(path);
  5132. var stat = FS.stat(path);
  5133. if (FS.isDir(stat.mode)) {
  5134. FS.rmdir(path);
  5135. } else if (FS.isFile(stat.mode)) {
  5136. FS.unlink(path);
  5137. }
  5138. } catch (e) {
  5139. return callback(e);
  5140. }
  5141. callback(null);
  5142. }),
  5143. loadRemoteEntry: (function(store, path, callback) {
  5144. var req = store.get(path);
  5145. req.onsuccess = (function(event) {
  5146. callback(null, event.target.result);
  5147. });
  5148. req.onerror = (function(e) {
  5149. callback(this.error);
  5150. e.preventDefault();
  5151. });
  5152. }),
  5153. storeRemoteEntry: (function(store, path, entry, callback) {
  5154. var req = store.put(entry, path);
  5155. req.onsuccess = (function() {
  5156. callback(null);
  5157. });
  5158. req.onerror = (function(e) {
  5159. callback(this.error);
  5160. e.preventDefault();
  5161. });
  5162. }),
  5163. removeRemoteEntry: (function(store, path, callback) {
  5164. var req = store.delete(path);
  5165. req.onsuccess = (function() {
  5166. callback(null);
  5167. });
  5168. req.onerror = (function(e) {
  5169. callback(this.error);
  5170. e.preventDefault();
  5171. });
  5172. }),
  5173. reconcile: (function(src, dst, callback) {
  5174. var total = 0;
  5175. var create = [];
  5176. Object.keys(src.entries).forEach((function(key) {
  5177. var e = src.entries[key];
  5178. var e2 = dst.entries[key];
  5179. if (!e2 || e.timestamp > e2.timestamp) {
  5180. create.push(key);
  5181. total++;
  5182. }
  5183. }));
  5184. var remove = [];
  5185. Object.keys(dst.entries).forEach((function(key) {
  5186. var e = dst.entries[key];
  5187. var e2 = src.entries[key];
  5188. if (!e2) {
  5189. remove.push(key);
  5190. total++;
  5191. }
  5192. }));
  5193. if (!total) {
  5194. return callback(null);
  5195. }
  5196. var completed = 0;
  5197. var db = src.type === "remote" ? src.db : dst.db;
  5198. var transaction = db.transaction([ IDBFS.DB_STORE_NAME ], "readwrite");
  5199. var store = transaction.objectStore(IDBFS.DB_STORE_NAME);
  5200. function done(err) {
  5201. if (err) {
  5202. if (!done.errored) {
  5203. done.errored = true;
  5204. return callback(err);
  5205. }
  5206. return;
  5207. }
  5208. if (++completed >= total) {
  5209. return callback(null);
  5210. }
  5211. }
  5212. transaction.onerror = (function(e) {
  5213. done(this.error);
  5214. e.preventDefault();
  5215. });
  5216. create.sort().forEach((function(path) {
  5217. if (dst.type === "local") {
  5218. IDBFS.loadRemoteEntry(store, path, (function(err, entry) {
  5219. if (err) return done(err);
  5220. IDBFS.storeLocalEntry(path, entry, done);
  5221. }));
  5222. } else {
  5223. IDBFS.loadLocalEntry(path, (function(err, entry) {
  5224. if (err) return done(err);
  5225. IDBFS.storeRemoteEntry(store, path, entry, done);
  5226. }));
  5227. }
  5228. }));
  5229. remove.sort().reverse().forEach((function(path) {
  5230. if (dst.type === "local") {
  5231. IDBFS.removeLocalEntry(path, done);
  5232. } else {
  5233. IDBFS.removeRemoteEntry(store, path, done);
  5234. }
  5235. }));
  5236. })
  5237. };
  5238. var NODEFS = {
  5239. isWindows: false,
  5240. staticInit: (function() {
  5241. NODEFS.isWindows = !!process.platform.match(/^win/);
  5242. var flags = process["binding"]("constants");
  5243. if (flags["fs"]) {
  5244. flags = flags["fs"];
  5245. }
  5246. NODEFS.flagsForNodeMap = {
  5247. "1024": flags["O_APPEND"],
  5248. "64": flags["O_CREAT"],
  5249. "128": flags["O_EXCL"],
  5250. "0": flags["O_RDONLY"],
  5251. "2": flags["O_RDWR"],
  5252. "4096": flags["O_SYNC"],
  5253. "512": flags["O_TRUNC"],
  5254. "1": flags["O_WRONLY"]
  5255. };
  5256. }),
  5257. bufferFrom: (function(arrayBuffer) {
  5258. return Buffer.alloc ? Buffer.from(arrayBuffer) : new Buffer(arrayBuffer);
  5259. }),
  5260. mount: (function(mount) {
  5261. assert(ENVIRONMENT_IS_NODE);
  5262. return NODEFS.createNode(null, "/", NODEFS.getMode(mount.opts.root), 0);
  5263. }),
  5264. createNode: (function(parent, name, mode, dev) {
  5265. if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) {
  5266. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  5267. }
  5268. var node = FS.createNode(parent, name, mode);
  5269. node.node_ops = NODEFS.node_ops;
  5270. node.stream_ops = NODEFS.stream_ops;
  5271. return node;
  5272. }),
  5273. getMode: (function(path) {
  5274. var stat;
  5275. try {
  5276. stat = fs.lstatSync(path);
  5277. if (NODEFS.isWindows) {
  5278. stat.mode = stat.mode | (stat.mode & 292) >> 2;
  5279. }
  5280. } catch (e) {
  5281. if (!e.code) throw e;
  5282. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5283. }
  5284. return stat.mode;
  5285. }),
  5286. realPath: (function(node) {
  5287. var parts = [];
  5288. while (node.parent !== node) {
  5289. parts.push(node.name);
  5290. node = node.parent;
  5291. }
  5292. parts.push(node.mount.opts.root);
  5293. parts.reverse();
  5294. return PATH.join.apply(null, parts);
  5295. }),
  5296. flagsForNode: (function(flags) {
  5297. flags &= ~2097152;
  5298. flags &= ~2048;
  5299. flags &= ~32768;
  5300. flags &= ~524288;
  5301. var newFlags = 0;
  5302. for (var k in NODEFS.flagsForNodeMap) {
  5303. if (flags & k) {
  5304. newFlags |= NODEFS.flagsForNodeMap[k];
  5305. flags ^= k;
  5306. }
  5307. }
  5308. if (!flags) {
  5309. return newFlags;
  5310. } else {
  5311. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  5312. }
  5313. }),
  5314. node_ops: {
  5315. getattr: (function(node) {
  5316. var path = NODEFS.realPath(node);
  5317. var stat;
  5318. try {
  5319. stat = fs.lstatSync(path);
  5320. } catch (e) {
  5321. if (!e.code) throw e;
  5322. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5323. }
  5324. if (NODEFS.isWindows && !stat.blksize) {
  5325. stat.blksize = 4096;
  5326. }
  5327. if (NODEFS.isWindows && !stat.blocks) {
  5328. stat.blocks = (stat.size + stat.blksize - 1) / stat.blksize | 0;
  5329. }
  5330. return {
  5331. dev: stat.dev,
  5332. ino: stat.ino,
  5333. mode: stat.mode,
  5334. nlink: stat.nlink,
  5335. uid: stat.uid,
  5336. gid: stat.gid,
  5337. rdev: stat.rdev,
  5338. size: stat.size,
  5339. atime: stat.atime,
  5340. mtime: stat.mtime,
  5341. ctime: stat.ctime,
  5342. blksize: stat.blksize,
  5343. blocks: stat.blocks
  5344. };
  5345. }),
  5346. setattr: (function(node, attr) {
  5347. var path = NODEFS.realPath(node);
  5348. try {
  5349. if (attr.mode !== undefined) {
  5350. fs.chmodSync(path, attr.mode);
  5351. node.mode = attr.mode;
  5352. }
  5353. if (attr.timestamp !== undefined) {
  5354. var date = new Date(attr.timestamp);
  5355. fs.utimesSync(path, date, date);
  5356. }
  5357. if (attr.size !== undefined) {
  5358. fs.truncateSync(path, attr.size);
  5359. }
  5360. } catch (e) {
  5361. if (!e.code) throw e;
  5362. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5363. }
  5364. }),
  5365. lookup: (function(parent, name) {
  5366. var path = PATH.join2(NODEFS.realPath(parent), name);
  5367. var mode = NODEFS.getMode(path);
  5368. return NODEFS.createNode(parent, name, mode);
  5369. }),
  5370. mknod: (function(parent, name, mode, dev) {
  5371. var node = NODEFS.createNode(parent, name, mode, dev);
  5372. var path = NODEFS.realPath(node);
  5373. try {
  5374. if (FS.isDir(node.mode)) {
  5375. fs.mkdirSync(path, node.mode);
  5376. } else {
  5377. fs.writeFileSync(path, "", {
  5378. mode: node.mode
  5379. });
  5380. }
  5381. } catch (e) {
  5382. if (!e.code) throw e;
  5383. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5384. }
  5385. return node;
  5386. }),
  5387. rename: (function(oldNode, newDir, newName) {
  5388. var oldPath = NODEFS.realPath(oldNode);
  5389. var newPath = PATH.join2(NODEFS.realPath(newDir), newName);
  5390. try {
  5391. fs.renameSync(oldPath, newPath);
  5392. } catch (e) {
  5393. if (!e.code) throw e;
  5394. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5395. }
  5396. }),
  5397. unlink: (function(parent, name) {
  5398. var path = PATH.join2(NODEFS.realPath(parent), name);
  5399. try {
  5400. fs.unlinkSync(path);
  5401. } catch (e) {
  5402. if (!e.code) throw e;
  5403. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5404. }
  5405. }),
  5406. rmdir: (function(parent, name) {
  5407. var path = PATH.join2(NODEFS.realPath(parent), name);
  5408. try {
  5409. fs.rmdirSync(path);
  5410. } catch (e) {
  5411. if (!e.code) throw e;
  5412. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5413. }
  5414. }),
  5415. readdir: (function(node) {
  5416. var path = NODEFS.realPath(node);
  5417. try {
  5418. return fs.readdirSync(path);
  5419. } catch (e) {
  5420. if (!e.code) throw e;
  5421. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5422. }
  5423. }),
  5424. symlink: (function(parent, newName, oldPath) {
  5425. var newPath = PATH.join2(NODEFS.realPath(parent), newName);
  5426. try {
  5427. fs.symlinkSync(oldPath, newPath);
  5428. } catch (e) {
  5429. if (!e.code) throw e;
  5430. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5431. }
  5432. }),
  5433. readlink: (function(node) {
  5434. var path = NODEFS.realPath(node);
  5435. try {
  5436. path = fs.readlinkSync(path);
  5437. path = NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root), path);
  5438. return path;
  5439. } catch (e) {
  5440. if (!e.code) throw e;
  5441. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5442. }
  5443. })
  5444. },
  5445. stream_ops: {
  5446. open: (function(stream) {
  5447. var path = NODEFS.realPath(stream.node);
  5448. try {
  5449. if (FS.isFile(stream.node.mode)) {
  5450. stream.nfd = fs.openSync(path, NODEFS.flagsForNode(stream.flags));
  5451. }
  5452. } catch (e) {
  5453. if (!e.code) throw e;
  5454. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5455. }
  5456. }),
  5457. close: (function(stream) {
  5458. try {
  5459. if (FS.isFile(stream.node.mode) && stream.nfd) {
  5460. fs.closeSync(stream.nfd);
  5461. }
  5462. } catch (e) {
  5463. if (!e.code) throw e;
  5464. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5465. }
  5466. }),
  5467. read: (function(stream, buffer, offset, length, position) {
  5468. if (length === 0) return 0;
  5469. try {
  5470. return fs.readSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position);
  5471. } catch (e) {
  5472. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5473. }
  5474. }),
  5475. write: (function(stream, buffer, offset, length, position) {
  5476. try {
  5477. return fs.writeSync(stream.nfd, NODEFS.bufferFrom(buffer.buffer), offset, length, position);
  5478. } catch (e) {
  5479. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5480. }
  5481. }),
  5482. llseek: (function(stream, offset, whence) {
  5483. var position = offset;
  5484. if (whence === 1) {
  5485. position += stream.position;
  5486. } else if (whence === 2) {
  5487. if (FS.isFile(stream.node.mode)) {
  5488. try {
  5489. var stat = fs.fstatSync(stream.nfd);
  5490. position += stat.size;
  5491. } catch (e) {
  5492. throw new FS.ErrnoError(ERRNO_CODES[e.code]);
  5493. }
  5494. }
  5495. }
  5496. if (position < 0) {
  5497. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  5498. }
  5499. return position;
  5500. })
  5501. }
  5502. };
  5503. var WORKERFS = {
  5504. DIR_MODE: 16895,
  5505. FILE_MODE: 33279,
  5506. reader: null,
  5507. mount: (function(mount) {
  5508. assert(ENVIRONMENT_IS_WORKER);
  5509. if (!WORKERFS.reader) WORKERFS.reader = new FileReaderSync;
  5510. var root = WORKERFS.createNode(null, "/", WORKERFS.DIR_MODE, 0);
  5511. var createdParents = {};
  5512. function ensureParent(path) {
  5513. var parts = path.split("/");
  5514. var parent = root;
  5515. for (var i = 0; i < parts.length - 1; i++) {
  5516. var curr = parts.slice(0, i + 1).join("/");
  5517. if (!createdParents[curr]) {
  5518. createdParents[curr] = WORKERFS.createNode(parent, parts[i], WORKERFS.DIR_MODE, 0);
  5519. }
  5520. parent = createdParents[curr];
  5521. }
  5522. return parent;
  5523. }
  5524. function base(path) {
  5525. var parts = path.split("/");
  5526. return parts[parts.length - 1];
  5527. }
  5528. Array.prototype.forEach.call(mount.opts["files"] || [], (function(file) {
  5529. WORKERFS.createNode(ensureParent(file.name), base(file.name), WORKERFS.FILE_MODE, 0, file, file.lastModifiedDate);
  5530. }));
  5531. (mount.opts["blobs"] || []).forEach((function(obj) {
  5532. WORKERFS.createNode(ensureParent(obj["name"]), base(obj["name"]), WORKERFS.FILE_MODE, 0, obj["data"]);
  5533. }));
  5534. (mount.opts["packages"] || []).forEach((function(pack) {
  5535. pack["metadata"].files.forEach((function(file) {
  5536. var name = file.filename.substr(1);
  5537. WORKERFS.createNode(ensureParent(name), base(name), WORKERFS.FILE_MODE, 0, pack["blob"].slice(file.start, file.end));
  5538. }));
  5539. }));
  5540. return root;
  5541. }),
  5542. createNode: (function(parent, name, mode, dev, contents, mtime) {
  5543. var node = FS.createNode(parent, name, mode);
  5544. node.mode = mode;
  5545. node.node_ops = WORKERFS.node_ops;
  5546. node.stream_ops = WORKERFS.stream_ops;
  5547. node.timestamp = (mtime || new Date).getTime();
  5548. assert(WORKERFS.FILE_MODE !== WORKERFS.DIR_MODE);
  5549. if (mode === WORKERFS.FILE_MODE) {
  5550. node.size = contents.size;
  5551. node.contents = contents;
  5552. } else {
  5553. node.size = 4096;
  5554. node.contents = {};
  5555. }
  5556. if (parent) {
  5557. parent.contents[name] = node;
  5558. }
  5559. return node;
  5560. }),
  5561. node_ops: {
  5562. getattr: (function(node) {
  5563. return {
  5564. dev: 1,
  5565. ino: undefined,
  5566. mode: node.mode,
  5567. nlink: 1,
  5568. uid: 0,
  5569. gid: 0,
  5570. rdev: undefined,
  5571. size: node.size,
  5572. atime: new Date(node.timestamp),
  5573. mtime: new Date(node.timestamp),
  5574. ctime: new Date(node.timestamp),
  5575. blksize: 4096,
  5576. blocks: Math.ceil(node.size / 4096)
  5577. };
  5578. }),
  5579. setattr: (function(node, attr) {
  5580. if (attr.mode !== undefined) {
  5581. node.mode = attr.mode;
  5582. }
  5583. if (attr.timestamp !== undefined) {
  5584. node.timestamp = attr.timestamp;
  5585. }
  5586. }),
  5587. lookup: (function(parent, name) {
  5588. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  5589. }),
  5590. mknod: (function(parent, name, mode, dev) {
  5591. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  5592. }),
  5593. rename: (function(oldNode, newDir, newName) {
  5594. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  5595. }),
  5596. unlink: (function(parent, name) {
  5597. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  5598. }),
  5599. rmdir: (function(parent, name) {
  5600. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  5601. }),
  5602. readdir: (function(node) {
  5603. var entries = [ ".", ".." ];
  5604. for (var key in node.contents) {
  5605. if (!node.contents.hasOwnProperty(key)) {
  5606. continue;
  5607. }
  5608. entries.push(key);
  5609. }
  5610. return entries;
  5611. }),
  5612. symlink: (function(parent, newName, oldPath) {
  5613. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  5614. }),
  5615. readlink: (function(node) {
  5616. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  5617. })
  5618. },
  5619. stream_ops: {
  5620. read: (function(stream, buffer, offset, length, position) {
  5621. if (position >= stream.node.size) return 0;
  5622. var chunk = stream.node.contents.slice(position, position + length);
  5623. var ab = WORKERFS.reader.readAsArrayBuffer(chunk);
  5624. buffer.set(new Uint8Array(ab), offset);
  5625. return chunk.size;
  5626. }),
  5627. write: (function(stream, buffer, offset, length, position) {
  5628. throw new FS.ErrnoError(ERRNO_CODES.EIO);
  5629. }),
  5630. llseek: (function(stream, offset, whence) {
  5631. var position = offset;
  5632. if (whence === 1) {
  5633. position += stream.position;
  5634. } else if (whence === 2) {
  5635. if (FS.isFile(stream.node.mode)) {
  5636. position += stream.node.size;
  5637. }
  5638. }
  5639. if (position < 0) {
  5640. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  5641. }
  5642. return position;
  5643. })
  5644. }
  5645. };
  5646. STATICTOP += 16;
  5647. STATICTOP += 16;
  5648. STATICTOP += 16;
  5649. var FS = {
  5650. root: null,
  5651. mounts: [],
  5652. devices: {},
  5653. streams: [],
  5654. nextInode: 1,
  5655. nameTable: null,
  5656. currentPath: "/",
  5657. initialized: false,
  5658. ignorePermissions: true,
  5659. trackingDelegate: {},
  5660. tracking: {
  5661. openFlags: {
  5662. READ: 1,
  5663. WRITE: 2
  5664. }
  5665. },
  5666. ErrnoError: null,
  5667. genericErrors: {},
  5668. filesystems: null,
  5669. syncFSRequests: 0,
  5670. handleFSError: (function(e) {
  5671. if (!(e instanceof FS.ErrnoError)) throw e + " : " + stackTrace();
  5672. return ___setErrNo(e.errno);
  5673. }),
  5674. lookupPath: (function(path, opts) {
  5675. path = PATH.resolve(FS.cwd(), path);
  5676. opts = opts || {};
  5677. if (!path) return {
  5678. path: "",
  5679. node: null
  5680. };
  5681. var defaults = {
  5682. follow_mount: true,
  5683. recurse_count: 0
  5684. };
  5685. for (var key in defaults) {
  5686. if (opts[key] === undefined) {
  5687. opts[key] = defaults[key];
  5688. }
  5689. }
  5690. if (opts.recurse_count > 8) {
  5691. throw new FS.ErrnoError(ERRNO_CODES.ELOOP);
  5692. }
  5693. var parts = PATH.normalizeArray(path.split("/").filter((function(p) {
  5694. return !!p;
  5695. })), false);
  5696. var current = FS.root;
  5697. var current_path = "/";
  5698. for (var i = 0; i < parts.length; i++) {
  5699. var islast = i === parts.length - 1;
  5700. if (islast && opts.parent) {
  5701. break;
  5702. }
  5703. current = FS.lookupNode(current, parts[i]);
  5704. current_path = PATH.join2(current_path, parts[i]);
  5705. if (FS.isMountpoint(current)) {
  5706. if (!islast || islast && opts.follow_mount) {
  5707. current = current.mounted.root;
  5708. }
  5709. }
  5710. if (!islast || opts.follow) {
  5711. var count = 0;
  5712. while (FS.isLink(current.mode)) {
  5713. var link = FS.readlink(current_path);
  5714. current_path = PATH.resolve(PATH.dirname(current_path), link);
  5715. var lookup = FS.lookupPath(current_path, {
  5716. recurse_count: opts.recurse_count
  5717. });
  5718. current = lookup.node;
  5719. if (count++ > 40) {
  5720. throw new FS.ErrnoError(ERRNO_CODES.ELOOP);
  5721. }
  5722. }
  5723. }
  5724. }
  5725. return {
  5726. path: current_path,
  5727. node: current
  5728. };
  5729. }),
  5730. getPath: (function(node) {
  5731. var path;
  5732. while (true) {
  5733. if (FS.isRoot(node)) {
  5734. var mount = node.mount.mountpoint;
  5735. if (!path) return mount;
  5736. return mount[mount.length - 1] !== "/" ? mount + "/" + path : mount + path;
  5737. }
  5738. path = path ? node.name + "/" + path : node.name;
  5739. node = node.parent;
  5740. }
  5741. }),
  5742. hashName: (function(parentid, name) {
  5743. var hash = 0;
  5744. for (var i = 0; i < name.length; i++) {
  5745. hash = (hash << 5) - hash + name.charCodeAt(i) | 0;
  5746. }
  5747. return (parentid + hash >>> 0) % FS.nameTable.length;
  5748. }),
  5749. hashAddNode: (function(node) {
  5750. var hash = FS.hashName(node.parent.id, node.name);
  5751. node.name_next = FS.nameTable[hash];
  5752. FS.nameTable[hash] = node;
  5753. }),
  5754. hashRemoveNode: (function(node) {
  5755. var hash = FS.hashName(node.parent.id, node.name);
  5756. if (FS.nameTable[hash] === node) {
  5757. FS.nameTable[hash] = node.name_next;
  5758. } else {
  5759. var current = FS.nameTable[hash];
  5760. while (current) {
  5761. if (current.name_next === node) {
  5762. current.name_next = node.name_next;
  5763. break;
  5764. }
  5765. current = current.name_next;
  5766. }
  5767. }
  5768. }),
  5769. lookupNode: (function(parent, name) {
  5770. var err = FS.mayLookup(parent);
  5771. if (err) {
  5772. throw new FS.ErrnoError(err, parent);
  5773. }
  5774. var hash = FS.hashName(parent.id, name);
  5775. for (var node = FS.nameTable[hash]; node; node = node.name_next) {
  5776. var nodeName = node.name;
  5777. if (node.parent.id === parent.id && nodeName === name) {
  5778. return node;
  5779. }
  5780. }
  5781. return FS.lookup(parent, name);
  5782. }),
  5783. createNode: (function(parent, name, mode, rdev) {
  5784. if (!FS.FSNode) {
  5785. FS.FSNode = (function(parent, name, mode, rdev) {
  5786. if (!parent) {
  5787. parent = this;
  5788. }
  5789. this.parent = parent;
  5790. this.mount = parent.mount;
  5791. this.mounted = null;
  5792. this.id = FS.nextInode++;
  5793. this.name = name;
  5794. this.mode = mode;
  5795. this.node_ops = {};
  5796. this.stream_ops = {};
  5797. this.rdev = rdev;
  5798. });
  5799. FS.FSNode.prototype = {};
  5800. var readMode = 292 | 73;
  5801. var writeMode = 146;
  5802. Object.defineProperties(FS.FSNode.prototype, {
  5803. read: {
  5804. get: (function() {
  5805. return (this.mode & readMode) === readMode;
  5806. }),
  5807. set: (function(val) {
  5808. val ? this.mode |= readMode : this.mode &= ~readMode;
  5809. })
  5810. },
  5811. write: {
  5812. get: (function() {
  5813. return (this.mode & writeMode) === writeMode;
  5814. }),
  5815. set: (function(val) {
  5816. val ? this.mode |= writeMode : this.mode &= ~writeMode;
  5817. })
  5818. },
  5819. isFolder: {
  5820. get: (function() {
  5821. return FS.isDir(this.mode);
  5822. })
  5823. },
  5824. isDevice: {
  5825. get: (function() {
  5826. return FS.isChrdev(this.mode);
  5827. })
  5828. }
  5829. });
  5830. }
  5831. var node = new FS.FSNode(parent, name, mode, rdev);
  5832. FS.hashAddNode(node);
  5833. return node;
  5834. }),
  5835. destroyNode: (function(node) {
  5836. FS.hashRemoveNode(node);
  5837. }),
  5838. isRoot: (function(node) {
  5839. return node === node.parent;
  5840. }),
  5841. isMountpoint: (function(node) {
  5842. return !!node.mounted;
  5843. }),
  5844. isFile: (function(mode) {
  5845. return (mode & 61440) === 32768;
  5846. }),
  5847. isDir: (function(mode) {
  5848. return (mode & 61440) === 16384;
  5849. }),
  5850. isLink: (function(mode) {
  5851. return (mode & 61440) === 40960;
  5852. }),
  5853. isChrdev: (function(mode) {
  5854. return (mode & 61440) === 8192;
  5855. }),
  5856. isBlkdev: (function(mode) {
  5857. return (mode & 61440) === 24576;
  5858. }),
  5859. isFIFO: (function(mode) {
  5860. return (mode & 61440) === 4096;
  5861. }),
  5862. isSocket: (function(mode) {
  5863. return (mode & 49152) === 49152;
  5864. }),
  5865. flagModes: {
  5866. "r": 0,
  5867. "rs": 1052672,
  5868. "r+": 2,
  5869. "w": 577,
  5870. "wx": 705,
  5871. "xw": 705,
  5872. "w+": 578,
  5873. "wx+": 706,
  5874. "xw+": 706,
  5875. "a": 1089,
  5876. "ax": 1217,
  5877. "xa": 1217,
  5878. "a+": 1090,
  5879. "ax+": 1218,
  5880. "xa+": 1218
  5881. },
  5882. modeStringToFlags: (function(str) {
  5883. var flags = FS.flagModes[str];
  5884. if (typeof flags === "undefined") {
  5885. throw new Error("Unknown file open mode: " + str);
  5886. }
  5887. return flags;
  5888. }),
  5889. flagsToPermissionString: (function(flag) {
  5890. var perms = [ "r", "w", "rw" ][flag & 3];
  5891. if (flag & 512) {
  5892. perms += "w";
  5893. }
  5894. return perms;
  5895. }),
  5896. nodePermissions: (function(node, perms) {
  5897. if (FS.ignorePermissions) {
  5898. return 0;
  5899. }
  5900. if (perms.indexOf("r") !== -1 && !(node.mode & 292)) {
  5901. return ERRNO_CODES.EACCES;
  5902. } else if (perms.indexOf("w") !== -1 && !(node.mode & 146)) {
  5903. return ERRNO_CODES.EACCES;
  5904. } else if (perms.indexOf("x") !== -1 && !(node.mode & 73)) {
  5905. return ERRNO_CODES.EACCES;
  5906. }
  5907. return 0;
  5908. }),
  5909. mayLookup: (function(dir) {
  5910. var err = FS.nodePermissions(dir, "x");
  5911. if (err) return err;
  5912. if (!dir.node_ops.lookup) return ERRNO_CODES.EACCES;
  5913. return 0;
  5914. }),
  5915. mayCreate: (function(dir, name) {
  5916. try {
  5917. var node = FS.lookupNode(dir, name);
  5918. return ERRNO_CODES.EEXIST;
  5919. } catch (e) {}
  5920. return FS.nodePermissions(dir, "wx");
  5921. }),
  5922. mayDelete: (function(dir, name, isdir) {
  5923. var node;
  5924. try {
  5925. node = FS.lookupNode(dir, name);
  5926. } catch (e) {
  5927. return e.errno;
  5928. }
  5929. var err = FS.nodePermissions(dir, "wx");
  5930. if (err) {
  5931. return err;
  5932. }
  5933. if (isdir) {
  5934. if (!FS.isDir(node.mode)) {
  5935. return ERRNO_CODES.ENOTDIR;
  5936. }
  5937. if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) {
  5938. return ERRNO_CODES.EBUSY;
  5939. }
  5940. } else {
  5941. if (FS.isDir(node.mode)) {
  5942. return ERRNO_CODES.EISDIR;
  5943. }
  5944. }
  5945. return 0;
  5946. }),
  5947. mayOpen: (function(node, flags) {
  5948. if (!node) {
  5949. return ERRNO_CODES.ENOENT;
  5950. }
  5951. if (FS.isLink(node.mode)) {
  5952. return ERRNO_CODES.ELOOP;
  5953. } else if (FS.isDir(node.mode)) {
  5954. if (FS.flagsToPermissionString(flags) !== "r" || flags & 512) {
  5955. return ERRNO_CODES.EISDIR;
  5956. }
  5957. }
  5958. return FS.nodePermissions(node, FS.flagsToPermissionString(flags));
  5959. }),
  5960. MAX_OPEN_FDS: 4096,
  5961. nextfd: (function(fd_start, fd_end) {
  5962. fd_start = fd_start || 0;
  5963. fd_end = fd_end || FS.MAX_OPEN_FDS;
  5964. for (var fd = fd_start; fd <= fd_end; fd++) {
  5965. if (!FS.streams[fd]) {
  5966. return fd;
  5967. }
  5968. }
  5969. throw new FS.ErrnoError(ERRNO_CODES.EMFILE);
  5970. }),
  5971. getStream: (function(fd) {
  5972. return FS.streams[fd];
  5973. }),
  5974. createStream: (function(stream, fd_start, fd_end) {
  5975. if (!FS.FSStream) {
  5976. FS.FSStream = (function() {});
  5977. FS.FSStream.prototype = {};
  5978. Object.defineProperties(FS.FSStream.prototype, {
  5979. object: {
  5980. get: (function() {
  5981. return this.node;
  5982. }),
  5983. set: (function(val) {
  5984. this.node = val;
  5985. })
  5986. },
  5987. isRead: {
  5988. get: (function() {
  5989. return (this.flags & 2097155) !== 1;
  5990. })
  5991. },
  5992. isWrite: {
  5993. get: (function() {
  5994. return (this.flags & 2097155) !== 0;
  5995. })
  5996. },
  5997. isAppend: {
  5998. get: (function() {
  5999. return this.flags & 1024;
  6000. })
  6001. }
  6002. });
  6003. }
  6004. var newStream = new FS.FSStream;
  6005. for (var p in stream) {
  6006. newStream[p] = stream[p];
  6007. }
  6008. stream = newStream;
  6009. var fd = FS.nextfd(fd_start, fd_end);
  6010. stream.fd = fd;
  6011. FS.streams[fd] = stream;
  6012. return stream;
  6013. }),
  6014. closeStream: (function(fd) {
  6015. FS.streams[fd] = null;
  6016. }),
  6017. chrdev_stream_ops: {
  6018. open: (function(stream) {
  6019. var device = FS.getDevice(stream.node.rdev);
  6020. stream.stream_ops = device.stream_ops;
  6021. if (stream.stream_ops.open) {
  6022. stream.stream_ops.open(stream);
  6023. }
  6024. }),
  6025. llseek: (function() {
  6026. throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);
  6027. })
  6028. },
  6029. major: (function(dev) {
  6030. return dev >> 8;
  6031. }),
  6032. minor: (function(dev) {
  6033. return dev & 255;
  6034. }),
  6035. makedev: (function(ma, mi) {
  6036. return ma << 8 | mi;
  6037. }),
  6038. registerDevice: (function(dev, ops) {
  6039. FS.devices[dev] = {
  6040. stream_ops: ops
  6041. };
  6042. }),
  6043. getDevice: (function(dev) {
  6044. return FS.devices[dev];
  6045. }),
  6046. getMounts: (function(mount) {
  6047. var mounts = [];
  6048. var check = [ mount ];
  6049. while (check.length) {
  6050. var m = check.pop();
  6051. mounts.push(m);
  6052. check.push.apply(check, m.mounts);
  6053. }
  6054. return mounts;
  6055. }),
  6056. syncfs: (function(populate, callback) {
  6057. if (typeof populate === "function") {
  6058. callback = populate;
  6059. populate = false;
  6060. }
  6061. FS.syncFSRequests++;
  6062. if (FS.syncFSRequests > 1) {
  6063. console.log("warning: " + FS.syncFSRequests + " FS.syncfs operations in flight at once, probably just doing extra work");
  6064. }
  6065. var mounts = FS.getMounts(FS.root.mount);
  6066. var completed = 0;
  6067. function doCallback(err) {
  6068. assert(FS.syncFSRequests > 0);
  6069. FS.syncFSRequests--;
  6070. return callback(err);
  6071. }
  6072. function done(err) {
  6073. if (err) {
  6074. if (!done.errored) {
  6075. done.errored = true;
  6076. return doCallback(err);
  6077. }
  6078. return;
  6079. }
  6080. if (++completed >= mounts.length) {
  6081. doCallback(null);
  6082. }
  6083. }
  6084. mounts.forEach((function(mount) {
  6085. if (!mount.type.syncfs) {
  6086. return done(null);
  6087. }
  6088. mount.type.syncfs(mount, populate, done);
  6089. }));
  6090. }),
  6091. mount: (function(type, opts, mountpoint) {
  6092. var root = mountpoint === "/";
  6093. var pseudo = !mountpoint;
  6094. var node;
  6095. if (root && FS.root) {
  6096. throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
  6097. } else if (!root && !pseudo) {
  6098. var lookup = FS.lookupPath(mountpoint, {
  6099. follow_mount: false
  6100. });
  6101. mountpoint = lookup.path;
  6102. node = lookup.node;
  6103. if (FS.isMountpoint(node)) {
  6104. throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
  6105. }
  6106. if (!FS.isDir(node.mode)) {
  6107. throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);
  6108. }
  6109. }
  6110. var mount = {
  6111. type: type,
  6112. opts: opts,
  6113. mountpoint: mountpoint,
  6114. mounts: []
  6115. };
  6116. var mountRoot = type.mount(mount);
  6117. mountRoot.mount = mount;
  6118. mount.root = mountRoot;
  6119. if (root) {
  6120. FS.root = mountRoot;
  6121. } else if (node) {
  6122. node.mounted = mount;
  6123. if (node.mount) {
  6124. node.mount.mounts.push(mount);
  6125. }
  6126. }
  6127. return mountRoot;
  6128. }),
  6129. unmount: (function(mountpoint) {
  6130. var lookup = FS.lookupPath(mountpoint, {
  6131. follow_mount: false
  6132. });
  6133. if (!FS.isMountpoint(lookup.node)) {
  6134. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6135. }
  6136. var node = lookup.node;
  6137. var mount = node.mounted;
  6138. var mounts = FS.getMounts(mount);
  6139. Object.keys(FS.nameTable).forEach((function(hash) {
  6140. var current = FS.nameTable[hash];
  6141. while (current) {
  6142. var next = current.name_next;
  6143. if (mounts.indexOf(current.mount) !== -1) {
  6144. FS.destroyNode(current);
  6145. }
  6146. current = next;
  6147. }
  6148. }));
  6149. node.mounted = null;
  6150. var idx = node.mount.mounts.indexOf(mount);
  6151. assert(idx !== -1);
  6152. node.mount.mounts.splice(idx, 1);
  6153. }),
  6154. lookup: (function(parent, name) {
  6155. return parent.node_ops.lookup(parent, name);
  6156. }),
  6157. mknod: (function(path, mode, dev) {
  6158. var lookup = FS.lookupPath(path, {
  6159. parent: true
  6160. });
  6161. var parent = lookup.node;
  6162. var name = PATH.basename(path);
  6163. if (!name || name === "." || name === "..") {
  6164. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6165. }
  6166. var err = FS.mayCreate(parent, name);
  6167. if (err) {
  6168. throw new FS.ErrnoError(err);
  6169. }
  6170. if (!parent.node_ops.mknod) {
  6171. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6172. }
  6173. return parent.node_ops.mknod(parent, name, mode, dev);
  6174. }),
  6175. create: (function(path, mode) {
  6176. mode = mode !== undefined ? mode : 438;
  6177. mode &= 4095;
  6178. mode |= 32768;
  6179. return FS.mknod(path, mode, 0);
  6180. }),
  6181. mkdir: (function(path, mode) {
  6182. mode = mode !== undefined ? mode : 511;
  6183. mode &= 511 | 512;
  6184. mode |= 16384;
  6185. return FS.mknod(path, mode, 0);
  6186. }),
  6187. mkdirTree: (function(path, mode) {
  6188. var dirs = path.split("/");
  6189. var d = "";
  6190. for (var i = 0; i < dirs.length; ++i) {
  6191. if (!dirs[i]) continue;
  6192. d += "/" + dirs[i];
  6193. try {
  6194. FS.mkdir(d, mode);
  6195. } catch (e) {
  6196. if (e.errno != ERRNO_CODES.EEXIST) throw e;
  6197. }
  6198. }
  6199. }),
  6200. mkdev: (function(path, mode, dev) {
  6201. if (typeof dev === "undefined") {
  6202. dev = mode;
  6203. mode = 438;
  6204. }
  6205. mode |= 8192;
  6206. return FS.mknod(path, mode, dev);
  6207. }),
  6208. symlink: (function(oldpath, newpath) {
  6209. if (!PATH.resolve(oldpath)) {
  6210. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6211. }
  6212. var lookup = FS.lookupPath(newpath, {
  6213. parent: true
  6214. });
  6215. var parent = lookup.node;
  6216. if (!parent) {
  6217. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6218. }
  6219. var newname = PATH.basename(newpath);
  6220. var err = FS.mayCreate(parent, newname);
  6221. if (err) {
  6222. throw new FS.ErrnoError(err);
  6223. }
  6224. if (!parent.node_ops.symlink) {
  6225. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6226. }
  6227. return parent.node_ops.symlink(parent, newname, oldpath);
  6228. }),
  6229. rename: (function(old_path, new_path) {
  6230. var old_dirname = PATH.dirname(old_path);
  6231. var new_dirname = PATH.dirname(new_path);
  6232. var old_name = PATH.basename(old_path);
  6233. var new_name = PATH.basename(new_path);
  6234. var lookup, old_dir, new_dir;
  6235. try {
  6236. lookup = FS.lookupPath(old_path, {
  6237. parent: true
  6238. });
  6239. old_dir = lookup.node;
  6240. lookup = FS.lookupPath(new_path, {
  6241. parent: true
  6242. });
  6243. new_dir = lookup.node;
  6244. } catch (e) {
  6245. throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
  6246. }
  6247. if (!old_dir || !new_dir) throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6248. if (old_dir.mount !== new_dir.mount) {
  6249. throw new FS.ErrnoError(ERRNO_CODES.EXDEV);
  6250. }
  6251. var old_node = FS.lookupNode(old_dir, old_name);
  6252. var relative = PATH.relative(old_path, new_dirname);
  6253. if (relative.charAt(0) !== ".") {
  6254. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6255. }
  6256. relative = PATH.relative(new_path, old_dirname);
  6257. if (relative.charAt(0) !== ".") {
  6258. throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY);
  6259. }
  6260. var new_node;
  6261. try {
  6262. new_node = FS.lookupNode(new_dir, new_name);
  6263. } catch (e) {}
  6264. if (old_node === new_node) {
  6265. return;
  6266. }
  6267. var isdir = FS.isDir(old_node.mode);
  6268. var err = FS.mayDelete(old_dir, old_name, isdir);
  6269. if (err) {
  6270. throw new FS.ErrnoError(err);
  6271. }
  6272. err = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name);
  6273. if (err) {
  6274. throw new FS.ErrnoError(err);
  6275. }
  6276. if (!old_dir.node_ops.rename) {
  6277. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6278. }
  6279. if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) {
  6280. throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
  6281. }
  6282. if (new_dir !== old_dir) {
  6283. err = FS.nodePermissions(old_dir, "w");
  6284. if (err) {
  6285. throw new FS.ErrnoError(err);
  6286. }
  6287. }
  6288. try {
  6289. if (FS.trackingDelegate["willMovePath"]) {
  6290. FS.trackingDelegate["willMovePath"](old_path, new_path);
  6291. }
  6292. } catch (e) {
  6293. console.log("FS.trackingDelegate['willMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message);
  6294. }
  6295. FS.hashRemoveNode(old_node);
  6296. try {
  6297. old_dir.node_ops.rename(old_node, new_dir, new_name);
  6298. } catch (e) {
  6299. throw e;
  6300. } finally {
  6301. FS.hashAddNode(old_node);
  6302. }
  6303. try {
  6304. if (FS.trackingDelegate["onMovePath"]) FS.trackingDelegate["onMovePath"](old_path, new_path);
  6305. } catch (e) {
  6306. console.log("FS.trackingDelegate['onMovePath']('" + old_path + "', '" + new_path + "') threw an exception: " + e.message);
  6307. }
  6308. }),
  6309. rmdir: (function(path) {
  6310. var lookup = FS.lookupPath(path, {
  6311. parent: true
  6312. });
  6313. var parent = lookup.node;
  6314. var name = PATH.basename(path);
  6315. var node = FS.lookupNode(parent, name);
  6316. var err = FS.mayDelete(parent, name, true);
  6317. if (err) {
  6318. throw new FS.ErrnoError(err);
  6319. }
  6320. if (!parent.node_ops.rmdir) {
  6321. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6322. }
  6323. if (FS.isMountpoint(node)) {
  6324. throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
  6325. }
  6326. try {
  6327. if (FS.trackingDelegate["willDeletePath"]) {
  6328. FS.trackingDelegate["willDeletePath"](path);
  6329. }
  6330. } catch (e) {
  6331. console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message);
  6332. }
  6333. parent.node_ops.rmdir(parent, name);
  6334. FS.destroyNode(node);
  6335. try {
  6336. if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path);
  6337. } catch (e) {
  6338. console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message);
  6339. }
  6340. }),
  6341. readdir: (function(path) {
  6342. var lookup = FS.lookupPath(path, {
  6343. follow: true
  6344. });
  6345. var node = lookup.node;
  6346. if (!node.node_ops.readdir) {
  6347. throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);
  6348. }
  6349. return node.node_ops.readdir(node);
  6350. }),
  6351. unlink: (function(path) {
  6352. var lookup = FS.lookupPath(path, {
  6353. parent: true
  6354. });
  6355. var parent = lookup.node;
  6356. var name = PATH.basename(path);
  6357. var node = FS.lookupNode(parent, name);
  6358. var err = FS.mayDelete(parent, name, false);
  6359. if (err) {
  6360. throw new FS.ErrnoError(err);
  6361. }
  6362. if (!parent.node_ops.unlink) {
  6363. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6364. }
  6365. if (FS.isMountpoint(node)) {
  6366. throw new FS.ErrnoError(ERRNO_CODES.EBUSY);
  6367. }
  6368. try {
  6369. if (FS.trackingDelegate["willDeletePath"]) {
  6370. FS.trackingDelegate["willDeletePath"](path);
  6371. }
  6372. } catch (e) {
  6373. console.log("FS.trackingDelegate['willDeletePath']('" + path + "') threw an exception: " + e.message);
  6374. }
  6375. parent.node_ops.unlink(parent, name);
  6376. FS.destroyNode(node);
  6377. try {
  6378. if (FS.trackingDelegate["onDeletePath"]) FS.trackingDelegate["onDeletePath"](path);
  6379. } catch (e) {
  6380. console.log("FS.trackingDelegate['onDeletePath']('" + path + "') threw an exception: " + e.message);
  6381. }
  6382. }),
  6383. readlink: (function(path) {
  6384. var lookup = FS.lookupPath(path);
  6385. var link = lookup.node;
  6386. if (!link) {
  6387. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6388. }
  6389. if (!link.node_ops.readlink) {
  6390. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6391. }
  6392. return PATH.resolve(FS.getPath(link.parent), link.node_ops.readlink(link));
  6393. }),
  6394. stat: (function(path, dontFollow) {
  6395. var lookup = FS.lookupPath(path, {
  6396. follow: !dontFollow
  6397. });
  6398. var node = lookup.node;
  6399. if (!node) {
  6400. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6401. }
  6402. if (!node.node_ops.getattr) {
  6403. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6404. }
  6405. return node.node_ops.getattr(node);
  6406. }),
  6407. lstat: (function(path) {
  6408. return FS.stat(path, true);
  6409. }),
  6410. chmod: (function(path, mode, dontFollow) {
  6411. var node;
  6412. if (typeof path === "string") {
  6413. var lookup = FS.lookupPath(path, {
  6414. follow: !dontFollow
  6415. });
  6416. node = lookup.node;
  6417. } else {
  6418. node = path;
  6419. }
  6420. if (!node.node_ops.setattr) {
  6421. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6422. }
  6423. node.node_ops.setattr(node, {
  6424. mode: mode & 4095 | node.mode & ~4095,
  6425. timestamp: Date.now()
  6426. });
  6427. }),
  6428. lchmod: (function(path, mode) {
  6429. FS.chmod(path, mode, true);
  6430. }),
  6431. fchmod: (function(fd, mode) {
  6432. var stream = FS.getStream(fd);
  6433. if (!stream) {
  6434. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6435. }
  6436. FS.chmod(stream.node, mode);
  6437. }),
  6438. chown: (function(path, uid, gid, dontFollow) {
  6439. var node;
  6440. if (typeof path === "string") {
  6441. var lookup = FS.lookupPath(path, {
  6442. follow: !dontFollow
  6443. });
  6444. node = lookup.node;
  6445. } else {
  6446. node = path;
  6447. }
  6448. if (!node.node_ops.setattr) {
  6449. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6450. }
  6451. node.node_ops.setattr(node, {
  6452. timestamp: Date.now()
  6453. });
  6454. }),
  6455. lchown: (function(path, uid, gid) {
  6456. FS.chown(path, uid, gid, true);
  6457. }),
  6458. fchown: (function(fd, uid, gid) {
  6459. var stream = FS.getStream(fd);
  6460. if (!stream) {
  6461. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6462. }
  6463. FS.chown(stream.node, uid, gid);
  6464. }),
  6465. truncate: (function(path, len) {
  6466. if (len < 0) {
  6467. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6468. }
  6469. var node;
  6470. if (typeof path === "string") {
  6471. var lookup = FS.lookupPath(path, {
  6472. follow: true
  6473. });
  6474. node = lookup.node;
  6475. } else {
  6476. node = path;
  6477. }
  6478. if (!node.node_ops.setattr) {
  6479. throw new FS.ErrnoError(ERRNO_CODES.EPERM);
  6480. }
  6481. if (FS.isDir(node.mode)) {
  6482. throw new FS.ErrnoError(ERRNO_CODES.EISDIR);
  6483. }
  6484. if (!FS.isFile(node.mode)) {
  6485. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6486. }
  6487. var err = FS.nodePermissions(node, "w");
  6488. if (err) {
  6489. throw new FS.ErrnoError(err);
  6490. }
  6491. node.node_ops.setattr(node, {
  6492. size: len,
  6493. timestamp: Date.now()
  6494. });
  6495. }),
  6496. ftruncate: (function(fd, len) {
  6497. var stream = FS.getStream(fd);
  6498. if (!stream) {
  6499. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6500. }
  6501. if ((stream.flags & 2097155) === 0) {
  6502. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6503. }
  6504. FS.truncate(stream.node, len);
  6505. }),
  6506. utime: (function(path, atime, mtime) {
  6507. var lookup = FS.lookupPath(path, {
  6508. follow: true
  6509. });
  6510. var node = lookup.node;
  6511. node.node_ops.setattr(node, {
  6512. timestamp: Math.max(atime, mtime)
  6513. });
  6514. }),
  6515. open: (function(path, flags, mode, fd_start, fd_end) {
  6516. if (path === "") {
  6517. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6518. }
  6519. flags = typeof flags === "string" ? FS.modeStringToFlags(flags) : flags;
  6520. mode = typeof mode === "undefined" ? 438 : mode;
  6521. if (flags & 64) {
  6522. mode = mode & 4095 | 32768;
  6523. } else {
  6524. mode = 0;
  6525. }
  6526. var node;
  6527. if (typeof path === "object") {
  6528. node = path;
  6529. } else {
  6530. path = PATH.normalize(path);
  6531. try {
  6532. var lookup = FS.lookupPath(path, {
  6533. follow: !(flags & 131072)
  6534. });
  6535. node = lookup.node;
  6536. } catch (e) {}
  6537. }
  6538. var created = false;
  6539. if (flags & 64) {
  6540. if (node) {
  6541. if (flags & 128) {
  6542. throw new FS.ErrnoError(ERRNO_CODES.EEXIST);
  6543. }
  6544. } else {
  6545. node = FS.mknod(path, mode, 0);
  6546. created = true;
  6547. }
  6548. }
  6549. if (!node) {
  6550. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6551. }
  6552. if (FS.isChrdev(node.mode)) {
  6553. flags &= ~512;
  6554. }
  6555. if (flags & 65536 && !FS.isDir(node.mode)) {
  6556. throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);
  6557. }
  6558. if (!created) {
  6559. var err = FS.mayOpen(node, flags);
  6560. if (err) {
  6561. throw new FS.ErrnoError(err);
  6562. }
  6563. }
  6564. if (flags & 512) {
  6565. FS.truncate(node, 0);
  6566. }
  6567. flags &= ~(128 | 512);
  6568. var stream = FS.createStream({
  6569. node: node,
  6570. path: FS.getPath(node),
  6571. flags: flags,
  6572. seekable: true,
  6573. position: 0,
  6574. stream_ops: node.stream_ops,
  6575. ungotten: [],
  6576. error: false
  6577. }, fd_start, fd_end);
  6578. if (stream.stream_ops.open) {
  6579. stream.stream_ops.open(stream);
  6580. }
  6581. if (Module["logReadFiles"] && !(flags & 1)) {
  6582. if (!FS.readFiles) FS.readFiles = {};
  6583. if (!(path in FS.readFiles)) {
  6584. FS.readFiles[path] = 1;
  6585. err("read file: " + path);
  6586. }
  6587. }
  6588. try {
  6589. if (FS.trackingDelegate["onOpenFile"]) {
  6590. var trackingFlags = 0;
  6591. if ((flags & 2097155) !== 1) {
  6592. trackingFlags |= FS.tracking.openFlags.READ;
  6593. }
  6594. if ((flags & 2097155) !== 0) {
  6595. trackingFlags |= FS.tracking.openFlags.WRITE;
  6596. }
  6597. FS.trackingDelegate["onOpenFile"](path, trackingFlags);
  6598. }
  6599. } catch (e) {
  6600. console.log("FS.trackingDelegate['onOpenFile']('" + path + "', flags) threw an exception: " + e.message);
  6601. }
  6602. return stream;
  6603. }),
  6604. close: (function(stream) {
  6605. if (FS.isClosed(stream)) {
  6606. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6607. }
  6608. if (stream.getdents) stream.getdents = null;
  6609. try {
  6610. if (stream.stream_ops.close) {
  6611. stream.stream_ops.close(stream);
  6612. }
  6613. } catch (e) {
  6614. throw e;
  6615. } finally {
  6616. FS.closeStream(stream.fd);
  6617. }
  6618. stream.fd = null;
  6619. }),
  6620. isClosed: (function(stream) {
  6621. return stream.fd === null;
  6622. }),
  6623. llseek: (function(stream, offset, whence) {
  6624. if (FS.isClosed(stream)) {
  6625. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6626. }
  6627. if (!stream.seekable || !stream.stream_ops.llseek) {
  6628. throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);
  6629. }
  6630. stream.position = stream.stream_ops.llseek(stream, offset, whence);
  6631. stream.ungotten = [];
  6632. return stream.position;
  6633. }),
  6634. read: (function(stream, buffer, offset, length, position) {
  6635. if (length < 0 || position < 0) {
  6636. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6637. }
  6638. if (FS.isClosed(stream)) {
  6639. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6640. }
  6641. if ((stream.flags & 2097155) === 1) {
  6642. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6643. }
  6644. if (FS.isDir(stream.node.mode)) {
  6645. throw new FS.ErrnoError(ERRNO_CODES.EISDIR);
  6646. }
  6647. if (!stream.stream_ops.read) {
  6648. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6649. }
  6650. var seeking = typeof position !== "undefined";
  6651. if (!seeking) {
  6652. position = stream.position;
  6653. } else if (!stream.seekable) {
  6654. throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);
  6655. }
  6656. var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position);
  6657. if (!seeking) stream.position += bytesRead;
  6658. return bytesRead;
  6659. }),
  6660. write: (function(stream, buffer, offset, length, position, canOwn) {
  6661. if (length < 0 || position < 0) {
  6662. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6663. }
  6664. if (FS.isClosed(stream)) {
  6665. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6666. }
  6667. if ((stream.flags & 2097155) === 0) {
  6668. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6669. }
  6670. if (FS.isDir(stream.node.mode)) {
  6671. throw new FS.ErrnoError(ERRNO_CODES.EISDIR);
  6672. }
  6673. if (!stream.stream_ops.write) {
  6674. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6675. }
  6676. if (stream.flags & 1024) {
  6677. FS.llseek(stream, 0, 2);
  6678. }
  6679. var seeking = typeof position !== "undefined";
  6680. if (!seeking) {
  6681. position = stream.position;
  6682. } else if (!stream.seekable) {
  6683. throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);
  6684. }
  6685. var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn);
  6686. if (!seeking) stream.position += bytesWritten;
  6687. try {
  6688. if (stream.path && FS.trackingDelegate["onWriteToFile"]) FS.trackingDelegate["onWriteToFile"](stream.path);
  6689. } catch (e) {
  6690. console.log("FS.trackingDelegate['onWriteToFile']('" + path + "') threw an exception: " + e.message);
  6691. }
  6692. return bytesWritten;
  6693. }),
  6694. allocate: (function(stream, offset, length) {
  6695. if (FS.isClosed(stream)) {
  6696. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6697. }
  6698. if (offset < 0 || length <= 0) {
  6699. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  6700. }
  6701. if ((stream.flags & 2097155) === 0) {
  6702. throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6703. }
  6704. if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) {
  6705. throw new FS.ErrnoError(ERRNO_CODES.ENODEV);
  6706. }
  6707. if (!stream.stream_ops.allocate) {
  6708. throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP);
  6709. }
  6710. stream.stream_ops.allocate(stream, offset, length);
  6711. }),
  6712. mmap: (function(stream, buffer, offset, length, position, prot, flags) {
  6713. if ((stream.flags & 2097155) === 1) {
  6714. throw new FS.ErrnoError(ERRNO_CODES.EACCES);
  6715. }
  6716. if (!stream.stream_ops.mmap) {
  6717. throw new FS.ErrnoError(ERRNO_CODES.ENODEV);
  6718. }
  6719. return stream.stream_ops.mmap(stream, buffer, offset, length, position, prot, flags);
  6720. }),
  6721. msync: (function(stream, buffer, offset, length, mmapFlags) {
  6722. if (!stream || !stream.stream_ops.msync) {
  6723. return 0;
  6724. }
  6725. return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags);
  6726. }),
  6727. munmap: (function(stream) {
  6728. return 0;
  6729. }),
  6730. ioctl: (function(stream, cmd, arg) {
  6731. if (!stream.stream_ops.ioctl) {
  6732. throw new FS.ErrnoError(ERRNO_CODES.ENOTTY);
  6733. }
  6734. return stream.stream_ops.ioctl(stream, cmd, arg);
  6735. }),
  6736. readFile: (function(path, opts) {
  6737. opts = opts || {};
  6738. opts.flags = opts.flags || "r";
  6739. opts.encoding = opts.encoding || "binary";
  6740. if (opts.encoding !== "utf8" && opts.encoding !== "binary") {
  6741. throw new Error('Invalid encoding type "' + opts.encoding + '"');
  6742. }
  6743. var ret;
  6744. var stream = FS.open(path, opts.flags);
  6745. var stat = FS.stat(path);
  6746. var length = stat.size;
  6747. var buf = new Uint8Array(length);
  6748. FS.read(stream, buf, 0, length, 0);
  6749. if (opts.encoding === "utf8") {
  6750. ret = UTF8ArrayToString(buf, 0);
  6751. } else if (opts.encoding === "binary") {
  6752. ret = buf;
  6753. }
  6754. FS.close(stream);
  6755. return ret;
  6756. }),
  6757. writeFile: (function(path, data, opts) {
  6758. opts = opts || {};
  6759. opts.flags = opts.flags || "w";
  6760. var stream = FS.open(path, opts.flags, opts.mode);
  6761. if (typeof data === "string") {
  6762. var buf = new Uint8Array(lengthBytesUTF8(data) + 1);
  6763. var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length);
  6764. FS.write(stream, buf, 0, actualNumBytes, undefined, opts.canOwn);
  6765. } else if (ArrayBuffer.isView(data)) {
  6766. FS.write(stream, data, 0, data.byteLength, undefined, opts.canOwn);
  6767. } else {
  6768. throw new Error("Unsupported data type");
  6769. }
  6770. FS.close(stream);
  6771. }),
  6772. cwd: (function() {
  6773. return FS.currentPath;
  6774. }),
  6775. chdir: (function(path) {
  6776. var lookup = FS.lookupPath(path, {
  6777. follow: true
  6778. });
  6779. if (lookup.node === null) {
  6780. throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
  6781. }
  6782. if (!FS.isDir(lookup.node.mode)) {
  6783. throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);
  6784. }
  6785. var err = FS.nodePermissions(lookup.node, "x");
  6786. if (err) {
  6787. throw new FS.ErrnoError(err);
  6788. }
  6789. FS.currentPath = lookup.path;
  6790. }),
  6791. createDefaultDirectories: (function() {
  6792. FS.mkdir("/tmp");
  6793. FS.mkdir("/home");
  6794. FS.mkdir("/home/web_user");
  6795. }),
  6796. createDefaultDevices: (function() {
  6797. FS.mkdir("/dev");
  6798. FS.registerDevice(FS.makedev(1, 3), {
  6799. read: (function() {
  6800. return 0;
  6801. }),
  6802. write: (function(stream, buffer, offset, length, pos) {
  6803. return length;
  6804. })
  6805. });
  6806. FS.mkdev("/dev/null", FS.makedev(1, 3));
  6807. TTY.register(FS.makedev(5, 0), TTY.default_tty_ops);
  6808. TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops);
  6809. FS.mkdev("/dev/tty", FS.makedev(5, 0));
  6810. FS.mkdev("/dev/tty1", FS.makedev(6, 0));
  6811. var random_device;
  6812. if (typeof crypto !== "undefined") {
  6813. var randomBuffer = new Uint8Array(1);
  6814. random_device = (function() {
  6815. crypto.getRandomValues(randomBuffer);
  6816. return randomBuffer[0];
  6817. });
  6818. } else if (ENVIRONMENT_IS_NODE) {
  6819. random_device = (function() {
  6820. return require("crypto")["randomBytes"](1)[0];
  6821. });
  6822. } else {
  6823. random_device = (function() {
  6824. return Math.random() * 256 | 0;
  6825. });
  6826. }
  6827. FS.createDevice("/dev", "random", random_device);
  6828. FS.createDevice("/dev", "urandom", random_device);
  6829. FS.mkdir("/dev/shm");
  6830. FS.mkdir("/dev/shm/tmp");
  6831. }),
  6832. createSpecialDirectories: (function() {
  6833. FS.mkdir("/proc");
  6834. FS.mkdir("/proc/self");
  6835. FS.mkdir("/proc/self/fd");
  6836. FS.mount({
  6837. mount: (function() {
  6838. var node = FS.createNode("/proc/self", "fd", 16384 | 511, 73);
  6839. node.node_ops = {
  6840. lookup: (function(parent, name) {
  6841. var fd = +name;
  6842. var stream = FS.getStream(fd);
  6843. if (!stream) throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  6844. var ret = {
  6845. parent: null,
  6846. mount: {
  6847. mountpoint: "fake"
  6848. },
  6849. node_ops: {
  6850. readlink: (function() {
  6851. return stream.path;
  6852. })
  6853. }
  6854. };
  6855. ret.parent = ret;
  6856. return ret;
  6857. })
  6858. };
  6859. return node;
  6860. })
  6861. }, {}, "/proc/self/fd");
  6862. }),
  6863. createStandardStreams: (function() {
  6864. if (Module["stdin"]) {
  6865. FS.createDevice("/dev", "stdin", Module["stdin"]);
  6866. } else {
  6867. FS.symlink("/dev/tty", "/dev/stdin");
  6868. }
  6869. if (Module["stdout"]) {
  6870. FS.createDevice("/dev", "stdout", null, Module["stdout"]);
  6871. } else {
  6872. FS.symlink("/dev/tty", "/dev/stdout");
  6873. }
  6874. if (Module["stderr"]) {
  6875. FS.createDevice("/dev", "stderr", null, Module["stderr"]);
  6876. } else {
  6877. FS.symlink("/dev/tty1", "/dev/stderr");
  6878. }
  6879. var stdin = FS.open("/dev/stdin", "r");
  6880. assert(stdin.fd === 0, "invalid handle for stdin (" + stdin.fd + ")");
  6881. var stdout = FS.open("/dev/stdout", "w");
  6882. assert(stdout.fd === 1, "invalid handle for stdout (" + stdout.fd + ")");
  6883. var stderr = FS.open("/dev/stderr", "w");
  6884. assert(stderr.fd === 2, "invalid handle for stderr (" + stderr.fd + ")");
  6885. }),
  6886. ensureErrnoError: (function() {
  6887. if (FS.ErrnoError) return;
  6888. FS.ErrnoError = function ErrnoError(errno, node) {
  6889. this.node = node;
  6890. this.setErrno = (function(errno) {
  6891. this.errno = errno;
  6892. for (var key in ERRNO_CODES) {
  6893. if (ERRNO_CODES[key] === errno) {
  6894. this.code = key;
  6895. break;
  6896. }
  6897. }
  6898. });
  6899. this.setErrno(errno);
  6900. this.message = ERRNO_MESSAGES[errno];
  6901. if (this.stack) Object.defineProperty(this, "stack", {
  6902. value: (new Error).stack,
  6903. writable: true
  6904. });
  6905. if (this.stack) this.stack = demangleAll(this.stack);
  6906. };
  6907. FS.ErrnoError.prototype = new Error;
  6908. FS.ErrnoError.prototype.constructor = FS.ErrnoError;
  6909. [ ERRNO_CODES.ENOENT ].forEach((function(code) {
  6910. FS.genericErrors[code] = new FS.ErrnoError(code);
  6911. FS.genericErrors[code].stack = "<generic error, no stack>";
  6912. }));
  6913. }),
  6914. staticInit: (function() {
  6915. FS.ensureErrnoError();
  6916. FS.nameTable = new Array(4096);
  6917. FS.mount(MEMFS, {}, "/");
  6918. FS.createDefaultDirectories();
  6919. FS.createDefaultDevices();
  6920. FS.createSpecialDirectories();
  6921. FS.filesystems = {
  6922. "MEMFS": MEMFS,
  6923. "IDBFS": IDBFS,
  6924. "NODEFS": NODEFS,
  6925. "WORKERFS": WORKERFS
  6926. };
  6927. }),
  6928. init: (function(input, output, error) {
  6929. assert(!FS.init.initialized, "FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");
  6930. FS.init.initialized = true;
  6931. FS.ensureErrnoError();
  6932. Module["stdin"] = input || Module["stdin"];
  6933. Module["stdout"] = output || Module["stdout"];
  6934. Module["stderr"] = error || Module["stderr"];
  6935. FS.createStandardStreams();
  6936. }),
  6937. quit: (function() {
  6938. FS.init.initialized = false;
  6939. var fflush = Module["_fflush"];
  6940. if (fflush) fflush(0);
  6941. for (var i = 0; i < FS.streams.length; i++) {
  6942. var stream = FS.streams[i];
  6943. if (!stream) {
  6944. continue;
  6945. }
  6946. FS.close(stream);
  6947. }
  6948. }),
  6949. getMode: (function(canRead, canWrite) {
  6950. var mode = 0;
  6951. if (canRead) mode |= 292 | 73;
  6952. if (canWrite) mode |= 146;
  6953. return mode;
  6954. }),
  6955. joinPath: (function(parts, forceRelative) {
  6956. var path = PATH.join.apply(null, parts);
  6957. if (forceRelative && path[0] == "/") path = path.substr(1);
  6958. return path;
  6959. }),
  6960. absolutePath: (function(relative, base) {
  6961. return PATH.resolve(base, relative);
  6962. }),
  6963. standardizePath: (function(path) {
  6964. return PATH.normalize(path);
  6965. }),
  6966. findObject: (function(path, dontResolveLastLink) {
  6967. var ret = FS.analyzePath(path, dontResolveLastLink);
  6968. if (ret.exists) {
  6969. return ret.object;
  6970. } else {
  6971. ___setErrNo(ret.error);
  6972. return null;
  6973. }
  6974. }),
  6975. analyzePath: (function(path, dontResolveLastLink) {
  6976. try {
  6977. var lookup = FS.lookupPath(path, {
  6978. follow: !dontResolveLastLink
  6979. });
  6980. path = lookup.path;
  6981. } catch (e) {}
  6982. var ret = {
  6983. isRoot: false,
  6984. exists: false,
  6985. error: 0,
  6986. name: null,
  6987. path: null,
  6988. object: null,
  6989. parentExists: false,
  6990. parentPath: null,
  6991. parentObject: null
  6992. };
  6993. try {
  6994. var lookup = FS.lookupPath(path, {
  6995. parent: true
  6996. });
  6997. ret.parentExists = true;
  6998. ret.parentPath = lookup.path;
  6999. ret.parentObject = lookup.node;
  7000. ret.name = PATH.basename(path);
  7001. lookup = FS.lookupPath(path, {
  7002. follow: !dontResolveLastLink
  7003. });
  7004. ret.exists = true;
  7005. ret.path = lookup.path;
  7006. ret.object = lookup.node;
  7007. ret.name = lookup.node.name;
  7008. ret.isRoot = lookup.path === "/";
  7009. } catch (e) {
  7010. ret.error = e.errno;
  7011. }
  7012. return ret;
  7013. }),
  7014. createFolder: (function(parent, name, canRead, canWrite) {
  7015. var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name);
  7016. var mode = FS.getMode(canRead, canWrite);
  7017. return FS.mkdir(path, mode);
  7018. }),
  7019. createPath: (function(parent, path, canRead, canWrite) {
  7020. parent = typeof parent === "string" ? parent : FS.getPath(parent);
  7021. var parts = path.split("/").reverse();
  7022. while (parts.length) {
  7023. var part = parts.pop();
  7024. if (!part) continue;
  7025. var current = PATH.join2(parent, part);
  7026. try {
  7027. FS.mkdir(current);
  7028. } catch (e) {}
  7029. parent = current;
  7030. }
  7031. return current;
  7032. }),
  7033. createFile: (function(parent, name, properties, canRead, canWrite) {
  7034. var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name);
  7035. var mode = FS.getMode(canRead, canWrite);
  7036. return FS.create(path, mode);
  7037. }),
  7038. createDataFile: (function(parent, name, data, canRead, canWrite, canOwn) {
  7039. var path = name ? PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name) : parent;
  7040. var mode = FS.getMode(canRead, canWrite);
  7041. var node = FS.create(path, mode);
  7042. if (data) {
  7043. if (typeof data === "string") {
  7044. var arr = new Array(data.length);
  7045. for (var i = 0, len = data.length; i < len; ++i) arr[i] = data.charCodeAt(i);
  7046. data = arr;
  7047. }
  7048. FS.chmod(node, mode | 146);
  7049. var stream = FS.open(node, "w");
  7050. FS.write(stream, data, 0, data.length, 0, canOwn);
  7051. FS.close(stream);
  7052. FS.chmod(node, mode);
  7053. }
  7054. return node;
  7055. }),
  7056. createDevice: (function(parent, name, input, output) {
  7057. var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name);
  7058. var mode = FS.getMode(!!input, !!output);
  7059. if (!FS.createDevice.major) FS.createDevice.major = 64;
  7060. var dev = FS.makedev(FS.createDevice.major++, 0);
  7061. FS.registerDevice(dev, {
  7062. open: (function(stream) {
  7063. stream.seekable = false;
  7064. }),
  7065. close: (function(stream) {
  7066. if (output && output.buffer && output.buffer.length) {
  7067. output(10);
  7068. }
  7069. }),
  7070. read: (function(stream, buffer, offset, length, pos) {
  7071. var bytesRead = 0;
  7072. for (var i = 0; i < length; i++) {
  7073. var result;
  7074. try {
  7075. result = input();
  7076. } catch (e) {
  7077. throw new FS.ErrnoError(ERRNO_CODES.EIO);
  7078. }
  7079. if (result === undefined && bytesRead === 0) {
  7080. throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);
  7081. }
  7082. if (result === null || result === undefined) break;
  7083. bytesRead++;
  7084. buffer[offset + i] = result;
  7085. }
  7086. if (bytesRead) {
  7087. stream.node.timestamp = Date.now();
  7088. }
  7089. return bytesRead;
  7090. }),
  7091. write: (function(stream, buffer, offset, length, pos) {
  7092. for (var i = 0; i < length; i++) {
  7093. try {
  7094. output(buffer[offset + i]);
  7095. } catch (e) {
  7096. throw new FS.ErrnoError(ERRNO_CODES.EIO);
  7097. }
  7098. }
  7099. if (length) {
  7100. stream.node.timestamp = Date.now();
  7101. }
  7102. return i;
  7103. })
  7104. });
  7105. return FS.mkdev(path, mode, dev);
  7106. }),
  7107. createLink: (function(parent, name, target, canRead, canWrite) {
  7108. var path = PATH.join2(typeof parent === "string" ? parent : FS.getPath(parent), name);
  7109. return FS.symlink(target, path);
  7110. }),
  7111. forceLoadFile: (function(obj) {
  7112. if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true;
  7113. var success = true;
  7114. if (typeof XMLHttpRequest !== "undefined") {
  7115. throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");
  7116. } else if (Module["read"]) {
  7117. try {
  7118. obj.contents = intArrayFromString(Module["read"](obj.url), true);
  7119. obj.usedBytes = obj.contents.length;
  7120. } catch (e) {
  7121. success = false;
  7122. }
  7123. } else {
  7124. throw new Error("Cannot load without read() or XMLHttpRequest.");
  7125. }
  7126. if (!success) ___setErrNo(ERRNO_CODES.EIO);
  7127. return success;
  7128. }),
  7129. createLazyFile: (function(parent, name, url, canRead, canWrite) {
  7130. function LazyUint8Array() {
  7131. this.lengthKnown = false;
  7132. this.chunks = [];
  7133. }
  7134. LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) {
  7135. if (idx > this.length - 1 || idx < 0) {
  7136. return undefined;
  7137. }
  7138. var chunkOffset = idx % this.chunkSize;
  7139. var chunkNum = idx / this.chunkSize | 0;
  7140. return this.getter(chunkNum)[chunkOffset];
  7141. };
  7142. LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) {
  7143. this.getter = getter;
  7144. };
  7145. LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() {
  7146. var xhr = new XMLHttpRequest;
  7147. xhr.open("HEAD", url, false);
  7148. xhr.send(null);
  7149. if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status);
  7150. var datalength = Number(xhr.getResponseHeader("Content-length"));
  7151. var header;
  7152. var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes";
  7153. var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip";
  7154. var chunkSize = 1024 * 1024;
  7155. if (!hasByteServing) chunkSize = datalength;
  7156. var doXHR = (function(from, to) {
  7157. if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!");
  7158. if (to > datalength - 1) throw new Error("only " + datalength + " bytes available! programmer error!");
  7159. var xhr = new XMLHttpRequest;
  7160. xhr.open("GET", url, false);
  7161. if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to);
  7162. if (typeof Uint8Array != "undefined") xhr.responseType = "arraybuffer";
  7163. if (xhr.overrideMimeType) {
  7164. xhr.overrideMimeType("text/plain; charset=x-user-defined");
  7165. }
  7166. xhr.send(null);
  7167. if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status);
  7168. if (xhr.response !== undefined) {
  7169. return new Uint8Array(xhr.response || []);
  7170. } else {
  7171. return intArrayFromString(xhr.responseText || "", true);
  7172. }
  7173. });
  7174. var lazyArray = this;
  7175. lazyArray.setDataGetter((function(chunkNum) {
  7176. var start = chunkNum * chunkSize;
  7177. var end = (chunkNum + 1) * chunkSize - 1;
  7178. end = Math.min(end, datalength - 1);
  7179. if (typeof lazyArray.chunks[chunkNum] === "undefined") {
  7180. lazyArray.chunks[chunkNum] = doXHR(start, end);
  7181. }
  7182. if (typeof lazyArray.chunks[chunkNum] === "undefined") throw new Error("doXHR failed!");
  7183. return lazyArray.chunks[chunkNum];
  7184. }));
  7185. if (usesGzip || !datalength) {
  7186. chunkSize = datalength = 1;
  7187. datalength = this.getter(0).length;
  7188. chunkSize = datalength;
  7189. console.log("LazyFiles on gzip forces download of the whole file when length is accessed");
  7190. }
  7191. this._length = datalength;
  7192. this._chunkSize = chunkSize;
  7193. this.lengthKnown = true;
  7194. };
  7195. if (typeof XMLHttpRequest !== "undefined") {
  7196. if (!ENVIRONMENT_IS_WORKER) throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";
  7197. var lazyArray = new LazyUint8Array;
  7198. Object.defineProperties(lazyArray, {
  7199. length: {
  7200. get: (function() {
  7201. if (!this.lengthKnown) {
  7202. this.cacheLength();
  7203. }
  7204. return this._length;
  7205. })
  7206. },
  7207. chunkSize: {
  7208. get: (function() {
  7209. if (!this.lengthKnown) {
  7210. this.cacheLength();
  7211. }
  7212. return this._chunkSize;
  7213. })
  7214. }
  7215. });
  7216. var properties = {
  7217. isDevice: false,
  7218. contents: lazyArray
  7219. };
  7220. } else {
  7221. var properties = {
  7222. isDevice: false,
  7223. url: url
  7224. };
  7225. }
  7226. var node = FS.createFile(parent, name, properties, canRead, canWrite);
  7227. if (properties.contents) {
  7228. node.contents = properties.contents;
  7229. } else if (properties.url) {
  7230. node.contents = null;
  7231. node.url = properties.url;
  7232. }
  7233. Object.defineProperties(node, {
  7234. usedBytes: {
  7235. get: (function() {
  7236. return this.contents.length;
  7237. })
  7238. }
  7239. });
  7240. var stream_ops = {};
  7241. var keys = Object.keys(node.stream_ops);
  7242. keys.forEach((function(key) {
  7243. var fn = node.stream_ops[key];
  7244. stream_ops[key] = function forceLoadLazyFile() {
  7245. if (!FS.forceLoadFile(node)) {
  7246. throw new FS.ErrnoError(ERRNO_CODES.EIO);
  7247. }
  7248. return fn.apply(null, arguments);
  7249. };
  7250. }));
  7251. stream_ops.read = function stream_ops_read(stream, buffer, offset, length, position) {
  7252. if (!FS.forceLoadFile(node)) {
  7253. throw new FS.ErrnoError(ERRNO_CODES.EIO);
  7254. }
  7255. var contents = stream.node.contents;
  7256. if (position >= contents.length) return 0;
  7257. var size = Math.min(contents.length - position, length);
  7258. assert(size >= 0);
  7259. if (contents.slice) {
  7260. for (var i = 0; i < size; i++) {
  7261. buffer[offset + i] = contents[position + i];
  7262. }
  7263. } else {
  7264. for (var i = 0; i < size; i++) {
  7265. buffer[offset + i] = contents.get(position + i);
  7266. }
  7267. }
  7268. return size;
  7269. };
  7270. node.stream_ops = stream_ops;
  7271. return node;
  7272. }),
  7273. createPreloadedFile: (function(parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) {
  7274. Browser.init();
  7275. var fullname = name ? PATH.resolve(PATH.join2(parent, name)) : parent;
  7276. var dep = getUniqueRunDependency("cp " + fullname);
  7277. function processData(byteArray) {
  7278. function finish(byteArray) {
  7279. if (preFinish) preFinish();
  7280. if (!dontCreateFile) {
  7281. FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn);
  7282. }
  7283. if (onload) onload();
  7284. removeRunDependency(dep);
  7285. }
  7286. var handled = false;
  7287. Module["preloadPlugins"].forEach((function(plugin) {
  7288. if (handled) return;
  7289. if (plugin["canHandle"](fullname)) {
  7290. plugin["handle"](byteArray, fullname, finish, (function() {
  7291. if (onerror) onerror();
  7292. removeRunDependency(dep);
  7293. }));
  7294. handled = true;
  7295. }
  7296. }));
  7297. if (!handled) finish(byteArray);
  7298. }
  7299. addRunDependency(dep);
  7300. if (typeof url == "string") {
  7301. Browser.asyncLoad(url, (function(byteArray) {
  7302. processData(byteArray);
  7303. }), onerror);
  7304. } else {
  7305. processData(url);
  7306. }
  7307. }),
  7308. indexedDB: (function() {
  7309. return window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
  7310. }),
  7311. DB_NAME: (function() {
  7312. return "EM_FS_" + window.location.pathname;
  7313. }),
  7314. DB_VERSION: 20,
  7315. DB_STORE_NAME: "FILE_DATA",
  7316. saveFilesToDB: (function(paths, onload, onerror) {
  7317. onload = onload || (function() {});
  7318. onerror = onerror || (function() {});
  7319. var indexedDB = FS.indexedDB();
  7320. try {
  7321. var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION);
  7322. } catch (e) {
  7323. return onerror(e);
  7324. }
  7325. openRequest.onupgradeneeded = function openRequest_onupgradeneeded() {
  7326. console.log("creating db");
  7327. var db = openRequest.result;
  7328. db.createObjectStore(FS.DB_STORE_NAME);
  7329. };
  7330. openRequest.onsuccess = function openRequest_onsuccess() {
  7331. var db = openRequest.result;
  7332. var transaction = db.transaction([ FS.DB_STORE_NAME ], "readwrite");
  7333. var files = transaction.objectStore(FS.DB_STORE_NAME);
  7334. var ok = 0, fail = 0, total = paths.length;
  7335. function finish() {
  7336. if (fail == 0) onload(); else onerror();
  7337. }
  7338. paths.forEach((function(path) {
  7339. var putRequest = files.put(FS.analyzePath(path).object.contents, path);
  7340. putRequest.onsuccess = function putRequest_onsuccess() {
  7341. ok++;
  7342. if (ok + fail == total) finish();
  7343. };
  7344. putRequest.onerror = function putRequest_onerror() {
  7345. fail++;
  7346. if (ok + fail == total) finish();
  7347. };
  7348. }));
  7349. transaction.onerror = onerror;
  7350. };
  7351. openRequest.onerror = onerror;
  7352. }),
  7353. loadFilesFromDB: (function(paths, onload, onerror) {
  7354. onload = onload || (function() {});
  7355. onerror = onerror || (function() {});
  7356. var indexedDB = FS.indexedDB();
  7357. try {
  7358. var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION);
  7359. } catch (e) {
  7360. return onerror(e);
  7361. }
  7362. openRequest.onupgradeneeded = onerror;
  7363. openRequest.onsuccess = function openRequest_onsuccess() {
  7364. var db = openRequest.result;
  7365. try {
  7366. var transaction = db.transaction([ FS.DB_STORE_NAME ], "readonly");
  7367. } catch (e) {
  7368. onerror(e);
  7369. return;
  7370. }
  7371. var files = transaction.objectStore(FS.DB_STORE_NAME);
  7372. var ok = 0, fail = 0, total = paths.length;
  7373. function finish() {
  7374. if (fail == 0) onload(); else onerror();
  7375. }
  7376. paths.forEach((function(path) {
  7377. var getRequest = files.get(path);
  7378. getRequest.onsuccess = function getRequest_onsuccess() {
  7379. if (FS.analyzePath(path).exists) {
  7380. FS.unlink(path);
  7381. }
  7382. FS.createDataFile(PATH.dirname(path), PATH.basename(path), getRequest.result, true, true, true);
  7383. ok++;
  7384. if (ok + fail == total) finish();
  7385. };
  7386. getRequest.onerror = function getRequest_onerror() {
  7387. fail++;
  7388. if (ok + fail == total) finish();
  7389. };
  7390. }));
  7391. transaction.onerror = onerror;
  7392. };
  7393. openRequest.onerror = onerror;
  7394. })
  7395. };
  7396. var SYSCALLS = {
  7397. DEFAULT_POLLMASK: 5,
  7398. mappings: {},
  7399. umask: 511,
  7400. calculateAt: (function(dirfd, path) {
  7401. if (path[0] !== "/") {
  7402. var dir;
  7403. if (dirfd === -100) {
  7404. dir = FS.cwd();
  7405. } else {
  7406. var dirstream = FS.getStream(dirfd);
  7407. if (!dirstream) throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  7408. dir = dirstream.path;
  7409. }
  7410. path = PATH.join2(dir, path);
  7411. }
  7412. return path;
  7413. }),
  7414. doStat: (function(func, path, buf) {
  7415. try {
  7416. var stat = func(path);
  7417. } catch (e) {
  7418. if (e && e.node && PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node))) {
  7419. return -ERRNO_CODES.ENOTDIR;
  7420. }
  7421. throw e;
  7422. }
  7423. HEAP32[buf >> 2] = stat.dev;
  7424. HEAP32[buf + 4 >> 2] = 0;
  7425. HEAP32[buf + 8 >> 2] = stat.ino;
  7426. HEAP32[buf + 12 >> 2] = stat.mode;
  7427. HEAP32[buf + 16 >> 2] = stat.nlink;
  7428. HEAP32[buf + 20 >> 2] = stat.uid;
  7429. HEAP32[buf + 24 >> 2] = stat.gid;
  7430. HEAP32[buf + 28 >> 2] = stat.rdev;
  7431. HEAP32[buf + 32 >> 2] = 0;
  7432. HEAP32[buf + 36 >> 2] = stat.size;
  7433. HEAP32[buf + 40 >> 2] = 4096;
  7434. HEAP32[buf + 44 >> 2] = stat.blocks;
  7435. HEAP32[buf + 48 >> 2] = stat.atime.getTime() / 1e3 | 0;
  7436. HEAP32[buf + 52 >> 2] = 0;
  7437. HEAP32[buf + 56 >> 2] = stat.mtime.getTime() / 1e3 | 0;
  7438. HEAP32[buf + 60 >> 2] = 0;
  7439. HEAP32[buf + 64 >> 2] = stat.ctime.getTime() / 1e3 | 0;
  7440. HEAP32[buf + 68 >> 2] = 0;
  7441. HEAP32[buf + 72 >> 2] = stat.ino;
  7442. return 0;
  7443. }),
  7444. doMsync: (function(addr, stream, len, flags) {
  7445. var buffer = new Uint8Array(HEAPU8.subarray(addr, addr + len));
  7446. FS.msync(stream, buffer, 0, len, flags);
  7447. }),
  7448. doMkdir: (function(path, mode) {
  7449. path = PATH.normalize(path);
  7450. if (path[path.length - 1] === "/") path = path.substr(0, path.length - 1);
  7451. FS.mkdir(path, mode, 0);
  7452. return 0;
  7453. }),
  7454. doMknod: (function(path, mode, dev) {
  7455. switch (mode & 61440) {
  7456. case 32768:
  7457. case 8192:
  7458. case 24576:
  7459. case 4096:
  7460. case 49152:
  7461. break;
  7462. default:
  7463. return -ERRNO_CODES.EINVAL;
  7464. }
  7465. FS.mknod(path, mode, dev);
  7466. return 0;
  7467. }),
  7468. doReadlink: (function(path, buf, bufsize) {
  7469. if (bufsize <= 0) return -ERRNO_CODES.EINVAL;
  7470. var ret = FS.readlink(path);
  7471. var len = Math.min(bufsize, lengthBytesUTF8(ret));
  7472. var endChar = HEAP8[buf + len];
  7473. stringToUTF8(ret, buf, bufsize + 1);
  7474. HEAP8[buf + len] = endChar;
  7475. return len;
  7476. }),
  7477. doAccess: (function(path, amode) {
  7478. if (amode & ~7) {
  7479. return -ERRNO_CODES.EINVAL;
  7480. }
  7481. var node;
  7482. var lookup = FS.lookupPath(path, {
  7483. follow: true
  7484. });
  7485. node = lookup.node;
  7486. var perms = "";
  7487. if (amode & 4) perms += "r";
  7488. if (amode & 2) perms += "w";
  7489. if (amode & 1) perms += "x";
  7490. if (perms && FS.nodePermissions(node, perms)) {
  7491. return -ERRNO_CODES.EACCES;
  7492. }
  7493. return 0;
  7494. }),
  7495. doDup: (function(path, flags, suggestFD) {
  7496. var suggest = FS.getStream(suggestFD);
  7497. if (suggest) FS.close(suggest);
  7498. return FS.open(path, flags, 0, suggestFD, suggestFD).fd;
  7499. }),
  7500. doReadv: (function(stream, iov, iovcnt, offset) {
  7501. var ret = 0;
  7502. for (var i = 0; i < iovcnt; i++) {
  7503. var ptr = HEAP32[iov + i * 8 >> 2];
  7504. var len = HEAP32[iov + (i * 8 + 4) >> 2];
  7505. var curr = FS.read(stream, HEAP8, ptr, len, offset);
  7506. if (curr < 0) return -1;
  7507. ret += curr;
  7508. if (curr < len) break;
  7509. }
  7510. return ret;
  7511. }),
  7512. doWritev: (function(stream, iov, iovcnt, offset) {
  7513. var ret = 0;
  7514. for (var i = 0; i < iovcnt; i++) {
  7515. var ptr = HEAP32[iov + i * 8 >> 2];
  7516. var len = HEAP32[iov + (i * 8 + 4) >> 2];
  7517. var curr = FS.write(stream, HEAP8, ptr, len, offset);
  7518. if (curr < 0) return -1;
  7519. ret += curr;
  7520. }
  7521. return ret;
  7522. }),
  7523. varargs: 0,
  7524. get: (function(varargs) {
  7525. SYSCALLS.varargs += 4;
  7526. var ret = HEAP32[SYSCALLS.varargs - 4 >> 2];
  7527. return ret;
  7528. }),
  7529. getStr: (function() {
  7530. var ret = Pointer_stringify(SYSCALLS.get());
  7531. return ret;
  7532. }),
  7533. getStreamFromFD: (function() {
  7534. var stream = FS.getStream(SYSCALLS.get());
  7535. if (!stream) throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  7536. return stream;
  7537. }),
  7538. getSocketFromFD: (function() {
  7539. var socket = SOCKFS.getSocket(SYSCALLS.get());
  7540. if (!socket) throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  7541. return socket;
  7542. }),
  7543. getSocketAddress: (function(allowNull) {
  7544. var addrp = SYSCALLS.get(), addrlen = SYSCALLS.get();
  7545. if (allowNull && addrp === 0) return null;
  7546. var info = __read_sockaddr(addrp, addrlen);
  7547. if (info.errno) throw new FS.ErrnoError(info.errno);
  7548. info.addr = DNS.lookup_addr(info.addr) || info.addr;
  7549. return info;
  7550. }),
  7551. get64: (function() {
  7552. var low = SYSCALLS.get(), high = SYSCALLS.get();
  7553. if (low >= 0) assert(high === 0); else assert(high === -1);
  7554. return low;
  7555. }),
  7556. getZero: (function() {
  7557. assert(SYSCALLS.get() === 0);
  7558. })
  7559. };
  7560. function ___syscall10(which, varargs) {
  7561. SYSCALLS.varargs = varargs;
  7562. try {
  7563. var path = SYSCALLS.getStr();
  7564. FS.unlink(path);
  7565. return 0;
  7566. } catch (e) {
  7567. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  7568. return -e.errno;
  7569. }
  7570. }
  7571. var SOCKFS = {
  7572. mount: (function(mount) {
  7573. Module["websocket"] = Module["websocket"] && "object" === typeof Module["websocket"] ? Module["websocket"] : {};
  7574. Module["websocket"]._callbacks = {};
  7575. Module["websocket"]["on"] = (function(event, callback) {
  7576. if ("function" === typeof callback) {
  7577. this._callbacks[event] = callback;
  7578. }
  7579. return this;
  7580. });
  7581. Module["websocket"].emit = (function(event, param) {
  7582. if ("function" === typeof this._callbacks[event]) {
  7583. this._callbacks[event].call(this, param);
  7584. }
  7585. });
  7586. return FS.createNode(null, "/", 16384 | 511, 0);
  7587. }),
  7588. createSocket: (function(family, type, protocol) {
  7589. var streaming = type == 1;
  7590. if (protocol) {
  7591. assert(streaming == (protocol == 6));
  7592. }
  7593. var sock = {
  7594. family: family,
  7595. type: type,
  7596. protocol: protocol,
  7597. server: null,
  7598. error: null,
  7599. peers: {},
  7600. pending: [],
  7601. recv_queue: [],
  7602. sock_ops: SOCKFS.websocket_sock_ops
  7603. };
  7604. var name = SOCKFS.nextname();
  7605. var node = FS.createNode(SOCKFS.root, name, 49152, 0);
  7606. node.sock = sock;
  7607. var stream = FS.createStream({
  7608. path: name,
  7609. node: node,
  7610. flags: FS.modeStringToFlags("r+"),
  7611. seekable: false,
  7612. stream_ops: SOCKFS.stream_ops
  7613. });
  7614. sock.stream = stream;
  7615. return sock;
  7616. }),
  7617. getSocket: (function(fd) {
  7618. var stream = FS.getStream(fd);
  7619. if (!stream || !FS.isSocket(stream.node.mode)) {
  7620. return null;
  7621. }
  7622. return stream.node.sock;
  7623. }),
  7624. stream_ops: {
  7625. poll: (function(stream) {
  7626. var sock = stream.node.sock;
  7627. return sock.sock_ops.poll(sock);
  7628. }),
  7629. ioctl: (function(stream, request, varargs) {
  7630. var sock = stream.node.sock;
  7631. return sock.sock_ops.ioctl(sock, request, varargs);
  7632. }),
  7633. read: (function(stream, buffer, offset, length, position) {
  7634. var sock = stream.node.sock;
  7635. var msg = sock.sock_ops.recvmsg(sock, length);
  7636. if (!msg) {
  7637. return 0;
  7638. }
  7639. buffer.set(msg.buffer, offset);
  7640. return msg.buffer.length;
  7641. }),
  7642. write: (function(stream, buffer, offset, length, position) {
  7643. var sock = stream.node.sock;
  7644. return sock.sock_ops.sendmsg(sock, buffer, offset, length);
  7645. }),
  7646. close: (function(stream) {
  7647. var sock = stream.node.sock;
  7648. sock.sock_ops.close(sock);
  7649. })
  7650. },
  7651. nextname: (function() {
  7652. if (!SOCKFS.nextname.current) {
  7653. SOCKFS.nextname.current = 0;
  7654. }
  7655. return "socket[" + SOCKFS.nextname.current++ + "]";
  7656. }),
  7657. websocket_sock_ops: {
  7658. createPeer: (function(sock, addr, port) {
  7659. var ws;
  7660. if (typeof addr === "object") {
  7661. ws = addr;
  7662. addr = null;
  7663. port = null;
  7664. }
  7665. if (ws) {
  7666. if (ws._socket) {
  7667. addr = ws._socket.remoteAddress;
  7668. port = ws._socket.remotePort;
  7669. } else {
  7670. var result = /ws[s]?:\/\/([^:]+):(\d+)/.exec(ws.url);
  7671. if (!result) {
  7672. throw new Error("WebSocket URL must be in the format ws(s)://address:port");
  7673. }
  7674. addr = result[1];
  7675. port = parseInt(result[2], 10);
  7676. }
  7677. } else {
  7678. try {
  7679. var runtimeConfig = Module["websocket"] && "object" === typeof Module["websocket"];
  7680. var url = "ws:#".replace("#", "//");
  7681. if (runtimeConfig) {
  7682. if ("string" === typeof Module["websocket"]["url"]) {
  7683. url = Module["websocket"]["url"];
  7684. }
  7685. }
  7686. if (url === "ws://" || url === "wss://") {
  7687. var parts = addr.split("/");
  7688. url = url + parts[0] + ":" + port + "/" + parts.slice(1).join("/");
  7689. }
  7690. var subProtocols = "binary";
  7691. if (runtimeConfig) {
  7692. if ("string" === typeof Module["websocket"]["subprotocol"]) {
  7693. subProtocols = Module["websocket"]["subprotocol"];
  7694. }
  7695. }
  7696. subProtocols = subProtocols.replace(/^ +| +$/g, "").split(/ *, */);
  7697. var opts = ENVIRONMENT_IS_NODE ? {
  7698. "protocol": subProtocols.toString()
  7699. } : subProtocols;
  7700. if (runtimeConfig && null === Module["websocket"]["subprotocol"]) {
  7701. subProtocols = "null";
  7702. opts = undefined;
  7703. }
  7704. var WebSocketConstructor;
  7705. if (ENVIRONMENT_IS_NODE) {
  7706. WebSocketConstructor = require("ws");
  7707. } else if (ENVIRONMENT_IS_WEB) {
  7708. WebSocketConstructor = window["WebSocket"];
  7709. } else {
  7710. WebSocketConstructor = WebSocket;
  7711. }
  7712. ws = new WebSocketConstructor(url, opts);
  7713. ws.binaryType = "arraybuffer";
  7714. } catch (e) {
  7715. throw new FS.ErrnoError(ERRNO_CODES.EHOSTUNREACH);
  7716. }
  7717. }
  7718. var peer = {
  7719. addr: addr,
  7720. port: port,
  7721. socket: ws,
  7722. dgram_send_queue: []
  7723. };
  7724. SOCKFS.websocket_sock_ops.addPeer(sock, peer);
  7725. SOCKFS.websocket_sock_ops.handlePeerEvents(sock, peer);
  7726. if (sock.type === 2 && typeof sock.sport !== "undefined") {
  7727. peer.dgram_send_queue.push(new Uint8Array([ 255, 255, 255, 255, "p".charCodeAt(0), "o".charCodeAt(0), "r".charCodeAt(0), "t".charCodeAt(0), (sock.sport & 65280) >> 8, sock.sport & 255 ]));
  7728. }
  7729. return peer;
  7730. }),
  7731. getPeer: (function(sock, addr, port) {
  7732. return sock.peers[addr + ":" + port];
  7733. }),
  7734. addPeer: (function(sock, peer) {
  7735. sock.peers[peer.addr + ":" + peer.port] = peer;
  7736. }),
  7737. removePeer: (function(sock, peer) {
  7738. delete sock.peers[peer.addr + ":" + peer.port];
  7739. }),
  7740. handlePeerEvents: (function(sock, peer) {
  7741. var first = true;
  7742. var handleOpen = (function() {
  7743. Module["websocket"].emit("open", sock.stream.fd);
  7744. try {
  7745. var queued = peer.dgram_send_queue.shift();
  7746. while (queued) {
  7747. peer.socket.send(queued);
  7748. queued = peer.dgram_send_queue.shift();
  7749. }
  7750. } catch (e) {
  7751. peer.socket.close();
  7752. }
  7753. });
  7754. function handleMessage(data) {
  7755. assert(typeof data !== "string" && data.byteLength !== undefined);
  7756. if (data.byteLength == 0) {
  7757. return;
  7758. }
  7759. data = new Uint8Array(data);
  7760. var wasfirst = first;
  7761. first = false;
  7762. if (wasfirst && data.length === 10 && data[0] === 255 && data[1] === 255 && data[2] === 255 && data[3] === 255 && data[4] === "p".charCodeAt(0) && data[5] === "o".charCodeAt(0) && data[6] === "r".charCodeAt(0) && data[7] === "t".charCodeAt(0)) {
  7763. var newport = data[8] << 8 | data[9];
  7764. SOCKFS.websocket_sock_ops.removePeer(sock, peer);
  7765. peer.port = newport;
  7766. SOCKFS.websocket_sock_ops.addPeer(sock, peer);
  7767. return;
  7768. }
  7769. sock.recv_queue.push({
  7770. addr: peer.addr,
  7771. port: peer.port,
  7772. data: data
  7773. });
  7774. Module["websocket"].emit("message", sock.stream.fd);
  7775. }
  7776. if (ENVIRONMENT_IS_NODE) {
  7777. peer.socket.on("open", handleOpen);
  7778. peer.socket.on("message", (function(data, flags) {
  7779. if (!flags.binary) {
  7780. return;
  7781. }
  7782. handleMessage((new Uint8Array(data)).buffer);
  7783. }));
  7784. peer.socket.on("close", (function() {
  7785. Module["websocket"].emit("close", sock.stream.fd);
  7786. }));
  7787. peer.socket.on("error", (function(error) {
  7788. sock.error = ERRNO_CODES.ECONNREFUSED;
  7789. Module["websocket"].emit("error", [ sock.stream.fd, sock.error, "ECONNREFUSED: Connection refused" ]);
  7790. }));
  7791. } else {
  7792. peer.socket.onopen = handleOpen;
  7793. peer.socket.onclose = (function() {
  7794. Module["websocket"].emit("close", sock.stream.fd);
  7795. });
  7796. peer.socket.onmessage = function peer_socket_onmessage(event) {
  7797. handleMessage(event.data);
  7798. };
  7799. peer.socket.onerror = (function(error) {
  7800. sock.error = ERRNO_CODES.ECONNREFUSED;
  7801. Module["websocket"].emit("error", [ sock.stream.fd, sock.error, "ECONNREFUSED: Connection refused" ]);
  7802. });
  7803. }
  7804. }),
  7805. poll: (function(sock) {
  7806. if (sock.type === 1 && sock.server) {
  7807. return sock.pending.length ? 64 | 1 : 0;
  7808. }
  7809. var mask = 0;
  7810. var dest = sock.type === 1 ? SOCKFS.websocket_sock_ops.getPeer(sock, sock.daddr, sock.dport) : null;
  7811. if (sock.recv_queue.length || !dest || dest && dest.socket.readyState === dest.socket.CLOSING || dest && dest.socket.readyState === dest.socket.CLOSED) {
  7812. mask |= 64 | 1;
  7813. }
  7814. if (!dest || dest && dest.socket.readyState === dest.socket.OPEN) {
  7815. mask |= 4;
  7816. }
  7817. if (dest && dest.socket.readyState === dest.socket.CLOSING || dest && dest.socket.readyState === dest.socket.CLOSED) {
  7818. mask |= 16;
  7819. }
  7820. return mask;
  7821. }),
  7822. ioctl: (function(sock, request, arg) {
  7823. switch (request) {
  7824. case 21531:
  7825. var bytes = 0;
  7826. if (sock.recv_queue.length) {
  7827. bytes = sock.recv_queue[0].data.length;
  7828. }
  7829. HEAP32[arg >> 2] = bytes;
  7830. return 0;
  7831. default:
  7832. return ERRNO_CODES.EINVAL;
  7833. }
  7834. }),
  7835. close: (function(sock) {
  7836. if (sock.server) {
  7837. try {
  7838. sock.server.close();
  7839. } catch (e) {}
  7840. sock.server = null;
  7841. }
  7842. var peers = Object.keys(sock.peers);
  7843. for (var i = 0; i < peers.length; i++) {
  7844. var peer = sock.peers[peers[i]];
  7845. try {
  7846. peer.socket.close();
  7847. } catch (e) {}
  7848. SOCKFS.websocket_sock_ops.removePeer(sock, peer);
  7849. }
  7850. return 0;
  7851. }),
  7852. bind: (function(sock, addr, port) {
  7853. if (typeof sock.saddr !== "undefined" || typeof sock.sport !== "undefined") {
  7854. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  7855. }
  7856. sock.saddr = addr;
  7857. sock.sport = port;
  7858. if (sock.type === 2) {
  7859. if (sock.server) {
  7860. sock.server.close();
  7861. sock.server = null;
  7862. }
  7863. try {
  7864. sock.sock_ops.listen(sock, 0);
  7865. } catch (e) {
  7866. if (!(e instanceof FS.ErrnoError)) throw e;
  7867. if (e.errno !== ERRNO_CODES.EOPNOTSUPP) throw e;
  7868. }
  7869. }
  7870. }),
  7871. connect: (function(sock, addr, port) {
  7872. if (sock.server) {
  7873. throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP);
  7874. }
  7875. if (typeof sock.daddr !== "undefined" && typeof sock.dport !== "undefined") {
  7876. var dest = SOCKFS.websocket_sock_ops.getPeer(sock, sock.daddr, sock.dport);
  7877. if (dest) {
  7878. if (dest.socket.readyState === dest.socket.CONNECTING) {
  7879. throw new FS.ErrnoError(ERRNO_CODES.EALREADY);
  7880. } else {
  7881. throw new FS.ErrnoError(ERRNO_CODES.EISCONN);
  7882. }
  7883. }
  7884. }
  7885. var peer = SOCKFS.websocket_sock_ops.createPeer(sock, addr, port);
  7886. sock.daddr = peer.addr;
  7887. sock.dport = peer.port;
  7888. throw new FS.ErrnoError(ERRNO_CODES.EINPROGRESS);
  7889. }),
  7890. listen: (function(sock, backlog) {
  7891. if (!ENVIRONMENT_IS_NODE) {
  7892. throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP);
  7893. }
  7894. if (sock.server) {
  7895. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  7896. }
  7897. var WebSocketServer = require("ws").Server;
  7898. var host = sock.saddr;
  7899. sock.server = new WebSocketServer({
  7900. host: host,
  7901. port: sock.sport
  7902. });
  7903. Module["websocket"].emit("listen", sock.stream.fd);
  7904. sock.server.on("connection", (function(ws) {
  7905. if (sock.type === 1) {
  7906. var newsock = SOCKFS.createSocket(sock.family, sock.type, sock.protocol);
  7907. var peer = SOCKFS.websocket_sock_ops.createPeer(newsock, ws);
  7908. newsock.daddr = peer.addr;
  7909. newsock.dport = peer.port;
  7910. sock.pending.push(newsock);
  7911. Module["websocket"].emit("connection", newsock.stream.fd);
  7912. } else {
  7913. SOCKFS.websocket_sock_ops.createPeer(sock, ws);
  7914. Module["websocket"].emit("connection", sock.stream.fd);
  7915. }
  7916. }));
  7917. sock.server.on("closed", (function() {
  7918. Module["websocket"].emit("close", sock.stream.fd);
  7919. sock.server = null;
  7920. }));
  7921. sock.server.on("error", (function(error) {
  7922. sock.error = ERRNO_CODES.EHOSTUNREACH;
  7923. Module["websocket"].emit("error", [ sock.stream.fd, sock.error, "EHOSTUNREACH: Host is unreachable" ]);
  7924. }));
  7925. }),
  7926. accept: (function(listensock) {
  7927. if (!listensock.server) {
  7928. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  7929. }
  7930. var newsock = listensock.pending.shift();
  7931. newsock.stream.flags = listensock.stream.flags;
  7932. return newsock;
  7933. }),
  7934. getname: (function(sock, peer) {
  7935. var addr, port;
  7936. if (peer) {
  7937. if (sock.daddr === undefined || sock.dport === undefined) {
  7938. throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN);
  7939. }
  7940. addr = sock.daddr;
  7941. port = sock.dport;
  7942. } else {
  7943. addr = sock.saddr || 0;
  7944. port = sock.sport || 0;
  7945. }
  7946. return {
  7947. addr: addr,
  7948. port: port
  7949. };
  7950. }),
  7951. sendmsg: (function(sock, buffer, offset, length, addr, port) {
  7952. if (sock.type === 2) {
  7953. if (addr === undefined || port === undefined) {
  7954. addr = sock.daddr;
  7955. port = sock.dport;
  7956. }
  7957. if (addr === undefined || port === undefined) {
  7958. throw new FS.ErrnoError(ERRNO_CODES.EDESTADDRREQ);
  7959. }
  7960. } else {
  7961. addr = sock.daddr;
  7962. port = sock.dport;
  7963. }
  7964. var dest = SOCKFS.websocket_sock_ops.getPeer(sock, addr, port);
  7965. if (sock.type === 1) {
  7966. if (!dest || dest.socket.readyState === dest.socket.CLOSING || dest.socket.readyState === dest.socket.CLOSED) {
  7967. throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN);
  7968. } else if (dest.socket.readyState === dest.socket.CONNECTING) {
  7969. throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);
  7970. }
  7971. }
  7972. if (ArrayBuffer.isView(buffer)) {
  7973. offset += buffer.byteOffset;
  7974. buffer = buffer.buffer;
  7975. }
  7976. var data;
  7977. data = buffer.slice(offset, offset + length);
  7978. if (sock.type === 2) {
  7979. if (!dest || dest.socket.readyState !== dest.socket.OPEN) {
  7980. if (!dest || dest.socket.readyState === dest.socket.CLOSING || dest.socket.readyState === dest.socket.CLOSED) {
  7981. dest = SOCKFS.websocket_sock_ops.createPeer(sock, addr, port);
  7982. }
  7983. dest.dgram_send_queue.push(data);
  7984. return length;
  7985. }
  7986. }
  7987. try {
  7988. dest.socket.send(data);
  7989. return length;
  7990. } catch (e) {
  7991. throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
  7992. }
  7993. }),
  7994. recvmsg: (function(sock, length) {
  7995. if (sock.type === 1 && sock.server) {
  7996. throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN);
  7997. }
  7998. var queued = sock.recv_queue.shift();
  7999. if (!queued) {
  8000. if (sock.type === 1) {
  8001. var dest = SOCKFS.websocket_sock_ops.getPeer(sock, sock.daddr, sock.dport);
  8002. if (!dest) {
  8003. throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN);
  8004. } else if (dest.socket.readyState === dest.socket.CLOSING || dest.socket.readyState === dest.socket.CLOSED) {
  8005. return null;
  8006. } else {
  8007. throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);
  8008. }
  8009. } else {
  8010. throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);
  8011. }
  8012. }
  8013. var queuedLength = queued.data.byteLength || queued.data.length;
  8014. var queuedOffset = queued.data.byteOffset || 0;
  8015. var queuedBuffer = queued.data.buffer || queued.data;
  8016. var bytesRead = Math.min(length, queuedLength);
  8017. var res = {
  8018. buffer: new Uint8Array(queuedBuffer, queuedOffset, bytesRead),
  8019. addr: queued.addr,
  8020. port: queued.port
  8021. };
  8022. if (sock.type === 1 && bytesRead < queuedLength) {
  8023. var bytesRemaining = queuedLength - bytesRead;
  8024. queued.data = new Uint8Array(queuedBuffer, queuedOffset + bytesRead, bytesRemaining);
  8025. sock.recv_queue.unshift(queued);
  8026. }
  8027. return res;
  8028. })
  8029. }
  8030. };
  8031. function __inet_pton4_raw(str) {
  8032. var b = str.split(".");
  8033. for (var i = 0; i < 4; i++) {
  8034. var tmp = Number(b[i]);
  8035. if (isNaN(tmp)) return null;
  8036. b[i] = tmp;
  8037. }
  8038. return (b[0] | b[1] << 8 | b[2] << 16 | b[3] << 24) >>> 0;
  8039. }
  8040. function __inet_pton6_raw(str) {
  8041. var words;
  8042. var w, offset, z;
  8043. var valid6regx = /^((?=.*::)(?!.*::.+::)(::)?([\dA-F]{1,4}:(:|\b)|){5}|([\dA-F]{1,4}:){6})((([\dA-F]{1,4}((?!\3)::|:\b|$))|(?!\2\3)){2}|(((2[0-4]|1\d|[1-9])?\d|25[0-5])\.?\b){4})$/i;
  8044. var parts = [];
  8045. if (!valid6regx.test(str)) {
  8046. return null;
  8047. }
  8048. if (str === "::") {
  8049. return [ 0, 0, 0, 0, 0, 0, 0, 0 ];
  8050. }
  8051. if (str.indexOf("::") === 0) {
  8052. str = str.replace("::", "Z:");
  8053. } else {
  8054. str = str.replace("::", ":Z:");
  8055. }
  8056. if (str.indexOf(".") > 0) {
  8057. str = str.replace(new RegExp("[.]", "g"), ":");
  8058. words = str.split(":");
  8059. words[words.length - 4] = parseInt(words[words.length - 4]) + parseInt(words[words.length - 3]) * 256;
  8060. words[words.length - 3] = parseInt(words[words.length - 2]) + parseInt(words[words.length - 1]) * 256;
  8061. words = words.slice(0, words.length - 2);
  8062. } else {
  8063. words = str.split(":");
  8064. }
  8065. offset = 0;
  8066. z = 0;
  8067. for (w = 0; w < words.length; w++) {
  8068. if (typeof words[w] === "string") {
  8069. if (words[w] === "Z") {
  8070. for (z = 0; z < 8 - words.length + 1; z++) {
  8071. parts[w + z] = 0;
  8072. }
  8073. offset = z - 1;
  8074. } else {
  8075. parts[w + offset] = _htons(parseInt(words[w], 16));
  8076. }
  8077. } else {
  8078. parts[w + offset] = words[w];
  8079. }
  8080. }
  8081. return [ parts[1] << 16 | parts[0], parts[3] << 16 | parts[2], parts[5] << 16 | parts[4], parts[7] << 16 | parts[6] ];
  8082. }
  8083. var DNS = {
  8084. address_map: {
  8085. id: 1,
  8086. addrs: {},
  8087. names: {}
  8088. },
  8089. lookup_name: (function(name) {
  8090. var res = __inet_pton4_raw(name);
  8091. if (res !== null) {
  8092. return name;
  8093. }
  8094. res = __inet_pton6_raw(name);
  8095. if (res !== null) {
  8096. return name;
  8097. }
  8098. var addr;
  8099. if (DNS.address_map.addrs[name]) {
  8100. addr = DNS.address_map.addrs[name];
  8101. } else {
  8102. var id = DNS.address_map.id++;
  8103. assert(id < 65535, "exceeded max address mappings of 65535");
  8104. addr = "172.29." + (id & 255) + "." + (id & 65280);
  8105. DNS.address_map.names[addr] = name;
  8106. DNS.address_map.addrs[name] = addr;
  8107. }
  8108. return addr;
  8109. }),
  8110. lookup_addr: (function(addr) {
  8111. if (DNS.address_map.names[addr]) {
  8112. return DNS.address_map.names[addr];
  8113. }
  8114. return null;
  8115. })
  8116. };
  8117. function __inet_ntop4_raw(addr) {
  8118. return (addr & 255) + "." + (addr >> 8 & 255) + "." + (addr >> 16 & 255) + "." + (addr >> 24 & 255);
  8119. }
  8120. function __inet_ntop6_raw(ints) {
  8121. var str = "";
  8122. var word = 0;
  8123. var longest = 0;
  8124. var lastzero = 0;
  8125. var zstart = 0;
  8126. var len = 0;
  8127. var i = 0;
  8128. var parts = [ ints[0] & 65535, ints[0] >> 16, ints[1] & 65535, ints[1] >> 16, ints[2] & 65535, ints[2] >> 16, ints[3] & 65535, ints[3] >> 16 ];
  8129. var hasipv4 = true;
  8130. var v4part = "";
  8131. for (i = 0; i < 5; i++) {
  8132. if (parts[i] !== 0) {
  8133. hasipv4 = false;
  8134. break;
  8135. }
  8136. }
  8137. if (hasipv4) {
  8138. v4part = __inet_ntop4_raw(parts[6] | parts[7] << 16);
  8139. if (parts[5] === -1) {
  8140. str = "::ffff:";
  8141. str += v4part;
  8142. return str;
  8143. }
  8144. if (parts[5] === 0) {
  8145. str = "::";
  8146. if (v4part === "0.0.0.0") v4part = "";
  8147. if (v4part === "0.0.0.1") v4part = "1";
  8148. str += v4part;
  8149. return str;
  8150. }
  8151. }
  8152. for (word = 0; word < 8; word++) {
  8153. if (parts[word] === 0) {
  8154. if (word - lastzero > 1) {
  8155. len = 0;
  8156. }
  8157. lastzero = word;
  8158. len++;
  8159. }
  8160. if (len > longest) {
  8161. longest = len;
  8162. zstart = word - longest + 1;
  8163. }
  8164. }
  8165. for (word = 0; word < 8; word++) {
  8166. if (longest > 1) {
  8167. if (parts[word] === 0 && word >= zstart && word < zstart + longest) {
  8168. if (word === zstart) {
  8169. str += ":";
  8170. if (zstart === 0) str += ":";
  8171. }
  8172. continue;
  8173. }
  8174. }
  8175. str += Number(_ntohs(parts[word] & 65535)).toString(16);
  8176. str += word < 7 ? ":" : "";
  8177. }
  8178. return str;
  8179. }
  8180. function __read_sockaddr(sa, salen) {
  8181. var family = HEAP16[sa >> 1];
  8182. var port = _ntohs(HEAP16[sa + 2 >> 1]);
  8183. var addr;
  8184. switch (family) {
  8185. case 2:
  8186. if (salen !== 16) {
  8187. return {
  8188. errno: ERRNO_CODES.EINVAL
  8189. };
  8190. }
  8191. addr = HEAP32[sa + 4 >> 2];
  8192. addr = __inet_ntop4_raw(addr);
  8193. break;
  8194. case 10:
  8195. if (salen !== 28) {
  8196. return {
  8197. errno: ERRNO_CODES.EINVAL
  8198. };
  8199. }
  8200. addr = [ HEAP32[sa + 8 >> 2], HEAP32[sa + 12 >> 2], HEAP32[sa + 16 >> 2], HEAP32[sa + 20 >> 2] ];
  8201. addr = __inet_ntop6_raw(addr);
  8202. break;
  8203. default:
  8204. return {
  8205. errno: ERRNO_CODES.EAFNOSUPPORT
  8206. };
  8207. }
  8208. return {
  8209. family: family,
  8210. addr: addr,
  8211. port: port
  8212. };
  8213. }
  8214. function __write_sockaddr(sa, family, addr, port) {
  8215. switch (family) {
  8216. case 2:
  8217. addr = __inet_pton4_raw(addr);
  8218. HEAP16[sa >> 1] = family;
  8219. HEAP32[sa + 4 >> 2] = addr;
  8220. HEAP16[sa + 2 >> 1] = _htons(port);
  8221. break;
  8222. case 10:
  8223. addr = __inet_pton6_raw(addr);
  8224. HEAP32[sa >> 2] = family;
  8225. HEAP32[sa + 8 >> 2] = addr[0];
  8226. HEAP32[sa + 12 >> 2] = addr[1];
  8227. HEAP32[sa + 16 >> 2] = addr[2];
  8228. HEAP32[sa + 20 >> 2] = addr[3];
  8229. HEAP16[sa + 2 >> 1] = _htons(port);
  8230. HEAP32[sa + 4 >> 2] = 0;
  8231. HEAP32[sa + 24 >> 2] = 0;
  8232. break;
  8233. default:
  8234. return {
  8235. errno: ERRNO_CODES.EAFNOSUPPORT
  8236. };
  8237. }
  8238. return {};
  8239. }
  8240. function ___syscall102(which, varargs) {
  8241. SYSCALLS.varargs = varargs;
  8242. try {
  8243. var call = SYSCALLS.get(), socketvararg = SYSCALLS.get();
  8244. SYSCALLS.varargs = socketvararg;
  8245. switch (call) {
  8246. case 1:
  8247. {
  8248. var domain = SYSCALLS.get(), type = SYSCALLS.get(), protocol = SYSCALLS.get();
  8249. var sock = SOCKFS.createSocket(domain, type, protocol);
  8250. assert(sock.stream.fd < 64);
  8251. return sock.stream.fd;
  8252. }
  8253. case 2:
  8254. {
  8255. var sock = SYSCALLS.getSocketFromFD(), info = SYSCALLS.getSocketAddress();
  8256. sock.sock_ops.bind(sock, info.addr, info.port);
  8257. return 0;
  8258. }
  8259. case 3:
  8260. {
  8261. var sock = SYSCALLS.getSocketFromFD(), info = SYSCALLS.getSocketAddress();
  8262. sock.sock_ops.connect(sock, info.addr, info.port);
  8263. return 0;
  8264. }
  8265. case 4:
  8266. {
  8267. var sock = SYSCALLS.getSocketFromFD(), backlog = SYSCALLS.get();
  8268. sock.sock_ops.listen(sock, backlog);
  8269. return 0;
  8270. }
  8271. case 5:
  8272. {
  8273. var sock = SYSCALLS.getSocketFromFD(), addr = SYSCALLS.get(), addrlen = SYSCALLS.get();
  8274. var newsock = sock.sock_ops.accept(sock);
  8275. if (addr) {
  8276. var res = __write_sockaddr(addr, newsock.family, DNS.lookup_name(newsock.daddr), newsock.dport);
  8277. assert(!res.errno);
  8278. }
  8279. return newsock.stream.fd;
  8280. }
  8281. case 6:
  8282. {
  8283. var sock = SYSCALLS.getSocketFromFD(), addr = SYSCALLS.get(), addrlen = SYSCALLS.get();
  8284. var res = __write_sockaddr(addr, sock.family, DNS.lookup_name(sock.saddr || "0.0.0.0"), sock.sport);
  8285. assert(!res.errno);
  8286. return 0;
  8287. }
  8288. case 7:
  8289. {
  8290. var sock = SYSCALLS.getSocketFromFD(), addr = SYSCALLS.get(), addrlen = SYSCALLS.get();
  8291. if (!sock.daddr) {
  8292. return -ERRNO_CODES.ENOTCONN;
  8293. }
  8294. var res = __write_sockaddr(addr, sock.family, DNS.lookup_name(sock.daddr), sock.dport);
  8295. assert(!res.errno);
  8296. return 0;
  8297. }
  8298. case 11:
  8299. {
  8300. var sock = SYSCALLS.getSocketFromFD(), message = SYSCALLS.get(), length = SYSCALLS.get(), flags = SYSCALLS.get(), dest = SYSCALLS.getSocketAddress(true);
  8301. if (!dest) {
  8302. return FS.write(sock.stream, HEAP8, message, length);
  8303. } else {
  8304. return sock.sock_ops.sendmsg(sock, HEAP8, message, length, dest.addr, dest.port);
  8305. }
  8306. }
  8307. case 12:
  8308. {
  8309. var sock = SYSCALLS.getSocketFromFD(), buf = SYSCALLS.get(), len = SYSCALLS.get(), flags = SYSCALLS.get(), addr = SYSCALLS.get(), addrlen = SYSCALLS.get();
  8310. var msg = sock.sock_ops.recvmsg(sock, len);
  8311. if (!msg) return 0;
  8312. if (addr) {
  8313. var res = __write_sockaddr(addr, sock.family, DNS.lookup_name(msg.addr), msg.port);
  8314. assert(!res.errno);
  8315. }
  8316. HEAPU8.set(msg.buffer, buf);
  8317. return msg.buffer.byteLength;
  8318. }
  8319. case 14:
  8320. {
  8321. return -ERRNO_CODES.ENOPROTOOPT;
  8322. }
  8323. case 15:
  8324. {
  8325. var sock = SYSCALLS.getSocketFromFD(), level = SYSCALLS.get(), optname = SYSCALLS.get(), optval = SYSCALLS.get(), optlen = SYSCALLS.get();
  8326. if (level === 1) {
  8327. if (optname === 4) {
  8328. HEAP32[optval >> 2] = sock.error;
  8329. HEAP32[optlen >> 2] = 4;
  8330. sock.error = null;
  8331. return 0;
  8332. }
  8333. }
  8334. return -ERRNO_CODES.ENOPROTOOPT;
  8335. }
  8336. case 16:
  8337. {
  8338. var sock = SYSCALLS.getSocketFromFD(), message = SYSCALLS.get(), flags = SYSCALLS.get();
  8339. var iov = HEAP32[message + 8 >> 2];
  8340. var num = HEAP32[message + 12 >> 2];
  8341. var addr, port;
  8342. var name = HEAP32[message >> 2];
  8343. var namelen = HEAP32[message + 4 >> 2];
  8344. if (name) {
  8345. var info = __read_sockaddr(name, namelen);
  8346. if (info.errno) return -info.errno;
  8347. port = info.port;
  8348. addr = DNS.lookup_addr(info.addr) || info.addr;
  8349. }
  8350. var total = 0;
  8351. for (var i = 0; i < num; i++) {
  8352. total += HEAP32[iov + (8 * i + 4) >> 2];
  8353. }
  8354. var view = new Uint8Array(total);
  8355. var offset = 0;
  8356. for (var i = 0; i < num; i++) {
  8357. var iovbase = HEAP32[iov + (8 * i + 0) >> 2];
  8358. var iovlen = HEAP32[iov + (8 * i + 4) >> 2];
  8359. for (var j = 0; j < iovlen; j++) {
  8360. view[offset++] = HEAP8[iovbase + j >> 0];
  8361. }
  8362. }
  8363. return sock.sock_ops.sendmsg(sock, view, 0, total, addr, port);
  8364. }
  8365. case 17:
  8366. {
  8367. var sock = SYSCALLS.getSocketFromFD(), message = SYSCALLS.get(), flags = SYSCALLS.get();
  8368. var iov = HEAP32[message + 8 >> 2];
  8369. var num = HEAP32[message + 12 >> 2];
  8370. var total = 0;
  8371. for (var i = 0; i < num; i++) {
  8372. total += HEAP32[iov + (8 * i + 4) >> 2];
  8373. }
  8374. var msg = sock.sock_ops.recvmsg(sock, total);
  8375. if (!msg) return 0;
  8376. var name = HEAP32[message >> 2];
  8377. if (name) {
  8378. var res = __write_sockaddr(name, sock.family, DNS.lookup_name(msg.addr), msg.port);
  8379. assert(!res.errno);
  8380. }
  8381. var bytesRead = 0;
  8382. var bytesRemaining = msg.buffer.byteLength;
  8383. for (var i = 0; bytesRemaining > 0 && i < num; i++) {
  8384. var iovbase = HEAP32[iov + (8 * i + 0) >> 2];
  8385. var iovlen = HEAP32[iov + (8 * i + 4) >> 2];
  8386. if (!iovlen) {
  8387. continue;
  8388. }
  8389. var length = Math.min(iovlen, bytesRemaining);
  8390. var buf = msg.buffer.subarray(bytesRead, bytesRead + length);
  8391. HEAPU8.set(buf, iovbase + bytesRead);
  8392. bytesRead += length;
  8393. bytesRemaining -= length;
  8394. }
  8395. return bytesRead;
  8396. }
  8397. default:
  8398. abort("unsupported socketcall syscall " + call);
  8399. }
  8400. } catch (e) {
  8401. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8402. return -e.errno;
  8403. }
  8404. }
  8405. function ___syscall122(which, varargs) {
  8406. SYSCALLS.varargs = varargs;
  8407. try {
  8408. var buf = SYSCALLS.get();
  8409. if (!buf) return -ERRNO_CODES.EFAULT;
  8410. var layout = {
  8411. "sysname": 0,
  8412. "nodename": 65,
  8413. "domainname": 325,
  8414. "machine": 260,
  8415. "version": 195,
  8416. "release": 130,
  8417. "__size__": 390
  8418. };
  8419. function copyString(element, value) {
  8420. var offset = layout[element];
  8421. writeAsciiToMemory(value, buf + offset);
  8422. }
  8423. copyString("sysname", "Emscripten");
  8424. copyString("nodename", "emscripten");
  8425. copyString("release", "1.0");
  8426. copyString("version", "#1");
  8427. copyString("machine", "x86-JS");
  8428. return 0;
  8429. } catch (e) {
  8430. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8431. return -e.errno;
  8432. }
  8433. }
  8434. function ___syscall140(which, varargs) {
  8435. SYSCALLS.varargs = varargs;
  8436. try {
  8437. var stream = SYSCALLS.getStreamFromFD(), offset_high = SYSCALLS.get(), offset_low = SYSCALLS.get(), result = SYSCALLS.get(), whence = SYSCALLS.get();
  8438. var offset = offset_low;
  8439. FS.llseek(stream, offset, whence);
  8440. HEAP32[result >> 2] = stream.position;
  8441. if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null;
  8442. return 0;
  8443. } catch (e) {
  8444. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8445. return -e.errno;
  8446. }
  8447. }
  8448. function ___syscall142(which, varargs) {
  8449. SYSCALLS.varargs = varargs;
  8450. try {
  8451. var nfds = SYSCALLS.get(), readfds = SYSCALLS.get(), writefds = SYSCALLS.get(), exceptfds = SYSCALLS.get(), timeout = SYSCALLS.get();
  8452. assert(nfds <= 64, "nfds must be less than or equal to 64");
  8453. assert(!exceptfds, "exceptfds not supported");
  8454. var total = 0;
  8455. var srcReadLow = readfds ? HEAP32[readfds >> 2] : 0, srcReadHigh = readfds ? HEAP32[readfds + 4 >> 2] : 0;
  8456. var srcWriteLow = writefds ? HEAP32[writefds >> 2] : 0, srcWriteHigh = writefds ? HEAP32[writefds + 4 >> 2] : 0;
  8457. var srcExceptLow = exceptfds ? HEAP32[exceptfds >> 2] : 0, srcExceptHigh = exceptfds ? HEAP32[exceptfds + 4 >> 2] : 0;
  8458. var dstReadLow = 0, dstReadHigh = 0;
  8459. var dstWriteLow = 0, dstWriteHigh = 0;
  8460. var dstExceptLow = 0, dstExceptHigh = 0;
  8461. var allLow = (readfds ? HEAP32[readfds >> 2] : 0) | (writefds ? HEAP32[writefds >> 2] : 0) | (exceptfds ? HEAP32[exceptfds >> 2] : 0);
  8462. var allHigh = (readfds ? HEAP32[readfds + 4 >> 2] : 0) | (writefds ? HEAP32[writefds + 4 >> 2] : 0) | (exceptfds ? HEAP32[exceptfds + 4 >> 2] : 0);
  8463. function check(fd, low, high, val) {
  8464. return fd < 32 ? low & val : high & val;
  8465. }
  8466. for (var fd = 0; fd < nfds; fd++) {
  8467. var mask = 1 << fd % 32;
  8468. if (!check(fd, allLow, allHigh, mask)) {
  8469. continue;
  8470. }
  8471. var stream = FS.getStream(fd);
  8472. if (!stream) throw new FS.ErrnoError(ERRNO_CODES.EBADF);
  8473. var flags = SYSCALLS.DEFAULT_POLLMASK;
  8474. if (stream.stream_ops.poll) {
  8475. flags = stream.stream_ops.poll(stream);
  8476. }
  8477. if (flags & 1 && check(fd, srcReadLow, srcReadHigh, mask)) {
  8478. fd < 32 ? dstReadLow = dstReadLow | mask : dstReadHigh = dstReadHigh | mask;
  8479. total++;
  8480. }
  8481. if (flags & 4 && check(fd, srcWriteLow, srcWriteHigh, mask)) {
  8482. fd < 32 ? dstWriteLow = dstWriteLow | mask : dstWriteHigh = dstWriteHigh | mask;
  8483. total++;
  8484. }
  8485. if (flags & 2 && check(fd, srcExceptLow, srcExceptHigh, mask)) {
  8486. fd < 32 ? dstExceptLow = dstExceptLow | mask : dstExceptHigh = dstExceptHigh | mask;
  8487. total++;
  8488. }
  8489. }
  8490. if (readfds) {
  8491. HEAP32[readfds >> 2] = dstReadLow;
  8492. HEAP32[readfds + 4 >> 2] = dstReadHigh;
  8493. }
  8494. if (writefds) {
  8495. HEAP32[writefds >> 2] = dstWriteLow;
  8496. HEAP32[writefds + 4 >> 2] = dstWriteHigh;
  8497. }
  8498. if (exceptfds) {
  8499. HEAP32[exceptfds >> 2] = dstExceptLow;
  8500. HEAP32[exceptfds + 4 >> 2] = dstExceptHigh;
  8501. }
  8502. return total;
  8503. } catch (e) {
  8504. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8505. return -e.errno;
  8506. }
  8507. }
  8508. function ___syscall145(which, varargs) {
  8509. SYSCALLS.varargs = varargs;
  8510. try {
  8511. var stream = SYSCALLS.getStreamFromFD(), iov = SYSCALLS.get(), iovcnt = SYSCALLS.get();
  8512. return SYSCALLS.doReadv(stream, iov, iovcnt);
  8513. } catch (e) {
  8514. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8515. return -e.errno;
  8516. }
  8517. }
  8518. function ___syscall146(which, varargs) {
  8519. SYSCALLS.varargs = varargs;
  8520. try {
  8521. var stream = SYSCALLS.getStreamFromFD(), iov = SYSCALLS.get(), iovcnt = SYSCALLS.get();
  8522. return SYSCALLS.doWritev(stream, iov, iovcnt);
  8523. } catch (e) {
  8524. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8525. return -e.errno;
  8526. }
  8527. }
  8528. function ___syscall15(which, varargs) {
  8529. SYSCALLS.varargs = varargs;
  8530. try {
  8531. var path = SYSCALLS.getStr(), mode = SYSCALLS.get();
  8532. FS.chmod(path, mode);
  8533. return 0;
  8534. } catch (e) {
  8535. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8536. return -e.errno;
  8537. }
  8538. }
  8539. function ___syscall168(which, varargs) {
  8540. SYSCALLS.varargs = varargs;
  8541. try {
  8542. var fds = SYSCALLS.get(), nfds = SYSCALLS.get(), timeout = SYSCALLS.get();
  8543. var nonzero = 0;
  8544. for (var i = 0; i < nfds; i++) {
  8545. var pollfd = fds + 8 * i;
  8546. var fd = HEAP32[pollfd >> 2];
  8547. var events = HEAP16[pollfd + 4 >> 1];
  8548. var mask = 32;
  8549. var stream = FS.getStream(fd);
  8550. if (stream) {
  8551. mask = SYSCALLS.DEFAULT_POLLMASK;
  8552. if (stream.stream_ops.poll) {
  8553. mask = stream.stream_ops.poll(stream);
  8554. }
  8555. }
  8556. mask &= events | 8 | 16;
  8557. if (mask) nonzero++;
  8558. HEAP16[pollfd + 6 >> 1] = mask;
  8559. }
  8560. return nonzero;
  8561. } catch (e) {
  8562. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8563. return -e.errno;
  8564. }
  8565. }
  8566. function ___syscall183(which, varargs) {
  8567. SYSCALLS.varargs = varargs;
  8568. try {
  8569. var buf = SYSCALLS.get(), size = SYSCALLS.get();
  8570. if (size === 0) return -ERRNO_CODES.EINVAL;
  8571. var cwd = FS.cwd();
  8572. var cwdLengthInBytes = lengthBytesUTF8(cwd);
  8573. if (size < cwdLengthInBytes + 1) return -ERRNO_CODES.ERANGE;
  8574. stringToUTF8(cwd, buf, size);
  8575. return buf;
  8576. } catch (e) {
  8577. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8578. return -e.errno;
  8579. }
  8580. }
  8581. function ___syscall192(which, varargs) {
  8582. SYSCALLS.varargs = varargs;
  8583. try {
  8584. var addr = SYSCALLS.get(), len = SYSCALLS.get(), prot = SYSCALLS.get(), flags = SYSCALLS.get(), fd = SYSCALLS.get(), off = SYSCALLS.get();
  8585. off <<= 12;
  8586. var ptr;
  8587. var allocated = false;
  8588. if (fd === -1) {
  8589. ptr = _memalign(PAGE_SIZE, len);
  8590. if (!ptr) return -ERRNO_CODES.ENOMEM;
  8591. _memset(ptr, 0, len);
  8592. allocated = true;
  8593. } else {
  8594. var info = FS.getStream(fd);
  8595. if (!info) return -ERRNO_CODES.EBADF;
  8596. var res = FS.mmap(info, HEAPU8, addr, len, off, prot, flags);
  8597. ptr = res.ptr;
  8598. allocated = res.allocated;
  8599. }
  8600. SYSCALLS.mappings[ptr] = {
  8601. malloc: ptr,
  8602. len: len,
  8603. allocated: allocated,
  8604. fd: fd,
  8605. flags: flags
  8606. };
  8607. return ptr;
  8608. } catch (e) {
  8609. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8610. return -e.errno;
  8611. }
  8612. }
  8613. function ___syscall193(which, varargs) {
  8614. SYSCALLS.varargs = varargs;
  8615. try {
  8616. var path = SYSCALLS.getStr(), zero = SYSCALLS.getZero(), length = SYSCALLS.get64();
  8617. FS.truncate(path, length);
  8618. return 0;
  8619. } catch (e) {
  8620. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8621. return -e.errno;
  8622. }
  8623. }
  8624. function ___syscall194(which, varargs) {
  8625. SYSCALLS.varargs = varargs;
  8626. try {
  8627. var fd = SYSCALLS.get(), zero = SYSCALLS.getZero(), length = SYSCALLS.get64();
  8628. FS.ftruncate(fd, length);
  8629. return 0;
  8630. } catch (e) {
  8631. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8632. return -e.errno;
  8633. }
  8634. }
  8635. function ___syscall195(which, varargs) {
  8636. SYSCALLS.varargs = varargs;
  8637. try {
  8638. var path = SYSCALLS.getStr(), buf = SYSCALLS.get();
  8639. return SYSCALLS.doStat(FS.stat, path, buf);
  8640. } catch (e) {
  8641. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8642. return -e.errno;
  8643. }
  8644. }
  8645. function ___syscall196(which, varargs) {
  8646. SYSCALLS.varargs = varargs;
  8647. try {
  8648. var path = SYSCALLS.getStr(), buf = SYSCALLS.get();
  8649. return SYSCALLS.doStat(FS.lstat, path, buf);
  8650. } catch (e) {
  8651. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8652. return -e.errno;
  8653. }
  8654. }
  8655. function ___syscall197(which, varargs) {
  8656. SYSCALLS.varargs = varargs;
  8657. try {
  8658. var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get();
  8659. return SYSCALLS.doStat(FS.stat, stream.path, buf);
  8660. } catch (e) {
  8661. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8662. return -e.errno;
  8663. }
  8664. }
  8665. function ___syscall202(which, varargs) {
  8666. SYSCALLS.varargs = varargs;
  8667. try {
  8668. return 0;
  8669. } catch (e) {
  8670. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8671. return -e.errno;
  8672. }
  8673. }
  8674. function ___syscall199() {
  8675. return ___syscall202.apply(null, arguments);
  8676. }
  8677. var PROCINFO = {
  8678. ppid: 1,
  8679. pid: 42,
  8680. sid: 42,
  8681. pgid: 42
  8682. };
  8683. function ___syscall20(which, varargs) {
  8684. SYSCALLS.varargs = varargs;
  8685. try {
  8686. return PROCINFO.pid;
  8687. } catch (e) {
  8688. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8689. return -e.errno;
  8690. }
  8691. }
  8692. function ___syscall220(which, varargs) {
  8693. SYSCALLS.varargs = varargs;
  8694. try {
  8695. var stream = SYSCALLS.getStreamFromFD(), dirp = SYSCALLS.get(), count = SYSCALLS.get();
  8696. if (!stream.getdents) {
  8697. stream.getdents = FS.readdir(stream.path);
  8698. }
  8699. var pos = 0;
  8700. while (stream.getdents.length > 0 && pos + 268 <= count) {
  8701. var id;
  8702. var type;
  8703. var name = stream.getdents.pop();
  8704. if (name[0] === ".") {
  8705. id = 1;
  8706. type = 4;
  8707. } else {
  8708. var child = FS.lookupNode(stream.node, name);
  8709. id = child.id;
  8710. type = FS.isChrdev(child.mode) ? 2 : FS.isDir(child.mode) ? 4 : FS.isLink(child.mode) ? 10 : 8;
  8711. }
  8712. HEAP32[dirp + pos >> 2] = id;
  8713. HEAP32[dirp + pos + 4 >> 2] = stream.position;
  8714. HEAP16[dirp + pos + 8 >> 1] = 268;
  8715. HEAP8[dirp + pos + 10 >> 0] = type;
  8716. stringToUTF8(name, dirp + pos + 11, 256);
  8717. pos += 268;
  8718. }
  8719. return pos;
  8720. } catch (e) {
  8721. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8722. return -e.errno;
  8723. }
  8724. }
  8725. function ___syscall221(which, varargs) {
  8726. SYSCALLS.varargs = varargs;
  8727. try {
  8728. var stream = SYSCALLS.getStreamFromFD(), cmd = SYSCALLS.get();
  8729. switch (cmd) {
  8730. case 0:
  8731. {
  8732. var arg = SYSCALLS.get();
  8733. if (arg < 0) {
  8734. return -ERRNO_CODES.EINVAL;
  8735. }
  8736. var newStream;
  8737. newStream = FS.open(stream.path, stream.flags, 0, arg);
  8738. return newStream.fd;
  8739. }
  8740. case 1:
  8741. case 2:
  8742. return 0;
  8743. case 3:
  8744. return stream.flags;
  8745. case 4:
  8746. {
  8747. var arg = SYSCALLS.get();
  8748. stream.flags |= arg;
  8749. return 0;
  8750. }
  8751. case 12:
  8752. case 12:
  8753. {
  8754. var arg = SYSCALLS.get();
  8755. var offset = 0;
  8756. HEAP16[arg + offset >> 1] = 2;
  8757. return 0;
  8758. }
  8759. case 13:
  8760. case 14:
  8761. case 13:
  8762. case 14:
  8763. return 0;
  8764. case 16:
  8765. case 8:
  8766. return -ERRNO_CODES.EINVAL;
  8767. case 9:
  8768. ___setErrNo(ERRNO_CODES.EINVAL);
  8769. return -1;
  8770. default:
  8771. {
  8772. return -ERRNO_CODES.EINVAL;
  8773. }
  8774. }
  8775. } catch (e) {
  8776. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8777. return -e.errno;
  8778. }
  8779. }
  8780. function ___syscall268(which, varargs) {
  8781. SYSCALLS.varargs = varargs;
  8782. try {
  8783. var path = SYSCALLS.getStr(), size = SYSCALLS.get(), buf = SYSCALLS.get();
  8784. assert(size === 64);
  8785. HEAP32[buf + 4 >> 2] = 4096;
  8786. HEAP32[buf + 40 >> 2] = 4096;
  8787. HEAP32[buf + 8 >> 2] = 1e6;
  8788. HEAP32[buf + 12 >> 2] = 5e5;
  8789. HEAP32[buf + 16 >> 2] = 5e5;
  8790. HEAP32[buf + 20 >> 2] = FS.nextInode;
  8791. HEAP32[buf + 24 >> 2] = 1e6;
  8792. HEAP32[buf + 28 >> 2] = 42;
  8793. HEAP32[buf + 44 >> 2] = 2;
  8794. HEAP32[buf + 36 >> 2] = 255;
  8795. return 0;
  8796. } catch (e) {
  8797. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8798. return -e.errno;
  8799. }
  8800. }
  8801. function ___syscall3(which, varargs) {
  8802. SYSCALLS.varargs = varargs;
  8803. try {
  8804. var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get(), count = SYSCALLS.get();
  8805. return FS.read(stream, HEAP8, buf, count);
  8806. } catch (e) {
  8807. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8808. return -e.errno;
  8809. }
  8810. }
  8811. function ___syscall33(which, varargs) {
  8812. SYSCALLS.varargs = varargs;
  8813. try {
  8814. var path = SYSCALLS.getStr(), amode = SYSCALLS.get();
  8815. return SYSCALLS.doAccess(path, amode);
  8816. } catch (e) {
  8817. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8818. return -e.errno;
  8819. }
  8820. }
  8821. function ___syscall38(which, varargs) {
  8822. SYSCALLS.varargs = varargs;
  8823. try {
  8824. var old_path = SYSCALLS.getStr(), new_path = SYSCALLS.getStr();
  8825. FS.rename(old_path, new_path);
  8826. return 0;
  8827. } catch (e) {
  8828. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8829. return -e.errno;
  8830. }
  8831. }
  8832. function ___syscall39(which, varargs) {
  8833. SYSCALLS.varargs = varargs;
  8834. try {
  8835. var path = SYSCALLS.getStr(), mode = SYSCALLS.get();
  8836. return SYSCALLS.doMkdir(path, mode);
  8837. } catch (e) {
  8838. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8839. return -e.errno;
  8840. }
  8841. }
  8842. function ___syscall4(which, varargs) {
  8843. SYSCALLS.varargs = varargs;
  8844. try {
  8845. var stream = SYSCALLS.getStreamFromFD(), buf = SYSCALLS.get(), count = SYSCALLS.get();
  8846. return FS.write(stream, HEAP8, buf, count);
  8847. } catch (e) {
  8848. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8849. return -e.errno;
  8850. }
  8851. }
  8852. function ___syscall40(which, varargs) {
  8853. SYSCALLS.varargs = varargs;
  8854. try {
  8855. var path = SYSCALLS.getStr();
  8856. FS.rmdir(path);
  8857. return 0;
  8858. } catch (e) {
  8859. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8860. return -e.errno;
  8861. }
  8862. }
  8863. function ___syscall41(which, varargs) {
  8864. SYSCALLS.varargs = varargs;
  8865. try {
  8866. var old = SYSCALLS.getStreamFromFD();
  8867. return FS.open(old.path, old.flags, 0).fd;
  8868. } catch (e) {
  8869. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  8870. return -e.errno;
  8871. }
  8872. }
  8873. var PIPEFS = {
  8874. BUCKET_BUFFER_SIZE: 8192,
  8875. mount: (function(mount) {
  8876. return FS.createNode(null, "/", 16384 | 511, 0);
  8877. }),
  8878. createPipe: (function() {
  8879. var pipe = {
  8880. buckets: []
  8881. };
  8882. pipe.buckets.push({
  8883. buffer: new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),
  8884. offset: 0,
  8885. roffset: 0
  8886. });
  8887. var rName = PIPEFS.nextname();
  8888. var wName = PIPEFS.nextname();
  8889. var rNode = FS.createNode(PIPEFS.root, rName, 4096, 0);
  8890. var wNode = FS.createNode(PIPEFS.root, wName, 4096, 0);
  8891. rNode.pipe = pipe;
  8892. wNode.pipe = pipe;
  8893. var readableStream = FS.createStream({
  8894. path: rName,
  8895. node: rNode,
  8896. flags: FS.modeStringToFlags("r"),
  8897. seekable: false,
  8898. stream_ops: PIPEFS.stream_ops
  8899. });
  8900. rNode.stream = readableStream;
  8901. var writableStream = FS.createStream({
  8902. path: wName,
  8903. node: wNode,
  8904. flags: FS.modeStringToFlags("w"),
  8905. seekable: false,
  8906. stream_ops: PIPEFS.stream_ops
  8907. });
  8908. wNode.stream = writableStream;
  8909. return {
  8910. readable_fd: readableStream.fd,
  8911. writable_fd: writableStream.fd
  8912. };
  8913. }),
  8914. stream_ops: {
  8915. poll: (function(stream) {
  8916. var pipe = stream.node.pipe;
  8917. if ((stream.flags & 2097155) === 1) {
  8918. return 256 | 4;
  8919. } else {
  8920. if (pipe.buckets.length > 0) {
  8921. for (var i = 0; i < pipe.buckets.length; i++) {
  8922. var bucket = pipe.buckets[i];
  8923. if (bucket.offset - bucket.roffset > 0) {
  8924. return 64 | 1;
  8925. }
  8926. }
  8927. }
  8928. }
  8929. return 0;
  8930. }),
  8931. ioctl: (function(stream, request, varargs) {
  8932. return ERRNO_CODES.EINVAL;
  8933. }),
  8934. read: (function(stream, buffer, offset, length, position) {
  8935. var pipe = stream.node.pipe;
  8936. var currentLength = 0;
  8937. for (var i = 0; i < pipe.buckets.length; i++) {
  8938. var bucket = pipe.buckets[i];
  8939. currentLength += bucket.offset - bucket.roffset;
  8940. }
  8941. assert(buffer instanceof ArrayBuffer || ArrayBuffer.isView(buffer));
  8942. var data = buffer.subarray(offset, offset + length);
  8943. if (length <= 0) {
  8944. return 0;
  8945. }
  8946. if (currentLength == 0) {
  8947. throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);
  8948. }
  8949. var toRead = Math.min(currentLength, length);
  8950. var totalRead = toRead;
  8951. var toRemove = 0;
  8952. for (var i = 0; i < pipe.buckets.length; i++) {
  8953. var currBucket = pipe.buckets[i];
  8954. var bucketSize = currBucket.offset - currBucket.roffset;
  8955. if (toRead <= bucketSize) {
  8956. var tmpSlice = currBucket.buffer.subarray(currBucket.roffset, currBucket.offset);
  8957. if (toRead < bucketSize) {
  8958. tmpSlice = tmpSlice.subarray(0, toRead);
  8959. currBucket.roffset += toRead;
  8960. } else {
  8961. toRemove++;
  8962. }
  8963. data.set(tmpSlice);
  8964. break;
  8965. } else {
  8966. var tmpSlice = currBucket.buffer.subarray(currBucket.roffset, currBucket.offset);
  8967. data.set(tmpSlice);
  8968. data = data.subarray(tmpSlice.byteLength);
  8969. toRead -= tmpSlice.byteLength;
  8970. toRemove++;
  8971. }
  8972. }
  8973. if (toRemove && toRemove == pipe.buckets.length) {
  8974. toRemove--;
  8975. pipe.buckets[toRemove].offset = 0;
  8976. pipe.buckets[toRemove].roffset = 0;
  8977. }
  8978. pipe.buckets.splice(0, toRemove);
  8979. return totalRead;
  8980. }),
  8981. write: (function(stream, buffer, offset, length, position) {
  8982. var pipe = stream.node.pipe;
  8983. assert(buffer instanceof ArrayBuffer || ArrayBuffer.isView(buffer));
  8984. var data = buffer.subarray(offset, offset + length);
  8985. var dataLen = data.byteLength;
  8986. if (dataLen <= 0) {
  8987. return 0;
  8988. }
  8989. var currBucket = null;
  8990. if (pipe.buckets.length == 0) {
  8991. currBucket = {
  8992. buffer: new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),
  8993. offset: 0,
  8994. roffset: 0
  8995. };
  8996. pipe.buckets.push(currBucket);
  8997. } else {
  8998. currBucket = pipe.buckets[pipe.buckets.length - 1];
  8999. }
  9000. assert(currBucket.offset <= PIPEFS.BUCKET_BUFFER_SIZE);
  9001. var freeBytesInCurrBuffer = PIPEFS.BUCKET_BUFFER_SIZE - currBucket.offset;
  9002. if (freeBytesInCurrBuffer >= dataLen) {
  9003. currBucket.buffer.set(data, currBucket.offset);
  9004. currBucket.offset += dataLen;
  9005. return dataLen;
  9006. } else if (freeBytesInCurrBuffer > 0) {
  9007. currBucket.buffer.set(data.subarray(0, freeBytesInCurrBuffer), currBucket.offset);
  9008. currBucket.offset += freeBytesInCurrBuffer;
  9009. data = data.subarray(freeBytesInCurrBuffer, data.byteLength);
  9010. }
  9011. var numBuckets = data.byteLength / PIPEFS.BUCKET_BUFFER_SIZE | 0;
  9012. var remElements = data.byteLength % PIPEFS.BUCKET_BUFFER_SIZE;
  9013. for (var i = 0; i < numBuckets; i++) {
  9014. var newBucket = {
  9015. buffer: new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),
  9016. offset: PIPEFS.BUCKET_BUFFER_SIZE,
  9017. roffset: 0
  9018. };
  9019. pipe.buckets.push(newBucket);
  9020. newBucket.buffer.set(data.subarray(0, PIPEFS.BUCKET_BUFFER_SIZE));
  9021. data = data.subarray(PIPEFS.BUCKET_BUFFER_SIZE, data.byteLength);
  9022. }
  9023. if (remElements > 0) {
  9024. var newBucket = {
  9025. buffer: new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),
  9026. offset: data.byteLength,
  9027. roffset: 0
  9028. };
  9029. pipe.buckets.push(newBucket);
  9030. newBucket.buffer.set(data);
  9031. }
  9032. return dataLen;
  9033. }),
  9034. close: (function(stream) {
  9035. var pipe = stream.node.pipe;
  9036. pipe.buckets = null;
  9037. })
  9038. },
  9039. nextname: (function() {
  9040. if (!PIPEFS.nextname.current) {
  9041. PIPEFS.nextname.current = 0;
  9042. }
  9043. return "pipe[" + PIPEFS.nextname.current++ + "]";
  9044. })
  9045. };
  9046. function ___syscall42(which, varargs) {
  9047. SYSCALLS.varargs = varargs;
  9048. try {
  9049. var fdPtr = SYSCALLS.get();
  9050. if (fdPtr == 0) {
  9051. throw new FS.ErrnoError(ERRNO_CODES.EFAULT);
  9052. }
  9053. var res = PIPEFS.createPipe();
  9054. HEAP32[fdPtr >> 2] = res.readable_fd;
  9055. HEAP32[fdPtr + 4 >> 2] = res.writable_fd;
  9056. return 0;
  9057. } catch (e) {
  9058. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  9059. return -e.errno;
  9060. }
  9061. }
  9062. function ___syscall5(which, varargs) {
  9063. SYSCALLS.varargs = varargs;
  9064. try {
  9065. var pathname = SYSCALLS.getStr(), flags = SYSCALLS.get(), mode = SYSCALLS.get();
  9066. var stream = FS.open(pathname, flags, mode);
  9067. return stream.fd;
  9068. } catch (e) {
  9069. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  9070. return -e.errno;
  9071. }
  9072. }
  9073. function ___syscall54(which, varargs) {
  9074. SYSCALLS.varargs = varargs;
  9075. try {
  9076. var stream = SYSCALLS.getStreamFromFD(), op = SYSCALLS.get();
  9077. switch (op) {
  9078. case 21509:
  9079. case 21505:
  9080. {
  9081. if (!stream.tty) return -ERRNO_CODES.ENOTTY;
  9082. return 0;
  9083. }
  9084. case 21510:
  9085. case 21511:
  9086. case 21512:
  9087. case 21506:
  9088. case 21507:
  9089. case 21508:
  9090. {
  9091. if (!stream.tty) return -ERRNO_CODES.ENOTTY;
  9092. return 0;
  9093. }
  9094. case 21519:
  9095. {
  9096. if (!stream.tty) return -ERRNO_CODES.ENOTTY;
  9097. var argp = SYSCALLS.get();
  9098. HEAP32[argp >> 2] = 0;
  9099. return 0;
  9100. }
  9101. case 21520:
  9102. {
  9103. if (!stream.tty) return -ERRNO_CODES.ENOTTY;
  9104. return -ERRNO_CODES.EINVAL;
  9105. }
  9106. case 21531:
  9107. {
  9108. var argp = SYSCALLS.get();
  9109. return FS.ioctl(stream, op, argp);
  9110. }
  9111. case 21523:
  9112. {
  9113. if (!stream.tty) return -ERRNO_CODES.ENOTTY;
  9114. return 0;
  9115. }
  9116. case 21524:
  9117. {
  9118. if (!stream.tty) return -ERRNO_CODES.ENOTTY;
  9119. return 0;
  9120. }
  9121. default:
  9122. abort("bad ioctl syscall " + op);
  9123. }
  9124. } catch (e) {
  9125. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  9126. return -e.errno;
  9127. }
  9128. }
  9129. function ___syscall6(which, varargs) {
  9130. SYSCALLS.varargs = varargs;
  9131. try {
  9132. var stream = SYSCALLS.getStreamFromFD();
  9133. FS.close(stream);
  9134. return 0;
  9135. } catch (e) {
  9136. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  9137. return -e.errno;
  9138. }
  9139. }
  9140. function ___syscall63(which, varargs) {
  9141. SYSCALLS.varargs = varargs;
  9142. try {
  9143. var old = SYSCALLS.getStreamFromFD(), suggestFD = SYSCALLS.get();
  9144. if (old.fd === suggestFD) return suggestFD;
  9145. return SYSCALLS.doDup(old.path, old.flags, suggestFD);
  9146. } catch (e) {
  9147. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  9148. return -e.errno;
  9149. }
  9150. }
  9151. function ___syscall77(which, varargs) {
  9152. SYSCALLS.varargs = varargs;
  9153. try {
  9154. var who = SYSCALLS.get(), usage = SYSCALLS.get();
  9155. _memset(usage, 0, 136);
  9156. HEAP32[usage >> 2] = 1;
  9157. HEAP32[usage + 4 >> 2] = 2;
  9158. HEAP32[usage + 8 >> 2] = 3;
  9159. HEAP32[usage + 12 >> 2] = 4;
  9160. return 0;
  9161. } catch (e) {
  9162. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  9163. return -e.errno;
  9164. }
  9165. }
  9166. function ___syscall85(which, varargs) {
  9167. SYSCALLS.varargs = varargs;
  9168. try {
  9169. var path = SYSCALLS.getStr(), buf = SYSCALLS.get(), bufsize = SYSCALLS.get();
  9170. return SYSCALLS.doReadlink(path, buf, bufsize);
  9171. } catch (e) {
  9172. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  9173. return -e.errno;
  9174. }
  9175. }
  9176. function ___syscall91(which, varargs) {
  9177. SYSCALLS.varargs = varargs;
  9178. try {
  9179. var addr = SYSCALLS.get(), len = SYSCALLS.get();
  9180. var info = SYSCALLS.mappings[addr];
  9181. if (!info) return 0;
  9182. if (len === info.len) {
  9183. var stream = FS.getStream(info.fd);
  9184. SYSCALLS.doMsync(addr, stream, len, info.flags);
  9185. FS.munmap(stream);
  9186. SYSCALLS.mappings[addr] = null;
  9187. if (info.allocated) {
  9188. _free(info.malloc);
  9189. }
  9190. }
  9191. return 0;
  9192. } catch (e) {
  9193. if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
  9194. return -e.errno;
  9195. }
  9196. }
  9197. function ___unlock() {}
  9198. function _abort() {
  9199. Module["abort"]();
  9200. }
  9201. function _atexit(func, arg) {
  9202. warnOnce("atexit() called, but NO_EXIT_RUNTIME is set, so atexits() will not be called. set NO_EXIT_RUNTIME to 0 (see the FAQ)");
  9203. __ATEXIT__.unshift({
  9204. func: func,
  9205. arg: arg
  9206. });
  9207. }
  9208. function _clock() {
  9209. if (_clock.start === undefined) _clock.start = Date.now();
  9210. return (Date.now() - _clock.start) * (1e6 / 1e3) | 0;
  9211. }
  9212. function _emscripten_get_now_res() {
  9213. if (ENVIRONMENT_IS_NODE) {
  9214. return 1;
  9215. } else if (typeof dateNow !== "undefined" || (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && self["performance"] && self["performance"]["now"]) {
  9216. return 1e3;
  9217. } else {
  9218. return 1e3 * 1e3;
  9219. }
  9220. }
  9221. function _emscripten_get_now() {
  9222. abort();
  9223. }
  9224. function _emscripten_get_now_is_monotonic() {
  9225. return ENVIRONMENT_IS_NODE || typeof dateNow !== "undefined" || (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && self["performance"] && self["performance"]["now"];
  9226. }
  9227. function _clock_getres(clk_id, res) {
  9228. var nsec;
  9229. if (clk_id === 0) {
  9230. nsec = 1e3 * 1e3;
  9231. } else if (clk_id === 1 && _emscripten_get_now_is_monotonic()) {
  9232. nsec = _emscripten_get_now_res();
  9233. } else {
  9234. ___setErrNo(ERRNO_CODES.EINVAL);
  9235. return -1;
  9236. }
  9237. HEAP32[res >> 2] = nsec / 1e9 | 0;
  9238. HEAP32[res + 4 >> 2] = nsec;
  9239. return 0;
  9240. }
  9241. function _clock_gettime(clk_id, tp) {
  9242. var now;
  9243. if (clk_id === 0) {
  9244. now = Date.now();
  9245. } else if (clk_id === 1 && _emscripten_get_now_is_monotonic()) {
  9246. now = _emscripten_get_now();
  9247. } else {
  9248. ___setErrNo(ERRNO_CODES.EINVAL);
  9249. return -1;
  9250. }
  9251. HEAP32[tp >> 2] = now / 1e3 | 0;
  9252. HEAP32[tp + 4 >> 2] = now % 1e3 * 1e3 * 1e3 | 0;
  9253. return 0;
  9254. }
  9255. function _difftime(time1, time0) {
  9256. return time1 - time0;
  9257. }
  9258. var DLFCN = {
  9259. error: null,
  9260. errorMsg: null,
  9261. loadedLibs: {},
  9262. loadedLibNames: {}
  9263. };
  9264. function _dlclose(handle) {
  9265. if (!DLFCN.loadedLibs[handle]) {
  9266. DLFCN.errorMsg = "Tried to dlclose() unopened handle: " + handle;
  9267. return 1;
  9268. } else {
  9269. var lib_record = DLFCN.loadedLibs[handle];
  9270. if (--lib_record.refcount == 0) {
  9271. if (lib_record.module.cleanups) {
  9272. lib_record.module.cleanups.forEach((function(cleanup) {
  9273. cleanup();
  9274. }));
  9275. }
  9276. delete DLFCN.loadedLibNames[lib_record.name];
  9277. delete DLFCN.loadedLibs[handle];
  9278. }
  9279. return 0;
  9280. }
  9281. }
  9282. function _dlopen(filename, flag) {
  9283. abort("To use dlopen, you need to use Emscripten's linking support, see https://github.com/kripken/emscripten/wiki/Linking");
  9284. var searchpaths = [];
  9285. if (filename === 0) {
  9286. filename = "__self__";
  9287. } else {
  9288. var strfilename = Pointer_stringify(filename);
  9289. var isValidFile = (function(filename) {
  9290. var target = FS.findObject(filename);
  9291. return target && !target.isFolder && !target.isDevice;
  9292. });
  9293. if (isValidFile(strfilename)) {
  9294. filename = strfilename;
  9295. } else {
  9296. if (ENV["LD_LIBRARY_PATH"]) {
  9297. searchpaths = ENV["LD_LIBRARY_PATH"].split(":");
  9298. }
  9299. for (var ident in searchpaths) {
  9300. var searchfile = PATH.join2(searchpaths[ident], strfilename);
  9301. if (isValidFile(searchfile)) {
  9302. filename = searchfile;
  9303. break;
  9304. }
  9305. }
  9306. }
  9307. }
  9308. if (DLFCN.loadedLibNames[filename]) {
  9309. var handle = DLFCN.loadedLibNames[filename];
  9310. DLFCN.loadedLibs[handle].refcount++;
  9311. return handle;
  9312. }
  9313. var lib_module;
  9314. if (filename === "__self__") {
  9315. var handle = -1;
  9316. lib_module = Module;
  9317. } else {
  9318. if (Module["preloadedWasm"] !== undefined && Module["preloadedWasm"][filename] !== undefined) {
  9319. lib_module = Module["preloadedWasm"][filename];
  9320. } else {
  9321. var target = FS.findObject(filename);
  9322. if (!target || target.isFolder || target.isDevice) {
  9323. DLFCN.errorMsg = "Could not find dynamic lib: " + filename;
  9324. return 0;
  9325. }
  9326. FS.forceLoadFile(target);
  9327. try {
  9328. var lib_data = FS.readFile(filename, {
  9329. encoding: "binary"
  9330. });
  9331. if (!(lib_data instanceof Uint8Array)) lib_data = new Uint8Array(lib_data);
  9332. lib_module = loadWebAssemblyModule(lib_data);
  9333. } catch (e) {
  9334. err("Error in loading dynamic library: " + e);
  9335. DLFCN.errorMsg = "Could not evaluate dynamic lib: " + filename + "\n" + e;
  9336. return 0;
  9337. }
  9338. }
  9339. var handle = 1;
  9340. for (var key in DLFCN.loadedLibs) {
  9341. if (DLFCN.loadedLibs.hasOwnProperty(key)) handle++;
  9342. }
  9343. if (flag & 256) {
  9344. for (var ident in lib_module) {
  9345. if (lib_module.hasOwnProperty(ident)) {
  9346. if (ident[0] == "_") {
  9347. Module[ident] = lib_module[ident];
  9348. }
  9349. }
  9350. }
  9351. }
  9352. }
  9353. DLFCN.loadedLibs[handle] = {
  9354. refcount: 1,
  9355. name: filename,
  9356. module: lib_module
  9357. };
  9358. DLFCN.loadedLibNames[filename] = handle;
  9359. return handle;
  9360. }
  9361. function _dlsym(handle, symbol) {
  9362. symbol = Pointer_stringify(symbol);
  9363. if (!DLFCN.loadedLibs[handle]) {
  9364. DLFCN.errorMsg = "Tried to dlsym() from an unopened handle: " + handle;
  9365. return 0;
  9366. } else {
  9367. var lib = DLFCN.loadedLibs[handle];
  9368. symbol = "_" + symbol;
  9369. if (!lib.module.hasOwnProperty(symbol)) {
  9370. DLFCN.errorMsg = 'Tried to lookup unknown symbol "' + symbol + '" in dynamic lib: ' + lib.name;
  9371. return 0;
  9372. } else {
  9373. var result = lib.module[symbol];
  9374. if (typeof result === "function") {
  9375. return addFunction(result);
  9376. }
  9377. return result;
  9378. }
  9379. }
  9380. }
  9381. function _emscripten_set_main_loop_timing(mode, value) {
  9382. Browser.mainLoop.timingMode = mode;
  9383. Browser.mainLoop.timingValue = value;
  9384. if (!Browser.mainLoop.func) {
  9385. console.error("emscripten_set_main_loop_timing: Cannot set timing mode for main loop since a main loop does not exist! Call emscripten_set_main_loop first to set one up.");
  9386. return 1;
  9387. }
  9388. if (mode == 0) {
  9389. Browser.mainLoop.scheduler = function Browser_mainLoop_scheduler_setTimeout() {
  9390. var timeUntilNextTick = Math.max(0, Browser.mainLoop.tickStartTime + value - _emscripten_get_now()) | 0;
  9391. setTimeout(Browser.mainLoop.runner, timeUntilNextTick);
  9392. };
  9393. Browser.mainLoop.method = "timeout";
  9394. } else if (mode == 1) {
  9395. Browser.mainLoop.scheduler = function Browser_mainLoop_scheduler_rAF() {
  9396. Browser.requestAnimationFrame(Browser.mainLoop.runner);
  9397. };
  9398. Browser.mainLoop.method = "rAF";
  9399. } else if (mode == 2) {
  9400. if (typeof setImmediate === "undefined") {
  9401. var setImmediates = [];
  9402. var emscriptenMainLoopMessageId = "setimmediate";
  9403. function Browser_setImmediate_messageHandler(event) {
  9404. if (event.data === emscriptenMainLoopMessageId || event.data.target === emscriptenMainLoopMessageId) {
  9405. event.stopPropagation();
  9406. setImmediates.shift()();
  9407. }
  9408. }
  9409. addEventListener("message", Browser_setImmediate_messageHandler, true);
  9410. setImmediate = function Browser_emulated_setImmediate(func) {
  9411. setImmediates.push(func);
  9412. if (ENVIRONMENT_IS_WORKER) {
  9413. if (Module["setImmediates"] === undefined) Module["setImmediates"] = [];
  9414. Module["setImmediates"].push(func);
  9415. postMessage({
  9416. target: emscriptenMainLoopMessageId
  9417. });
  9418. } else postMessage(emscriptenMainLoopMessageId, "*");
  9419. };
  9420. }
  9421. Browser.mainLoop.scheduler = function Browser_mainLoop_scheduler_setImmediate() {
  9422. setImmediate(Browser.mainLoop.runner);
  9423. };
  9424. Browser.mainLoop.method = "immediate";
  9425. }
  9426. return 0;
  9427. }
  9428. function _emscripten_set_main_loop(func, fps, simulateInfiniteLoop, arg, noSetTiming) {
  9429. Module["noExitRuntime"] = true;
  9430. assert(!Browser.mainLoop.func, "emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");
  9431. Browser.mainLoop.func = func;
  9432. Browser.mainLoop.arg = arg;
  9433. var browserIterationFunc;
  9434. if (typeof arg !== "undefined") {
  9435. browserIterationFunc = (function() {
  9436. Module["dynCall_vi"](func, arg);
  9437. });
  9438. } else {
  9439. browserIterationFunc = (function() {
  9440. Module["dynCall_v"](func);
  9441. });
  9442. }
  9443. var thisMainLoopId = Browser.mainLoop.currentlyRunningMainloop;
  9444. Browser.mainLoop.runner = function Browser_mainLoop_runner() {
  9445. if (ABORT) return;
  9446. if (Browser.mainLoop.queue.length > 0) {
  9447. var start = Date.now();
  9448. var blocker = Browser.mainLoop.queue.shift();
  9449. blocker.func(blocker.arg);
  9450. if (Browser.mainLoop.remainingBlockers) {
  9451. var remaining = Browser.mainLoop.remainingBlockers;
  9452. var next = remaining % 1 == 0 ? remaining - 1 : Math.floor(remaining);
  9453. if (blocker.counted) {
  9454. Browser.mainLoop.remainingBlockers = next;
  9455. } else {
  9456. next = next + .5;
  9457. Browser.mainLoop.remainingBlockers = (8 * remaining + next) / 9;
  9458. }
  9459. }
  9460. console.log('main loop blocker "' + blocker.name + '" took ' + (Date.now() - start) + " ms");
  9461. Browser.mainLoop.updateStatus();
  9462. if (thisMainLoopId < Browser.mainLoop.currentlyRunningMainloop) return;
  9463. setTimeout(Browser.mainLoop.runner, 0);
  9464. return;
  9465. }
  9466. if (thisMainLoopId < Browser.mainLoop.currentlyRunningMainloop) return;
  9467. Browser.mainLoop.currentFrameNumber = Browser.mainLoop.currentFrameNumber + 1 | 0;
  9468. if (Browser.mainLoop.timingMode == 1 && Browser.mainLoop.timingValue > 1 && Browser.mainLoop.currentFrameNumber % Browser.mainLoop.timingValue != 0) {
  9469. Browser.mainLoop.scheduler();
  9470. return;
  9471. } else if (Browser.mainLoop.timingMode == 0) {
  9472. Browser.mainLoop.tickStartTime = _emscripten_get_now();
  9473. }
  9474. if (Browser.mainLoop.method === "timeout" && Module.ctx) {
  9475. err("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");
  9476. Browser.mainLoop.method = "";
  9477. }
  9478. Browser.mainLoop.runIter(browserIterationFunc);
  9479. checkStackCookie();
  9480. if (thisMainLoopId < Browser.mainLoop.currentlyRunningMainloop) return;
  9481. if (typeof SDL === "object" && SDL.audio && SDL.audio.queueNewAudioData) SDL.audio.queueNewAudioData();
  9482. Browser.mainLoop.scheduler();
  9483. };
  9484. if (!noSetTiming) {
  9485. if (fps && fps > 0) _emscripten_set_main_loop_timing(0, 1e3 / fps); else _emscripten_set_main_loop_timing(1, 1);
  9486. Browser.mainLoop.scheduler();
  9487. }
  9488. if (simulateInfiniteLoop) {
  9489. throw "SimulateInfiniteLoop";
  9490. }
  9491. }
  9492. var Browser = {
  9493. mainLoop: {
  9494. scheduler: null,
  9495. method: "",
  9496. currentlyRunningMainloop: 0,
  9497. func: null,
  9498. arg: 0,
  9499. timingMode: 0,
  9500. timingValue: 0,
  9501. currentFrameNumber: 0,
  9502. queue: [],
  9503. pause: (function() {
  9504. Browser.mainLoop.scheduler = null;
  9505. Browser.mainLoop.currentlyRunningMainloop++;
  9506. }),
  9507. resume: (function() {
  9508. Browser.mainLoop.currentlyRunningMainloop++;
  9509. var timingMode = Browser.mainLoop.timingMode;
  9510. var timingValue = Browser.mainLoop.timingValue;
  9511. var func = Browser.mainLoop.func;
  9512. Browser.mainLoop.func = null;
  9513. _emscripten_set_main_loop(func, 0, false, Browser.mainLoop.arg, true);
  9514. _emscripten_set_main_loop_timing(timingMode, timingValue);
  9515. Browser.mainLoop.scheduler();
  9516. }),
  9517. updateStatus: (function() {
  9518. if (Module["setStatus"]) {
  9519. var message = Module["statusMessage"] || "Please wait...";
  9520. var remaining = Browser.mainLoop.remainingBlockers;
  9521. var expected = Browser.mainLoop.expectedBlockers;
  9522. if (remaining) {
  9523. if (remaining < expected) {
  9524. Module["setStatus"](message + " (" + (expected - remaining) + "/" + expected + ")");
  9525. } else {
  9526. Module["setStatus"](message);
  9527. }
  9528. } else {
  9529. Module["setStatus"]("");
  9530. }
  9531. }
  9532. }),
  9533. runIter: (function(func) {
  9534. if (ABORT) return;
  9535. if (Module["preMainLoop"]) {
  9536. var preRet = Module["preMainLoop"]();
  9537. if (preRet === false) {
  9538. return;
  9539. }
  9540. }
  9541. try {
  9542. func();
  9543. } catch (e) {
  9544. if (e instanceof ExitStatus) {
  9545. return;
  9546. } else {
  9547. if (e && typeof e === "object" && e.stack) err("exception thrown: " + [ e, e.stack ]);
  9548. throw e;
  9549. }
  9550. }
  9551. if (Module["postMainLoop"]) Module["postMainLoop"]();
  9552. })
  9553. },
  9554. isFullscreen: false,
  9555. pointerLock: false,
  9556. moduleContextCreatedCallbacks: [],
  9557. workers: [],
  9558. init: (function() {
  9559. if (!Module["preloadPlugins"]) Module["preloadPlugins"] = [];
  9560. if (Browser.initted) return;
  9561. Browser.initted = true;
  9562. try {
  9563. new Blob;
  9564. Browser.hasBlobConstructor = true;
  9565. } catch (e) {
  9566. Browser.hasBlobConstructor = false;
  9567. console.log("warning: no blob constructor, cannot create blobs with mimetypes");
  9568. }
  9569. Browser.BlobBuilder = typeof MozBlobBuilder != "undefined" ? MozBlobBuilder : typeof WebKitBlobBuilder != "undefined" ? WebKitBlobBuilder : !Browser.hasBlobConstructor ? console.log("warning: no BlobBuilder") : null;
  9570. Browser.URLObject = typeof window != "undefined" ? window.URL ? window.URL : window.webkitURL : undefined;
  9571. if (!Module.noImageDecoding && typeof Browser.URLObject === "undefined") {
  9572. console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available.");
  9573. Module.noImageDecoding = true;
  9574. }
  9575. var imagePlugin = {};
  9576. imagePlugin["canHandle"] = function imagePlugin_canHandle(name) {
  9577. return !Module.noImageDecoding && /\.(jpg|jpeg|png|bmp)$/i.test(name);
  9578. };
  9579. imagePlugin["handle"] = function imagePlugin_handle(byteArray, name, onload, onerror) {
  9580. var b = null;
  9581. if (Browser.hasBlobConstructor) {
  9582. try {
  9583. b = new Blob([ byteArray ], {
  9584. type: Browser.getMimetype(name)
  9585. });
  9586. if (b.size !== byteArray.length) {
  9587. b = new Blob([ (new Uint8Array(byteArray)).buffer ], {
  9588. type: Browser.getMimetype(name)
  9589. });
  9590. }
  9591. } catch (e) {
  9592. warnOnce("Blob constructor present but fails: " + e + "; falling back to blob builder");
  9593. }
  9594. }
  9595. if (!b) {
  9596. var bb = new Browser.BlobBuilder;
  9597. bb.append((new Uint8Array(byteArray)).buffer);
  9598. b = bb.getBlob();
  9599. }
  9600. var url = Browser.URLObject.createObjectURL(b);
  9601. assert(typeof url == "string", "createObjectURL must return a url as a string");
  9602. var img = new Image;
  9603. img.onload = function img_onload() {
  9604. assert(img.complete, "Image " + name + " could not be decoded");
  9605. var canvas = document.createElement("canvas");
  9606. canvas.width = img.width;
  9607. canvas.height = img.height;
  9608. var ctx = canvas.getContext("2d");
  9609. ctx.drawImage(img, 0, 0);
  9610. Module["preloadedImages"][name] = canvas;
  9611. Browser.URLObject.revokeObjectURL(url);
  9612. if (onload) onload(byteArray);
  9613. };
  9614. img.onerror = function img_onerror(event) {
  9615. console.log("Image " + url + " could not be decoded");
  9616. if (onerror) onerror();
  9617. };
  9618. img.src = url;
  9619. };
  9620. Module["preloadPlugins"].push(imagePlugin);
  9621. var audioPlugin = {};
  9622. audioPlugin["canHandle"] = function audioPlugin_canHandle(name) {
  9623. return !Module.noAudioDecoding && name.substr(-4) in {
  9624. ".ogg": 1,
  9625. ".wav": 1,
  9626. ".mp3": 1
  9627. };
  9628. };
  9629. audioPlugin["handle"] = function audioPlugin_handle(byteArray, name, onload, onerror) {
  9630. var done = false;
  9631. function finish(audio) {
  9632. if (done) return;
  9633. done = true;
  9634. Module["preloadedAudios"][name] = audio;
  9635. if (onload) onload(byteArray);
  9636. }
  9637. function fail() {
  9638. if (done) return;
  9639. done = true;
  9640. Module["preloadedAudios"][name] = new Audio;
  9641. if (onerror) onerror();
  9642. }
  9643. if (Browser.hasBlobConstructor) {
  9644. try {
  9645. var b = new Blob([ byteArray ], {
  9646. type: Browser.getMimetype(name)
  9647. });
  9648. } catch (e) {
  9649. return fail();
  9650. }
  9651. var url = Browser.URLObject.createObjectURL(b);
  9652. assert(typeof url == "string", "createObjectURL must return a url as a string");
  9653. var audio = new Audio;
  9654. audio.addEventListener("canplaythrough", (function() {
  9655. finish(audio);
  9656. }), false);
  9657. audio.onerror = function audio_onerror(event) {
  9658. if (done) return;
  9659. console.log("warning: browser could not fully decode audio " + name + ", trying slower base64 approach");
  9660. function encode64(data) {
  9661. var BASE = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
  9662. var PAD = "=";
  9663. var ret = "";
  9664. var leftchar = 0;
  9665. var leftbits = 0;
  9666. for (var i = 0; i < data.length; i++) {
  9667. leftchar = leftchar << 8 | data[i];
  9668. leftbits += 8;
  9669. while (leftbits >= 6) {
  9670. var curr = leftchar >> leftbits - 6 & 63;
  9671. leftbits -= 6;
  9672. ret += BASE[curr];
  9673. }
  9674. }
  9675. if (leftbits == 2) {
  9676. ret += BASE[(leftchar & 3) << 4];
  9677. ret += PAD + PAD;
  9678. } else if (leftbits == 4) {
  9679. ret += BASE[(leftchar & 15) << 2];
  9680. ret += PAD;
  9681. }
  9682. return ret;
  9683. }
  9684. audio.src = "data:audio/x-" + name.substr(-3) + ";base64," + encode64(byteArray);
  9685. finish(audio);
  9686. };
  9687. audio.src = url;
  9688. Browser.safeSetTimeout((function() {
  9689. finish(audio);
  9690. }), 1e4);
  9691. } else {
  9692. return fail();
  9693. }
  9694. };
  9695. Module["preloadPlugins"].push(audioPlugin);
  9696. function pointerLockChange() {
  9697. Browser.pointerLock = document["pointerLockElement"] === Module["canvas"] || document["mozPointerLockElement"] === Module["canvas"] || document["webkitPointerLockElement"] === Module["canvas"] || document["msPointerLockElement"] === Module["canvas"];
  9698. }
  9699. var canvas = Module["canvas"];
  9700. if (canvas) {
  9701. canvas.requestPointerLock = canvas["requestPointerLock"] || canvas["mozRequestPointerLock"] || canvas["webkitRequestPointerLock"] || canvas["msRequestPointerLock"] || (function() {});
  9702. canvas.exitPointerLock = document["exitPointerLock"] || document["mozExitPointerLock"] || document["webkitExitPointerLock"] || document["msExitPointerLock"] || (function() {});
  9703. canvas.exitPointerLock = canvas.exitPointerLock.bind(document);
  9704. document.addEventListener("pointerlockchange", pointerLockChange, false);
  9705. document.addEventListener("mozpointerlockchange", pointerLockChange, false);
  9706. document.addEventListener("webkitpointerlockchange", pointerLockChange, false);
  9707. document.addEventListener("mspointerlockchange", pointerLockChange, false);
  9708. if (Module["elementPointerLock"]) {
  9709. canvas.addEventListener("click", (function(ev) {
  9710. if (!Browser.pointerLock && Module["canvas"].requestPointerLock) {
  9711. Module["canvas"].requestPointerLock();
  9712. ev.preventDefault();
  9713. }
  9714. }), false);
  9715. }
  9716. }
  9717. }),
  9718. createContext: (function(canvas, useWebGL, setInModule, webGLContextAttributes) {
  9719. if (useWebGL && Module.ctx && canvas == Module.canvas) return Module.ctx;
  9720. var ctx;
  9721. var contextHandle;
  9722. if (useWebGL) {
  9723. var contextAttributes = {
  9724. antialias: false,
  9725. alpha: false
  9726. };
  9727. if (webGLContextAttributes) {
  9728. for (var attribute in webGLContextAttributes) {
  9729. contextAttributes[attribute] = webGLContextAttributes[attribute];
  9730. }
  9731. }
  9732. contextHandle = GL.createContext(canvas, contextAttributes);
  9733. if (contextHandle) {
  9734. ctx = GL.getContext(contextHandle).GLctx;
  9735. }
  9736. } else {
  9737. ctx = canvas.getContext("2d");
  9738. }
  9739. if (!ctx) return null;
  9740. if (setInModule) {
  9741. if (!useWebGL) assert(typeof GLctx === "undefined", "cannot set in module if GLctx is used, but we are a non-GL context that would replace it");
  9742. Module.ctx = ctx;
  9743. if (useWebGL) GL.makeContextCurrent(contextHandle);
  9744. Module.useWebGL = useWebGL;
  9745. Browser.moduleContextCreatedCallbacks.forEach((function(callback) {
  9746. callback();
  9747. }));
  9748. Browser.init();
  9749. }
  9750. return ctx;
  9751. }),
  9752. destroyContext: (function(canvas, useWebGL, setInModule) {}),
  9753. fullscreenHandlersInstalled: false,
  9754. lockPointer: undefined,
  9755. resizeCanvas: undefined,
  9756. requestFullscreen: (function(lockPointer, resizeCanvas, vrDevice) {
  9757. Browser.lockPointer = lockPointer;
  9758. Browser.resizeCanvas = resizeCanvas;
  9759. Browser.vrDevice = vrDevice;
  9760. if (typeof Browser.lockPointer === "undefined") Browser.lockPointer = true;
  9761. if (typeof Browser.resizeCanvas === "undefined") Browser.resizeCanvas = false;
  9762. if (typeof Browser.vrDevice === "undefined") Browser.vrDevice = null;
  9763. var canvas = Module["canvas"];
  9764. function fullscreenChange() {
  9765. Browser.isFullscreen = false;
  9766. var canvasContainer = canvas.parentNode;
  9767. if ((document["fullscreenElement"] || document["mozFullScreenElement"] || document["msFullscreenElement"] || document["webkitFullscreenElement"] || document["webkitCurrentFullScreenElement"]) === canvasContainer) {
  9768. canvas.exitFullscreen = document["exitFullscreen"] || document["cancelFullScreen"] || document["mozCancelFullScreen"] || document["msExitFullscreen"] || document["webkitCancelFullScreen"] || (function() {});
  9769. canvas.exitFullscreen = canvas.exitFullscreen.bind(document);
  9770. if (Browser.lockPointer) canvas.requestPointerLock();
  9771. Browser.isFullscreen = true;
  9772. if (Browser.resizeCanvas) {
  9773. Browser.setFullscreenCanvasSize();
  9774. } else {
  9775. Browser.updateCanvasDimensions(canvas);
  9776. }
  9777. } else {
  9778. canvasContainer.parentNode.insertBefore(canvas, canvasContainer);
  9779. canvasContainer.parentNode.removeChild(canvasContainer);
  9780. if (Browser.resizeCanvas) {
  9781. Browser.setWindowedCanvasSize();
  9782. } else {
  9783. Browser.updateCanvasDimensions(canvas);
  9784. }
  9785. }
  9786. if (Module["onFullScreen"]) Module["onFullScreen"](Browser.isFullscreen);
  9787. if (Module["onFullscreen"]) Module["onFullscreen"](Browser.isFullscreen);
  9788. }
  9789. if (!Browser.fullscreenHandlersInstalled) {
  9790. Browser.fullscreenHandlersInstalled = true;
  9791. document.addEventListener("fullscreenchange", fullscreenChange, false);
  9792. document.addEventListener("mozfullscreenchange", fullscreenChange, false);
  9793. document.addEventListener("webkitfullscreenchange", fullscreenChange, false);
  9794. document.addEventListener("MSFullscreenChange", fullscreenChange, false);
  9795. }
  9796. var canvasContainer = document.createElement("div");
  9797. canvas.parentNode.insertBefore(canvasContainer, canvas);
  9798. canvasContainer.appendChild(canvas);
  9799. canvasContainer.requestFullscreen = canvasContainer["requestFullscreen"] || canvasContainer["mozRequestFullScreen"] || canvasContainer["msRequestFullscreen"] || (canvasContainer["webkitRequestFullscreen"] ? (function() {
  9800. canvasContainer["webkitRequestFullscreen"](Element["ALLOW_KEYBOARD_INPUT"]);
  9801. }) : null) || (canvasContainer["webkitRequestFullScreen"] ? (function() {
  9802. canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"]);
  9803. }) : null);
  9804. if (vrDevice) {
  9805. canvasContainer.requestFullscreen({
  9806. vrDisplay: vrDevice
  9807. });
  9808. } else {
  9809. canvasContainer.requestFullscreen();
  9810. }
  9811. }),
  9812. requestFullScreen: (function(lockPointer, resizeCanvas, vrDevice) {
  9813. err("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead.");
  9814. Browser.requestFullScreen = (function(lockPointer, resizeCanvas, vrDevice) {
  9815. return Browser.requestFullscreen(lockPointer, resizeCanvas, vrDevice);
  9816. });
  9817. return Browser.requestFullscreen(lockPointer, resizeCanvas, vrDevice);
  9818. }),
  9819. nextRAF: 0,
  9820. fakeRequestAnimationFrame: (function(func) {
  9821. var now = Date.now();
  9822. if (Browser.nextRAF === 0) {
  9823. Browser.nextRAF = now + 1e3 / 60;
  9824. } else {
  9825. while (now + 2 >= Browser.nextRAF) {
  9826. Browser.nextRAF += 1e3 / 60;
  9827. }
  9828. }
  9829. var delay = Math.max(Browser.nextRAF - now, 0);
  9830. setTimeout(func, delay);
  9831. }),
  9832. requestAnimationFrame: function requestAnimationFrame(func) {
  9833. if (typeof window === "undefined") {
  9834. Browser.fakeRequestAnimationFrame(func);
  9835. } else {
  9836. if (!window.requestAnimationFrame) {
  9837. window.requestAnimationFrame = window["requestAnimationFrame"] || window["mozRequestAnimationFrame"] || window["webkitRequestAnimationFrame"] || window["msRequestAnimationFrame"] || window["oRequestAnimationFrame"] || Browser.fakeRequestAnimationFrame;
  9838. }
  9839. window.requestAnimationFrame(func);
  9840. }
  9841. },
  9842. safeCallback: (function(func) {
  9843. return (function() {
  9844. if (!ABORT) return func.apply(null, arguments);
  9845. });
  9846. }),
  9847. allowAsyncCallbacks: true,
  9848. queuedAsyncCallbacks: [],
  9849. pauseAsyncCallbacks: (function() {
  9850. Browser.allowAsyncCallbacks = false;
  9851. }),
  9852. resumeAsyncCallbacks: (function() {
  9853. Browser.allowAsyncCallbacks = true;
  9854. if (Browser.queuedAsyncCallbacks.length > 0) {
  9855. var callbacks = Browser.queuedAsyncCallbacks;
  9856. Browser.queuedAsyncCallbacks = [];
  9857. callbacks.forEach((function(func) {
  9858. func();
  9859. }));
  9860. }
  9861. }),
  9862. safeRequestAnimationFrame: (function(func) {
  9863. return Browser.requestAnimationFrame((function() {
  9864. if (ABORT) return;
  9865. if (Browser.allowAsyncCallbacks) {
  9866. func();
  9867. } else {
  9868. Browser.queuedAsyncCallbacks.push(func);
  9869. }
  9870. }));
  9871. }),
  9872. safeSetTimeout: (function(func, timeout) {
  9873. Module["noExitRuntime"] = true;
  9874. return setTimeout((function() {
  9875. if (ABORT) return;
  9876. if (Browser.allowAsyncCallbacks) {
  9877. func();
  9878. } else {
  9879. Browser.queuedAsyncCallbacks.push(func);
  9880. }
  9881. }), timeout);
  9882. }),
  9883. safeSetInterval: (function(func, timeout) {
  9884. Module["noExitRuntime"] = true;
  9885. return setInterval((function() {
  9886. if (ABORT) return;
  9887. if (Browser.allowAsyncCallbacks) {
  9888. func();
  9889. }
  9890. }), timeout);
  9891. }),
  9892. getMimetype: (function(name) {
  9893. return {
  9894. "jpg": "image/jpeg",
  9895. "jpeg": "image/jpeg",
  9896. "png": "image/png",
  9897. "bmp": "image/bmp",
  9898. "ogg": "audio/ogg",
  9899. "wav": "audio/wav",
  9900. "mp3": "audio/mpeg"
  9901. }[name.substr(name.lastIndexOf(".") + 1)];
  9902. }),
  9903. getUserMedia: (function(func) {
  9904. if (!window.getUserMedia) {
  9905. window.getUserMedia = navigator["getUserMedia"] || navigator["mozGetUserMedia"];
  9906. }
  9907. window.getUserMedia(func);
  9908. }),
  9909. getMovementX: (function(event) {
  9910. return event["movementX"] || event["mozMovementX"] || event["webkitMovementX"] || 0;
  9911. }),
  9912. getMovementY: (function(event) {
  9913. return event["movementY"] || event["mozMovementY"] || event["webkitMovementY"] || 0;
  9914. }),
  9915. getMouseWheelDelta: (function(event) {
  9916. var delta = 0;
  9917. switch (event.type) {
  9918. case "DOMMouseScroll":
  9919. delta = event.detail;
  9920. break;
  9921. case "mousewheel":
  9922. delta = event.wheelDelta;
  9923. break;
  9924. case "wheel":
  9925. delta = event["deltaY"];
  9926. break;
  9927. default:
  9928. throw "unrecognized mouse wheel event: " + event.type;
  9929. }
  9930. return delta;
  9931. }),
  9932. mouseX: 0,
  9933. mouseY: 0,
  9934. mouseMovementX: 0,
  9935. mouseMovementY: 0,
  9936. touches: {},
  9937. lastTouches: {},
  9938. calculateMouseEvent: (function(event) {
  9939. if (Browser.pointerLock) {
  9940. if (event.type != "mousemove" && "mozMovementX" in event) {
  9941. Browser.mouseMovementX = Browser.mouseMovementY = 0;
  9942. } else {
  9943. Browser.mouseMovementX = Browser.getMovementX(event);
  9944. Browser.mouseMovementY = Browser.getMovementY(event);
  9945. }
  9946. if (typeof SDL != "undefined") {
  9947. Browser.mouseX = SDL.mouseX + Browser.mouseMovementX;
  9948. Browser.mouseY = SDL.mouseY + Browser.mouseMovementY;
  9949. } else {
  9950. Browser.mouseX += Browser.mouseMovementX;
  9951. Browser.mouseY += Browser.mouseMovementY;
  9952. }
  9953. } else {
  9954. var rect = Module["canvas"].getBoundingClientRect();
  9955. var cw = Module["canvas"].width;
  9956. var ch = Module["canvas"].height;
  9957. var scrollX = typeof window.scrollX !== "undefined" ? window.scrollX : window.pageXOffset;
  9958. var scrollY = typeof window.scrollY !== "undefined" ? window.scrollY : window.pageYOffset;
  9959. assert(typeof scrollX !== "undefined" && typeof scrollY !== "undefined", "Unable to retrieve scroll position, mouse positions likely broken.");
  9960. if (event.type === "touchstart" || event.type === "touchend" || event.type === "touchmove") {
  9961. var touch = event.touch;
  9962. if (touch === undefined) {
  9963. return;
  9964. }
  9965. var adjustedX = touch.pageX - (scrollX + rect.left);
  9966. var adjustedY = touch.pageY - (scrollY + rect.top);
  9967. adjustedX = adjustedX * (cw / rect.width);
  9968. adjustedY = adjustedY * (ch / rect.height);
  9969. var coords = {
  9970. x: adjustedX,
  9971. y: adjustedY
  9972. };
  9973. if (event.type === "touchstart") {
  9974. Browser.lastTouches[touch.identifier] = coords;
  9975. Browser.touches[touch.identifier] = coords;
  9976. } else if (event.type === "touchend" || event.type === "touchmove") {
  9977. var last = Browser.touches[touch.identifier];
  9978. if (!last) last = coords;
  9979. Browser.lastTouches[touch.identifier] = last;
  9980. Browser.touches[touch.identifier] = coords;
  9981. }
  9982. return;
  9983. }
  9984. var x = event.pageX - (scrollX + rect.left);
  9985. var y = event.pageY - (scrollY + rect.top);
  9986. x = x * (cw / rect.width);
  9987. y = y * (ch / rect.height);
  9988. Browser.mouseMovementX = x - Browser.mouseX;
  9989. Browser.mouseMovementY = y - Browser.mouseY;
  9990. Browser.mouseX = x;
  9991. Browser.mouseY = y;
  9992. }
  9993. }),
  9994. asyncLoad: (function(url, onload, onerror, noRunDep) {
  9995. var dep = !noRunDep ? getUniqueRunDependency("al " + url) : "";
  9996. Module["readAsync"](url, (function(arrayBuffer) {
  9997. assert(arrayBuffer, 'Loading data file "' + url + '" failed (no arrayBuffer).');
  9998. onload(new Uint8Array(arrayBuffer));
  9999. if (dep) removeRunDependency(dep);
  10000. }), (function(event) {
  10001. if (onerror) {
  10002. onerror();
  10003. } else {
  10004. throw 'Loading data file "' + url + '" failed.';
  10005. }
  10006. }));
  10007. if (dep) addRunDependency(dep);
  10008. }),
  10009. resizeListeners: [],
  10010. updateResizeListeners: (function() {
  10011. var canvas = Module["canvas"];
  10012. Browser.resizeListeners.forEach((function(listener) {
  10013. listener(canvas.width, canvas.height);
  10014. }));
  10015. }),
  10016. setCanvasSize: (function(width, height, noUpdates) {
  10017. var canvas = Module["canvas"];
  10018. Browser.updateCanvasDimensions(canvas, width, height);
  10019. if (!noUpdates) Browser.updateResizeListeners();
  10020. }),
  10021. windowedWidth: 0,
  10022. windowedHeight: 0,
  10023. setFullscreenCanvasSize: (function() {
  10024. if (typeof SDL != "undefined") {
  10025. var flags = HEAPU32[SDL.screen >> 2];
  10026. flags = flags | 8388608;
  10027. HEAP32[SDL.screen >> 2] = flags;
  10028. }
  10029. Browser.updateCanvasDimensions(Module["canvas"]);
  10030. Browser.updateResizeListeners();
  10031. }),
  10032. setWindowedCanvasSize: (function() {
  10033. if (typeof SDL != "undefined") {
  10034. var flags = HEAPU32[SDL.screen >> 2];
  10035. flags = flags & ~8388608;
  10036. HEAP32[SDL.screen >> 2] = flags;
  10037. }
  10038. Browser.updateCanvasDimensions(Module["canvas"]);
  10039. Browser.updateResizeListeners();
  10040. }),
  10041. updateCanvasDimensions: (function(canvas, wNative, hNative) {
  10042. if (wNative && hNative) {
  10043. canvas.widthNative = wNative;
  10044. canvas.heightNative = hNative;
  10045. } else {
  10046. wNative = canvas.widthNative;
  10047. hNative = canvas.heightNative;
  10048. }
  10049. var w = wNative;
  10050. var h = hNative;
  10051. if (Module["forcedAspectRatio"] && Module["forcedAspectRatio"] > 0) {
  10052. if (w / h < Module["forcedAspectRatio"]) {
  10053. w = Math.round(h * Module["forcedAspectRatio"]);
  10054. } else {
  10055. h = Math.round(w / Module["forcedAspectRatio"]);
  10056. }
  10057. }
  10058. if ((document["fullscreenElement"] || document["mozFullScreenElement"] || document["msFullscreenElement"] || document["webkitFullscreenElement"] || document["webkitCurrentFullScreenElement"]) === canvas.parentNode && typeof screen != "undefined") {
  10059. var factor = Math.min(screen.width / w, screen.height / h);
  10060. w = Math.round(w * factor);
  10061. h = Math.round(h * factor);
  10062. }
  10063. if (Browser.resizeCanvas) {
  10064. if (canvas.width != w) canvas.width = w;
  10065. if (canvas.height != h) canvas.height = h;
  10066. if (typeof canvas.style != "undefined") {
  10067. canvas.style.removeProperty("width");
  10068. canvas.style.removeProperty("height");
  10069. }
  10070. } else {
  10071. if (canvas.width != wNative) canvas.width = wNative;
  10072. if (canvas.height != hNative) canvas.height = hNative;
  10073. if (typeof canvas.style != "undefined") {
  10074. if (w != wNative || h != hNative) {
  10075. canvas.style.setProperty("width", w + "px", "important");
  10076. canvas.style.setProperty("height", h + "px", "important");
  10077. } else {
  10078. canvas.style.removeProperty("width");
  10079. canvas.style.removeProperty("height");
  10080. }
  10081. }
  10082. }
  10083. }),
  10084. wgetRequests: {},
  10085. nextWgetRequestHandle: 0,
  10086. getNextWgetRequestHandle: (function() {
  10087. var handle = Browser.nextWgetRequestHandle;
  10088. Browser.nextWgetRequestHandle++;
  10089. return handle;
  10090. })
  10091. };
  10092. function _emscripten_cancel_main_loop() {
  10093. Browser.mainLoop.pause();
  10094. Browser.mainLoop.func = null;
  10095. }
  10096. function _emscripten_set_canvas_element_size_calling_thread(target, width, height) {
  10097. var canvas = JSEvents.findCanvasEventTarget(target);
  10098. if (!canvas) return -4;
  10099. if (canvas.canvasSharedPtr) {
  10100. HEAP32[canvas.canvasSharedPtr >> 2] = width;
  10101. HEAP32[canvas.canvasSharedPtr + 4 >> 2] = height;
  10102. }
  10103. if (canvas.offscreenCanvas || !canvas.controlTransferredOffscreen) {
  10104. if (canvas.offscreenCanvas) canvas = canvas.offscreenCanvas;
  10105. var autoResizeViewport = false;
  10106. if (canvas.GLctxObject && canvas.GLctxObject.GLctx) {
  10107. var prevViewport = canvas.GLctxObject.GLctx.getParameter(canvas.GLctxObject.GLctx.VIEWPORT);
  10108. autoResizeViewport = prevViewport[0] === 0 && prevViewport[1] === 0 && prevViewport[2] === canvas.width && prevViewport[3] === canvas.height;
  10109. }
  10110. canvas.width = width;
  10111. canvas.height = height;
  10112. if (autoResizeViewport) {
  10113. canvas.GLctxObject.GLctx.viewport(0, 0, width, height);
  10114. }
  10115. } else {
  10116. return -4;
  10117. }
  10118. return 0;
  10119. }
  10120. function _emscripten_set_canvas_element_size_main_thread(target, width, height) {
  10121. return _emscripten_set_canvas_element_size_calling_thread(target, width, height);
  10122. }
  10123. function _emscripten_set_canvas_element_size(target, width, height) {
  10124. var canvas = JSEvents.findCanvasEventTarget(target);
  10125. if (canvas) return _emscripten_set_canvas_element_size_calling_thread(target, width, height); else return _emscripten_set_canvas_element_size_main_thread(target, width, height);
  10126. }
  10127. function emscripten_set_canvas_element_size_js(target, width, height) {
  10128. if (typeof target === "string") {
  10129. var stackTop = stackSave();
  10130. var targetInt = stackAlloc(target.length + 1);
  10131. stringToUTF8(target, targetInt, target.length + 1);
  10132. var ret = _emscripten_set_canvas_element_size(targetInt, width, height);
  10133. stackRestore(stackTop);
  10134. return ret;
  10135. } else {
  10136. return _emscripten_set_canvas_element_size(target, width, height);
  10137. }
  10138. }
  10139. function _emscripten_get_canvas_element_size_calling_thread(target, width, height) {
  10140. var canvas = JSEvents.findCanvasEventTarget(target);
  10141. if (!canvas) return -4;
  10142. if (canvas.canvasSharedPtr) {
  10143. var w = HEAP32[canvas.canvasSharedPtr >> 2];
  10144. var h = HEAP32[canvas.canvasSharedPtr + 4 >> 2];
  10145. HEAP32[width >> 2] = w;
  10146. HEAP32[height >> 2] = h;
  10147. } else if (canvas.offscreenCanvas) {
  10148. HEAP32[width >> 2] = canvas.offscreenCanvas.width;
  10149. HEAP32[height >> 2] = canvas.offscreenCanvas.height;
  10150. } else if (!canvas.controlTransferredOffscreen) {
  10151. HEAP32[width >> 2] = canvas.width;
  10152. HEAP32[height >> 2] = canvas.height;
  10153. } else {
  10154. return -4;
  10155. }
  10156. return 0;
  10157. }
  10158. function _emscripten_get_canvas_element_size_main_thread(target, width, height) {
  10159. return _emscripten_get_canvas_element_size_calling_thread(target, width, height);
  10160. }
  10161. function _emscripten_get_canvas_element_size(target, width, height) {
  10162. var canvas = JSEvents.findCanvasEventTarget(target);
  10163. if (canvas) return _emscripten_get_canvas_element_size_calling_thread(target, width, height); else return _emscripten_get_canvas_element_size_main_thread(target, width, height);
  10164. }
  10165. function emscripten_get_canvas_element_size_js(target) {
  10166. var stackTop = stackSave();
  10167. var w = stackAlloc(8);
  10168. var h = w + 4;
  10169. if (typeof target === "string") {
  10170. var targetInt = stackAlloc(target.length + 1);
  10171. stringToUTF8(target, targetInt, target.length + 1);
  10172. target = targetInt;
  10173. }
  10174. var ret = _emscripten_get_canvas_element_size(target, w, h);
  10175. var size = [ HEAP32[w >> 2], HEAP32[h >> 2] ];
  10176. stackRestore(stackTop);
  10177. return size;
  10178. }
  10179. var JSEvents = {
  10180. keyEvent: 0,
  10181. mouseEvent: 0,
  10182. wheelEvent: 0,
  10183. uiEvent: 0,
  10184. focusEvent: 0,
  10185. deviceOrientationEvent: 0,
  10186. deviceMotionEvent: 0,
  10187. fullscreenChangeEvent: 0,
  10188. pointerlockChangeEvent: 0,
  10189. visibilityChangeEvent: 0,
  10190. touchEvent: 0,
  10191. lastGamepadState: null,
  10192. lastGamepadStateFrame: null,
  10193. numGamepadsConnected: 0,
  10194. previousFullscreenElement: null,
  10195. previousScreenX: null,
  10196. previousScreenY: null,
  10197. removeEventListenersRegistered: false,
  10198. _onGamepadConnected: (function() {
  10199. ++JSEvents.numGamepadsConnected;
  10200. }),
  10201. _onGamepadDisconnected: (function() {
  10202. --JSEvents.numGamepadsConnected;
  10203. }),
  10204. staticInit: (function() {
  10205. if (typeof window !== "undefined") {
  10206. window.addEventListener("gamepadconnected", JSEvents._onGamepadConnected);
  10207. window.addEventListener("gamepaddisconnected", JSEvents._onGamepadDisconnected);
  10208. var firstState = navigator.getGamepads ? navigator.getGamepads() : navigator.webkitGetGamepads ? navigator.webkitGetGamepads() : null;
  10209. if (firstState) {
  10210. JSEvents.numGamepadsConnected = firstState.length;
  10211. }
  10212. }
  10213. }),
  10214. removeAllEventListeners: (function() {
  10215. for (var i = JSEvents.eventHandlers.length - 1; i >= 0; --i) {
  10216. JSEvents._removeHandler(i);
  10217. }
  10218. JSEvents.eventHandlers = [];
  10219. JSEvents.deferredCalls = [];
  10220. window.removeEventListener("gamepadconnected", JSEvents._onGamepadConnected);
  10221. window.removeEventListener("gamepaddisconnected", JSEvents._onGamepadDisconnected);
  10222. }),
  10223. registerRemoveEventListeners: (function() {
  10224. if (!JSEvents.removeEventListenersRegistered) {
  10225. __ATEXIT__.push(JSEvents.removeAllEventListeners);
  10226. JSEvents.removeEventListenersRegistered = true;
  10227. }
  10228. }),
  10229. findEventTarget: (function(target) {
  10230. try {
  10231. if (!target) return window;
  10232. if (typeof target === "number") target = Pointer_stringify(target);
  10233. if (target === "#window") return window; else if (target === "#document") return document; else if (target === "#screen") return window.screen; else if (target === "#canvas") return Module["canvas"];
  10234. return typeof target === "string" ? document.getElementById(target) : target;
  10235. } catch (e) {
  10236. return null;
  10237. }
  10238. }),
  10239. findCanvasEventTarget: (function(target) {
  10240. if (typeof target === "number") target = Pointer_stringify(target);
  10241. if (!target || target === "#canvas") {
  10242. if (typeof GL !== "undefined" && GL.offscreenCanvases["canvas"]) return GL.offscreenCanvases["canvas"];
  10243. return Module["canvas"];
  10244. }
  10245. if (typeof GL !== "undefined" && GL.offscreenCanvases[target]) return GL.offscreenCanvases[target];
  10246. return JSEvents.findEventTarget(target);
  10247. }),
  10248. deferredCalls: [],
  10249. deferCall: (function(targetFunction, precedence, argsList) {
  10250. function arraysHaveEqualContent(arrA, arrB) {
  10251. if (arrA.length != arrB.length) return false;
  10252. for (var i in arrA) {
  10253. if (arrA[i] != arrB[i]) return false;
  10254. }
  10255. return true;
  10256. }
  10257. for (var i in JSEvents.deferredCalls) {
  10258. var call = JSEvents.deferredCalls[i];
  10259. if (call.targetFunction == targetFunction && arraysHaveEqualContent(call.argsList, argsList)) {
  10260. return;
  10261. }
  10262. }
  10263. JSEvents.deferredCalls.push({
  10264. targetFunction: targetFunction,
  10265. precedence: precedence,
  10266. argsList: argsList
  10267. });
  10268. JSEvents.deferredCalls.sort((function(x, y) {
  10269. return x.precedence < y.precedence;
  10270. }));
  10271. }),
  10272. removeDeferredCalls: (function(targetFunction) {
  10273. for (var i = 0; i < JSEvents.deferredCalls.length; ++i) {
  10274. if (JSEvents.deferredCalls[i].targetFunction == targetFunction) {
  10275. JSEvents.deferredCalls.splice(i, 1);
  10276. --i;
  10277. }
  10278. }
  10279. }),
  10280. canPerformEventHandlerRequests: (function() {
  10281. return JSEvents.inEventHandler && JSEvents.currentEventHandler.allowsDeferredCalls;
  10282. }),
  10283. runDeferredCalls: (function() {
  10284. if (!JSEvents.canPerformEventHandlerRequests()) {
  10285. return;
  10286. }
  10287. for (var i = 0; i < JSEvents.deferredCalls.length; ++i) {
  10288. var call = JSEvents.deferredCalls[i];
  10289. JSEvents.deferredCalls.splice(i, 1);
  10290. --i;
  10291. call.targetFunction.apply(this, call.argsList);
  10292. }
  10293. }),
  10294. inEventHandler: 0,
  10295. currentEventHandler: null,
  10296. eventHandlers: [],
  10297. isInternetExplorer: (function() {
  10298. return navigator.userAgent.indexOf("MSIE") !== -1 || navigator.appVersion.indexOf("Trident/") > 0;
  10299. }),
  10300. removeAllHandlersOnTarget: (function(target, eventTypeString) {
  10301. for (var i = 0; i < JSEvents.eventHandlers.length; ++i) {
  10302. if (JSEvents.eventHandlers[i].target == target && (!eventTypeString || eventTypeString == JSEvents.eventHandlers[i].eventTypeString)) {
  10303. JSEvents._removeHandler(i--);
  10304. }
  10305. }
  10306. }),
  10307. _removeHandler: (function(i) {
  10308. var h = JSEvents.eventHandlers[i];
  10309. h.target.removeEventListener(h.eventTypeString, h.eventListenerFunc, h.useCapture);
  10310. JSEvents.eventHandlers.splice(i, 1);
  10311. }),
  10312. registerOrRemoveHandler: (function(eventHandler) {
  10313. var jsEventHandler = function jsEventHandler(event) {
  10314. ++JSEvents.inEventHandler;
  10315. JSEvents.currentEventHandler = eventHandler;
  10316. JSEvents.runDeferredCalls();
  10317. eventHandler.handlerFunc(event);
  10318. JSEvents.runDeferredCalls();
  10319. --JSEvents.inEventHandler;
  10320. };
  10321. if (eventHandler.callbackfunc) {
  10322. eventHandler.eventListenerFunc = jsEventHandler;
  10323. eventHandler.target.addEventListener(eventHandler.eventTypeString, jsEventHandler, eventHandler.useCapture);
  10324. JSEvents.eventHandlers.push(eventHandler);
  10325. JSEvents.registerRemoveEventListeners();
  10326. } else {
  10327. for (var i = 0; i < JSEvents.eventHandlers.length; ++i) {
  10328. if (JSEvents.eventHandlers[i].target == eventHandler.target && JSEvents.eventHandlers[i].eventTypeString == eventHandler.eventTypeString) {
  10329. JSEvents._removeHandler(i--);
  10330. }
  10331. }
  10332. }
  10333. }),
  10334. registerKeyEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10335. if (!JSEvents.keyEvent) JSEvents.keyEvent = _malloc(164);
  10336. var keyEventHandlerFunc = (function(event) {
  10337. var e = event || window.event;
  10338. var keyEventData = JSEvents.keyEvent;
  10339. stringToUTF8(e.key ? e.key : "", keyEventData + 0, 32);
  10340. stringToUTF8(e.code ? e.code : "", keyEventData + 32, 32);
  10341. HEAP32[keyEventData + 64 >> 2] = e.location;
  10342. HEAP32[keyEventData + 68 >> 2] = e.ctrlKey;
  10343. HEAP32[keyEventData + 72 >> 2] = e.shiftKey;
  10344. HEAP32[keyEventData + 76 >> 2] = e.altKey;
  10345. HEAP32[keyEventData + 80 >> 2] = e.metaKey;
  10346. HEAP32[keyEventData + 84 >> 2] = e.repeat;
  10347. stringToUTF8(e.locale ? e.locale : "", keyEventData + 88, 32);
  10348. stringToUTF8(e.char ? e.char : "", keyEventData + 120, 32);
  10349. HEAP32[keyEventData + 152 >> 2] = e.charCode;
  10350. HEAP32[keyEventData + 156 >> 2] = e.keyCode;
  10351. HEAP32[keyEventData + 160 >> 2] = e.which;
  10352. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, keyEventData, userData)) e.preventDefault();
  10353. });
  10354. var eventHandler = {
  10355. target: JSEvents.findEventTarget(target),
  10356. allowsDeferredCalls: JSEvents.isInternetExplorer() ? false : true,
  10357. eventTypeString: eventTypeString,
  10358. callbackfunc: callbackfunc,
  10359. handlerFunc: keyEventHandlerFunc,
  10360. useCapture: useCapture
  10361. };
  10362. JSEvents.registerOrRemoveHandler(eventHandler);
  10363. }),
  10364. getBoundingClientRectOrZeros: (function(target) {
  10365. return target.getBoundingClientRect ? target.getBoundingClientRect() : {
  10366. left: 0,
  10367. top: 0
  10368. };
  10369. }),
  10370. fillMouseEventData: (function(eventStruct, e, target) {
  10371. HEAPF64[eventStruct >> 3] = JSEvents.tick();
  10372. HEAP32[eventStruct + 8 >> 2] = e.screenX;
  10373. HEAP32[eventStruct + 12 >> 2] = e.screenY;
  10374. HEAP32[eventStruct + 16 >> 2] = e.clientX;
  10375. HEAP32[eventStruct + 20 >> 2] = e.clientY;
  10376. HEAP32[eventStruct + 24 >> 2] = e.ctrlKey;
  10377. HEAP32[eventStruct + 28 >> 2] = e.shiftKey;
  10378. HEAP32[eventStruct + 32 >> 2] = e.altKey;
  10379. HEAP32[eventStruct + 36 >> 2] = e.metaKey;
  10380. HEAP16[eventStruct + 40 >> 1] = e.button;
  10381. HEAP16[eventStruct + 42 >> 1] = e.buttons;
  10382. HEAP32[eventStruct + 44 >> 2] = e["movementX"] || e["mozMovementX"] || e["webkitMovementX"] || e.screenX - JSEvents.previousScreenX;
  10383. HEAP32[eventStruct + 48 >> 2] = e["movementY"] || e["mozMovementY"] || e["webkitMovementY"] || e.screenY - JSEvents.previousScreenY;
  10384. if (Module["canvas"]) {
  10385. var rect = Module["canvas"].getBoundingClientRect();
  10386. HEAP32[eventStruct + 60 >> 2] = e.clientX - rect.left;
  10387. HEAP32[eventStruct + 64 >> 2] = e.clientY - rect.top;
  10388. } else {
  10389. HEAP32[eventStruct + 60 >> 2] = 0;
  10390. HEAP32[eventStruct + 64 >> 2] = 0;
  10391. }
  10392. if (target) {
  10393. var rect = JSEvents.getBoundingClientRectOrZeros(target);
  10394. HEAP32[eventStruct + 52 >> 2] = e.clientX - rect.left;
  10395. HEAP32[eventStruct + 56 >> 2] = e.clientY - rect.top;
  10396. } else {
  10397. HEAP32[eventStruct + 52 >> 2] = 0;
  10398. HEAP32[eventStruct + 56 >> 2] = 0;
  10399. }
  10400. if (e.type !== "wheel" && e.type !== "mousewheel") {
  10401. JSEvents.previousScreenX = e.screenX;
  10402. JSEvents.previousScreenY = e.screenY;
  10403. }
  10404. }),
  10405. registerMouseEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10406. if (!JSEvents.mouseEvent) JSEvents.mouseEvent = _malloc(72);
  10407. target = JSEvents.findEventTarget(target);
  10408. var mouseEventHandlerFunc = (function(event) {
  10409. var e = event || window.event;
  10410. JSEvents.fillMouseEventData(JSEvents.mouseEvent, e, target);
  10411. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.mouseEvent, userData)) e.preventDefault();
  10412. });
  10413. var eventHandler = {
  10414. target: target,
  10415. allowsDeferredCalls: eventTypeString != "mousemove" && eventTypeString != "mouseenter" && eventTypeString != "mouseleave",
  10416. eventTypeString: eventTypeString,
  10417. callbackfunc: callbackfunc,
  10418. handlerFunc: mouseEventHandlerFunc,
  10419. useCapture: useCapture
  10420. };
  10421. if (JSEvents.isInternetExplorer() && eventTypeString == "mousedown") eventHandler.allowsDeferredCalls = false;
  10422. JSEvents.registerOrRemoveHandler(eventHandler);
  10423. }),
  10424. registerWheelEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10425. if (!JSEvents.wheelEvent) JSEvents.wheelEvent = _malloc(104);
  10426. target = JSEvents.findEventTarget(target);
  10427. var wheelHandlerFunc = (function(event) {
  10428. var e = event || window.event;
  10429. var wheelEvent = JSEvents.wheelEvent;
  10430. JSEvents.fillMouseEventData(wheelEvent, e, target);
  10431. HEAPF64[wheelEvent + 72 >> 3] = e["deltaX"];
  10432. HEAPF64[wheelEvent + 80 >> 3] = e["deltaY"];
  10433. HEAPF64[wheelEvent + 88 >> 3] = e["deltaZ"];
  10434. HEAP32[wheelEvent + 96 >> 2] = e["deltaMode"];
  10435. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, wheelEvent, userData)) e.preventDefault();
  10436. });
  10437. var mouseWheelHandlerFunc = (function(event) {
  10438. var e = event || window.event;
  10439. JSEvents.fillMouseEventData(JSEvents.wheelEvent, e, target);
  10440. HEAPF64[JSEvents.wheelEvent + 72 >> 3] = e["wheelDeltaX"] || 0;
  10441. HEAPF64[JSEvents.wheelEvent + 80 >> 3] = -(e["wheelDeltaY"] ? e["wheelDeltaY"] : e["wheelDelta"]);
  10442. HEAPF64[JSEvents.wheelEvent + 88 >> 3] = 0;
  10443. HEAP32[JSEvents.wheelEvent + 96 >> 2] = 0;
  10444. var shouldCancel = Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.wheelEvent, userData);
  10445. if (shouldCancel) {
  10446. e.preventDefault();
  10447. }
  10448. });
  10449. var eventHandler = {
  10450. target: target,
  10451. allowsDeferredCalls: true,
  10452. eventTypeString: eventTypeString,
  10453. callbackfunc: callbackfunc,
  10454. handlerFunc: eventTypeString == "wheel" ? wheelHandlerFunc : mouseWheelHandlerFunc,
  10455. useCapture: useCapture
  10456. };
  10457. JSEvents.registerOrRemoveHandler(eventHandler);
  10458. }),
  10459. pageScrollPos: (function() {
  10460. if (window.pageXOffset > 0 || window.pageYOffset > 0) {
  10461. return [ window.pageXOffset, window.pageYOffset ];
  10462. }
  10463. if (typeof document.documentElement.scrollLeft !== "undefined" || typeof document.documentElement.scrollTop !== "undefined") {
  10464. return [ document.documentElement.scrollLeft, document.documentElement.scrollTop ];
  10465. }
  10466. return [ document.body.scrollLeft | 0, document.body.scrollTop | 0 ];
  10467. }),
  10468. registerUiEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10469. if (!JSEvents.uiEvent) JSEvents.uiEvent = _malloc(36);
  10470. if (eventTypeString == "scroll" && !target) {
  10471. target = document;
  10472. } else {
  10473. target = JSEvents.findEventTarget(target);
  10474. }
  10475. var uiEventHandlerFunc = (function(event) {
  10476. var e = event || window.event;
  10477. if (e.target != target) {
  10478. return;
  10479. }
  10480. var scrollPos = JSEvents.pageScrollPos();
  10481. var uiEvent = JSEvents.uiEvent;
  10482. HEAP32[uiEvent >> 2] = e.detail;
  10483. HEAP32[uiEvent + 4 >> 2] = document.body.clientWidth;
  10484. HEAP32[uiEvent + 8 >> 2] = document.body.clientHeight;
  10485. HEAP32[uiEvent + 12 >> 2] = window.innerWidth;
  10486. HEAP32[uiEvent + 16 >> 2] = window.innerHeight;
  10487. HEAP32[uiEvent + 20 >> 2] = window.outerWidth;
  10488. HEAP32[uiEvent + 24 >> 2] = window.outerHeight;
  10489. HEAP32[uiEvent + 28 >> 2] = scrollPos[0];
  10490. HEAP32[uiEvent + 32 >> 2] = scrollPos[1];
  10491. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, uiEvent, userData)) e.preventDefault();
  10492. });
  10493. var eventHandler = {
  10494. target: target,
  10495. allowsDeferredCalls: false,
  10496. eventTypeString: eventTypeString,
  10497. callbackfunc: callbackfunc,
  10498. handlerFunc: uiEventHandlerFunc,
  10499. useCapture: useCapture
  10500. };
  10501. JSEvents.registerOrRemoveHandler(eventHandler);
  10502. }),
  10503. getNodeNameForTarget: (function(target) {
  10504. if (!target) return "";
  10505. if (target == window) return "#window";
  10506. if (target == window.screen) return "#screen";
  10507. return target && target.nodeName ? target.nodeName : "";
  10508. }),
  10509. registerFocusEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10510. if (!JSEvents.focusEvent) JSEvents.focusEvent = _malloc(256);
  10511. var focusEventHandlerFunc = (function(event) {
  10512. var e = event || window.event;
  10513. var nodeName = JSEvents.getNodeNameForTarget(e.target);
  10514. var id = e.target.id ? e.target.id : "";
  10515. var focusEvent = JSEvents.focusEvent;
  10516. stringToUTF8(nodeName, focusEvent + 0, 128);
  10517. stringToUTF8(id, focusEvent + 128, 128);
  10518. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, focusEvent, userData)) e.preventDefault();
  10519. });
  10520. var eventHandler = {
  10521. target: JSEvents.findEventTarget(target),
  10522. allowsDeferredCalls: false,
  10523. eventTypeString: eventTypeString,
  10524. callbackfunc: callbackfunc,
  10525. handlerFunc: focusEventHandlerFunc,
  10526. useCapture: useCapture
  10527. };
  10528. JSEvents.registerOrRemoveHandler(eventHandler);
  10529. }),
  10530. tick: (function() {
  10531. if (window["performance"] && window["performance"]["now"]) return window["performance"]["now"](); else return Date.now();
  10532. }),
  10533. fillDeviceOrientationEventData: (function(eventStruct, e, target) {
  10534. HEAPF64[eventStruct >> 3] = JSEvents.tick();
  10535. HEAPF64[eventStruct + 8 >> 3] = e.alpha;
  10536. HEAPF64[eventStruct + 16 >> 3] = e.beta;
  10537. HEAPF64[eventStruct + 24 >> 3] = e.gamma;
  10538. HEAP32[eventStruct + 32 >> 2] = e.absolute;
  10539. }),
  10540. registerDeviceOrientationEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10541. if (!JSEvents.deviceOrientationEvent) JSEvents.deviceOrientationEvent = _malloc(40);
  10542. var deviceOrientationEventHandlerFunc = (function(event) {
  10543. var e = event || window.event;
  10544. JSEvents.fillDeviceOrientationEventData(JSEvents.deviceOrientationEvent, e, target);
  10545. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.deviceOrientationEvent, userData)) e.preventDefault();
  10546. });
  10547. var eventHandler = {
  10548. target: JSEvents.findEventTarget(target),
  10549. allowsDeferredCalls: false,
  10550. eventTypeString: eventTypeString,
  10551. callbackfunc: callbackfunc,
  10552. handlerFunc: deviceOrientationEventHandlerFunc,
  10553. useCapture: useCapture
  10554. };
  10555. JSEvents.registerOrRemoveHandler(eventHandler);
  10556. }),
  10557. fillDeviceMotionEventData: (function(eventStruct, e, target) {
  10558. HEAPF64[eventStruct >> 3] = JSEvents.tick();
  10559. HEAPF64[eventStruct + 8 >> 3] = e.acceleration.x;
  10560. HEAPF64[eventStruct + 16 >> 3] = e.acceleration.y;
  10561. HEAPF64[eventStruct + 24 >> 3] = e.acceleration.z;
  10562. HEAPF64[eventStruct + 32 >> 3] = e.accelerationIncludingGravity.x;
  10563. HEAPF64[eventStruct + 40 >> 3] = e.accelerationIncludingGravity.y;
  10564. HEAPF64[eventStruct + 48 >> 3] = e.accelerationIncludingGravity.z;
  10565. HEAPF64[eventStruct + 56 >> 3] = e.rotationRate.alpha;
  10566. HEAPF64[eventStruct + 64 >> 3] = e.rotationRate.beta;
  10567. HEAPF64[eventStruct + 72 >> 3] = e.rotationRate.gamma;
  10568. }),
  10569. registerDeviceMotionEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10570. if (!JSEvents.deviceMotionEvent) JSEvents.deviceMotionEvent = _malloc(80);
  10571. var deviceMotionEventHandlerFunc = (function(event) {
  10572. var e = event || window.event;
  10573. JSEvents.fillDeviceMotionEventData(JSEvents.deviceMotionEvent, e, target);
  10574. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, JSEvents.deviceMotionEvent, userData)) e.preventDefault();
  10575. });
  10576. var eventHandler = {
  10577. target: JSEvents.findEventTarget(target),
  10578. allowsDeferredCalls: false,
  10579. eventTypeString: eventTypeString,
  10580. callbackfunc: callbackfunc,
  10581. handlerFunc: deviceMotionEventHandlerFunc,
  10582. useCapture: useCapture
  10583. };
  10584. JSEvents.registerOrRemoveHandler(eventHandler);
  10585. }),
  10586. screenOrientation: (function() {
  10587. if (!window.screen) return undefined;
  10588. return window.screen.orientation || window.screen.mozOrientation || window.screen.webkitOrientation || window.screen.msOrientation;
  10589. }),
  10590. fillOrientationChangeEventData: (function(eventStruct, e) {
  10591. var orientations = [ "portrait-primary", "portrait-secondary", "landscape-primary", "landscape-secondary" ];
  10592. var orientations2 = [ "portrait", "portrait", "landscape", "landscape" ];
  10593. var orientationString = JSEvents.screenOrientation();
  10594. var orientation = orientations.indexOf(orientationString);
  10595. if (orientation == -1) {
  10596. orientation = orientations2.indexOf(orientationString);
  10597. }
  10598. HEAP32[eventStruct >> 2] = 1 << orientation;
  10599. HEAP32[eventStruct + 4 >> 2] = window.orientation;
  10600. }),
  10601. registerOrientationChangeEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10602. if (!JSEvents.orientationChangeEvent) JSEvents.orientationChangeEvent = _malloc(8);
  10603. if (!target) {
  10604. target = window.screen;
  10605. } else {
  10606. target = JSEvents.findEventTarget(target);
  10607. }
  10608. var orientationChangeEventHandlerFunc = (function(event) {
  10609. var e = event || window.event;
  10610. var orientationChangeEvent = JSEvents.orientationChangeEvent;
  10611. JSEvents.fillOrientationChangeEventData(orientationChangeEvent, e);
  10612. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, orientationChangeEvent, userData)) e.preventDefault();
  10613. });
  10614. if (eventTypeString == "orientationchange" && window.screen.mozOrientation !== undefined) {
  10615. eventTypeString = "mozorientationchange";
  10616. }
  10617. var eventHandler = {
  10618. target: target,
  10619. allowsDeferredCalls: false,
  10620. eventTypeString: eventTypeString,
  10621. callbackfunc: callbackfunc,
  10622. handlerFunc: orientationChangeEventHandlerFunc,
  10623. useCapture: useCapture
  10624. };
  10625. JSEvents.registerOrRemoveHandler(eventHandler);
  10626. }),
  10627. fullscreenEnabled: (function() {
  10628. return document.fullscreenEnabled || document.mozFullScreenEnabled || document.webkitFullscreenEnabled || document.msFullscreenEnabled;
  10629. }),
  10630. fillFullscreenChangeEventData: (function(eventStruct, e) {
  10631. var fullscreenElement = document.fullscreenElement || document.mozFullScreenElement || document.webkitFullscreenElement || document.msFullscreenElement;
  10632. var isFullscreen = !!fullscreenElement;
  10633. HEAP32[eventStruct >> 2] = isFullscreen;
  10634. HEAP32[eventStruct + 4 >> 2] = JSEvents.fullscreenEnabled();
  10635. var reportedElement = isFullscreen ? fullscreenElement : JSEvents.previousFullscreenElement;
  10636. var nodeName = JSEvents.getNodeNameForTarget(reportedElement);
  10637. var id = reportedElement && reportedElement.id ? reportedElement.id : "";
  10638. stringToUTF8(nodeName, eventStruct + 8, 128);
  10639. stringToUTF8(id, eventStruct + 136, 128);
  10640. HEAP32[eventStruct + 264 >> 2] = reportedElement ? reportedElement.clientWidth : 0;
  10641. HEAP32[eventStruct + 268 >> 2] = reportedElement ? reportedElement.clientHeight : 0;
  10642. HEAP32[eventStruct + 272 >> 2] = screen.width;
  10643. HEAP32[eventStruct + 276 >> 2] = screen.height;
  10644. if (isFullscreen) {
  10645. JSEvents.previousFullscreenElement = fullscreenElement;
  10646. }
  10647. }),
  10648. registerFullscreenChangeEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10649. if (!JSEvents.fullscreenChangeEvent) JSEvents.fullscreenChangeEvent = _malloc(280);
  10650. if (!target) target = document; else target = JSEvents.findEventTarget(target);
  10651. var fullscreenChangeEventhandlerFunc = (function(event) {
  10652. var e = event || window.event;
  10653. var fullscreenChangeEvent = JSEvents.fullscreenChangeEvent;
  10654. JSEvents.fillFullscreenChangeEventData(fullscreenChangeEvent, e);
  10655. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, fullscreenChangeEvent, userData)) e.preventDefault();
  10656. });
  10657. var eventHandler = {
  10658. target: target,
  10659. allowsDeferredCalls: false,
  10660. eventTypeString: eventTypeString,
  10661. callbackfunc: callbackfunc,
  10662. handlerFunc: fullscreenChangeEventhandlerFunc,
  10663. useCapture: useCapture
  10664. };
  10665. JSEvents.registerOrRemoveHandler(eventHandler);
  10666. }),
  10667. resizeCanvasForFullscreen: (function(target, strategy) {
  10668. var restoreOldStyle = __registerRestoreOldStyle(target);
  10669. var cssWidth = strategy.softFullscreen ? window.innerWidth : screen.width;
  10670. var cssHeight = strategy.softFullscreen ? window.innerHeight : screen.height;
  10671. var rect = target.getBoundingClientRect();
  10672. var windowedCssWidth = rect.right - rect.left;
  10673. var windowedCssHeight = rect.bottom - rect.top;
  10674. var canvasSize = emscripten_get_canvas_element_size_js(target.id);
  10675. var windowedRttWidth = canvasSize[0];
  10676. var windowedRttHeight = canvasSize[1];
  10677. if (strategy.scaleMode == 3) {
  10678. __setLetterbox(target, (cssHeight - windowedCssHeight) / 2, (cssWidth - windowedCssWidth) / 2);
  10679. cssWidth = windowedCssWidth;
  10680. cssHeight = windowedCssHeight;
  10681. } else if (strategy.scaleMode == 2) {
  10682. if (cssWidth * windowedRttHeight < windowedRttWidth * cssHeight) {
  10683. var desiredCssHeight = windowedRttHeight * cssWidth / windowedRttWidth;
  10684. __setLetterbox(target, (cssHeight - desiredCssHeight) / 2, 0);
  10685. cssHeight = desiredCssHeight;
  10686. } else {
  10687. var desiredCssWidth = windowedRttWidth * cssHeight / windowedRttHeight;
  10688. __setLetterbox(target, 0, (cssWidth - desiredCssWidth) / 2);
  10689. cssWidth = desiredCssWidth;
  10690. }
  10691. }
  10692. if (!target.style.backgroundColor) target.style.backgroundColor = "black";
  10693. if (!document.body.style.backgroundColor) document.body.style.backgroundColor = "black";
  10694. target.style.width = cssWidth + "px";
  10695. target.style.height = cssHeight + "px";
  10696. if (strategy.filteringMode == 1) {
  10697. target.style.imageRendering = "optimizeSpeed";
  10698. target.style.imageRendering = "-moz-crisp-edges";
  10699. target.style.imageRendering = "-o-crisp-edges";
  10700. target.style.imageRendering = "-webkit-optimize-contrast";
  10701. target.style.imageRendering = "optimize-contrast";
  10702. target.style.imageRendering = "crisp-edges";
  10703. target.style.imageRendering = "pixelated";
  10704. }
  10705. var dpiScale = strategy.canvasResolutionScaleMode == 2 ? window.devicePixelRatio : 1;
  10706. if (strategy.canvasResolutionScaleMode != 0) {
  10707. var newWidth = cssWidth * dpiScale | 0;
  10708. var newHeight = cssHeight * dpiScale | 0;
  10709. if (!target.controlTransferredOffscreen) {
  10710. target.width = newWidth;
  10711. target.height = newHeight;
  10712. } else {
  10713. emscripten_set_canvas_element_size_js(target.id, newWidth, newHeight);
  10714. }
  10715. if (target.GLctxObject) target.GLctxObject.GLctx.viewport(0, 0, newWidth, newHeight);
  10716. }
  10717. return restoreOldStyle;
  10718. }),
  10719. requestFullscreen: (function(target, strategy) {
  10720. if (strategy.scaleMode != 0 || strategy.canvasResolutionScaleMode != 0) {
  10721. JSEvents.resizeCanvasForFullscreen(target, strategy);
  10722. }
  10723. if (target.requestFullscreen) {
  10724. target.requestFullscreen();
  10725. } else if (target.msRequestFullscreen) {
  10726. target.msRequestFullscreen();
  10727. } else if (target.mozRequestFullScreen) {
  10728. target.mozRequestFullScreen();
  10729. } else if (target.mozRequestFullscreen) {
  10730. target.mozRequestFullscreen();
  10731. } else if (target.webkitRequestFullscreen) {
  10732. target.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT);
  10733. } else {
  10734. if (typeof JSEvents.fullscreenEnabled() === "undefined") {
  10735. return -1;
  10736. } else {
  10737. return -3;
  10738. }
  10739. }
  10740. if (strategy.canvasResizedCallback) {
  10741. Module["dynCall_iiii"](strategy.canvasResizedCallback, 37, 0, strategy.canvasResizedCallbackUserData);
  10742. }
  10743. return 0;
  10744. }),
  10745. fillPointerlockChangeEventData: (function(eventStruct, e) {
  10746. var pointerLockElement = document.pointerLockElement || document.mozPointerLockElement || document.webkitPointerLockElement || document.msPointerLockElement;
  10747. var isPointerlocked = !!pointerLockElement;
  10748. HEAP32[eventStruct >> 2] = isPointerlocked;
  10749. var nodeName = JSEvents.getNodeNameForTarget(pointerLockElement);
  10750. var id = pointerLockElement && pointerLockElement.id ? pointerLockElement.id : "";
  10751. stringToUTF8(nodeName, eventStruct + 4, 128);
  10752. stringToUTF8(id, eventStruct + 132, 128);
  10753. }),
  10754. registerPointerlockChangeEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10755. if (!JSEvents.pointerlockChangeEvent) JSEvents.pointerlockChangeEvent = _malloc(260);
  10756. if (!target) target = document; else target = JSEvents.findEventTarget(target);
  10757. var pointerlockChangeEventHandlerFunc = (function(event) {
  10758. var e = event || window.event;
  10759. var pointerlockChangeEvent = JSEvents.pointerlockChangeEvent;
  10760. JSEvents.fillPointerlockChangeEventData(pointerlockChangeEvent, e);
  10761. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, pointerlockChangeEvent, userData)) e.preventDefault();
  10762. });
  10763. var eventHandler = {
  10764. target: target,
  10765. allowsDeferredCalls: false,
  10766. eventTypeString: eventTypeString,
  10767. callbackfunc: callbackfunc,
  10768. handlerFunc: pointerlockChangeEventHandlerFunc,
  10769. useCapture: useCapture
  10770. };
  10771. JSEvents.registerOrRemoveHandler(eventHandler);
  10772. }),
  10773. registerPointerlockErrorEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) {
  10774. if (!target) target = document; else target = JSEvents.findEventTarget(target);
  10775. var pointerlockErrorEventHandlerFunc = (function(event) {
  10776. var e = event || window.event;
  10777. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, 0, userData)) e.preventDefault();
  10778. });
  10779. var eventHandler = {
  10780. target: target,
  10781. allowsDeferredCalls: false,
  10782. eventTypeString: eventTypeString,
  10783. callbackfunc: callbackfunc,
  10784. handlerFunc: pointerlockErrorEventHandlerFunc,
  10785. useCapture: useCapture
  10786. };
  10787. JSEvents.registerOrRemoveHandler(eventHandler);
  10788. }),
  10789. requestPointerLock: (function(target) {
  10790. if (target.requestPointerLock) {
  10791. target.requestPointerLock();
  10792. } else if (target.mozRequestPointerLock) {
  10793. target.mozRequestPointerLock();
  10794. } else if (target.webkitRequestPointerLock) {
  10795. target.webkitRequestPointerLock();
  10796. } else if (target.msRequestPointerLock) {
  10797. target.msRequestPointerLock();
  10798. } else {
  10799. if (document.body.requestPointerLock || document.body.mozRequestPointerLock || document.body.webkitRequestPointerLock || document.body.msRequestPointerLock) {
  10800. return -3;
  10801. } else {
  10802. return -1;
  10803. }
  10804. }
  10805. return 0;
  10806. }),
  10807. fillVisibilityChangeEventData: (function(eventStruct, e) {
  10808. var visibilityStates = [ "hidden", "visible", "prerender", "unloaded" ];
  10809. var visibilityState = visibilityStates.indexOf(document.visibilityState);
  10810. HEAP32[eventStruct >> 2] = document.hidden;
  10811. HEAP32[eventStruct + 4 >> 2] = visibilityState;
  10812. }),
  10813. registerVisibilityChangeEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10814. if (!JSEvents.visibilityChangeEvent) JSEvents.visibilityChangeEvent = _malloc(8);
  10815. if (!target) target = document; else target = JSEvents.findEventTarget(target);
  10816. var visibilityChangeEventHandlerFunc = (function(event) {
  10817. var e = event || window.event;
  10818. var visibilityChangeEvent = JSEvents.visibilityChangeEvent;
  10819. JSEvents.fillVisibilityChangeEventData(visibilityChangeEvent, e);
  10820. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, visibilityChangeEvent, userData)) e.preventDefault();
  10821. });
  10822. var eventHandler = {
  10823. target: target,
  10824. allowsDeferredCalls: false,
  10825. eventTypeString: eventTypeString,
  10826. callbackfunc: callbackfunc,
  10827. handlerFunc: visibilityChangeEventHandlerFunc,
  10828. useCapture: useCapture
  10829. };
  10830. JSEvents.registerOrRemoveHandler(eventHandler);
  10831. }),
  10832. registerTouchEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10833. if (!JSEvents.touchEvent) JSEvents.touchEvent = _malloc(1684);
  10834. target = JSEvents.findEventTarget(target);
  10835. var touchEventHandlerFunc = (function(event) {
  10836. var e = event || window.event;
  10837. var touches = {};
  10838. for (var i = 0; i < e.touches.length; ++i) {
  10839. var touch = e.touches[i];
  10840. touches[touch.identifier] = touch;
  10841. }
  10842. for (var i = 0; i < e.changedTouches.length; ++i) {
  10843. var touch = e.changedTouches[i];
  10844. touches[touch.identifier] = touch;
  10845. touch.changed = true;
  10846. }
  10847. for (var i = 0; i < e.targetTouches.length; ++i) {
  10848. var touch = e.targetTouches[i];
  10849. touches[touch.identifier].onTarget = true;
  10850. }
  10851. var touchEvent = JSEvents.touchEvent;
  10852. var ptr = touchEvent;
  10853. HEAP32[ptr + 4 >> 2] = e.ctrlKey;
  10854. HEAP32[ptr + 8 >> 2] = e.shiftKey;
  10855. HEAP32[ptr + 12 >> 2] = e.altKey;
  10856. HEAP32[ptr + 16 >> 2] = e.metaKey;
  10857. ptr += 20;
  10858. var canvasRect = Module["canvas"] ? Module["canvas"].getBoundingClientRect() : undefined;
  10859. var targetRect = JSEvents.getBoundingClientRectOrZeros(target);
  10860. var numTouches = 0;
  10861. for (var i in touches) {
  10862. var t = touches[i];
  10863. HEAP32[ptr >> 2] = t.identifier;
  10864. HEAP32[ptr + 4 >> 2] = t.screenX;
  10865. HEAP32[ptr + 8 >> 2] = t.screenY;
  10866. HEAP32[ptr + 12 >> 2] = t.clientX;
  10867. HEAP32[ptr + 16 >> 2] = t.clientY;
  10868. HEAP32[ptr + 20 >> 2] = t.pageX;
  10869. HEAP32[ptr + 24 >> 2] = t.pageY;
  10870. HEAP32[ptr + 28 >> 2] = t.changed;
  10871. HEAP32[ptr + 32 >> 2] = t.onTarget;
  10872. if (canvasRect) {
  10873. HEAP32[ptr + 44 >> 2] = t.clientX - canvasRect.left;
  10874. HEAP32[ptr + 48 >> 2] = t.clientY - canvasRect.top;
  10875. } else {
  10876. HEAP32[ptr + 44 >> 2] = 0;
  10877. HEAP32[ptr + 48 >> 2] = 0;
  10878. }
  10879. HEAP32[ptr + 36 >> 2] = t.clientX - targetRect.left;
  10880. HEAP32[ptr + 40 >> 2] = t.clientY - targetRect.top;
  10881. ptr += 52;
  10882. if (++numTouches >= 32) {
  10883. break;
  10884. }
  10885. }
  10886. HEAP32[touchEvent >> 2] = numTouches;
  10887. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, touchEvent, userData)) e.preventDefault();
  10888. });
  10889. var eventHandler = {
  10890. target: target,
  10891. allowsDeferredCalls: eventTypeString == "touchstart" || eventTypeString == "touchend",
  10892. eventTypeString: eventTypeString,
  10893. callbackfunc: callbackfunc,
  10894. handlerFunc: touchEventHandlerFunc,
  10895. useCapture: useCapture
  10896. };
  10897. JSEvents.registerOrRemoveHandler(eventHandler);
  10898. }),
  10899. fillGamepadEventData: (function(eventStruct, e) {
  10900. HEAPF64[eventStruct >> 3] = e.timestamp;
  10901. for (var i = 0; i < e.axes.length; ++i) {
  10902. HEAPF64[eventStruct + i * 8 + 16 >> 3] = e.axes[i];
  10903. }
  10904. for (var i = 0; i < e.buttons.length; ++i) {
  10905. if (typeof e.buttons[i] === "object") {
  10906. HEAPF64[eventStruct + i * 8 + 528 >> 3] = e.buttons[i].value;
  10907. } else {
  10908. HEAPF64[eventStruct + i * 8 + 528 >> 3] = e.buttons[i];
  10909. }
  10910. }
  10911. for (var i = 0; i < e.buttons.length; ++i) {
  10912. if (typeof e.buttons[i] === "object") {
  10913. HEAP32[eventStruct + i * 4 + 1040 >> 2] = e.buttons[i].pressed;
  10914. } else {
  10915. HEAP32[eventStruct + i * 4 + 1040 >> 2] = e.buttons[i] == 1;
  10916. }
  10917. }
  10918. HEAP32[eventStruct + 1296 >> 2] = e.connected;
  10919. HEAP32[eventStruct + 1300 >> 2] = e.index;
  10920. HEAP32[eventStruct + 8 >> 2] = e.axes.length;
  10921. HEAP32[eventStruct + 12 >> 2] = e.buttons.length;
  10922. stringToUTF8(e.id, eventStruct + 1304, 64);
  10923. stringToUTF8(e.mapping, eventStruct + 1368, 64);
  10924. }),
  10925. registerGamepadEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10926. if (!JSEvents.gamepadEvent) JSEvents.gamepadEvent = _malloc(1432);
  10927. var gamepadEventHandlerFunc = (function(event) {
  10928. var e = event || window.event;
  10929. var gamepadEvent = JSEvents.gamepadEvent;
  10930. JSEvents.fillGamepadEventData(gamepadEvent, e.gamepad);
  10931. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, gamepadEvent, userData)) e.preventDefault();
  10932. });
  10933. var eventHandler = {
  10934. target: JSEvents.findEventTarget(target),
  10935. allowsDeferredCalls: true,
  10936. eventTypeString: eventTypeString,
  10937. callbackfunc: callbackfunc,
  10938. handlerFunc: gamepadEventHandlerFunc,
  10939. useCapture: useCapture
  10940. };
  10941. JSEvents.registerOrRemoveHandler(eventHandler);
  10942. }),
  10943. registerBeforeUnloadEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) {
  10944. var beforeUnloadEventHandlerFunc = (function(event) {
  10945. var e = event || window.event;
  10946. var confirmationMessage = Module["dynCall_iiii"](callbackfunc, eventTypeId, 0, userData);
  10947. if (confirmationMessage) {
  10948. confirmationMessage = Pointer_stringify(confirmationMessage);
  10949. }
  10950. if (confirmationMessage) {
  10951. e.preventDefault();
  10952. e.returnValue = confirmationMessage;
  10953. return confirmationMessage;
  10954. }
  10955. });
  10956. var eventHandler = {
  10957. target: JSEvents.findEventTarget(target),
  10958. allowsDeferredCalls: false,
  10959. eventTypeString: eventTypeString,
  10960. callbackfunc: callbackfunc,
  10961. handlerFunc: beforeUnloadEventHandlerFunc,
  10962. useCapture: useCapture
  10963. };
  10964. JSEvents.registerOrRemoveHandler(eventHandler);
  10965. }),
  10966. battery: (function() {
  10967. return navigator.battery || navigator.mozBattery || navigator.webkitBattery;
  10968. }),
  10969. fillBatteryEventData: (function(eventStruct, e) {
  10970. HEAPF64[eventStruct >> 3] = e.chargingTime;
  10971. HEAPF64[eventStruct + 8 >> 3] = e.dischargingTime;
  10972. HEAPF64[eventStruct + 16 >> 3] = e.level;
  10973. HEAP32[eventStruct + 24 >> 2] = e.charging;
  10974. }),
  10975. registerBatteryEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10976. if (!JSEvents.batteryEvent) JSEvents.batteryEvent = _malloc(32);
  10977. var batteryEventHandlerFunc = (function(event) {
  10978. var e = event || window.event;
  10979. var batteryEvent = JSEvents.batteryEvent;
  10980. JSEvents.fillBatteryEventData(batteryEvent, JSEvents.battery());
  10981. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, batteryEvent, userData)) e.preventDefault();
  10982. });
  10983. var eventHandler = {
  10984. target: JSEvents.findEventTarget(target),
  10985. allowsDeferredCalls: false,
  10986. eventTypeString: eventTypeString,
  10987. callbackfunc: callbackfunc,
  10988. handlerFunc: batteryEventHandlerFunc,
  10989. useCapture: useCapture
  10990. };
  10991. JSEvents.registerOrRemoveHandler(eventHandler);
  10992. }),
  10993. registerWebGlEventCallback: (function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString, targetThread) {
  10994. if (!target) target = Module["canvas"];
  10995. var webGlEventHandlerFunc = (function(event) {
  10996. var e = event || window.event;
  10997. if (Module["dynCall_iiii"](callbackfunc, eventTypeId, 0, userData)) e.preventDefault();
  10998. });
  10999. var eventHandler = {
  11000. target: JSEvents.findEventTarget(target),
  11001. allowsDeferredCalls: false,
  11002. eventTypeString: eventTypeString,
  11003. callbackfunc: callbackfunc,
  11004. handlerFunc: webGlEventHandlerFunc,
  11005. useCapture: useCapture
  11006. };
  11007. JSEvents.registerOrRemoveHandler(eventHandler);
  11008. })
  11009. };
  11010. var __currentFullscreenStrategy = {};
  11011. function _emscripten_exit_fullscreen() {
  11012. if (typeof JSEvents.fullscreenEnabled() === "undefined") return -1;
  11013. JSEvents.removeDeferredCalls(JSEvents.requestFullscreen);
  11014. if (document.exitFullscreen) {
  11015. document.exitFullscreen();
  11016. } else if (document.msExitFullscreen) {
  11017. document.msExitFullscreen();
  11018. } else if (document.mozCancelFullScreen) {
  11019. document.mozCancelFullScreen();
  11020. } else if (document.webkitExitFullscreen) {
  11021. document.webkitExitFullscreen();
  11022. } else {
  11023. return -1;
  11024. }
  11025. if (__currentFullscreenStrategy.canvasResizedCallback) {
  11026. Module["dynCall_iiii"](__currentFullscreenStrategy.canvasResizedCallback, 37, 0, __currentFullscreenStrategy.canvasResizedCallbackUserData);
  11027. }
  11028. return 0;
  11029. }
  11030. function _emscripten_exit_pointerlock() {
  11031. JSEvents.removeDeferredCalls(JSEvents.requestPointerLock);
  11032. if (document.exitPointerLock) {
  11033. document.exitPointerLock();
  11034. } else if (document.msExitPointerLock) {
  11035. document.msExitPointerLock();
  11036. } else if (document.mozExitPointerLock) {
  11037. document.mozExitPointerLock();
  11038. } else if (document.webkitExitPointerLock) {
  11039. document.webkitExitPointerLock();
  11040. } else {
  11041. return -1;
  11042. }
  11043. return 0;
  11044. }
  11045. function _emscripten_get_fullscreen_status(fullscreenStatus) {
  11046. if (typeof JSEvents.fullscreenEnabled() === "undefined") return -1;
  11047. JSEvents.fillFullscreenChangeEventData(fullscreenStatus);
  11048. return 0;
  11049. }
  11050. function __emscripten_sample_gamepad_data() {
  11051. if (!JSEvents.numGamepadsConnected) return;
  11052. if (Browser.mainLoop.currentFrameNumber !== JSEvents.lastGamepadStateFrame || !Browser.mainLoop.currentFrameNumber) {
  11053. JSEvents.lastGamepadState = navigator.getGamepads ? navigator.getGamepads() : navigator.webkitGetGamepads ? navigator.webkitGetGamepads : null;
  11054. JSEvents.lastGamepadStateFrame = Browser.mainLoop.currentFrameNumber;
  11055. }
  11056. }
  11057. function _emscripten_get_gamepad_status(index, gamepadState) {
  11058. __emscripten_sample_gamepad_data();
  11059. if (!JSEvents.lastGamepadState) return -1;
  11060. if (index < 0 || index >= JSEvents.lastGamepadState.length) return -5;
  11061. if (!JSEvents.lastGamepadState[index]) return -7;
  11062. JSEvents.fillGamepadEventData(gamepadState, JSEvents.lastGamepadState[index]);
  11063. return 0;
  11064. }
  11065. function _emscripten_get_main_loop_timing(mode, value) {
  11066. if (mode) HEAP32[mode >> 2] = Browser.mainLoop.timingMode;
  11067. if (value) HEAP32[value >> 2] = Browser.mainLoop.timingValue;
  11068. }
  11069. function _emscripten_get_num_gamepads() {
  11070. if (!JSEvents.numGamepadsConnected) return 0;
  11071. __emscripten_sample_gamepad_data();
  11072. if (!JSEvents.lastGamepadState) return -1;
  11073. return JSEvents.lastGamepadState.length;
  11074. }
  11075. function _emscripten_has_threading_support() {
  11076. return 0;
  11077. }
  11078. function _emscripten_html5_remove_all_event_listeners() {
  11079. JSEvents.removeAllEventListeners();
  11080. }
  11081. function _emscripten_is_webgl_context_lost(target) {
  11082. if (!Module.ctx) return true;
  11083. return Module.ctx.isContextLost();
  11084. }
  11085. function __reallyNegative(x) {
  11086. return x < 0 || x === 0 && 1 / x === -Infinity;
  11087. }
  11088. function __formatString(format, varargs) {
  11089. assert((varargs & 3) === 0);
  11090. var textIndex = format;
  11091. var argIndex = varargs;
  11092. function prepVararg(ptr, type) {
  11093. if (type === "double" || type === "i64") {
  11094. if (ptr & 7) {
  11095. assert((ptr & 7) === 4);
  11096. ptr += 4;
  11097. }
  11098. } else {
  11099. assert((ptr & 3) === 0);
  11100. }
  11101. return ptr;
  11102. }
  11103. function getNextArg(type) {
  11104. var ret;
  11105. argIndex = prepVararg(argIndex, type);
  11106. if (type === "double") {
  11107. ret = HEAPF64[argIndex >> 3];
  11108. argIndex += 8;
  11109. } else if (type == "i64") {
  11110. ret = [ HEAP32[argIndex >> 2], HEAP32[argIndex + 4 >> 2] ];
  11111. argIndex += 8;
  11112. } else {
  11113. assert((argIndex & 3) === 0);
  11114. type = "i32";
  11115. ret = HEAP32[argIndex >> 2];
  11116. argIndex += 4;
  11117. }
  11118. return ret;
  11119. }
  11120. var ret = [];
  11121. var curr, next, currArg;
  11122. while (1) {
  11123. var startTextIndex = textIndex;
  11124. curr = HEAP8[textIndex >> 0];
  11125. if (curr === 0) break;
  11126. next = HEAP8[textIndex + 1 >> 0];
  11127. if (curr == 37) {
  11128. var flagAlwaysSigned = false;
  11129. var flagLeftAlign = false;
  11130. var flagAlternative = false;
  11131. var flagZeroPad = false;
  11132. var flagPadSign = false;
  11133. flagsLoop : while (1) {
  11134. switch (next) {
  11135. case 43:
  11136. flagAlwaysSigned = true;
  11137. break;
  11138. case 45:
  11139. flagLeftAlign = true;
  11140. break;
  11141. case 35:
  11142. flagAlternative = true;
  11143. break;
  11144. case 48:
  11145. if (flagZeroPad) {
  11146. break flagsLoop;
  11147. } else {
  11148. flagZeroPad = true;
  11149. break;
  11150. }
  11151. case 32:
  11152. flagPadSign = true;
  11153. break;
  11154. default:
  11155. break flagsLoop;
  11156. }
  11157. textIndex++;
  11158. next = HEAP8[textIndex + 1 >> 0];
  11159. }
  11160. var width = 0;
  11161. if (next == 42) {
  11162. width = getNextArg("i32");
  11163. textIndex++;
  11164. next = HEAP8[textIndex + 1 >> 0];
  11165. } else {
  11166. while (next >= 48 && next <= 57) {
  11167. width = width * 10 + (next - 48);
  11168. textIndex++;
  11169. next = HEAP8[textIndex + 1 >> 0];
  11170. }
  11171. }
  11172. var precisionSet = false, precision = -1;
  11173. if (next == 46) {
  11174. precision = 0;
  11175. precisionSet = true;
  11176. textIndex++;
  11177. next = HEAP8[textIndex + 1 >> 0];
  11178. if (next == 42) {
  11179. precision = getNextArg("i32");
  11180. textIndex++;
  11181. } else {
  11182. while (1) {
  11183. var precisionChr = HEAP8[textIndex + 1 >> 0];
  11184. if (precisionChr < 48 || precisionChr > 57) break;
  11185. precision = precision * 10 + (precisionChr - 48);
  11186. textIndex++;
  11187. }
  11188. }
  11189. next = HEAP8[textIndex + 1 >> 0];
  11190. }
  11191. if (precision < 0) {
  11192. precision = 6;
  11193. precisionSet = false;
  11194. }
  11195. var argSize;
  11196. switch (String.fromCharCode(next)) {
  11197. case "h":
  11198. var nextNext = HEAP8[textIndex + 2 >> 0];
  11199. if (nextNext == 104) {
  11200. textIndex++;
  11201. argSize = 1;
  11202. } else {
  11203. argSize = 2;
  11204. }
  11205. break;
  11206. case "l":
  11207. var nextNext = HEAP8[textIndex + 2 >> 0];
  11208. if (nextNext == 108) {
  11209. textIndex++;
  11210. argSize = 8;
  11211. } else {
  11212. argSize = 4;
  11213. }
  11214. break;
  11215. case "L":
  11216. case "q":
  11217. case "j":
  11218. argSize = 8;
  11219. break;
  11220. case "z":
  11221. case "t":
  11222. case "I":
  11223. argSize = 4;
  11224. break;
  11225. default:
  11226. argSize = null;
  11227. }
  11228. if (argSize) textIndex++;
  11229. next = HEAP8[textIndex + 1 >> 0];
  11230. switch (String.fromCharCode(next)) {
  11231. case "d":
  11232. case "i":
  11233. case "u":
  11234. case "o":
  11235. case "x":
  11236. case "X":
  11237. case "p":
  11238. {
  11239. var signed = next == 100 || next == 105;
  11240. argSize = argSize || 4;
  11241. currArg = getNextArg("i" + argSize * 8);
  11242. var origArg = currArg;
  11243. var argText;
  11244. if (argSize == 8) {
  11245. currArg = makeBigInt(currArg[0], currArg[1], next == 117);
  11246. }
  11247. if (argSize <= 4) {
  11248. var limit = Math.pow(256, argSize) - 1;
  11249. currArg = (signed ? reSign : unSign)(currArg & limit, argSize * 8);
  11250. }
  11251. var currAbsArg = Math.abs(currArg);
  11252. var prefix = "";
  11253. if (next == 100 || next == 105) {
  11254. if (argSize == 8 && typeof i64Math === "object") argText = i64Math.stringify(origArg[0], origArg[1], null); else argText = reSign(currArg, 8 * argSize, 1).toString(10);
  11255. } else if (next == 117) {
  11256. if (argSize == 8 && typeof i64Math === "object") argText = i64Math.stringify(origArg[0], origArg[1], true); else argText = unSign(currArg, 8 * argSize, 1).toString(10);
  11257. currArg = Math.abs(currArg);
  11258. } else if (next == 111) {
  11259. argText = (flagAlternative ? "0" : "") + currAbsArg.toString(8);
  11260. } else if (next == 120 || next == 88) {
  11261. prefix = flagAlternative && currArg != 0 ? "0x" : "";
  11262. if (argSize == 8 && typeof i64Math === "object") {
  11263. if (origArg[1]) {
  11264. argText = (origArg[1] >>> 0).toString(16);
  11265. var lower = (origArg[0] >>> 0).toString(16);
  11266. while (lower.length < 8) lower = "0" + lower;
  11267. argText += lower;
  11268. } else {
  11269. argText = (origArg[0] >>> 0).toString(16);
  11270. }
  11271. } else if (currArg < 0) {
  11272. currArg = -currArg;
  11273. argText = (currAbsArg - 1).toString(16);
  11274. var buffer = [];
  11275. for (var i = 0; i < argText.length; i++) {
  11276. buffer.push((15 - parseInt(argText[i], 16)).toString(16));
  11277. }
  11278. argText = buffer.join("");
  11279. while (argText.length < argSize * 2) argText = "f" + argText;
  11280. } else {
  11281. argText = currAbsArg.toString(16);
  11282. }
  11283. if (next == 88) {
  11284. prefix = prefix.toUpperCase();
  11285. argText = argText.toUpperCase();
  11286. }
  11287. } else if (next == 112) {
  11288. if (currAbsArg === 0) {
  11289. argText = "(nil)";
  11290. } else {
  11291. prefix = "0x";
  11292. argText = currAbsArg.toString(16);
  11293. }
  11294. }
  11295. if (precisionSet) {
  11296. while (argText.length < precision) {
  11297. argText = "0" + argText;
  11298. }
  11299. }
  11300. if (currArg >= 0) {
  11301. if (flagAlwaysSigned) {
  11302. prefix = "+" + prefix;
  11303. } else if (flagPadSign) {
  11304. prefix = " " + prefix;
  11305. }
  11306. }
  11307. if (argText.charAt(0) == "-") {
  11308. prefix = "-" + prefix;
  11309. argText = argText.substr(1);
  11310. }
  11311. while (prefix.length + argText.length < width) {
  11312. if (flagLeftAlign) {
  11313. argText += " ";
  11314. } else {
  11315. if (flagZeroPad) {
  11316. argText = "0" + argText;
  11317. } else {
  11318. prefix = " " + prefix;
  11319. }
  11320. }
  11321. }
  11322. argText = prefix + argText;
  11323. argText.split("").forEach((function(chr) {
  11324. ret.push(chr.charCodeAt(0));
  11325. }));
  11326. break;
  11327. }
  11328. case "f":
  11329. case "F":
  11330. case "e":
  11331. case "E":
  11332. case "g":
  11333. case "G":
  11334. {
  11335. currArg = getNextArg("double");
  11336. var argText;
  11337. if (isNaN(currArg)) {
  11338. argText = "nan";
  11339. flagZeroPad = false;
  11340. } else if (!isFinite(currArg)) {
  11341. argText = (currArg < 0 ? "-" : "") + "inf";
  11342. flagZeroPad = false;
  11343. } else {
  11344. var isGeneral = false;
  11345. var effectivePrecision = Math.min(precision, 20);
  11346. if (next == 103 || next == 71) {
  11347. isGeneral = true;
  11348. precision = precision || 1;
  11349. var exponent = parseInt(currArg.toExponential(effectivePrecision).split("e")[1], 10);
  11350. if (precision > exponent && exponent >= -4) {
  11351. next = (next == 103 ? "f" : "F").charCodeAt(0);
  11352. precision -= exponent + 1;
  11353. } else {
  11354. next = (next == 103 ? "e" : "E").charCodeAt(0);
  11355. precision--;
  11356. }
  11357. effectivePrecision = Math.min(precision, 20);
  11358. }
  11359. if (next == 101 || next == 69) {
  11360. argText = currArg.toExponential(effectivePrecision);
  11361. if (/[eE][-+]\d$/.test(argText)) {
  11362. argText = argText.slice(0, -1) + "0" + argText.slice(-1);
  11363. }
  11364. } else if (next == 102 || next == 70) {
  11365. argText = currArg.toFixed(effectivePrecision);
  11366. if (currArg === 0 && __reallyNegative(currArg)) {
  11367. argText = "-" + argText;
  11368. }
  11369. }
  11370. var parts = argText.split("e");
  11371. if (isGeneral && !flagAlternative) {
  11372. while (parts[0].length > 1 && parts[0].indexOf(".") != -1 && (parts[0].slice(-1) == "0" || parts[0].slice(-1) == ".")) {
  11373. parts[0] = parts[0].slice(0, -1);
  11374. }
  11375. } else {
  11376. if (flagAlternative && argText.indexOf(".") == -1) parts[0] += ".";
  11377. while (precision > effectivePrecision++) parts[0] += "0";
  11378. }
  11379. argText = parts[0] + (parts.length > 1 ? "e" + parts[1] : "");
  11380. if (next == 69) argText = argText.toUpperCase();
  11381. if (currArg >= 0) {
  11382. if (flagAlwaysSigned) {
  11383. argText = "+" + argText;
  11384. } else if (flagPadSign) {
  11385. argText = " " + argText;
  11386. }
  11387. }
  11388. }
  11389. while (argText.length < width) {
  11390. if (flagLeftAlign) {
  11391. argText += " ";
  11392. } else {
  11393. if (flagZeroPad && (argText[0] == "-" || argText[0] == "+")) {
  11394. argText = argText[0] + "0" + argText.slice(1);
  11395. } else {
  11396. argText = (flagZeroPad ? "0" : " ") + argText;
  11397. }
  11398. }
  11399. }
  11400. if (next < 97) argText = argText.toUpperCase();
  11401. argText.split("").forEach((function(chr) {
  11402. ret.push(chr.charCodeAt(0));
  11403. }));
  11404. break;
  11405. }
  11406. case "s":
  11407. {
  11408. var arg = getNextArg("i8*");
  11409. var argLength = arg ? _strlen(arg) : "(null)".length;
  11410. if (precisionSet) argLength = Math.min(argLength, precision);
  11411. if (!flagLeftAlign) {
  11412. while (argLength < width--) {
  11413. ret.push(32);
  11414. }
  11415. }
  11416. if (arg) {
  11417. for (var i = 0; i < argLength; i++) {
  11418. ret.push(HEAPU8[arg++ >> 0]);
  11419. }
  11420. } else {
  11421. ret = ret.concat(intArrayFromString("(null)".substr(0, argLength), true));
  11422. }
  11423. if (flagLeftAlign) {
  11424. while (argLength < width--) {
  11425. ret.push(32);
  11426. }
  11427. }
  11428. break;
  11429. }
  11430. case "c":
  11431. {
  11432. if (flagLeftAlign) ret.push(getNextArg("i8"));
  11433. while (--width > 0) {
  11434. ret.push(32);
  11435. }
  11436. if (!flagLeftAlign) ret.push(getNextArg("i8"));
  11437. break;
  11438. }
  11439. case "n":
  11440. {
  11441. var ptr = getNextArg("i32*");
  11442. HEAP32[ptr >> 2] = ret.length;
  11443. break;
  11444. }
  11445. case "%":
  11446. {
  11447. ret.push(curr);
  11448. break;
  11449. }
  11450. default:
  11451. {
  11452. for (var i = startTextIndex; i < textIndex + 2; i++) {
  11453. ret.push(HEAP8[i >> 0]);
  11454. }
  11455. }
  11456. }
  11457. textIndex += 2;
  11458. } else {
  11459. ret.push(curr);
  11460. textIndex += 1;
  11461. }
  11462. }
  11463. return ret;
  11464. }
  11465. function __emscripten_traverse_stack(args) {
  11466. if (!args || !args.callee || !args.callee.name) {
  11467. return [ null, "", "" ];
  11468. }
  11469. var funstr = args.callee.toString();
  11470. var funcname = args.callee.name;
  11471. var str = "(";
  11472. var first = true;
  11473. for (var i in args) {
  11474. var a = args[i];
  11475. if (!first) {
  11476. str += ", ";
  11477. }
  11478. first = false;
  11479. if (typeof a === "number" || typeof a === "string") {
  11480. str += a;
  11481. } else {
  11482. str += "(" + typeof a + ")";
  11483. }
  11484. }
  11485. str += ")";
  11486. var caller = args.callee.caller;
  11487. args = caller ? caller.arguments : [];
  11488. if (first) str = "";
  11489. return [ args, funcname, str ];
  11490. }
  11491. function _emscripten_get_callstack_js(flags) {
  11492. var callstack = jsStackTrace();
  11493. var iThisFunc = callstack.lastIndexOf("_emscripten_log");
  11494. var iThisFunc2 = callstack.lastIndexOf("_emscripten_get_callstack");
  11495. var iNextLine = callstack.indexOf("\n", Math.max(iThisFunc, iThisFunc2)) + 1;
  11496. callstack = callstack.slice(iNextLine);
  11497. if (flags & 8 && typeof emscripten_source_map === "undefined") {
  11498. warnOnce('Source map information is not available, emscripten_log with EM_LOG_C_STACK will be ignored. Build with "--pre-js $EMSCRIPTEN/src/emscripten-source-map.min.js" linker flag to add source map loading to code.');
  11499. flags ^= 8;
  11500. flags |= 16;
  11501. }
  11502. var stack_args = null;
  11503. if (flags & 128) {
  11504. stack_args = __emscripten_traverse_stack(arguments);
  11505. while (stack_args[1].indexOf("_emscripten_") >= 0) stack_args = __emscripten_traverse_stack(stack_args[0]);
  11506. }
  11507. var lines = callstack.split("\n");
  11508. callstack = "";
  11509. var newFirefoxRe = new RegExp("\\s*(.*?)@(.*?):([0-9]+):([0-9]+)");
  11510. var firefoxRe = new RegExp("\\s*(.*?)@(.*):(.*)(:(.*))?");
  11511. var chromeRe = new RegExp("\\s*at (.*?) \\((.*):(.*):(.*)\\)");
  11512. for (var l in lines) {
  11513. var line = lines[l];
  11514. var jsSymbolName = "";
  11515. var file = "";
  11516. var lineno = 0;
  11517. var column = 0;
  11518. var parts = chromeRe.exec(line);
  11519. if (parts && parts.length == 5) {
  11520. jsSymbolName = parts[1];
  11521. file = parts[2];
  11522. lineno = parts[3];
  11523. column = parts[4];
  11524. } else {
  11525. parts = newFirefoxRe.exec(line);
  11526. if (!parts) parts = firefoxRe.exec(line);
  11527. if (parts && parts.length >= 4) {
  11528. jsSymbolName = parts[1];
  11529. file = parts[2];
  11530. lineno = parts[3];
  11531. column = parts[4] | 0;
  11532. } else {
  11533. callstack += line + "\n";
  11534. continue;
  11535. }
  11536. }
  11537. var cSymbolName = flags & 32 ? demangle(jsSymbolName) : jsSymbolName;
  11538. if (!cSymbolName) {
  11539. cSymbolName = jsSymbolName;
  11540. }
  11541. var haveSourceMap = false;
  11542. if (flags & 8) {
  11543. var orig = emscripten_source_map.originalPositionFor({
  11544. line: lineno,
  11545. column: column
  11546. });
  11547. haveSourceMap = orig && orig.source;
  11548. if (haveSourceMap) {
  11549. if (flags & 64) {
  11550. orig.source = orig.source.substring(orig.source.replace(/\\/g, "/").lastIndexOf("/") + 1);
  11551. }
  11552. callstack += " at " + cSymbolName + " (" + orig.source + ":" + orig.line + ":" + orig.column + ")\n";
  11553. }
  11554. }
  11555. if (flags & 16 || !haveSourceMap) {
  11556. if (flags & 64) {
  11557. file = file.substring(file.replace(/\\/g, "/").lastIndexOf("/") + 1);
  11558. }
  11559. callstack += (haveSourceMap ? " = " + jsSymbolName : " at " + cSymbolName) + " (" + file + ":" + lineno + ":" + column + ")\n";
  11560. }
  11561. if (flags & 128 && stack_args[0]) {
  11562. if (stack_args[1] == jsSymbolName && stack_args[2].length > 0) {
  11563. callstack = callstack.replace(/\s+$/, "");
  11564. callstack += " with values: " + stack_args[1] + stack_args[2] + "\n";
  11565. }
  11566. stack_args = __emscripten_traverse_stack(stack_args[0]);
  11567. }
  11568. }
  11569. callstack = callstack.replace(/\s+$/, "");
  11570. return callstack;
  11571. }
  11572. function _emscripten_log_js(flags, str) {
  11573. if (flags & 24) {
  11574. str = str.replace(/\s+$/, "");
  11575. str += (str.length > 0 ? "\n" : "") + _emscripten_get_callstack_js(flags);
  11576. }
  11577. if (flags & 1) {
  11578. if (flags & 4) {
  11579. console.error(str);
  11580. } else if (flags & 2) {
  11581. console.warn(str);
  11582. } else {
  11583. console.log(str);
  11584. }
  11585. } else if (flags & 6) {
  11586. err(str);
  11587. } else {
  11588. out(str);
  11589. }
  11590. }
  11591. function _emscripten_log(flags, varargs) {
  11592. var format = HEAP32[varargs >> 2];
  11593. varargs += 4;
  11594. var str = "";
  11595. if (format) {
  11596. var result = __formatString(format, varargs);
  11597. for (var i = 0; i < result.length; ++i) {
  11598. str += String.fromCharCode(result[i]);
  11599. }
  11600. }
  11601. _emscripten_log_js(flags, str);
  11602. }
  11603. function _longjmp(env, value) {
  11604. Module["setThrew"](env, value || 1);
  11605. throw "longjmp";
  11606. }
  11607. function _emscripten_longjmp(env, value) {
  11608. _longjmp(env, value);
  11609. }
  11610. function _emscripten_num_logical_cores() {
  11611. return 1;
  11612. }
  11613. function __setLetterbox(element, topBottom, leftRight) {
  11614. if (JSEvents.isInternetExplorer()) {
  11615. element.style.marginLeft = element.style.marginRight = leftRight + "px";
  11616. element.style.marginTop = element.style.marginBottom = topBottom + "px";
  11617. } else {
  11618. element.style.paddingLeft = element.style.paddingRight = leftRight + "px";
  11619. element.style.paddingTop = element.style.paddingBottom = topBottom + "px";
  11620. }
  11621. }
  11622. function __emscripten_do_request_fullscreen(target, strategy) {
  11623. if (typeof JSEvents.fullscreenEnabled() === "undefined") return -1;
  11624. if (!JSEvents.fullscreenEnabled()) return -3;
  11625. if (!target) target = "#canvas";
  11626. target = JSEvents.findEventTarget(target);
  11627. if (!target) return -4;
  11628. if (!target.requestFullscreen && !target.msRequestFullscreen && !target.mozRequestFullScreen && !target.mozRequestFullscreen && !target.webkitRequestFullscreen) {
  11629. return -3;
  11630. }
  11631. var canPerformRequests = JSEvents.canPerformEventHandlerRequests();
  11632. if (!canPerformRequests) {
  11633. if (strategy.deferUntilInEventHandler) {
  11634. JSEvents.deferCall(JSEvents.requestFullscreen, 1, [ target, strategy ]);
  11635. return 1;
  11636. } else {
  11637. return -2;
  11638. }
  11639. }
  11640. return JSEvents.requestFullscreen(target, strategy);
  11641. }
  11642. function _emscripten_request_fullscreen(target, deferUntilInEventHandler) {
  11643. var strategy = {};
  11644. strategy.scaleMode = 0;
  11645. strategy.canvasResolutionScaleMode = 0;
  11646. strategy.filteringMode = 0;
  11647. strategy.deferUntilInEventHandler = deferUntilInEventHandler;
  11648. strategy.canvasResizedCallbackTargetThread = 2;
  11649. return __emscripten_do_request_fullscreen(target, strategy);
  11650. }
  11651. function _emscripten_request_pointerlock(target, deferUntilInEventHandler) {
  11652. if (!target) target = "#canvas";
  11653. target = JSEvents.findEventTarget(target);
  11654. if (!target) return -4;
  11655. if (!target.requestPointerLock && !target.mozRequestPointerLock && !target.webkitRequestPointerLock && !target.msRequestPointerLock) {
  11656. return -1;
  11657. }
  11658. var canPerformRequests = JSEvents.canPerformEventHandlerRequests();
  11659. if (!canPerformRequests) {
  11660. if (deferUntilInEventHandler) {
  11661. JSEvents.deferCall(JSEvents.requestPointerLock, 2, [ target ]);
  11662. return 1;
  11663. } else {
  11664. return -2;
  11665. }
  11666. }
  11667. return JSEvents.requestPointerLock(target);
  11668. }
  11669. function _emscripten_set_blur_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11670. JSEvents.registerFocusEventCallback(target, userData, useCapture, callbackfunc, 12, "blur", targetThread);
  11671. return 0;
  11672. }
  11673. function _emscripten_set_dblclick_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11674. JSEvents.registerMouseEventCallback(target, userData, useCapture, callbackfunc, 7, "dblclick", targetThread);
  11675. return 0;
  11676. }
  11677. function _emscripten_set_devicemotion_callback_on_thread(userData, useCapture, callbackfunc, targetThread) {
  11678. JSEvents.registerDeviceMotionEventCallback(window, userData, useCapture, callbackfunc, 17, "devicemotion", targetThread);
  11679. return 0;
  11680. }
  11681. function _emscripten_set_deviceorientation_callback_on_thread(userData, useCapture, callbackfunc, targetThread) {
  11682. JSEvents.registerDeviceOrientationEventCallback(window, userData, useCapture, callbackfunc, 16, "deviceorientation", targetThread);
  11683. return 0;
  11684. }
  11685. function _emscripten_set_focus_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11686. JSEvents.registerFocusEventCallback(target, userData, useCapture, callbackfunc, 13, "focus", targetThread);
  11687. return 0;
  11688. }
  11689. function _emscripten_set_fullscreenchange_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11690. if (typeof JSEvents.fullscreenEnabled() === "undefined") return -1;
  11691. if (!target) target = document; else {
  11692. target = JSEvents.findEventTarget(target);
  11693. if (!target) return -4;
  11694. }
  11695. JSEvents.registerFullscreenChangeEventCallback(target, userData, useCapture, callbackfunc, 19, "fullscreenchange", targetThread);
  11696. JSEvents.registerFullscreenChangeEventCallback(target, userData, useCapture, callbackfunc, 19, "mozfullscreenchange", targetThread);
  11697. JSEvents.registerFullscreenChangeEventCallback(target, userData, useCapture, callbackfunc, 19, "webkitfullscreenchange", targetThread);
  11698. JSEvents.registerFullscreenChangeEventCallback(target, userData, useCapture, callbackfunc, 19, "msfullscreenchange", targetThread);
  11699. return 0;
  11700. }
  11701. function _emscripten_set_gamepadconnected_callback_on_thread(userData, useCapture, callbackfunc, targetThread) {
  11702. if (!navigator.getGamepads && !navigator.webkitGetGamepads) return -1;
  11703. JSEvents.registerGamepadEventCallback(window, userData, useCapture, callbackfunc, 26, "gamepadconnected", targetThread);
  11704. return 0;
  11705. }
  11706. function _emscripten_set_gamepaddisconnected_callback_on_thread(userData, useCapture, callbackfunc, targetThread) {
  11707. if (!navigator.getGamepads && !navigator.webkitGetGamepads) return -1;
  11708. JSEvents.registerGamepadEventCallback(window, userData, useCapture, callbackfunc, 27, "gamepaddisconnected", targetThread);
  11709. return 0;
  11710. }
  11711. function _emscripten_set_keydown_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11712. JSEvents.registerKeyEventCallback(target, userData, useCapture, callbackfunc, 2, "keydown", targetThread);
  11713. return 0;
  11714. }
  11715. function _emscripten_set_keypress_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11716. JSEvents.registerKeyEventCallback(target, userData, useCapture, callbackfunc, 1, "keypress", targetThread);
  11717. return 0;
  11718. }
  11719. function _emscripten_set_keyup_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11720. JSEvents.registerKeyEventCallback(target, userData, useCapture, callbackfunc, 3, "keyup", targetThread);
  11721. return 0;
  11722. }
  11723. function _emscripten_set_mousedown_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11724. JSEvents.registerMouseEventCallback(target, userData, useCapture, callbackfunc, 5, "mousedown", targetThread);
  11725. return 0;
  11726. }
  11727. function _emscripten_set_mousemove_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11728. JSEvents.registerMouseEventCallback(target, userData, useCapture, callbackfunc, 8, "mousemove", targetThread);
  11729. return 0;
  11730. }
  11731. function _emscripten_set_mouseup_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11732. JSEvents.registerMouseEventCallback(target, userData, useCapture, callbackfunc, 6, "mouseup", targetThread);
  11733. return 0;
  11734. }
  11735. function _emscripten_set_touchcancel_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11736. JSEvents.registerTouchEventCallback(target, userData, useCapture, callbackfunc, 25, "touchcancel", targetThread);
  11737. return 0;
  11738. }
  11739. function _emscripten_set_touchend_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11740. JSEvents.registerTouchEventCallback(target, userData, useCapture, callbackfunc, 23, "touchend", targetThread);
  11741. return 0;
  11742. }
  11743. function _emscripten_set_touchmove_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11744. JSEvents.registerTouchEventCallback(target, userData, useCapture, callbackfunc, 24, "touchmove", targetThread);
  11745. return 0;
  11746. }
  11747. function _emscripten_set_touchstart_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11748. JSEvents.registerTouchEventCallback(target, userData, useCapture, callbackfunc, 22, "touchstart", targetThread);
  11749. return 0;
  11750. }
  11751. function _emscripten_set_wheel_callback_on_thread(target, userData, useCapture, callbackfunc, targetThread) {
  11752. target = JSEvents.findEventTarget(target);
  11753. if (typeof target.onwheel !== "undefined") {
  11754. JSEvents.registerWheelEventCallback(target, userData, useCapture, callbackfunc, 9, "wheel", targetThread);
  11755. return 0;
  11756. } else if (typeof target.onmousewheel !== "undefined") {
  11757. JSEvents.registerWheelEventCallback(target, userData, useCapture, callbackfunc, 9, "mousewheel", targetThread);
  11758. return 0;
  11759. } else {
  11760. return -1;
  11761. }
  11762. }
  11763. var GL = {
  11764. counter: 1,
  11765. lastError: 0,
  11766. buffers: [],
  11767. mappedBuffers: {},
  11768. programs: [],
  11769. framebuffers: [],
  11770. renderbuffers: [],
  11771. textures: [],
  11772. uniforms: [],
  11773. shaders: [],
  11774. vaos: [],
  11775. contexts: [],
  11776. currentContext: null,
  11777. offscreenCanvases: {},
  11778. timerQueriesEXT: [],
  11779. queries: [],
  11780. samplers: [],
  11781. transformFeedbacks: [],
  11782. syncs: [],
  11783. byteSizeByTypeRoot: 5120,
  11784. byteSizeByType: [ 1, 1, 2, 2, 4, 4, 4, 2, 3, 4, 8 ],
  11785. programInfos: {},
  11786. stringCache: {},
  11787. stringiCache: {},
  11788. tempFixedLengthArray: [],
  11789. packAlignment: 4,
  11790. unpackAlignment: 4,
  11791. init: (function() {
  11792. GL.miniTempBuffer = new Float32Array(GL.MINI_TEMP_BUFFER_SIZE);
  11793. for (var i = 0; i < GL.MINI_TEMP_BUFFER_SIZE; i++) {
  11794. GL.miniTempBufferViews[i] = GL.miniTempBuffer.subarray(0, i + 1);
  11795. }
  11796. for (var i = 0; i < 32; i++) {
  11797. GL.tempFixedLengthArray.push(new Array(i));
  11798. }
  11799. }),
  11800. recordError: function recordError(errorCode) {
  11801. if (!GL.lastError) {
  11802. GL.lastError = errorCode;
  11803. }
  11804. },
  11805. getNewId: (function(table) {
  11806. var ret = GL.counter++;
  11807. for (var i = table.length; i < ret; i++) {
  11808. table[i] = null;
  11809. }
  11810. return ret;
  11811. }),
  11812. MINI_TEMP_BUFFER_SIZE: 256,
  11813. miniTempBuffer: null,
  11814. miniTempBufferViews: [ 0 ],
  11815. getSource: (function(shader, count, string, length) {
  11816. var source = "";
  11817. for (var i = 0; i < count; ++i) {
  11818. var frag;
  11819. if (length) {
  11820. var len = HEAP32[length + i * 4 >> 2];
  11821. if (len < 0) {
  11822. frag = Pointer_stringify(HEAP32[string + i * 4 >> 2]);
  11823. } else {
  11824. frag = Pointer_stringify(HEAP32[string + i * 4 >> 2], len);
  11825. }
  11826. } else {
  11827. frag = Pointer_stringify(HEAP32[string + i * 4 >> 2]);
  11828. }
  11829. source += frag;
  11830. }
  11831. return source;
  11832. }),
  11833. createContext: (function(canvas, webGLContextAttributes) {
  11834. if (typeof webGLContextAttributes["majorVersion"] === "undefined" && typeof webGLContextAttributes["minorVersion"] === "undefined") {
  11835. if (typeof WebGL2RenderingContext !== "undefined") webGLContextAttributes["majorVersion"] = 2; else webGLContextAttributes["majorVersion"] = 1;
  11836. webGLContextAttributes["minorVersion"] = 0;
  11837. }
  11838. var ctx;
  11839. var errorInfo = "?";
  11840. function onContextCreationError(event) {
  11841. errorInfo = event.statusMessage || errorInfo;
  11842. }
  11843. try {
  11844. canvas.addEventListener("webglcontextcreationerror", onContextCreationError, false);
  11845. try {
  11846. if (webGLContextAttributes["majorVersion"] == 1 && webGLContextAttributes["minorVersion"] == 0) {
  11847. ctx = canvas.getContext("webgl", webGLContextAttributes) || canvas.getContext("experimental-webgl", webGLContextAttributes);
  11848. } else if (webGLContextAttributes["majorVersion"] == 2 && webGLContextAttributes["minorVersion"] == 0) {
  11849. ctx = canvas.getContext("webgl2", webGLContextAttributes);
  11850. } else {
  11851. throw "Unsupported WebGL context version " + majorVersion + "." + minorVersion + "!";
  11852. }
  11853. } finally {
  11854. canvas.removeEventListener("webglcontextcreationerror", onContextCreationError, false);
  11855. }
  11856. if (!ctx) throw ":(";
  11857. } catch (e) {
  11858. out("Could not create canvas: " + [ errorInfo, e, JSON.stringify(webGLContextAttributes) ]);
  11859. return 0;
  11860. }
  11861. if (!ctx) return 0;
  11862. var context = GL.registerContext(ctx, webGLContextAttributes);
  11863. return context;
  11864. }),
  11865. registerContext: (function(ctx, webGLContextAttributes) {
  11866. var handle = _malloc(8);
  11867. HEAP32[handle >> 2] = webGLContextAttributes["explicitSwapControl"];
  11868. var context = {
  11869. handle: handle,
  11870. attributes: webGLContextAttributes,
  11871. version: webGLContextAttributes["majorVersion"],
  11872. GLctx: ctx
  11873. };
  11874. function getChromeVersion() {
  11875. var raw = navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./);
  11876. return raw ? parseInt(raw[2], 10) : false;
  11877. }
  11878. context.supportsWebGL2EntryPoints = context.version >= 2 && (getChromeVersion() === false || getChromeVersion() >= 58);
  11879. if (ctx.canvas) ctx.canvas.GLctxObject = context;
  11880. GL.contexts[handle] = context;
  11881. if (typeof webGLContextAttributes["enableExtensionsByDefault"] === "undefined" || webGLContextAttributes["enableExtensionsByDefault"]) {
  11882. GL.initExtensions(context);
  11883. }
  11884. if (webGLContextAttributes["renderViaOffscreenBackBuffer"]) {
  11885. return 0;
  11886. }
  11887. return handle;
  11888. }),
  11889. makeContextCurrent: (function(contextHandle) {
  11890. if (!contextHandle) {
  11891. GLctx = Module.ctx = GL.currentContext = null;
  11892. return true;
  11893. }
  11894. var context = GL.contexts[contextHandle];
  11895. if (!context) {
  11896. return false;
  11897. }
  11898. GLctx = Module.ctx = context.GLctx;
  11899. GL.currentContext = context;
  11900. return true;
  11901. }),
  11902. getContext: (function(contextHandle) {
  11903. return GL.contexts[contextHandle];
  11904. }),
  11905. deleteContext: (function(contextHandle) {
  11906. if (!contextHandle) return;
  11907. if (GL.currentContext === GL.contexts[contextHandle]) GL.currentContext = null;
  11908. if (typeof JSEvents === "object") JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas);
  11909. if (GL.contexts[contextHandle] && GL.contexts[contextHandle].GLctx.canvas) GL.contexts[contextHandle].GLctx.canvas.GLctxObject = undefined;
  11910. _free(GL.contexts[contextHandle]);
  11911. GL.contexts[contextHandle] = null;
  11912. }),
  11913. initExtensions: (function(context) {
  11914. if (!context) context = GL.currentContext;
  11915. if (context.initExtensionsDone) return;
  11916. context.initExtensionsDone = true;
  11917. var GLctx = context.GLctx;
  11918. context.maxVertexAttribs = GLctx.getParameter(GLctx.MAX_VERTEX_ATTRIBS);
  11919. if (context.version < 2) {
  11920. var instancedArraysExt = GLctx.getExtension("ANGLE_instanced_arrays");
  11921. if (instancedArraysExt) {
  11922. GLctx["vertexAttribDivisor"] = (function(index, divisor) {
  11923. instancedArraysExt["vertexAttribDivisorANGLE"](index, divisor);
  11924. });
  11925. GLctx["drawArraysInstanced"] = (function(mode, first, count, primcount) {
  11926. instancedArraysExt["drawArraysInstancedANGLE"](mode, first, count, primcount);
  11927. });
  11928. GLctx["drawElementsInstanced"] = (function(mode, count, type, indices, primcount) {
  11929. instancedArraysExt["drawElementsInstancedANGLE"](mode, count, type, indices, primcount);
  11930. });
  11931. }
  11932. var vaoExt = GLctx.getExtension("OES_vertex_array_object");
  11933. if (vaoExt) {
  11934. GLctx["createVertexArray"] = (function() {
  11935. return vaoExt["createVertexArrayOES"]();
  11936. });
  11937. GLctx["deleteVertexArray"] = (function(vao) {
  11938. vaoExt["deleteVertexArrayOES"](vao);
  11939. });
  11940. GLctx["bindVertexArray"] = (function(vao) {
  11941. vaoExt["bindVertexArrayOES"](vao);
  11942. });
  11943. GLctx["isVertexArray"] = (function(vao) {
  11944. return vaoExt["isVertexArrayOES"](vao);
  11945. });
  11946. }
  11947. var drawBuffersExt = GLctx.getExtension("WEBGL_draw_buffers");
  11948. if (drawBuffersExt) {
  11949. GLctx["drawBuffers"] = (function(n, bufs) {
  11950. drawBuffersExt["drawBuffersWEBGL"](n, bufs);
  11951. });
  11952. }
  11953. }
  11954. GLctx.disjointTimerQueryExt = GLctx.getExtension("EXT_disjoint_timer_query");
  11955. var automaticallyEnabledExtensions = [ "OES_texture_float", "OES_texture_half_float", "OES_standard_derivatives", "OES_vertex_array_object", "WEBGL_compressed_texture_s3tc", "WEBGL_depth_texture", "OES_element_index_uint", "EXT_texture_filter_anisotropic", "EXT_frag_depth", "WEBGL_draw_buffers", "ANGLE_instanced_arrays", "OES_texture_float_linear", "OES_texture_half_float_linear", "EXT_blend_minmax", "EXT_shader_texture_lod", "WEBGL_compressed_texture_pvrtc", "EXT_color_buffer_half_float", "WEBGL_color_buffer_float", "EXT_sRGB", "WEBGL_compressed_texture_etc1", "EXT_disjoint_timer_query", "WEBGL_compressed_texture_etc", "WEBGL_compressed_texture_astc", "EXT_color_buffer_float", "WEBGL_compressed_texture_s3tc_srgb", "EXT_disjoint_timer_query_webgl2" ];
  11956. var exts = GLctx.getSupportedExtensions();
  11957. if (exts && exts.length > 0) {
  11958. GLctx.getSupportedExtensions().forEach((function(ext) {
  11959. if (automaticallyEnabledExtensions.indexOf(ext) != -1) {
  11960. GLctx.getExtension(ext);
  11961. }
  11962. }));
  11963. }
  11964. }),
  11965. populateUniformTable: (function(program) {
  11966. var p = GL.programs[program];
  11967. GL.programInfos[program] = {
  11968. uniforms: {},
  11969. maxUniformLength: 0,
  11970. maxAttributeLength: -1,
  11971. maxUniformBlockNameLength: -1
  11972. };
  11973. var ptable = GL.programInfos[program];
  11974. var utable = ptable.uniforms;
  11975. var numUniforms = GLctx.getProgramParameter(p, GLctx.ACTIVE_UNIFORMS);
  11976. for (var i = 0; i < numUniforms; ++i) {
  11977. var u = GLctx.getActiveUniform(p, i);
  11978. var name = u.name;
  11979. ptable.maxUniformLength = Math.max(ptable.maxUniformLength, name.length + 1);
  11980. if (name.indexOf("]", name.length - 1) !== -1) {
  11981. var ls = name.lastIndexOf("[");
  11982. name = name.slice(0, ls);
  11983. }
  11984. var loc = GLctx.getUniformLocation(p, name);
  11985. if (loc != null) {
  11986. var id = GL.getNewId(GL.uniforms);
  11987. utable[name] = [ u.size, id ];
  11988. GL.uniforms[id] = loc;
  11989. for (var j = 1; j < u.size; ++j) {
  11990. var n = name + "[" + j + "]";
  11991. loc = GLctx.getUniformLocation(p, n);
  11992. id = GL.getNewId(GL.uniforms);
  11993. GL.uniforms[id] = loc;
  11994. }
  11995. }
  11996. }
  11997. })
  11998. };
  11999. function _emscripten_webgl_do_create_context(target, attributes) {
  12000. var contextAttributes = {};
  12001. contextAttributes["alpha"] = !!HEAP32[attributes >> 2];
  12002. contextAttributes["depth"] = !!HEAP32[attributes + 4 >> 2];
  12003. contextAttributes["stencil"] = !!HEAP32[attributes + 8 >> 2];
  12004. contextAttributes["antialias"] = !!HEAP32[attributes + 12 >> 2];
  12005. contextAttributes["premultipliedAlpha"] = !!HEAP32[attributes + 16 >> 2];
  12006. contextAttributes["preserveDrawingBuffer"] = !!HEAP32[attributes + 20 >> 2];
  12007. contextAttributes["preferLowPowerToHighPerformance"] = !!HEAP32[attributes + 24 >> 2];
  12008. contextAttributes["failIfMajorPerformanceCaveat"] = !!HEAP32[attributes + 28 >> 2];
  12009. contextAttributes["majorVersion"] = HEAP32[attributes + 32 >> 2];
  12010. contextAttributes["minorVersion"] = HEAP32[attributes + 36 >> 2];
  12011. contextAttributes["explicitSwapControl"] = HEAP32[attributes + 44 >> 2];
  12012. contextAttributes["proxyContextToMainThread"] = HEAP32[attributes + 48 >> 2];
  12013. contextAttributes["renderViaOffscreenBackBuffer"] = HEAP32[attributes + 52 >> 2];
  12014. target = Pointer_stringify(target);
  12015. var canvas;
  12016. if ((!target || target === "#canvas") && Module["canvas"]) {
  12017. canvas = Module["canvas"].id && GL.offscreenCanvases[Module["canvas"].id] ? GL.offscreenCanvases[Module["canvas"].id].offscreenCanvas || JSEvents.findEventTarget(Module["canvas"].id) : Module["canvas"];
  12018. } else {
  12019. canvas = GL.offscreenCanvases[target] ? GL.offscreenCanvases[target].offscreenCanvas : JSEvents.findEventTarget(target);
  12020. }
  12021. if (!canvas) {
  12022. return 0;
  12023. }
  12024. if (contextAttributes["explicitSwapControl"]) {
  12025. return 0;
  12026. }
  12027. var contextHandle = GL.createContext(canvas, contextAttributes);
  12028. return contextHandle;
  12029. }
  12030. function _emscripten_webgl_create_context() {
  12031. return _emscripten_webgl_do_create_context.apply(null, arguments);
  12032. }
  12033. function _emscripten_webgl_destroy_context_calling_thread(contextHandle) {
  12034. GL.deleteContext(contextHandle);
  12035. }
  12036. function _emscripten_webgl_destroy_context() {
  12037. return _emscripten_webgl_destroy_context_calling_thread.apply(null, arguments);
  12038. }
  12039. function _emscripten_webgl_enable_extension_calling_thread(contextHandle, extension) {
  12040. var context = GL.getContext(contextHandle);
  12041. var extString = Pointer_stringify(extension);
  12042. if (extString.indexOf("GL_") == 0) extString = extString.substr(3);
  12043. var ext = context.GLctx.getExtension(extString);
  12044. return ext ? 1 : 0;
  12045. }
  12046. function _emscripten_webgl_enable_extension() {
  12047. return _emscripten_webgl_enable_extension_calling_thread.apply(null, arguments);
  12048. }
  12049. function _emscripten_webgl_do_get_current_context() {
  12050. return GL.currentContext ? GL.currentContext.handle : 0;
  12051. }
  12052. function _emscripten_webgl_get_current_context() {
  12053. return _emscripten_webgl_do_get_current_context.apply(null, arguments);
  12054. }
  12055. function _emscripten_webgl_init_context_attributes(attributes) {
  12056. HEAP32[attributes >> 2] = 1;
  12057. HEAP32[attributes + 4 >> 2] = 1;
  12058. HEAP32[attributes + 8 >> 2] = 0;
  12059. HEAP32[attributes + 12 >> 2] = 1;
  12060. HEAP32[attributes + 16 >> 2] = 1;
  12061. HEAP32[attributes + 20 >> 2] = 0;
  12062. HEAP32[attributes + 24 >> 2] = 0;
  12063. HEAP32[attributes + 28 >> 2] = 0;
  12064. HEAP32[attributes + 32 >> 2] = 1;
  12065. HEAP32[attributes + 36 >> 2] = 0;
  12066. HEAP32[attributes + 40 >> 2] = 1;
  12067. HEAP32[attributes + 44 >> 2] = 0;
  12068. HEAP32[attributes + 48 >> 2] = 0;
  12069. HEAP32[attributes + 52 >> 2] = 0;
  12070. }
  12071. function _emscripten_webgl_make_context_current(contextHandle) {
  12072. var success = GL.makeContextCurrent(contextHandle);
  12073. return success ? 0 : -5;
  12074. }
  12075. function __exit(status) {
  12076. exit(status);
  12077. }
  12078. function _exit(status) {
  12079. __exit(status);
  12080. }
  12081. function _flock(fd, operation) {
  12082. return 0;
  12083. }
  12084. function _getaddrinfo(node, service, hint, out) {
  12085. var addr = 0;
  12086. var port = 0;
  12087. var flags = 0;
  12088. var family = 0;
  12089. var type = 0;
  12090. var proto = 0;
  12091. var ai;
  12092. function allocaddrinfo(family, type, proto, canon, addr, port) {
  12093. var sa, salen, ai;
  12094. var res;
  12095. salen = family === 10 ? 28 : 16;
  12096. addr = family === 10 ? __inet_ntop6_raw(addr) : __inet_ntop4_raw(addr);
  12097. sa = _malloc(salen);
  12098. res = __write_sockaddr(sa, family, addr, port);
  12099. assert(!res.errno);
  12100. ai = _malloc(32);
  12101. HEAP32[ai + 4 >> 2] = family;
  12102. HEAP32[ai + 8 >> 2] = type;
  12103. HEAP32[ai + 12 >> 2] = proto;
  12104. HEAP32[ai + 24 >> 2] = canon;
  12105. HEAP32[ai + 20 >> 2] = sa;
  12106. if (family === 10) {
  12107. HEAP32[ai + 16 >> 2] = 28;
  12108. } else {
  12109. HEAP32[ai + 16 >> 2] = 16;
  12110. }
  12111. HEAP32[ai + 28 >> 2] = 0;
  12112. return ai;
  12113. }
  12114. if (hint) {
  12115. flags = HEAP32[hint >> 2];
  12116. family = HEAP32[hint + 4 >> 2];
  12117. type = HEAP32[hint + 8 >> 2];
  12118. proto = HEAP32[hint + 12 >> 2];
  12119. }
  12120. if (type && !proto) {
  12121. proto = type === 2 ? 17 : 6;
  12122. }
  12123. if (!type && proto) {
  12124. type = proto === 17 ? 2 : 1;
  12125. }
  12126. if (proto === 0) {
  12127. proto = 6;
  12128. }
  12129. if (type === 0) {
  12130. type = 1;
  12131. }
  12132. if (!node && !service) {
  12133. return -2;
  12134. }
  12135. if (flags & ~(1 | 2 | 4 | 1024 | 8 | 16 | 32)) {
  12136. return -1;
  12137. }
  12138. if (hint !== 0 && HEAP32[hint >> 2] & 2 && !node) {
  12139. return -1;
  12140. }
  12141. if (flags & 32) {
  12142. return -2;
  12143. }
  12144. if (type !== 0 && type !== 1 && type !== 2) {
  12145. return -7;
  12146. }
  12147. if (family !== 0 && family !== 2 && family !== 10) {
  12148. return -6;
  12149. }
  12150. if (service) {
  12151. service = Pointer_stringify(service);
  12152. port = parseInt(service, 10);
  12153. if (isNaN(port)) {
  12154. if (flags & 1024) {
  12155. return -2;
  12156. }
  12157. return -8;
  12158. }
  12159. }
  12160. if (!node) {
  12161. if (family === 0) {
  12162. family = 2;
  12163. }
  12164. if ((flags & 1) === 0) {
  12165. if (family === 2) {
  12166. addr = _htonl(2130706433);
  12167. } else {
  12168. addr = [ 0, 0, 0, 1 ];
  12169. }
  12170. }
  12171. ai = allocaddrinfo(family, type, proto, null, addr, port);
  12172. HEAP32[out >> 2] = ai;
  12173. return 0;
  12174. }
  12175. node = Pointer_stringify(node);
  12176. addr = __inet_pton4_raw(node);
  12177. if (addr !== null) {
  12178. if (family === 0 || family === 2) {
  12179. family = 2;
  12180. } else if (family === 10 && flags & 8) {
  12181. addr = [ 0, 0, _htonl(65535), addr ];
  12182. family = 10;
  12183. } else {
  12184. return -2;
  12185. }
  12186. } else {
  12187. addr = __inet_pton6_raw(node);
  12188. if (addr !== null) {
  12189. if (family === 0 || family === 10) {
  12190. family = 10;
  12191. } else {
  12192. return -2;
  12193. }
  12194. }
  12195. }
  12196. if (addr != null) {
  12197. ai = allocaddrinfo(family, type, proto, node, addr, port);
  12198. HEAP32[out >> 2] = ai;
  12199. return 0;
  12200. }
  12201. if (flags & 4) {
  12202. return -2;
  12203. }
  12204. node = DNS.lookup_name(node);
  12205. addr = __inet_pton4_raw(node);
  12206. if (family === 0) {
  12207. family = 2;
  12208. } else if (family === 10) {
  12209. addr = [ 0, 0, _htonl(65535), addr ];
  12210. }
  12211. ai = allocaddrinfo(family, type, proto, null, addr, port);
  12212. HEAP32[out >> 2] = ai;
  12213. return 0;
  12214. }
  12215. function _getenv(name) {
  12216. if (name === 0) return 0;
  12217. name = Pointer_stringify(name);
  12218. if (!ENV.hasOwnProperty(name)) return 0;
  12219. if (_getenv.ret) _free(_getenv.ret);
  12220. _getenv.ret = allocateUTF8(ENV[name]);
  12221. return _getenv.ret;
  12222. }
  12223. function _gethostbyname(name) {
  12224. name = Pointer_stringify(name);
  12225. var ret = _malloc(20);
  12226. var nameBuf = _malloc(name.length + 1);
  12227. stringToUTF8(name, nameBuf, name.length + 1);
  12228. HEAP32[ret >> 2] = nameBuf;
  12229. var aliasesBuf = _malloc(4);
  12230. HEAP32[aliasesBuf >> 2] = 0;
  12231. HEAP32[ret + 4 >> 2] = aliasesBuf;
  12232. var afinet = 2;
  12233. HEAP32[ret + 8 >> 2] = afinet;
  12234. HEAP32[ret + 12 >> 2] = 4;
  12235. var addrListBuf = _malloc(12);
  12236. HEAP32[addrListBuf >> 2] = addrListBuf + 8;
  12237. HEAP32[addrListBuf + 4 >> 2] = 0;
  12238. HEAP32[addrListBuf + 8 >> 2] = __inet_pton4_raw(DNS.lookup_name(name));
  12239. HEAP32[ret + 16 >> 2] = addrListBuf;
  12240. return ret;
  12241. }
  12242. function _gethostbyaddr(addr, addrlen, type) {
  12243. if (type !== 2) {
  12244. ___setErrNo(ERRNO_CODES.EAFNOSUPPORT);
  12245. return null;
  12246. }
  12247. addr = HEAP32[addr >> 2];
  12248. var host = __inet_ntop4_raw(addr);
  12249. var lookup = DNS.lookup_addr(host);
  12250. if (lookup) {
  12251. host = lookup;
  12252. }
  12253. var hostp = allocate(intArrayFromString(host), "i8", ALLOC_STACK);
  12254. return _gethostbyname(hostp);
  12255. }
  12256. function _getnameinfo(sa, salen, node, nodelen, serv, servlen, flags) {
  12257. var info = __read_sockaddr(sa, salen);
  12258. if (info.errno) {
  12259. return -6;
  12260. }
  12261. var port = info.port;
  12262. var addr = info.addr;
  12263. var overflowed = false;
  12264. if (node && nodelen) {
  12265. var lookup;
  12266. if (flags & 1 || !(lookup = DNS.lookup_addr(addr))) {
  12267. if (flags & 8) {
  12268. return -2;
  12269. }
  12270. } else {
  12271. addr = lookup;
  12272. }
  12273. var numBytesWrittenExclNull = stringToUTF8(addr, node, nodelen);
  12274. if (numBytesWrittenExclNull + 1 >= nodelen) {
  12275. overflowed = true;
  12276. }
  12277. }
  12278. if (serv && servlen) {
  12279. port = "" + port;
  12280. var numBytesWrittenExclNull = stringToUTF8(port, serv, servlen);
  12281. if (numBytesWrittenExclNull + 1 >= servlen) {
  12282. overflowed = true;
  12283. }
  12284. }
  12285. if (overflowed) {
  12286. return -12;
  12287. }
  12288. return 0;
  12289. }
  12290. function _getpagesize() {
  12291. return PAGE_SIZE;
  12292. }
  12293. function _getpwuid(uid) {
  12294. return 0;
  12295. }
  12296. function _gettimeofday(ptr) {
  12297. var now = Date.now();
  12298. HEAP32[ptr >> 2] = now / 1e3 | 0;
  12299. HEAP32[ptr + 4 >> 2] = now % 1e3 * 1e3 | 0;
  12300. return 0;
  12301. }
  12302. function _glActiveTexture(x0) {
  12303. GLctx["activeTexture"](x0);
  12304. }
  12305. function _glAttachShader(program, shader) {
  12306. GLctx.attachShader(GL.programs[program], GL.shaders[shader]);
  12307. }
  12308. function _glBeginQuery(target, id) {
  12309. GLctx["beginQuery"](target, id ? GL.queries[id] : null);
  12310. }
  12311. function _glBeginTransformFeedback(x0) {
  12312. GLctx["beginTransformFeedback"](x0);
  12313. }
  12314. function _glBindAttribLocation(program, index, name) {
  12315. name = Pointer_stringify(name);
  12316. GLctx.bindAttribLocation(GL.programs[program], index, name);
  12317. }
  12318. function _glBindBuffer(target, buffer) {
  12319. var bufferObj = buffer ? GL.buffers[buffer] : null;
  12320. if (target == 35051) {
  12321. GLctx.currentPixelPackBufferBinding = buffer;
  12322. } else if (target == 35052) {
  12323. GLctx.currentPixelUnpackBufferBinding = buffer;
  12324. }
  12325. GLctx.bindBuffer(target, bufferObj);
  12326. }
  12327. function _glBindBufferBase(target, index, buffer) {
  12328. var bufferObj = buffer ? GL.buffers[buffer] : null;
  12329. GLctx["bindBufferBase"](target, index, bufferObj);
  12330. }
  12331. function _glBindBufferRange(target, index, buffer, offset, ptrsize) {
  12332. var bufferObj = buffer ? GL.buffers[buffer] : null;
  12333. GLctx["bindBufferRange"](target, index, bufferObj, offset, ptrsize);
  12334. }
  12335. function _glBindFramebuffer(target, framebuffer) {
  12336. GLctx.bindFramebuffer(target, framebuffer ? GL.framebuffers[framebuffer] : null);
  12337. }
  12338. function _glBindRenderbuffer(target, renderbuffer) {
  12339. GLctx.bindRenderbuffer(target, renderbuffer ? GL.renderbuffers[renderbuffer] : null);
  12340. }
  12341. function _glBindSampler(unit, sampler) {
  12342. GLctx["bindSampler"](unit, sampler ? GL.samplers[sampler] : null);
  12343. }
  12344. function _glBindTexture(target, texture) {
  12345. GLctx.bindTexture(target, texture ? GL.textures[texture] : null);
  12346. }
  12347. function _glBindTransformFeedback(target, id) {
  12348. var transformFeedback = id ? GL.transformFeedbacks[id] : null;
  12349. if (id && !transformFeedback) {
  12350. GL.recordError(1282);
  12351. return;
  12352. }
  12353. GLctx["bindTransformFeedback"](target, transformFeedback);
  12354. }
  12355. function _glBindVertexArray(vao) {
  12356. GLctx["bindVertexArray"](GL.vaos[vao]);
  12357. }
  12358. function _glBlendEquation(x0) {
  12359. GLctx["blendEquation"](x0);
  12360. }
  12361. function _glBlendEquationSeparate(x0, x1) {
  12362. GLctx["blendEquationSeparate"](x0, x1);
  12363. }
  12364. function _glBlendFuncSeparate(x0, x1, x2, x3) {
  12365. GLctx["blendFuncSeparate"](x0, x1, x2, x3);
  12366. }
  12367. function _glBlitFramebuffer(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9) {
  12368. GLctx["blitFramebuffer"](x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
  12369. }
  12370. function _glBufferData(target, size, data, usage) {
  12371. if (!data) {
  12372. GLctx.bufferData(target, size, usage);
  12373. } else {
  12374. if (GL.currentContext.supportsWebGL2EntryPoints) {
  12375. GLctx.bufferData(target, HEAPU8, usage, data, size);
  12376. return;
  12377. }
  12378. GLctx.bufferData(target, HEAPU8.subarray(data, data + size), usage);
  12379. }
  12380. }
  12381. function _glBufferSubData(target, offset, size, data) {
  12382. if (GL.currentContext.supportsWebGL2EntryPoints) {
  12383. GLctx.bufferSubData(target, offset, HEAPU8, data, size);
  12384. return;
  12385. }
  12386. GLctx.bufferSubData(target, offset, HEAPU8.subarray(data, data + size));
  12387. }
  12388. function _glCheckFramebufferStatus(x0) {
  12389. return GLctx["checkFramebufferStatus"](x0);
  12390. }
  12391. function _glClear(x0) {
  12392. GLctx["clear"](x0);
  12393. }
  12394. function _glClearColor(x0, x1, x2, x3) {
  12395. GLctx["clearColor"](x0, x1, x2, x3);
  12396. }
  12397. function _glClearDepthf(x0) {
  12398. GLctx["clearDepth"](x0);
  12399. }
  12400. function _glClearStencil(x0) {
  12401. GLctx["clearStencil"](x0);
  12402. }
  12403. function _glClientWaitSync(sync, flags, timeoutLo, timeoutHi) {
  12404. timeoutLo = timeoutLo >>> 0;
  12405. timeoutHi = timeoutHi >>> 0;
  12406. var timeout = timeoutLo == 4294967295 && timeoutHi == 4294967295 ? -1 : makeBigInt(timeoutLo, timeoutHi, true);
  12407. return GLctx.clientWaitSync(GL.syncs[sync], flags, timeout);
  12408. }
  12409. function _glColorMask(red, green, blue, alpha) {
  12410. GLctx.colorMask(!!red, !!green, !!blue, !!alpha);
  12411. }
  12412. function _glCompileShader(shader) {
  12413. GLctx.compileShader(GL.shaders[shader]);
  12414. }
  12415. function _glCompressedTexImage2D(target, level, internalFormat, width, height, border, imageSize, data) {
  12416. if (GL.currentContext.supportsWebGL2EntryPoints) {
  12417. GLctx["compressedTexImage2D"](target, level, internalFormat, width, height, border, HEAPU8, data, imageSize);
  12418. return;
  12419. }
  12420. GLctx["compressedTexImage2D"](target, level, internalFormat, width, height, border, data ? HEAPU8.subarray(data, data + imageSize) : null);
  12421. }
  12422. function _glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data) {
  12423. if (GL.currentContext.supportsWebGL2EntryPoints) {
  12424. GLctx["compressedTexSubImage2D"](target, level, xoffset, yoffset, width, height, format, HEAPU8, data, imageSize);
  12425. return;
  12426. }
  12427. GLctx["compressedTexSubImage2D"](target, level, xoffset, yoffset, width, height, format, data ? HEAPU8.subarray(data, data + imageSize) : null);
  12428. }
  12429. function _glCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data) {
  12430. if (GL.currentContext.supportsWebGL2EntryPoints) {
  12431. GLctx["compressedTexSubImage3D"](target, level, xoffset, yoffset, zoffset, width, height, depth, format, HEAPU8, data, imageSize);
  12432. } else {
  12433. GLctx["compressedTexSubImage3D"](target, level, xoffset, yoffset, zoffset, width, height, depth, format, data ? HEAPU8.subarray(data, data + imageSize) : null);
  12434. }
  12435. }
  12436. function _glCopyBufferSubData(x0, x1, x2, x3, x4) {
  12437. GLctx["copyBufferSubData"](x0, x1, x2, x3, x4);
  12438. }
  12439. function _glCopyTexImage2D(x0, x1, x2, x3, x4, x5, x6, x7) {
  12440. GLctx["copyTexImage2D"](x0, x1, x2, x3, x4, x5, x6, x7);
  12441. }
  12442. function _glCopyTexSubImage2D(x0, x1, x2, x3, x4, x5, x6, x7) {
  12443. GLctx["copyTexSubImage2D"](x0, x1, x2, x3, x4, x5, x6, x7);
  12444. }
  12445. function _glCreateProgram() {
  12446. var id = GL.getNewId(GL.programs);
  12447. var program = GLctx.createProgram();
  12448. program.name = id;
  12449. GL.programs[id] = program;
  12450. return id;
  12451. }
  12452. function _glCreateShader(shaderType) {
  12453. var id = GL.getNewId(GL.shaders);
  12454. GL.shaders[id] = GLctx.createShader(shaderType);
  12455. return id;
  12456. }
  12457. function _glCullFace(x0) {
  12458. GLctx["cullFace"](x0);
  12459. }
  12460. function _glDeleteBuffers(n, buffers) {
  12461. for (var i = 0; i < n; i++) {
  12462. var id = HEAP32[buffers + i * 4 >> 2];
  12463. var buffer = GL.buffers[id];
  12464. if (!buffer) continue;
  12465. GLctx.deleteBuffer(buffer);
  12466. buffer.name = 0;
  12467. GL.buffers[id] = null;
  12468. if (id == GL.currArrayBuffer) GL.currArrayBuffer = 0;
  12469. if (id == GL.currElementArrayBuffer) GL.currElementArrayBuffer = 0;
  12470. }
  12471. }
  12472. function _glDeleteFramebuffers(n, framebuffers) {
  12473. for (var i = 0; i < n; ++i) {
  12474. var id = HEAP32[framebuffers + i * 4 >> 2];
  12475. var framebuffer = GL.framebuffers[id];
  12476. if (!framebuffer) continue;
  12477. GLctx.deleteFramebuffer(framebuffer);
  12478. framebuffer.name = 0;
  12479. GL.framebuffers[id] = null;
  12480. }
  12481. }
  12482. function _glDeleteProgram(id) {
  12483. if (!id) return;
  12484. var program = GL.programs[id];
  12485. if (!program) {
  12486. GL.recordError(1281);
  12487. return;
  12488. }
  12489. GLctx.deleteProgram(program);
  12490. program.name = 0;
  12491. GL.programs[id] = null;
  12492. GL.programInfos[id] = null;
  12493. }
  12494. function _glDeleteQueries(n, ids) {
  12495. for (var i = 0; i < n; i++) {
  12496. var id = HEAP32[ids + i * 4 >> 2];
  12497. var query = GL.queries[id];
  12498. if (!query) continue;
  12499. GLctx["deleteQuery"](query);
  12500. GL.queries[id] = null;
  12501. }
  12502. }
  12503. function _glDeleteRenderbuffers(n, renderbuffers) {
  12504. for (var i = 0; i < n; i++) {
  12505. var id = HEAP32[renderbuffers + i * 4 >> 2];
  12506. var renderbuffer = GL.renderbuffers[id];
  12507. if (!renderbuffer) continue;
  12508. GLctx.deleteRenderbuffer(renderbuffer);
  12509. renderbuffer.name = 0;
  12510. GL.renderbuffers[id] = null;
  12511. }
  12512. }
  12513. function _glDeleteSamplers(n, samplers) {
  12514. for (var i = 0; i < n; i++) {
  12515. var id = HEAP32[samplers + i * 4 >> 2];
  12516. var sampler = GL.samplers[id];
  12517. if (!sampler) continue;
  12518. GLctx["deleteSampler"](sampler);
  12519. sampler.name = 0;
  12520. GL.samplers[id] = null;
  12521. }
  12522. }
  12523. function _glDeleteShader(id) {
  12524. if (!id) return;
  12525. var shader = GL.shaders[id];
  12526. if (!shader) {
  12527. GL.recordError(1281);
  12528. return;
  12529. }
  12530. GLctx.deleteShader(shader);
  12531. GL.shaders[id] = null;
  12532. }
  12533. function _glDeleteSync(id) {
  12534. if (!id) return;
  12535. var sync = GL.syncs[id];
  12536. if (!sync) {
  12537. GL.recordError(1281);
  12538. return;
  12539. }
  12540. GLctx.deleteSync(sync);
  12541. sync.name = 0;
  12542. GL.syncs[id] = null;
  12543. }
  12544. function _glDeleteTextures(n, textures) {
  12545. for (var i = 0; i < n; i++) {
  12546. var id = HEAP32[textures + i * 4 >> 2];
  12547. var texture = GL.textures[id];
  12548. if (!texture) continue;
  12549. GLctx.deleteTexture(texture);
  12550. texture.name = 0;
  12551. GL.textures[id] = null;
  12552. }
  12553. }
  12554. function _glDeleteTransformFeedbacks(n, ids) {
  12555. for (var i = 0; i < n; i++) {
  12556. var id = HEAP32[ids + i * 4 >> 2];
  12557. var transformFeedback = GL.transformFeedbacks[id];
  12558. if (!transformFeedback) continue;
  12559. GLctx["deleteTransformFeedback"](transformFeedback);
  12560. transformFeedback.name = 0;
  12561. GL.transformFeedbacks[id] = null;
  12562. }
  12563. }
  12564. function _glDeleteVertexArrays(n, vaos) {
  12565. for (var i = 0; i < n; i++) {
  12566. var id = HEAP32[vaos + i * 4 >> 2];
  12567. GLctx["deleteVertexArray"](GL.vaos[id]);
  12568. GL.vaos[id] = null;
  12569. }
  12570. }
  12571. function _glDepthFunc(x0) {
  12572. GLctx["depthFunc"](x0);
  12573. }
  12574. function _glDepthMask(flag) {
  12575. GLctx.depthMask(!!flag);
  12576. }
  12577. function _glDetachShader(program, shader) {
  12578. GLctx.detachShader(GL.programs[program], GL.shaders[shader]);
  12579. }
  12580. function _glDisable(x0) {
  12581. GLctx["disable"](x0);
  12582. }
  12583. function _glDisableVertexAttribArray(index) {
  12584. GLctx.disableVertexAttribArray(index);
  12585. }
  12586. function _glDrawArrays(mode, first, count) {
  12587. GLctx.drawArrays(mode, first, count);
  12588. }
  12589. function _glDrawArraysInstanced(mode, first, count, primcount) {
  12590. GLctx["drawArraysInstanced"](mode, first, count, primcount);
  12591. }
  12592. function _glDrawBuffers(n, bufs) {
  12593. var bufArray = GL.tempFixedLengthArray[n];
  12594. for (var i = 0; i < n; i++) {
  12595. bufArray[i] = HEAP32[bufs + i * 4 >> 2];
  12596. }
  12597. GLctx["drawBuffers"](bufArray);
  12598. }
  12599. function _glDrawElements(mode, count, type, indices) {
  12600. GLctx.drawElements(mode, count, type, indices);
  12601. }
  12602. function _glDrawElementsInstanced(mode, count, type, indices, primcount) {
  12603. GLctx["drawElementsInstanced"](mode, count, type, indices, primcount);
  12604. }
  12605. function _glEnable(x0) {
  12606. GLctx["enable"](x0);
  12607. }
  12608. function _glEnableVertexAttribArray(index) {
  12609. GLctx.enableVertexAttribArray(index);
  12610. }
  12611. function _glEndQuery(x0) {
  12612. GLctx["endQuery"](x0);
  12613. }
  12614. function _glEndTransformFeedback() {
  12615. GLctx["endTransformFeedback"]();
  12616. }
  12617. function _glFenceSync(condition, flags) {
  12618. var sync = GLctx.fenceSync(condition, flags);
  12619. if (sync) {
  12620. var id = GL.getNewId(GL.syncs);
  12621. sync.name = id;
  12622. GL.syncs[id] = sync;
  12623. return id;
  12624. } else {
  12625. return 0;
  12626. }
  12627. }
  12628. function _glFinish() {
  12629. GLctx["finish"]();
  12630. }
  12631. function _glFlush() {
  12632. GLctx["flush"]();
  12633. }
  12634. function emscriptenWebGLGetBufferBinding(target) {
  12635. switch (target) {
  12636. case 34962:
  12637. target = 34964;
  12638. break;
  12639. case 34963:
  12640. target = 34965;
  12641. break;
  12642. case 35051:
  12643. target = 35053;
  12644. break;
  12645. case 35052:
  12646. target = 35055;
  12647. break;
  12648. case 35982:
  12649. target = 35983;
  12650. break;
  12651. case 36662:
  12652. target = 36662;
  12653. break;
  12654. case 36663:
  12655. target = 36663;
  12656. break;
  12657. case 35345:
  12658. target = 35368;
  12659. break;
  12660. }
  12661. var buffer = GLctx.getParameter(target);
  12662. if (buffer) return buffer.name | 0; else return 0;
  12663. }
  12664. function emscriptenWebGLValidateMapBufferTarget(target) {
  12665. switch (target) {
  12666. case 34962:
  12667. case 34963:
  12668. case 36662:
  12669. case 36663:
  12670. case 35051:
  12671. case 35052:
  12672. case 35882:
  12673. case 35982:
  12674. case 35345:
  12675. return true;
  12676. default:
  12677. return false;
  12678. }
  12679. }
  12680. function _glFlushMappedBufferRange(target, offset, length) {
  12681. if (!emscriptenWebGLValidateMapBufferTarget(target)) {
  12682. GL.recordError(1280);
  12683. err("GL_INVALID_ENUM in glFlushMappedBufferRange");
  12684. return;
  12685. }
  12686. var mapping = GL.mappedBuffers[emscriptenWebGLGetBufferBinding(target)];
  12687. if (!mapping) {
  12688. GL.recordError(1282);
  12689. Module.printError("buffer was never mapped in glFlushMappedBufferRange");
  12690. return;
  12691. }
  12692. if (!(mapping.access & 16)) {
  12693. GL.recordError(1282);
  12694. Module.printError("buffer was not mapped with GL_MAP_FLUSH_EXPLICIT_BIT in glFlushMappedBufferRange");
  12695. return;
  12696. }
  12697. if (offset < 0 || length < 0 || offset + length > mapping.length) {
  12698. GL.recordError(1281);
  12699. Module.printError("invalid range in glFlushMappedBufferRange");
  12700. return;
  12701. }
  12702. GLctx.bufferSubData(target, mapping.offset, HEAPU8.subarray(mapping.mem + offset, mapping.mem + offset + length));
  12703. }
  12704. function _glFramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer) {
  12705. GLctx.framebufferRenderbuffer(target, attachment, renderbuffertarget, GL.renderbuffers[renderbuffer]);
  12706. }
  12707. function _glFramebufferTexture2D(target, attachment, textarget, texture, level) {
  12708. GLctx.framebufferTexture2D(target, attachment, textarget, GL.textures[texture], level);
  12709. }
  12710. function _glFramebufferTextureLayer(target, attachment, texture, level, layer) {
  12711. GLctx.framebufferTextureLayer(target, attachment, GL.textures[texture], level, layer);
  12712. }
  12713. function _glFrontFace(x0) {
  12714. GLctx["frontFace"](x0);
  12715. }
  12716. function _glGenBuffers(n, buffers) {
  12717. for (var i = 0; i < n; i++) {
  12718. var buffer = GLctx.createBuffer();
  12719. if (!buffer) {
  12720. GL.recordError(1282);
  12721. while (i < n) HEAP32[buffers + i++ * 4 >> 2] = 0;
  12722. return;
  12723. }
  12724. var id = GL.getNewId(GL.buffers);
  12725. buffer.name = id;
  12726. GL.buffers[id] = buffer;
  12727. HEAP32[buffers + i * 4 >> 2] = id;
  12728. }
  12729. }
  12730. function _glGenFramebuffers(n, ids) {
  12731. for (var i = 0; i < n; ++i) {
  12732. var framebuffer = GLctx.createFramebuffer();
  12733. if (!framebuffer) {
  12734. GL.recordError(1282);
  12735. while (i < n) HEAP32[ids + i++ * 4 >> 2] = 0;
  12736. return;
  12737. }
  12738. var id = GL.getNewId(GL.framebuffers);
  12739. framebuffer.name = id;
  12740. GL.framebuffers[id] = framebuffer;
  12741. HEAP32[ids + i * 4 >> 2] = id;
  12742. }
  12743. }
  12744. function _glGenQueries(n, ids) {
  12745. for (var i = 0; i < n; i++) {
  12746. var query = GLctx["createQuery"]();
  12747. if (!query) {
  12748. GL.recordError(1282);
  12749. while (i < n) HEAP32[ids + i++ * 4 >> 2] = 0;
  12750. return;
  12751. }
  12752. var id = GL.getNewId(GL.queries);
  12753. query.name = id;
  12754. GL.queries[id] = query;
  12755. HEAP32[ids + i * 4 >> 2] = id;
  12756. }
  12757. }
  12758. function _glGenRenderbuffers(n, renderbuffers) {
  12759. for (var i = 0; i < n; i++) {
  12760. var renderbuffer = GLctx.createRenderbuffer();
  12761. if (!renderbuffer) {
  12762. GL.recordError(1282);
  12763. while (i < n) HEAP32[renderbuffers + i++ * 4 >> 2] = 0;
  12764. return;
  12765. }
  12766. var id = GL.getNewId(GL.renderbuffers);
  12767. renderbuffer.name = id;
  12768. GL.renderbuffers[id] = renderbuffer;
  12769. HEAP32[renderbuffers + i * 4 >> 2] = id;
  12770. }
  12771. }
  12772. function _glGenSamplers(n, samplers) {
  12773. for (var i = 0; i < n; i++) {
  12774. var sampler = GLctx["createSampler"]();
  12775. if (!sampler) {
  12776. GL.recordError(1282);
  12777. while (i < n) HEAP32[samplers + i++ * 4 >> 2] = 0;
  12778. return;
  12779. }
  12780. var id = GL.getNewId(GL.samplers);
  12781. sampler.name = id;
  12782. GL.samplers[id] = sampler;
  12783. HEAP32[samplers + i * 4 >> 2] = id;
  12784. }
  12785. }
  12786. function _glGenTextures(n, textures) {
  12787. for (var i = 0; i < n; i++) {
  12788. var texture = GLctx.createTexture();
  12789. if (!texture) {
  12790. GL.recordError(1282);
  12791. while (i < n) HEAP32[textures + i++ * 4 >> 2] = 0;
  12792. return;
  12793. }
  12794. var id = GL.getNewId(GL.textures);
  12795. texture.name = id;
  12796. GL.textures[id] = texture;
  12797. HEAP32[textures + i * 4 >> 2] = id;
  12798. }
  12799. }
  12800. function _glGenTransformFeedbacks(n, ids) {
  12801. for (var i = 0; i < n; i++) {
  12802. var transformFeedback = GLctx["createTransformFeedback"]();
  12803. if (!transformFeedback) {
  12804. GL.recordError(1282);
  12805. while (i < n) HEAP32[ids + i++ * 4 >> 2] = 0;
  12806. return;
  12807. }
  12808. var id = GL.getNewId(GL.transformFeedbacks);
  12809. transformFeedback.name = id;
  12810. GL.transformFeedbacks[id] = transformFeedback;
  12811. HEAP32[ids + i * 4 >> 2] = id;
  12812. }
  12813. }
  12814. function _glGenVertexArrays(n, arrays) {
  12815. for (var i = 0; i < n; i++) {
  12816. var vao = GLctx["createVertexArray"]();
  12817. if (!vao) {
  12818. GL.recordError(1282);
  12819. while (i < n) HEAP32[arrays + i++ * 4 >> 2] = 0;
  12820. return;
  12821. }
  12822. var id = GL.getNewId(GL.vaos);
  12823. vao.name = id;
  12824. GL.vaos[id] = vao;
  12825. HEAP32[arrays + i * 4 >> 2] = id;
  12826. }
  12827. }
  12828. function _glGenerateMipmap(x0) {
  12829. GLctx["generateMipmap"](x0);
  12830. }
  12831. function _glGetActiveAttrib(program, index, bufSize, length, size, type, name) {
  12832. program = GL.programs[program];
  12833. var info = GLctx.getActiveAttrib(program, index);
  12834. if (!info) return;
  12835. if (bufSize > 0 && name) {
  12836. var numBytesWrittenExclNull = stringToUTF8(info.name, name, bufSize);
  12837. if (length) HEAP32[length >> 2] = numBytesWrittenExclNull;
  12838. } else {
  12839. if (length) HEAP32[length >> 2] = 0;
  12840. }
  12841. if (size) HEAP32[size >> 2] = info.size;
  12842. if (type) HEAP32[type >> 2] = info.type;
  12843. }
  12844. function _glGetActiveUniform(program, index, bufSize, length, size, type, name) {
  12845. program = GL.programs[program];
  12846. var info = GLctx.getActiveUniform(program, index);
  12847. if (!info) return;
  12848. if (bufSize > 0 && name) {
  12849. var numBytesWrittenExclNull = stringToUTF8(info.name, name, bufSize);
  12850. if (length) HEAP32[length >> 2] = numBytesWrittenExclNull;
  12851. } else {
  12852. if (length) HEAP32[length >> 2] = 0;
  12853. }
  12854. if (size) HEAP32[size >> 2] = info.size;
  12855. if (type) HEAP32[type >> 2] = info.type;
  12856. }
  12857. function _glGetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName) {
  12858. program = GL.programs[program];
  12859. var result = GLctx["getActiveUniformBlockName"](program, uniformBlockIndex);
  12860. if (!result) return;
  12861. if (uniformBlockName && bufSize > 0) {
  12862. var numBytesWrittenExclNull = stringToUTF8(result, uniformBlockName, bufSize);
  12863. if (length) HEAP32[length >> 2] = numBytesWrittenExclNull;
  12864. } else {
  12865. if (length) HEAP32[length >> 2] = 0;
  12866. }
  12867. }
  12868. function _glGetActiveUniformBlockiv(program, uniformBlockIndex, pname, params) {
  12869. if (!params) {
  12870. GL.recordError(1281);
  12871. return;
  12872. }
  12873. program = GL.programs[program];
  12874. switch (pname) {
  12875. case 35393:
  12876. var name = GLctx["getActiveUniformBlockName"](program, uniformBlockIndex);
  12877. HEAP32[params >> 2] = name.length + 1;
  12878. return;
  12879. default:
  12880. var result = GLctx["getActiveUniformBlockParameter"](program, uniformBlockIndex, pname);
  12881. if (!result) return;
  12882. if (typeof result == "number") {
  12883. HEAP32[params >> 2] = result;
  12884. } else {
  12885. for (var i = 0; i < result.length; i++) {
  12886. HEAP32[params + i * 4 >> 2] = result[i];
  12887. }
  12888. }
  12889. }
  12890. }
  12891. function _glGetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params) {
  12892. if (!params) {
  12893. GL.recordError(1281);
  12894. return;
  12895. }
  12896. if (uniformCount > 0 && uniformIndices == 0) {
  12897. GL.recordError(1281);
  12898. return;
  12899. }
  12900. program = GL.programs[program];
  12901. var ids = [];
  12902. for (var i = 0; i < uniformCount; i++) {
  12903. ids.push(HEAP32[uniformIndices + i * 4 >> 2]);
  12904. }
  12905. var result = GLctx["getActiveUniforms"](program, ids, pname);
  12906. if (!result) return;
  12907. var len = result.length;
  12908. for (var i = 0; i < len; i++) {
  12909. HEAP32[params + i * 4 >> 2] = result[i];
  12910. }
  12911. }
  12912. function _glGetAttribLocation(program, name) {
  12913. return GLctx.getAttribLocation(GL.programs[program], Pointer_stringify(name));
  12914. }
  12915. function _glGetError() {
  12916. if (GL.lastError) {
  12917. var error = GL.lastError;
  12918. GL.lastError = 0;
  12919. return error;
  12920. } else {
  12921. return GLctx.getError();
  12922. }
  12923. }
  12924. function _glGetFramebufferAttachmentParameteriv(target, attachment, pname, params) {
  12925. var result = GLctx.getFramebufferAttachmentParameter(target, attachment, pname);
  12926. if (result instanceof WebGLRenderbuffer || result instanceof WebGLTexture) {
  12927. result = result.name | 0;
  12928. }
  12929. HEAP32[params >> 2] = result;
  12930. }
  12931. function emscriptenWebGLGetIndexed(target, index, data, type) {
  12932. if (!data) {
  12933. GL.recordError(1281);
  12934. return;
  12935. }
  12936. var result = GLctx["getIndexedParameter"](target, index);
  12937. var ret;
  12938. switch (typeof result) {
  12939. case "boolean":
  12940. ret = result ? 1 : 0;
  12941. break;
  12942. case "number":
  12943. ret = result;
  12944. break;
  12945. case "object":
  12946. if (result === null) {
  12947. switch (target) {
  12948. case 35983:
  12949. case 35368:
  12950. ret = 0;
  12951. break;
  12952. default:
  12953. {
  12954. GL.recordError(1280);
  12955. return;
  12956. }
  12957. }
  12958. } else if (result instanceof WebGLBuffer) {
  12959. ret = result.name | 0;
  12960. } else {
  12961. GL.recordError(1280);
  12962. return;
  12963. }
  12964. break;
  12965. default:
  12966. GL.recordError(1280);
  12967. return;
  12968. }
  12969. switch (type) {
  12970. case "Integer64":
  12971. tempI64 = [ ret >>> 0, (tempDouble = ret, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0) ], HEAP32[data >> 2] = tempI64[0], HEAP32[data + 4 >> 2] = tempI64[1];
  12972. break;
  12973. case "Integer":
  12974. HEAP32[data >> 2] = ret;
  12975. break;
  12976. case "Float":
  12977. HEAPF32[data >> 2] = ret;
  12978. break;
  12979. case "Boolean":
  12980. HEAP8[data >> 0] = ret ? 1 : 0;
  12981. break;
  12982. default:
  12983. throw "internal emscriptenWebGLGetIndexed() error, bad type: " + type;
  12984. }
  12985. }
  12986. function _glGetIntegeri_v(target, index, data) {
  12987. emscriptenWebGLGetIndexed(target, index, data, "Integer");
  12988. }
  12989. function emscriptenWebGLGet(name_, p, type) {
  12990. if (!p) {
  12991. GL.recordError(1281);
  12992. return;
  12993. }
  12994. var ret = undefined;
  12995. switch (name_) {
  12996. case 36346:
  12997. ret = 1;
  12998. break;
  12999. case 36344:
  13000. if (type !== "Integer" && type !== "Integer64") {
  13001. GL.recordError(1280);
  13002. }
  13003. return;
  13004. case 34814:
  13005. case 36345:
  13006. ret = 0;
  13007. break;
  13008. case 34466:
  13009. var formats = GLctx.getParameter(34467);
  13010. ret = formats.length;
  13011. break;
  13012. case 33309:
  13013. if (GLctx.canvas.GLctxObject.version < 2) {
  13014. GL.recordError(1282);
  13015. return;
  13016. }
  13017. var exts = GLctx.getSupportedExtensions();
  13018. ret = 2 * exts.length;
  13019. break;
  13020. case 33307:
  13021. case 33308:
  13022. if (GLctx.canvas.GLctxObject.version < 2) {
  13023. GL.recordError(1280);
  13024. return;
  13025. }
  13026. ret = name_ == 33307 ? 3 : 0;
  13027. break;
  13028. }
  13029. if (ret === undefined) {
  13030. var result = GLctx.getParameter(name_);
  13031. switch (typeof result) {
  13032. case "number":
  13033. ret = result;
  13034. break;
  13035. case "boolean":
  13036. ret = result ? 1 : 0;
  13037. break;
  13038. case "string":
  13039. GL.recordError(1280);
  13040. return;
  13041. case "object":
  13042. if (result === null) {
  13043. switch (name_) {
  13044. case 34964:
  13045. case 35725:
  13046. case 34965:
  13047. case 36006:
  13048. case 36007:
  13049. case 32873:
  13050. case 34229:
  13051. case 35097:
  13052. case 36389:
  13053. case 34068:
  13054. {
  13055. ret = 0;
  13056. break;
  13057. }
  13058. default:
  13059. {
  13060. GL.recordError(1280);
  13061. return;
  13062. }
  13063. }
  13064. } else if (result instanceof Float32Array || result instanceof Uint32Array || result instanceof Int32Array || result instanceof Array) {
  13065. for (var i = 0; i < result.length; ++i) {
  13066. switch (type) {
  13067. case "Integer":
  13068. HEAP32[p + i * 4 >> 2] = result[i];
  13069. break;
  13070. case "Float":
  13071. HEAPF32[p + i * 4 >> 2] = result[i];
  13072. break;
  13073. case "Boolean":
  13074. HEAP8[p + i >> 0] = result[i] ? 1 : 0;
  13075. break;
  13076. default:
  13077. throw "internal glGet error, bad type: " + type;
  13078. }
  13079. }
  13080. return;
  13081. } else if (result instanceof WebGLBuffer || result instanceof WebGLProgram || result instanceof WebGLFramebuffer || result instanceof WebGLRenderbuffer || result instanceof WebGLQuery || result instanceof WebGLSampler || result instanceof WebGLSync || result instanceof WebGLTransformFeedback || result instanceof WebGLVertexArrayObject || result instanceof WebGLTexture) {
  13082. ret = result.name | 0;
  13083. } else {
  13084. GL.recordError(1280);
  13085. return;
  13086. }
  13087. break;
  13088. default:
  13089. GL.recordError(1280);
  13090. return;
  13091. }
  13092. }
  13093. switch (type) {
  13094. case "Integer64":
  13095. tempI64 = [ ret >>> 0, (tempDouble = ret, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0) ], HEAP32[p >> 2] = tempI64[0], HEAP32[p + 4 >> 2] = tempI64[1];
  13096. break;
  13097. case "Integer":
  13098. HEAP32[p >> 2] = ret;
  13099. break;
  13100. case "Float":
  13101. HEAPF32[p >> 2] = ret;
  13102. break;
  13103. case "Boolean":
  13104. HEAP8[p >> 0] = ret ? 1 : 0;
  13105. break;
  13106. default:
  13107. throw "internal glGet error, bad type: " + type;
  13108. }
  13109. }
  13110. function _glGetIntegerv(name_, p) {
  13111. emscriptenWebGLGet(name_, p, "Integer");
  13112. }
  13113. function _glGetInternalformativ(target, internalformat, pname, bufSize, params) {
  13114. if (bufSize < 0) {
  13115. GL.recordError(1281);
  13116. return;
  13117. }
  13118. var samples = GLctx["getInternalformatParameter"](target, internalformat, 32937);
  13119. if (!samples) {
  13120. GL.recordError(1280);
  13121. return;
  13122. }
  13123. switch (pname) {
  13124. case 32937:
  13125. var n = Math.min(bufSize, samples.length);
  13126. for (var i = 0; i < n; i++) {
  13127. var v = samples[i];
  13128. HEAP32[params + i * 4 >> 2] = v;
  13129. }
  13130. break;
  13131. case 37760:
  13132. if (bufSize > 1) {
  13133. var v = samples.length;
  13134. HEAP32[params >> 2] = v;
  13135. }
  13136. break;
  13137. default:
  13138. GL.recordError(1280);
  13139. }
  13140. }
  13141. function _glGetProgramBinary(program, bufSize, length, binaryFormat, binary) {
  13142. GL.recordError(1282);
  13143. }
  13144. function _glGetProgramInfoLog(program, maxLength, length, infoLog) {
  13145. var log = GLctx.getProgramInfoLog(GL.programs[program]);
  13146. if (log === null) log = "(unknown error)";
  13147. if (maxLength > 0 && infoLog) {
  13148. var numBytesWrittenExclNull = stringToUTF8(log, infoLog, maxLength);
  13149. if (length) HEAP32[length >> 2] = numBytesWrittenExclNull;
  13150. } else {
  13151. if (length) HEAP32[length >> 2] = 0;
  13152. }
  13153. }
  13154. function _glGetProgramiv(program, pname, p) {
  13155. if (!p) {
  13156. GL.recordError(1281);
  13157. return;
  13158. }
  13159. if (program >= GL.counter) {
  13160. GL.recordError(1281);
  13161. return;
  13162. }
  13163. var ptable = GL.programInfos[program];
  13164. if (!ptable) {
  13165. GL.recordError(1282);
  13166. return;
  13167. }
  13168. if (pname == 35716) {
  13169. var log = GLctx.getProgramInfoLog(GL.programs[program]);
  13170. if (log === null) log = "(unknown error)";
  13171. HEAP32[p >> 2] = log.length + 1;
  13172. } else if (pname == 35719) {
  13173. HEAP32[p >> 2] = ptable.maxUniformLength;
  13174. } else if (pname == 35722) {
  13175. if (ptable.maxAttributeLength == -1) {
  13176. program = GL.programs[program];
  13177. var numAttribs = GLctx.getProgramParameter(program, GLctx.ACTIVE_ATTRIBUTES);
  13178. ptable.maxAttributeLength = 0;
  13179. for (var i = 0; i < numAttribs; ++i) {
  13180. var activeAttrib = GLctx.getActiveAttrib(program, i);
  13181. ptable.maxAttributeLength = Math.max(ptable.maxAttributeLength, activeAttrib.name.length + 1);
  13182. }
  13183. }
  13184. HEAP32[p >> 2] = ptable.maxAttributeLength;
  13185. } else if (pname == 35381) {
  13186. if (ptable.maxUniformBlockNameLength == -1) {
  13187. program = GL.programs[program];
  13188. var numBlocks = GLctx.getProgramParameter(program, GLctx.ACTIVE_UNIFORM_BLOCKS);
  13189. ptable.maxUniformBlockNameLength = 0;
  13190. for (var i = 0; i < numBlocks; ++i) {
  13191. var activeBlockName = GLctx.getActiveUniformBlockName(program, i);
  13192. ptable.maxUniformBlockNameLength = Math.max(ptable.maxUniformBlockNameLength, activeBlockName.length + 1);
  13193. }
  13194. }
  13195. HEAP32[p >> 2] = ptable.maxUniformBlockNameLength;
  13196. } else {
  13197. HEAP32[p >> 2] = GLctx.getProgramParameter(GL.programs[program], pname);
  13198. }
  13199. }
  13200. function _glGetRenderbufferParameteriv(target, pname, params) {
  13201. if (!params) {
  13202. GL.recordError(1281);
  13203. return;
  13204. }
  13205. HEAP32[params >> 2] = GLctx.getRenderbufferParameter(target, pname);
  13206. }
  13207. function _glGetShaderInfoLog(shader, maxLength, length, infoLog) {
  13208. var log = GLctx.getShaderInfoLog(GL.shaders[shader]);
  13209. if (log === null) log = "(unknown error)";
  13210. if (maxLength > 0 && infoLog) {
  13211. var numBytesWrittenExclNull = stringToUTF8(log, infoLog, maxLength);
  13212. if (length) HEAP32[length >> 2] = numBytesWrittenExclNull;
  13213. } else {
  13214. if (length) HEAP32[length >> 2] = 0;
  13215. }
  13216. }
  13217. function _glGetShaderPrecisionFormat(shaderType, precisionType, range, precision) {
  13218. var result = GLctx.getShaderPrecisionFormat(shaderType, precisionType);
  13219. HEAP32[range >> 2] = result.rangeMin;
  13220. HEAP32[range + 4 >> 2] = result.rangeMax;
  13221. HEAP32[precision >> 2] = result.precision;
  13222. }
  13223. function _glGetShaderSource(shader, bufSize, length, source) {
  13224. var result = GLctx.getShaderSource(GL.shaders[shader]);
  13225. if (!result) return;
  13226. if (bufSize > 0 && source) {
  13227. var numBytesWrittenExclNull = stringToUTF8(result, source, bufSize);
  13228. if (length) HEAP32[length >> 2] = numBytesWrittenExclNull;
  13229. } else {
  13230. if (length) HEAP32[length >> 2] = 0;
  13231. }
  13232. }
  13233. function _glGetShaderiv(shader, pname, p) {
  13234. if (!p) {
  13235. GL.recordError(1281);
  13236. return;
  13237. }
  13238. if (pname == 35716) {
  13239. var log = GLctx.getShaderInfoLog(GL.shaders[shader]);
  13240. if (log === null) log = "(unknown error)";
  13241. HEAP32[p >> 2] = log.length + 1;
  13242. } else if (pname == 35720) {
  13243. var source = GLctx.getShaderSource(GL.shaders[shader]);
  13244. var sourceLength = source === null || source.length == 0 ? 0 : source.length + 1;
  13245. HEAP32[p >> 2] = sourceLength;
  13246. } else {
  13247. HEAP32[p >> 2] = GLctx.getShaderParameter(GL.shaders[shader], pname);
  13248. }
  13249. }
  13250. function _glGetString(name_) {
  13251. if (GL.stringCache[name_]) return GL.stringCache[name_];
  13252. var ret;
  13253. switch (name_) {
  13254. case 7936:
  13255. case 7937:
  13256. case 37445:
  13257. case 37446:
  13258. ret = allocate(intArrayFromString(GLctx.getParameter(name_)), "i8", ALLOC_NORMAL);
  13259. break;
  13260. case 7938:
  13261. var glVersion = GLctx.getParameter(GLctx.VERSION);
  13262. if (GLctx.canvas.GLctxObject.version >= 2) glVersion = "OpenGL ES 3.0 (" + glVersion + ")"; else {
  13263. glVersion = "OpenGL ES 2.0 (" + glVersion + ")";
  13264. }
  13265. ret = allocate(intArrayFromString(glVersion), "i8", ALLOC_NORMAL);
  13266. break;
  13267. case 7939:
  13268. var exts = GLctx.getSupportedExtensions();
  13269. var gl_exts = [];
  13270. for (var i = 0; i < exts.length; ++i) {
  13271. gl_exts.push(exts[i]);
  13272. gl_exts.push("GL_" + exts[i]);
  13273. }
  13274. ret = allocate(intArrayFromString(gl_exts.join(" ")), "i8", ALLOC_NORMAL);
  13275. break;
  13276. case 35724:
  13277. var glslVersion = GLctx.getParameter(GLctx.SHADING_LANGUAGE_VERSION);
  13278. var ver_re = /^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/;
  13279. var ver_num = glslVersion.match(ver_re);
  13280. if (ver_num !== null) {
  13281. if (ver_num[1].length == 3) ver_num[1] = ver_num[1] + "0";
  13282. glslVersion = "OpenGL ES GLSL ES " + ver_num[1] + " (" + glslVersion + ")";
  13283. }
  13284. ret = allocate(intArrayFromString(glslVersion), "i8", ALLOC_NORMAL);
  13285. break;
  13286. default:
  13287. GL.recordError(1280);
  13288. return 0;
  13289. }
  13290. GL.stringCache[name_] = ret;
  13291. return ret;
  13292. }
  13293. function _glGetStringi(name, index) {
  13294. if (GLctx.canvas.GLctxObject.version < 2) {
  13295. GL.recordError(1282);
  13296. return 0;
  13297. }
  13298. var stringiCache = GL.stringiCache[name];
  13299. if (stringiCache) {
  13300. if (index < 0 || index >= stringiCache.length) {
  13301. GL.recordError(1281);
  13302. return 0;
  13303. }
  13304. return stringiCache[index];
  13305. }
  13306. switch (name) {
  13307. case 7939:
  13308. var exts = GLctx.getSupportedExtensions();
  13309. var gl_exts = [];
  13310. for (var i = 0; i < exts.length; ++i) {
  13311. gl_exts.push(allocate(intArrayFromString(exts[i]), "i8", ALLOC_NORMAL));
  13312. gl_exts.push(allocate(intArrayFromString("GL_" + exts[i]), "i8", ALLOC_NORMAL));
  13313. }
  13314. stringiCache = GL.stringiCache[name] = gl_exts;
  13315. if (index < 0 || index >= stringiCache.length) {
  13316. GL.recordError(1281);
  13317. return 0;
  13318. }
  13319. return stringiCache[index];
  13320. default:
  13321. GL.recordError(1280);
  13322. return 0;
  13323. }
  13324. }
  13325. function _glGetTexParameteriv(target, pname, params) {
  13326. if (!params) {
  13327. GL.recordError(1281);
  13328. return;
  13329. }
  13330. HEAP32[params >> 2] = GLctx.getTexParameter(target, pname);
  13331. }
  13332. function _glGetUniformBlockIndex(program, uniformBlockName) {
  13333. program = GL.programs[program];
  13334. uniformBlockName = Pointer_stringify(uniformBlockName);
  13335. return GLctx["getUniformBlockIndex"](program, uniformBlockName);
  13336. }
  13337. function _glGetUniformIndices(program, uniformCount, uniformNames, uniformIndices) {
  13338. if (!uniformIndices) {
  13339. GL.recordError(1281);
  13340. return;
  13341. }
  13342. if (uniformCount > 0 && (uniformNames == 0 || uniformIndices == 0)) {
  13343. GL.recordError(1281);
  13344. return;
  13345. }
  13346. program = GL.programs[program];
  13347. var names = [];
  13348. for (var i = 0; i < uniformCount; i++) names.push(Pointer_stringify(HEAP32[uniformNames + i * 4 >> 2]));
  13349. var result = GLctx["getUniformIndices"](program, names);
  13350. if (!result) return;
  13351. var len = result.length;
  13352. for (var i = 0; i < len; i++) {
  13353. HEAP32[uniformIndices + i * 4 >> 2] = result[i];
  13354. }
  13355. }
  13356. function _glGetUniformLocation(program, name) {
  13357. name = Pointer_stringify(name);
  13358. var arrayOffset = 0;
  13359. if (name.indexOf("]", name.length - 1) !== -1) {
  13360. var ls = name.lastIndexOf("[");
  13361. var arrayIndex = name.slice(ls + 1, -1);
  13362. if (arrayIndex.length > 0) {
  13363. arrayOffset = parseInt(arrayIndex);
  13364. if (arrayOffset < 0) {
  13365. return -1;
  13366. }
  13367. }
  13368. name = name.slice(0, ls);
  13369. }
  13370. var ptable = GL.programInfos[program];
  13371. if (!ptable) {
  13372. return -1;
  13373. }
  13374. var utable = ptable.uniforms;
  13375. var uniformInfo = utable[name];
  13376. if (uniformInfo && arrayOffset < uniformInfo[0]) {
  13377. return uniformInfo[1] + arrayOffset;
  13378. } else {
  13379. return -1;
  13380. }
  13381. }
  13382. function emscriptenWebGLGetUniform(program, location, params, type) {
  13383. if (!params) {
  13384. GL.recordError(1281);
  13385. return;
  13386. }
  13387. var data = GLctx.getUniform(GL.programs[program], GL.uniforms[location]);
  13388. if (typeof data == "number" || typeof data == "boolean") {
  13389. switch (type) {
  13390. case "Integer":
  13391. HEAP32[params >> 2] = data;
  13392. break;
  13393. case "Float":
  13394. HEAPF32[params >> 2] = data;
  13395. break;
  13396. default:
  13397. throw "internal emscriptenWebGLGetUniform() error, bad type: " + type;
  13398. }
  13399. } else {
  13400. for (var i = 0; i < data.length; i++) {
  13401. switch (type) {
  13402. case "Integer":
  13403. HEAP32[params + i * 4 >> 2] = data[i];
  13404. break;
  13405. case "Float":
  13406. HEAPF32[params + i * 4 >> 2] = data[i];
  13407. break;
  13408. default:
  13409. throw "internal emscriptenWebGLGetUniform() error, bad type: " + type;
  13410. }
  13411. }
  13412. }
  13413. }
  13414. function _glGetUniformiv(program, location, params) {
  13415. emscriptenWebGLGetUniform(program, location, params, "Integer");
  13416. }
  13417. function emscriptenWebGLGetVertexAttrib(index, pname, params, type) {
  13418. if (!params) {
  13419. GL.recordError(1281);
  13420. return;
  13421. }
  13422. var data = GLctx.getVertexAttrib(index, pname);
  13423. if (pname == 34975) {
  13424. HEAP32[params >> 2] = data["name"];
  13425. } else if (typeof data == "number" || typeof data == "boolean") {
  13426. switch (type) {
  13427. case "Integer":
  13428. HEAP32[params >> 2] = data;
  13429. break;
  13430. case "Float":
  13431. HEAPF32[params >> 2] = data;
  13432. break;
  13433. case "FloatToInteger":
  13434. HEAP32[params >> 2] = Math.fround(data);
  13435. break;
  13436. default:
  13437. throw "internal emscriptenWebGLGetVertexAttrib() error, bad type: " + type;
  13438. }
  13439. } else {
  13440. for (var i = 0; i < data.length; i++) {
  13441. switch (type) {
  13442. case "Integer":
  13443. HEAP32[params + i * 4 >> 2] = data[i];
  13444. break;
  13445. case "Float":
  13446. HEAPF32[params + i * 4 >> 2] = data[i];
  13447. break;
  13448. case "FloatToInteger":
  13449. HEAP32[params + i * 4 >> 2] = Math.fround(data[i]);
  13450. break;
  13451. default:
  13452. throw "internal emscriptenWebGLGetVertexAttrib() error, bad type: " + type;
  13453. }
  13454. }
  13455. }
  13456. }
  13457. function _glGetVertexAttribiv(index, pname, params) {
  13458. emscriptenWebGLGetVertexAttrib(index, pname, params, "FloatToInteger");
  13459. }
  13460. function _glInvalidateFramebuffer(target, numAttachments, attachments) {
  13461. var list = GL.tempFixedLengthArray[numAttachments];
  13462. for (var i = 0; i < numAttachments; i++) {
  13463. list[i] = HEAP32[attachments + i * 4 >> 2];
  13464. }
  13465. GLctx["invalidateFramebuffer"](target, list);
  13466. }
  13467. function _glIsEnabled(x0) {
  13468. return GLctx["isEnabled"](x0);
  13469. }
  13470. function _glIsVertexArray(array) {
  13471. var vao = GL.vaos[array];
  13472. if (!vao) return 0;
  13473. return GLctx["isVertexArray"](vao);
  13474. }
  13475. function _glLinkProgram(program) {
  13476. GLctx.linkProgram(GL.programs[program]);
  13477. GL.programInfos[program] = null;
  13478. GL.populateUniformTable(program);
  13479. }
  13480. function _glMapBufferRange(target, offset, length, access) {
  13481. if (access != 26 && access != 10) {
  13482. err("glMapBufferRange is only supported when access is MAP_WRITE|INVALIDATE_BUFFER");
  13483. return 0;
  13484. }
  13485. if (!emscriptenWebGLValidateMapBufferTarget(target)) {
  13486. GL.recordError(1280);
  13487. err("GL_INVALID_ENUM in glMapBufferRange");
  13488. return 0;
  13489. }
  13490. var mem = _malloc(length);
  13491. if (!mem) return 0;
  13492. GL.mappedBuffers[emscriptenWebGLGetBufferBinding(target)] = {
  13493. offset: offset,
  13494. length: length,
  13495. mem: mem,
  13496. access: access
  13497. };
  13498. return mem;
  13499. }
  13500. function _glPixelStorei(pname, param) {
  13501. if (pname == 3333) {
  13502. GL.packAlignment = param;
  13503. } else if (pname == 3317) {
  13504. GL.unpackAlignment = param;
  13505. }
  13506. GLctx.pixelStorei(pname, param);
  13507. }
  13508. function _glPolygonOffset(x0, x1) {
  13509. GLctx["polygonOffset"](x0, x1);
  13510. }
  13511. function _glProgramBinary(program, binaryFormat, binary, length) {
  13512. GL.recordError(1280);
  13513. }
  13514. function _glProgramParameteri(program, pname, value) {
  13515. GL.recordError(1280);
  13516. }
  13517. function _glReadBuffer(x0) {
  13518. GLctx["readBuffer"](x0);
  13519. }
  13520. function emscriptenWebGLComputeImageSize(width, height, sizePerPixel, alignment) {
  13521. function roundedToNextMultipleOf(x, y) {
  13522. return Math.floor((x + y - 1) / y) * y;
  13523. }
  13524. var plainRowSize = width * sizePerPixel;
  13525. var alignedRowSize = roundedToNextMultipleOf(plainRowSize, alignment);
  13526. return height <= 0 ? 0 : (height - 1) * alignedRowSize + plainRowSize;
  13527. }
  13528. function emscriptenWebGLGetTexPixelData(type, format, width, height, pixels, internalFormat) {
  13529. var sizePerPixel;
  13530. var numChannels;
  13531. switch (format) {
  13532. case 6406:
  13533. case 6409:
  13534. case 6402:
  13535. case 6403:
  13536. case 36244:
  13537. numChannels = 1;
  13538. break;
  13539. case 6410:
  13540. case 33319:
  13541. case 33320:
  13542. numChannels = 2;
  13543. break;
  13544. case 6407:
  13545. case 35904:
  13546. case 36248:
  13547. numChannels = 3;
  13548. break;
  13549. case 6408:
  13550. case 35906:
  13551. case 36249:
  13552. numChannels = 4;
  13553. break;
  13554. default:
  13555. GL.recordError(1280);
  13556. return null;
  13557. }
  13558. switch (type) {
  13559. case 5121:
  13560. case 5120:
  13561. sizePerPixel = numChannels * 1;
  13562. break;
  13563. case 5123:
  13564. case 36193:
  13565. case 5131:
  13566. case 5122:
  13567. sizePerPixel = numChannels * 2;
  13568. break;
  13569. case 5125:
  13570. case 5126:
  13571. case 5124:
  13572. sizePerPixel = numChannels * 4;
  13573. break;
  13574. case 34042:
  13575. case 35902:
  13576. case 33640:
  13577. case 35899:
  13578. case 34042:
  13579. sizePerPixel = 4;
  13580. break;
  13581. case 33635:
  13582. case 32819:
  13583. case 32820:
  13584. sizePerPixel = 2;
  13585. break;
  13586. default:
  13587. GL.recordError(1280);
  13588. return null;
  13589. }
  13590. var bytes = emscriptenWebGLComputeImageSize(width, height, sizePerPixel, GL.unpackAlignment);
  13591. switch (type) {
  13592. case 5120:
  13593. return HEAP8.subarray(pixels, pixels + bytes);
  13594. case 5121:
  13595. return HEAPU8.subarray(pixels, pixels + bytes);
  13596. case 5122:
  13597. return HEAP16.subarray(pixels >> 1, pixels + bytes >> 1);
  13598. case 5124:
  13599. return HEAP32.subarray(pixels >> 2, pixels + bytes >> 2);
  13600. case 5126:
  13601. return HEAPF32.subarray(pixels >> 2, pixels + bytes >> 2);
  13602. case 5125:
  13603. case 34042:
  13604. case 35902:
  13605. case 33640:
  13606. case 35899:
  13607. case 34042:
  13608. return HEAPU32.subarray(pixels >> 2, pixels + bytes >> 2);
  13609. case 5123:
  13610. case 33635:
  13611. case 32819:
  13612. case 32820:
  13613. case 36193:
  13614. case 5131:
  13615. return HEAPU16.subarray(pixels >> 1, pixels + bytes >> 1);
  13616. default:
  13617. GL.recordError(1280);
  13618. return null;
  13619. }
  13620. }
  13621. function emscriptenWebGLGetHeapForType(type) {
  13622. switch (type) {
  13623. case 5120:
  13624. return HEAP8;
  13625. case 5121:
  13626. return HEAPU8;
  13627. case 5122:
  13628. return HEAP16;
  13629. case 5123:
  13630. case 33635:
  13631. case 32819:
  13632. case 32820:
  13633. case 36193:
  13634. case 5131:
  13635. return HEAPU16;
  13636. case 5124:
  13637. return HEAP32;
  13638. case 5125:
  13639. case 34042:
  13640. case 35902:
  13641. case 33640:
  13642. case 35899:
  13643. case 34042:
  13644. return HEAPU32;
  13645. case 5126:
  13646. return HEAPF32;
  13647. default:
  13648. return null;
  13649. }
  13650. }
  13651. function emscriptenWebGLGetShiftForType(type) {
  13652. switch (type) {
  13653. case 5120:
  13654. case 5121:
  13655. return 0;
  13656. case 5122:
  13657. case 5123:
  13658. case 33635:
  13659. case 32819:
  13660. case 32820:
  13661. case 36193:
  13662. case 5131:
  13663. return 1;
  13664. case 5124:
  13665. case 5126:
  13666. case 5125:
  13667. case 34042:
  13668. case 35902:
  13669. case 33640:
  13670. case 35899:
  13671. case 34042:
  13672. return 2;
  13673. default:
  13674. return 0;
  13675. }
  13676. }
  13677. function _glReadPixels(x, y, width, height, format, type, pixels) {
  13678. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13679. if (GLctx.currentPixelPackBufferBinding) {
  13680. GLctx.readPixels(x, y, width, height, format, type, pixels);
  13681. } else {
  13682. GLctx.readPixels(x, y, width, height, format, type, emscriptenWebGLGetHeapForType(type), pixels >> emscriptenWebGLGetShiftForType(type));
  13683. }
  13684. return;
  13685. }
  13686. var pixelData = emscriptenWebGLGetTexPixelData(type, format, width, height, pixels, format);
  13687. if (!pixelData) {
  13688. GL.recordError(1280);
  13689. return;
  13690. }
  13691. GLctx.readPixels(x, y, width, height, format, type, pixelData);
  13692. }
  13693. function _glRenderbufferStorage(x0, x1, x2, x3) {
  13694. GLctx["renderbufferStorage"](x0, x1, x2, x3);
  13695. }
  13696. function _glRenderbufferStorageMultisample(x0, x1, x2, x3, x4) {
  13697. GLctx["renderbufferStorageMultisample"](x0, x1, x2, x3, x4);
  13698. }
  13699. function _glSamplerParameteri(sampler, pname, param) {
  13700. GLctx["samplerParameteri"](sampler ? GL.samplers[sampler] : null, pname, param);
  13701. }
  13702. function _glScissor(x0, x1, x2, x3) {
  13703. GLctx["scissor"](x0, x1, x2, x3);
  13704. }
  13705. function _glShaderSource(shader, count, string, length) {
  13706. var source = GL.getSource(shader, count, string, length);
  13707. GLctx.shaderSource(GL.shaders[shader], source);
  13708. }
  13709. function _glStencilFuncSeparate(x0, x1, x2, x3) {
  13710. GLctx["stencilFuncSeparate"](x0, x1, x2, x3);
  13711. }
  13712. function _glStencilMask(x0) {
  13713. GLctx["stencilMask"](x0);
  13714. }
  13715. function _glStencilOpSeparate(x0, x1, x2, x3) {
  13716. GLctx["stencilOpSeparate"](x0, x1, x2, x3);
  13717. }
  13718. function _glTexImage2D(target, level, internalFormat, width, height, border, format, type, pixels) {
  13719. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13720. if (GLctx.currentPixelUnpackBufferBinding) {
  13721. GLctx.texImage2D(target, level, internalFormat, width, height, border, format, type, pixels);
  13722. } else if (pixels != 0) {
  13723. GLctx.texImage2D(target, level, internalFormat, width, height, border, format, type, emscriptenWebGLGetHeapForType(type), pixels >> emscriptenWebGLGetShiftForType(type));
  13724. } else {
  13725. GLctx.texImage2D(target, level, internalFormat, width, height, border, format, type, null);
  13726. }
  13727. return;
  13728. }
  13729. var pixelData = null;
  13730. if (pixels) pixelData = emscriptenWebGLGetTexPixelData(type, format, width, height, pixels, internalFormat);
  13731. GLctx.texImage2D(target, level, internalFormat, width, height, border, format, type, pixelData);
  13732. }
  13733. function _glTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, pixels) {
  13734. if (GLctx.currentPixelUnpackBufferBinding) {
  13735. GLctx["texImage3D"](target, level, internalFormat, width, height, depth, border, format, type, pixels);
  13736. } else if (pixels != 0) {
  13737. GLctx["texImage3D"](target, level, internalFormat, width, height, depth, border, format, type, emscriptenWebGLGetHeapForType(type), pixels >> emscriptenWebGLGetShiftForType(type));
  13738. } else {
  13739. GLctx["texImage3D"](target, level, internalFormat, width, height, depth, border, format, type, null);
  13740. }
  13741. }
  13742. function _glTexParameterf(x0, x1, x2) {
  13743. GLctx["texParameterf"](x0, x1, x2);
  13744. }
  13745. function _glTexParameteri(x0, x1, x2) {
  13746. GLctx["texParameteri"](x0, x1, x2);
  13747. }
  13748. function _glTexParameteriv(target, pname, params) {
  13749. var param = HEAP32[params >> 2];
  13750. GLctx.texParameteri(target, pname, param);
  13751. }
  13752. function _glTexStorage2D(x0, x1, x2, x3, x4) {
  13753. GLctx["texStorage2D"](x0, x1, x2, x3, x4);
  13754. }
  13755. function _glTexStorage3D(x0, x1, x2, x3, x4, x5) {
  13756. GLctx["texStorage3D"](x0, x1, x2, x3, x4, x5);
  13757. }
  13758. function _glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels) {
  13759. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13760. if (GLctx.currentPixelUnpackBufferBinding) {
  13761. GLctx.texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
  13762. } else if (pixels != 0) {
  13763. GLctx.texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, emscriptenWebGLGetHeapForType(type), pixels >> emscriptenWebGLGetShiftForType(type));
  13764. } else {
  13765. GLctx.texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, null);
  13766. }
  13767. return;
  13768. }
  13769. var pixelData = null;
  13770. if (pixels) pixelData = emscriptenWebGLGetTexPixelData(type, format, width, height, pixels, 0);
  13771. GLctx.texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixelData);
  13772. }
  13773. function _glTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels) {
  13774. if (GLctx.currentPixelUnpackBufferBinding) {
  13775. GLctx["texSubImage3D"](target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
  13776. } else if (pixels != 0) {
  13777. GLctx["texSubImage3D"](target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, emscriptenWebGLGetHeapForType(type), pixels >> emscriptenWebGLGetShiftForType(type));
  13778. } else {
  13779. GLctx["texSubImage3D"](target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, null);
  13780. }
  13781. }
  13782. function _glTransformFeedbackVaryings(program, count, varyings, bufferMode) {
  13783. program = GL.programs[program];
  13784. var vars = [];
  13785. for (var i = 0; i < count; i++) vars.push(Pointer_stringify(HEAP32[varyings + i * 4 >> 2]));
  13786. GLctx["transformFeedbackVaryings"](program, vars, bufferMode);
  13787. }
  13788. function _glUniform1fv(location, count, value) {
  13789. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13790. GLctx.uniform1fv(GL.uniforms[location], HEAPF32, value >> 2, count);
  13791. return;
  13792. }
  13793. var view;
  13794. if (count <= GL.MINI_TEMP_BUFFER_SIZE) {
  13795. view = GL.miniTempBufferViews[count - 1];
  13796. for (var i = 0; i < count; ++i) {
  13797. view[i] = HEAPF32[value + 4 * i >> 2];
  13798. }
  13799. } else {
  13800. view = HEAPF32.subarray(value >> 2, value + count * 4 >> 2);
  13801. }
  13802. GLctx.uniform1fv(GL.uniforms[location], view);
  13803. }
  13804. function _glUniform1i(location, v0) {
  13805. GLctx.uniform1i(GL.uniforms[location], v0);
  13806. }
  13807. function _glUniform1iv(location, count, value) {
  13808. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13809. GLctx.uniform1iv(GL.uniforms[location], HEAP32, value >> 2, count);
  13810. return;
  13811. }
  13812. GLctx.uniform1iv(GL.uniforms[location], HEAP32.subarray(value >> 2, value + count * 4 >> 2));
  13813. }
  13814. function _glUniform1uiv(location, count, value) {
  13815. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13816. GLctx.uniform1uiv(GL.uniforms[location], HEAPU32, value >> 2, count);
  13817. } else {
  13818. GLctx.uniform1uiv(GL.uniforms[location], HEAPU32.subarray(value >> 2, value + count * 4 >> 2));
  13819. }
  13820. }
  13821. function _glUniform2fv(location, count, value) {
  13822. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13823. GLctx.uniform2fv(GL.uniforms[location], HEAPF32, value >> 2, count * 2);
  13824. return;
  13825. }
  13826. var view;
  13827. if (2 * count <= GL.MINI_TEMP_BUFFER_SIZE) {
  13828. view = GL.miniTempBufferViews[2 * count - 1];
  13829. for (var i = 0; i < 2 * count; i += 2) {
  13830. view[i] = HEAPF32[value + 4 * i >> 2];
  13831. view[i + 1] = HEAPF32[value + (4 * i + 4) >> 2];
  13832. }
  13833. } else {
  13834. view = HEAPF32.subarray(value >> 2, value + count * 8 >> 2);
  13835. }
  13836. GLctx.uniform2fv(GL.uniforms[location], view);
  13837. }
  13838. function _glUniform2iv(location, count, value) {
  13839. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13840. GLctx.uniform2iv(GL.uniforms[location], HEAP32, value >> 2, count * 2);
  13841. return;
  13842. }
  13843. GLctx.uniform2iv(GL.uniforms[location], HEAP32.subarray(value >> 2, value + count * 8 >> 2));
  13844. }
  13845. function _glUniform2uiv(location, count, value) {
  13846. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13847. GLctx.uniform2uiv(GL.uniforms[location], HEAPU32, value >> 2, count * 2);
  13848. } else {
  13849. GLctx.uniform2uiv(GL.uniforms[location], HEAPU32.subarray(value >> 2, value + count * 8 >> 2));
  13850. }
  13851. }
  13852. function _glUniform3fv(location, count, value) {
  13853. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13854. GLctx.uniform3fv(GL.uniforms[location], HEAPF32, value >> 2, count * 3);
  13855. return;
  13856. }
  13857. var view;
  13858. if (3 * count <= GL.MINI_TEMP_BUFFER_SIZE) {
  13859. view = GL.miniTempBufferViews[3 * count - 1];
  13860. for (var i = 0; i < 3 * count; i += 3) {
  13861. view[i] = HEAPF32[value + 4 * i >> 2];
  13862. view[i + 1] = HEAPF32[value + (4 * i + 4) >> 2];
  13863. view[i + 2] = HEAPF32[value + (4 * i + 8) >> 2];
  13864. }
  13865. } else {
  13866. view = HEAPF32.subarray(value >> 2, value + count * 12 >> 2);
  13867. }
  13868. GLctx.uniform3fv(GL.uniforms[location], view);
  13869. }
  13870. function _glUniform3iv(location, count, value) {
  13871. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13872. GLctx.uniform3iv(GL.uniforms[location], HEAP32, value >> 2, count * 3);
  13873. return;
  13874. }
  13875. GLctx.uniform3iv(GL.uniforms[location], HEAP32.subarray(value >> 2, value + count * 12 >> 2));
  13876. }
  13877. function _glUniform3uiv(location, count, value) {
  13878. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13879. GLctx.uniform3uiv(GL.uniforms[location], HEAPU32, value >> 2, count * 3);
  13880. } else {
  13881. GLctx.uniform3uiv(GL.uniforms[location], HEAPU32.subarray(value >> 2, value + count * 12 >> 2));
  13882. }
  13883. }
  13884. function _glUniform4fv(location, count, value) {
  13885. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13886. GLctx.uniform4fv(GL.uniforms[location], HEAPF32, value >> 2, count * 4);
  13887. return;
  13888. }
  13889. var view;
  13890. if (4 * count <= GL.MINI_TEMP_BUFFER_SIZE) {
  13891. view = GL.miniTempBufferViews[4 * count - 1];
  13892. for (var i = 0; i < 4 * count; i += 4) {
  13893. view[i] = HEAPF32[value + 4 * i >> 2];
  13894. view[i + 1] = HEAPF32[value + (4 * i + 4) >> 2];
  13895. view[i + 2] = HEAPF32[value + (4 * i + 8) >> 2];
  13896. view[i + 3] = HEAPF32[value + (4 * i + 12) >> 2];
  13897. }
  13898. } else {
  13899. view = HEAPF32.subarray(value >> 2, value + count * 16 >> 2);
  13900. }
  13901. GLctx.uniform4fv(GL.uniforms[location], view);
  13902. }
  13903. function _glUniform4iv(location, count, value) {
  13904. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13905. GLctx.uniform4iv(GL.uniforms[location], HEAP32, value >> 2, count * 4);
  13906. return;
  13907. }
  13908. GLctx.uniform4iv(GL.uniforms[location], HEAP32.subarray(value >> 2, value + count * 16 >> 2));
  13909. }
  13910. function _glUniform4uiv(location, count, value) {
  13911. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13912. GLctx.uniform4uiv(GL.uniforms[location], HEAPU32, value >> 2, count * 4);
  13913. } else {
  13914. GLctx.uniform4uiv(GL.uniforms[location], HEAPU32.subarray(value >> 2, value + count * 16 >> 2));
  13915. }
  13916. }
  13917. function _glUniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding) {
  13918. program = GL.programs[program];
  13919. GLctx["uniformBlockBinding"](program, uniformBlockIndex, uniformBlockBinding);
  13920. }
  13921. function _glUniformMatrix3fv(location, count, transpose, value) {
  13922. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13923. GLctx.uniformMatrix3fv(GL.uniforms[location], !!transpose, HEAPF32, value >> 2, count * 9);
  13924. return;
  13925. }
  13926. var view;
  13927. if (9 * count <= GL.MINI_TEMP_BUFFER_SIZE) {
  13928. view = GL.miniTempBufferViews[9 * count - 1];
  13929. for (var i = 0; i < 9 * count; i += 9) {
  13930. view[i] = HEAPF32[value + 4 * i >> 2];
  13931. view[i + 1] = HEAPF32[value + (4 * i + 4) >> 2];
  13932. view[i + 2] = HEAPF32[value + (4 * i + 8) >> 2];
  13933. view[i + 3] = HEAPF32[value + (4 * i + 12) >> 2];
  13934. view[i + 4] = HEAPF32[value + (4 * i + 16) >> 2];
  13935. view[i + 5] = HEAPF32[value + (4 * i + 20) >> 2];
  13936. view[i + 6] = HEAPF32[value + (4 * i + 24) >> 2];
  13937. view[i + 7] = HEAPF32[value + (4 * i + 28) >> 2];
  13938. view[i + 8] = HEAPF32[value + (4 * i + 32) >> 2];
  13939. }
  13940. } else {
  13941. view = HEAPF32.subarray(value >> 2, value + count * 36 >> 2);
  13942. }
  13943. GLctx.uniformMatrix3fv(GL.uniforms[location], !!transpose, view);
  13944. }
  13945. function _glUniformMatrix4fv(location, count, transpose, value) {
  13946. if (GL.currentContext.supportsWebGL2EntryPoints) {
  13947. GLctx.uniformMatrix4fv(GL.uniforms[location], !!transpose, HEAPF32, value >> 2, count * 16);
  13948. return;
  13949. }
  13950. var view;
  13951. if (16 * count <= GL.MINI_TEMP_BUFFER_SIZE) {
  13952. view = GL.miniTempBufferViews[16 * count - 1];
  13953. for (var i = 0; i < 16 * count; i += 16) {
  13954. view[i] = HEAPF32[value + 4 * i >> 2];
  13955. view[i + 1] = HEAPF32[value + (4 * i + 4) >> 2];
  13956. view[i + 2] = HEAPF32[value + (4 * i + 8) >> 2];
  13957. view[i + 3] = HEAPF32[value + (4 * i + 12) >> 2];
  13958. view[i + 4] = HEAPF32[value + (4 * i + 16) >> 2];
  13959. view[i + 5] = HEAPF32[value + (4 * i + 20) >> 2];
  13960. view[i + 6] = HEAPF32[value + (4 * i + 24) >> 2];
  13961. view[i + 7] = HEAPF32[value + (4 * i + 28) >> 2];
  13962. view[i + 8] = HEAPF32[value + (4 * i + 32) >> 2];
  13963. view[i + 9] = HEAPF32[value + (4 * i + 36) >> 2];
  13964. view[i + 10] = HEAPF32[value + (4 * i + 40) >> 2];
  13965. view[i + 11] = HEAPF32[value + (4 * i + 44) >> 2];
  13966. view[i + 12] = HEAPF32[value + (4 * i + 48) >> 2];
  13967. view[i + 13] = HEAPF32[value + (4 * i + 52) >> 2];
  13968. view[i + 14] = HEAPF32[value + (4 * i + 56) >> 2];
  13969. view[i + 15] = HEAPF32[value + (4 * i + 60) >> 2];
  13970. }
  13971. } else {
  13972. view = HEAPF32.subarray(value >> 2, value + count * 64 >> 2);
  13973. }
  13974. GLctx.uniformMatrix4fv(GL.uniforms[location], !!transpose, view);
  13975. }
  13976. function _glUnmapBuffer(target) {
  13977. if (!emscriptenWebGLValidateMapBufferTarget(target)) {
  13978. GL.recordError(1280);
  13979. err("GL_INVALID_ENUM in glUnmapBuffer");
  13980. return 0;
  13981. }
  13982. var buffer = emscriptenWebGLGetBufferBinding(target);
  13983. var mapping = GL.mappedBuffers[buffer];
  13984. if (!mapping) {
  13985. GL.recordError(1282);
  13986. Module.printError("buffer was never mapped in glUnmapBuffer");
  13987. return 0;
  13988. }
  13989. GL.mappedBuffers[buffer] = null;
  13990. if (!(mapping.access & 16)) if (GL.currentContext.supportsWebGL2EntryPoints) {
  13991. GLctx.bufferSubData(target, mapping.offset, HEAPU8, mapping.mem, mapping.length);
  13992. } else {
  13993. GLctx.bufferSubData(target, mapping.offset, HEAPU8.subarray(mapping.mem, mapping.mem + mapping.length));
  13994. }
  13995. _free(mapping.mem);
  13996. return 1;
  13997. }
  13998. function _glUseProgram(program) {
  13999. GLctx.useProgram(program ? GL.programs[program] : null);
  14000. }
  14001. function _glValidateProgram(program) {
  14002. GLctx.validateProgram(GL.programs[program]);
  14003. }
  14004. function _glVertexAttrib4f(x0, x1, x2, x3, x4) {
  14005. GLctx["vertexAttrib4f"](x0, x1, x2, x3, x4);
  14006. }
  14007. function _glVertexAttrib4fv(index, v) {
  14008. GLctx.vertexAttrib4f(index, HEAPF32[v >> 2], HEAPF32[v + 4 >> 2], HEAPF32[v + 8 >> 2], HEAPF32[v + 12 >> 2]);
  14009. }
  14010. function _glVertexAttribIPointer(index, size, type, stride, ptr) {
  14011. var cb = GL.currentContext.clientBuffers[index];
  14012. assert(cb, index);
  14013. if (!GL.currArrayBuffer) {
  14014. cb.size = size;
  14015. cb.type = type;
  14016. cb.normalized = false;
  14017. cb.stride = stride;
  14018. cb.ptr = ptr;
  14019. cb.clientside = true;
  14020. return;
  14021. }
  14022. cb.clientside = false;
  14023. GLctx.vertexAttribIPointer(index, size, type, stride, ptr);
  14024. }
  14025. function _glVertexAttribPointer(index, size, type, normalized, stride, ptr) {
  14026. GLctx.vertexAttribPointer(index, size, type, !!normalized, stride, ptr);
  14027. }
  14028. function _glViewport(x0, x1, x2, x3) {
  14029. GLctx["viewport"](x0, x1, x2, x3);
  14030. }
  14031. var ___tm_current = STATICTOP;
  14032. STATICTOP += 48;
  14033. var ___tm_timezone = allocate(intArrayFromString("GMT"), "i8", ALLOC_STATIC);
  14034. function _gmtime_r(time, tmPtr) {
  14035. var date = new Date(HEAP32[time >> 2] * 1e3);
  14036. HEAP32[tmPtr >> 2] = date.getUTCSeconds();
  14037. HEAP32[tmPtr + 4 >> 2] = date.getUTCMinutes();
  14038. HEAP32[tmPtr + 8 >> 2] = date.getUTCHours();
  14039. HEAP32[tmPtr + 12 >> 2] = date.getUTCDate();
  14040. HEAP32[tmPtr + 16 >> 2] = date.getUTCMonth();
  14041. HEAP32[tmPtr + 20 >> 2] = date.getUTCFullYear() - 1900;
  14042. HEAP32[tmPtr + 24 >> 2] = date.getUTCDay();
  14043. HEAP32[tmPtr + 36 >> 2] = 0;
  14044. HEAP32[tmPtr + 32 >> 2] = 0;
  14045. var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0);
  14046. var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0;
  14047. HEAP32[tmPtr + 28 >> 2] = yday;
  14048. HEAP32[tmPtr + 40 >> 2] = ___tm_timezone;
  14049. return tmPtr;
  14050. }
  14051. function _gmtime(time) {
  14052. return _gmtime_r(time, ___tm_current);
  14053. }
  14054. function _inet_addr(ptr) {
  14055. var addr = __inet_pton4_raw(Pointer_stringify(ptr));
  14056. if (addr === null) {
  14057. return -1;
  14058. }
  14059. return addr;
  14060. }
  14061. var _llvm_ceil_f32 = Math_ceil;
  14062. var _llvm_ceil_f64 = Math_ceil;
  14063. function _llvm_copysign_f64(x, y) {
  14064. return y < 0 || y === 0 && 1 / y < 0 ? -Math_abs(x) : Math_abs(x);
  14065. }
  14066. var _llvm_cos_f32 = Math_cos;
  14067. function _llvm_cttz_i32(x) {
  14068. x = x | 0;
  14069. return (x ? 31 - (Math_clz32(x ^ x - 1) | 0) | 0 : 32) | 0;
  14070. }
  14071. function _llvm_eh_typeid_for(type) {
  14072. return type;
  14073. }
  14074. function _llvm_exp2_f32(x) {
  14075. return Math.pow(2, x);
  14076. }
  14077. var _llvm_fabs_f32 = Math_abs;
  14078. var _llvm_fabs_f64 = Math_abs;
  14079. var _llvm_floor_f32 = Math_floor;
  14080. var _llvm_floor_f64 = Math_floor;
  14081. function _llvm_log10_f32(x) {
  14082. return Math.log(x) / Math.LN10;
  14083. }
  14084. function _llvm_log10_f64() {
  14085. return _llvm_log10_f32.apply(null, arguments);
  14086. }
  14087. function _llvm_log2_f32(x) {
  14088. return Math.log(x) / Math.LN2;
  14089. }
  14090. var _llvm_pow_f64 = Math_pow;
  14091. var _llvm_sin_f32 = Math_sin;
  14092. var _llvm_sqrt_f32 = Math_sqrt;
  14093. function _llvm_trap() {
  14094. abort("trap!");
  14095. }
  14096. var _llvm_trunc_f32 = Math_trunc;
  14097. function _tzset() {
  14098. if (_tzset.called) return;
  14099. _tzset.called = true;
  14100. HEAP32[__get_timezone() >> 2] = (new Date).getTimezoneOffset() * 60;
  14101. var winter = new Date(2e3, 0, 1);
  14102. var summer = new Date(2e3, 6, 1);
  14103. HEAP32[__get_daylight() >> 2] = Number(winter.getTimezoneOffset() != summer.getTimezoneOffset());
  14104. function extractZone(date) {
  14105. var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/);
  14106. return match ? match[1] : "GMT";
  14107. }
  14108. var winterName = extractZone(winter);
  14109. var summerName = extractZone(summer);
  14110. var winterNamePtr = allocate(intArrayFromString(winterName), "i8", ALLOC_NORMAL);
  14111. var summerNamePtr = allocate(intArrayFromString(summerName), "i8", ALLOC_NORMAL);
  14112. if (summer.getTimezoneOffset() < winter.getTimezoneOffset()) {
  14113. HEAP32[__get_tzname() >> 2] = winterNamePtr;
  14114. HEAP32[__get_tzname() + 4 >> 2] = summerNamePtr;
  14115. } else {
  14116. HEAP32[__get_tzname() >> 2] = summerNamePtr;
  14117. HEAP32[__get_tzname() + 4 >> 2] = winterNamePtr;
  14118. }
  14119. }
  14120. function _localtime_r(time, tmPtr) {
  14121. _tzset();
  14122. var date = new Date(HEAP32[time >> 2] * 1e3);
  14123. HEAP32[tmPtr >> 2] = date.getSeconds();
  14124. HEAP32[tmPtr + 4 >> 2] = date.getMinutes();
  14125. HEAP32[tmPtr + 8 >> 2] = date.getHours();
  14126. HEAP32[tmPtr + 12 >> 2] = date.getDate();
  14127. HEAP32[tmPtr + 16 >> 2] = date.getMonth();
  14128. HEAP32[tmPtr + 20 >> 2] = date.getFullYear() - 1900;
  14129. HEAP32[tmPtr + 24 >> 2] = date.getDay();
  14130. var start = new Date(date.getFullYear(), 0, 1);
  14131. var yday = (date.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24) | 0;
  14132. HEAP32[tmPtr + 28 >> 2] = yday;
  14133. HEAP32[tmPtr + 36 >> 2] = -(date.getTimezoneOffset() * 60);
  14134. var summerOffset = (new Date(2e3, 6, 1)).getTimezoneOffset();
  14135. var winterOffset = start.getTimezoneOffset();
  14136. var dst = (summerOffset != winterOffset && date.getTimezoneOffset() == Math.min(winterOffset, summerOffset)) | 0;
  14137. HEAP32[tmPtr + 32 >> 2] = dst;
  14138. var zonePtr = HEAP32[__get_tzname() + (dst ? 4 : 0) >> 2];
  14139. HEAP32[tmPtr + 40 >> 2] = zonePtr;
  14140. return tmPtr;
  14141. }
  14142. function _localtime(time) {
  14143. return _localtime_r(time, ___tm_current);
  14144. }
  14145. function _emscripten_memcpy_big(dest, src, num) {
  14146. HEAPU8.set(HEAPU8.subarray(src, src + num), dest);
  14147. return dest;
  14148. }
  14149. function _mktime(tmPtr) {
  14150. _tzset();
  14151. var date = new Date(HEAP32[tmPtr + 20 >> 2] + 1900, HEAP32[tmPtr + 16 >> 2], HEAP32[tmPtr + 12 >> 2], HEAP32[tmPtr + 8 >> 2], HEAP32[tmPtr + 4 >> 2], HEAP32[tmPtr >> 2], 0);
  14152. var dst = HEAP32[tmPtr + 32 >> 2];
  14153. var guessedOffset = date.getTimezoneOffset();
  14154. var start = new Date(date.getFullYear(), 0, 1);
  14155. var summerOffset = (new Date(2e3, 6, 1)).getTimezoneOffset();
  14156. var winterOffset = start.getTimezoneOffset();
  14157. var dstOffset = Math.min(winterOffset, summerOffset);
  14158. if (dst < 0) {
  14159. HEAP32[tmPtr + 32 >> 2] = Number(summerOffset != winterOffset && dstOffset == guessedOffset);
  14160. } else if (dst > 0 != (dstOffset == guessedOffset)) {
  14161. var nonDstOffset = Math.max(winterOffset, summerOffset);
  14162. var trueOffset = dst > 0 ? dstOffset : nonDstOffset;
  14163. date.setTime(date.getTime() + (trueOffset - guessedOffset) * 6e4);
  14164. }
  14165. HEAP32[tmPtr + 24 >> 2] = date.getDay();
  14166. var yday = (date.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24) | 0;
  14167. HEAP32[tmPtr + 28 >> 2] = yday;
  14168. return date.getTime() / 1e3 | 0;
  14169. }
  14170. function _pthread_cond_destroy() {
  14171. return 0;
  14172. }
  14173. function _pthread_cond_init() {
  14174. return 0;
  14175. }
  14176. function _pthread_cond_timedwait() {
  14177. return 0;
  14178. }
  14179. function _pthread_cond_wait() {
  14180. return 0;
  14181. }
  14182. var PTHREAD_SPECIFIC = {};
  14183. function _pthread_getspecific(key) {
  14184. return PTHREAD_SPECIFIC[key] || 0;
  14185. }
  14186. var PTHREAD_SPECIFIC_NEXT_KEY = 1;
  14187. function _pthread_key_create(key, destructor) {
  14188. if (key == 0) {
  14189. return ERRNO_CODES.EINVAL;
  14190. }
  14191. HEAP32[key >> 2] = PTHREAD_SPECIFIC_NEXT_KEY;
  14192. PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY] = 0;
  14193. PTHREAD_SPECIFIC_NEXT_KEY++;
  14194. return 0;
  14195. }
  14196. function _pthread_key_delete(key) {
  14197. if (key in PTHREAD_SPECIFIC) {
  14198. delete PTHREAD_SPECIFIC[key];
  14199. return 0;
  14200. }
  14201. return ERRNO_CODES.EINVAL;
  14202. }
  14203. function _pthread_mutex_destroy() {}
  14204. function _pthread_mutex_init() {}
  14205. function _pthread_mutexattr_destroy() {}
  14206. function _pthread_mutexattr_init() {}
  14207. function _pthread_mutexattr_setprotocol() {}
  14208. function _pthread_mutexattr_settype() {}
  14209. function _pthread_once(ptr, func) {
  14210. if (!_pthread_once.seen) _pthread_once.seen = {};
  14211. if (ptr in _pthread_once.seen) return;
  14212. Module["dynCall_v"](func);
  14213. _pthread_once.seen[ptr] = 1;
  14214. }
  14215. function _pthread_setspecific(key, value) {
  14216. if (!(key in PTHREAD_SPECIFIC)) {
  14217. return ERRNO_CODES.EINVAL;
  14218. }
  14219. PTHREAD_SPECIFIC[key] = value;
  14220. return 0;
  14221. }
  14222. function _sched_yield() {
  14223. return 0;
  14224. }
  14225. function _setenv(envname, envval, overwrite) {
  14226. if (envname === 0) {
  14227. ___setErrNo(ERRNO_CODES.EINVAL);
  14228. return -1;
  14229. }
  14230. var name = Pointer_stringify(envname);
  14231. var val = Pointer_stringify(envval);
  14232. if (name === "" || name.indexOf("=") !== -1) {
  14233. ___setErrNo(ERRNO_CODES.EINVAL);
  14234. return -1;
  14235. }
  14236. if (ENV.hasOwnProperty(name) && !overwrite) return 0;
  14237. ENV[name] = val;
  14238. ___buildEnvironment(__get_environ());
  14239. return 0;
  14240. }
  14241. function _sigaction(signum, act, oldact) {
  14242. err("Calling stub instead of sigaction()");
  14243. return 0;
  14244. }
  14245. function _sigemptyset(set) {
  14246. HEAP32[set >> 2] = 0;
  14247. return 0;
  14248. }
  14249. function __isLeapYear(year) {
  14250. return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
  14251. }
  14252. function __arraySum(array, index) {
  14253. var sum = 0;
  14254. for (var i = 0; i <= index; sum += array[i++]) ;
  14255. return sum;
  14256. }
  14257. var __MONTH_DAYS_LEAP = [ 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ];
  14258. var __MONTH_DAYS_REGULAR = [ 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ];
  14259. function __addDays(date, days) {
  14260. var newDate = new Date(date.getTime());
  14261. while (days > 0) {
  14262. var leap = __isLeapYear(newDate.getFullYear());
  14263. var currentMonth = newDate.getMonth();
  14264. var daysInCurrentMonth = (leap ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR)[currentMonth];
  14265. if (days > daysInCurrentMonth - newDate.getDate()) {
  14266. days -= daysInCurrentMonth - newDate.getDate() + 1;
  14267. newDate.setDate(1);
  14268. if (currentMonth < 11) {
  14269. newDate.setMonth(currentMonth + 1);
  14270. } else {
  14271. newDate.setMonth(0);
  14272. newDate.setFullYear(newDate.getFullYear() + 1);
  14273. }
  14274. } else {
  14275. newDate.setDate(newDate.getDate() + days);
  14276. return newDate;
  14277. }
  14278. }
  14279. return newDate;
  14280. }
  14281. function _strftime(s, maxsize, format, tm) {
  14282. var tm_zone = HEAP32[tm + 40 >> 2];
  14283. var date = {
  14284. tm_sec: HEAP32[tm >> 2],
  14285. tm_min: HEAP32[tm + 4 >> 2],
  14286. tm_hour: HEAP32[tm + 8 >> 2],
  14287. tm_mday: HEAP32[tm + 12 >> 2],
  14288. tm_mon: HEAP32[tm + 16 >> 2],
  14289. tm_year: HEAP32[tm + 20 >> 2],
  14290. tm_wday: HEAP32[tm + 24 >> 2],
  14291. tm_yday: HEAP32[tm + 28 >> 2],
  14292. tm_isdst: HEAP32[tm + 32 >> 2],
  14293. tm_gmtoff: HEAP32[tm + 36 >> 2],
  14294. tm_zone: tm_zone ? Pointer_stringify(tm_zone) : ""
  14295. };
  14296. var pattern = Pointer_stringify(format);
  14297. var EXPANSION_RULES_1 = {
  14298. "%c": "%a %b %d %H:%M:%S %Y",
  14299. "%D": "%m/%d/%y",
  14300. "%F": "%Y-%m-%d",
  14301. "%h": "%b",
  14302. "%r": "%I:%M:%S %p",
  14303. "%R": "%H:%M",
  14304. "%T": "%H:%M:%S",
  14305. "%x": "%m/%d/%y",
  14306. "%X": "%H:%M:%S"
  14307. };
  14308. for (var rule in EXPANSION_RULES_1) {
  14309. pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_1[rule]);
  14310. }
  14311. var WEEKDAYS = [ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ];
  14312. var MONTHS = [ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ];
  14313. function leadingSomething(value, digits, character) {
  14314. var str = typeof value === "number" ? value.toString() : value || "";
  14315. while (str.length < digits) {
  14316. str = character[0] + str;
  14317. }
  14318. return str;
  14319. }
  14320. function leadingNulls(value, digits) {
  14321. return leadingSomething(value, digits, "0");
  14322. }
  14323. function compareByDay(date1, date2) {
  14324. function sgn(value) {
  14325. return value < 0 ? -1 : value > 0 ? 1 : 0;
  14326. }
  14327. var compare;
  14328. if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) {
  14329. if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) {
  14330. compare = sgn(date1.getDate() - date2.getDate());
  14331. }
  14332. }
  14333. return compare;
  14334. }
  14335. function getFirstWeekStartDate(janFourth) {
  14336. switch (janFourth.getDay()) {
  14337. case 0:
  14338. return new Date(janFourth.getFullYear() - 1, 11, 29);
  14339. case 1:
  14340. return janFourth;
  14341. case 2:
  14342. return new Date(janFourth.getFullYear(), 0, 3);
  14343. case 3:
  14344. return new Date(janFourth.getFullYear(), 0, 2);
  14345. case 4:
  14346. return new Date(janFourth.getFullYear(), 0, 1);
  14347. case 5:
  14348. return new Date(janFourth.getFullYear() - 1, 11, 31);
  14349. case 6:
  14350. return new Date(janFourth.getFullYear() - 1, 11, 30);
  14351. }
  14352. }
  14353. function getWeekBasedYear(date) {
  14354. var thisDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday);
  14355. var janFourthThisYear = new Date(thisDate.getFullYear(), 0, 4);
  14356. var janFourthNextYear = new Date(thisDate.getFullYear() + 1, 0, 4);
  14357. var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear);
  14358. var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear);
  14359. if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) {
  14360. if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) {
  14361. return thisDate.getFullYear() + 1;
  14362. } else {
  14363. return thisDate.getFullYear();
  14364. }
  14365. } else {
  14366. return thisDate.getFullYear() - 1;
  14367. }
  14368. }
  14369. var EXPANSION_RULES_2 = {
  14370. "%a": (function(date) {
  14371. return WEEKDAYS[date.tm_wday].substring(0, 3);
  14372. }),
  14373. "%A": (function(date) {
  14374. return WEEKDAYS[date.tm_wday];
  14375. }),
  14376. "%b": (function(date) {
  14377. return MONTHS[date.tm_mon].substring(0, 3);
  14378. }),
  14379. "%B": (function(date) {
  14380. return MONTHS[date.tm_mon];
  14381. }),
  14382. "%C": (function(date) {
  14383. var year = date.tm_year + 1900;
  14384. return leadingNulls(year / 100 | 0, 2);
  14385. }),
  14386. "%d": (function(date) {
  14387. return leadingNulls(date.tm_mday, 2);
  14388. }),
  14389. "%e": (function(date) {
  14390. return leadingSomething(date.tm_mday, 2, " ");
  14391. }),
  14392. "%g": (function(date) {
  14393. return getWeekBasedYear(date).toString().substring(2);
  14394. }),
  14395. "%G": (function(date) {
  14396. return getWeekBasedYear(date);
  14397. }),
  14398. "%H": (function(date) {
  14399. return leadingNulls(date.tm_hour, 2);
  14400. }),
  14401. "%I": (function(date) {
  14402. var twelveHour = date.tm_hour;
  14403. if (twelveHour == 0) twelveHour = 12; else if (twelveHour > 12) twelveHour -= 12;
  14404. return leadingNulls(twelveHour, 2);
  14405. }),
  14406. "%j": (function(date) {
  14407. return leadingNulls(date.tm_mday + __arraySum(__isLeapYear(date.tm_year + 1900) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, date.tm_mon - 1), 3);
  14408. }),
  14409. "%m": (function(date) {
  14410. return leadingNulls(date.tm_mon + 1, 2);
  14411. }),
  14412. "%M": (function(date) {
  14413. return leadingNulls(date.tm_min, 2);
  14414. }),
  14415. "%n": (function() {
  14416. return "\n";
  14417. }),
  14418. "%p": (function(date) {
  14419. if (date.tm_hour >= 0 && date.tm_hour < 12) {
  14420. return "AM";
  14421. } else {
  14422. return "PM";
  14423. }
  14424. }),
  14425. "%S": (function(date) {
  14426. return leadingNulls(date.tm_sec, 2);
  14427. }),
  14428. "%t": (function() {
  14429. return "\t";
  14430. }),
  14431. "%u": (function(date) {
  14432. var day = new Date(date.tm_year + 1900, date.tm_mon + 1, date.tm_mday, 0, 0, 0, 0);
  14433. return day.getDay() || 7;
  14434. }),
  14435. "%U": (function(date) {
  14436. var janFirst = new Date(date.tm_year + 1900, 0, 1);
  14437. var firstSunday = janFirst.getDay() === 0 ? janFirst : __addDays(janFirst, 7 - janFirst.getDay());
  14438. var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday);
  14439. if (compareByDay(firstSunday, endDate) < 0) {
  14440. var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31;
  14441. var firstSundayUntilEndJanuary = 31 - firstSunday.getDate();
  14442. var days = firstSundayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate();
  14443. return leadingNulls(Math.ceil(days / 7), 2);
  14444. }
  14445. return compareByDay(firstSunday, janFirst) === 0 ? "01" : "00";
  14446. }),
  14447. "%V": (function(date) {
  14448. var janFourthThisYear = new Date(date.tm_year + 1900, 0, 4);
  14449. var janFourthNextYear = new Date(date.tm_year + 1901, 0, 4);
  14450. var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear);
  14451. var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear);
  14452. var endDate = __addDays(new Date(date.tm_year + 1900, 0, 1), date.tm_yday);
  14453. if (compareByDay(endDate, firstWeekStartThisYear) < 0) {
  14454. return "53";
  14455. }
  14456. if (compareByDay(firstWeekStartNextYear, endDate) <= 0) {
  14457. return "01";
  14458. }
  14459. var daysDifference;
  14460. if (firstWeekStartThisYear.getFullYear() < date.tm_year + 1900) {
  14461. daysDifference = date.tm_yday + 32 - firstWeekStartThisYear.getDate();
  14462. } else {
  14463. daysDifference = date.tm_yday + 1 - firstWeekStartThisYear.getDate();
  14464. }
  14465. return leadingNulls(Math.ceil(daysDifference / 7), 2);
  14466. }),
  14467. "%w": (function(date) {
  14468. var day = new Date(date.tm_year + 1900, date.tm_mon + 1, date.tm_mday, 0, 0, 0, 0);
  14469. return day.getDay();
  14470. }),
  14471. "%W": (function(date) {
  14472. var janFirst = new Date(date.tm_year, 0, 1);
  14473. var firstMonday = janFirst.getDay() === 1 ? janFirst : __addDays(janFirst, janFirst.getDay() === 0 ? 1 : 7 - janFirst.getDay() + 1);
  14474. var endDate = new Date(date.tm_year + 1900, date.tm_mon, date.tm_mday);
  14475. if (compareByDay(firstMonday, endDate) < 0) {
  14476. var februaryFirstUntilEndMonth = __arraySum(__isLeapYear(endDate.getFullYear()) ? __MONTH_DAYS_LEAP : __MONTH_DAYS_REGULAR, endDate.getMonth() - 1) - 31;
  14477. var firstMondayUntilEndJanuary = 31 - firstMonday.getDate();
  14478. var days = firstMondayUntilEndJanuary + februaryFirstUntilEndMonth + endDate.getDate();
  14479. return leadingNulls(Math.ceil(days / 7), 2);
  14480. }
  14481. return compareByDay(firstMonday, janFirst) === 0 ? "01" : "00";
  14482. }),
  14483. "%y": (function(date) {
  14484. return (date.tm_year + 1900).toString().substring(2);
  14485. }),
  14486. "%Y": (function(date) {
  14487. return date.tm_year + 1900;
  14488. }),
  14489. "%z": (function(date) {
  14490. var off = date.tm_gmtoff;
  14491. var ahead = off >= 0;
  14492. off = Math.abs(off) / 60;
  14493. off = off / 60 * 100 + off % 60;
  14494. return (ahead ? "+" : "-") + String("0000" + off).slice(-4);
  14495. }),
  14496. "%Z": (function(date) {
  14497. return date.tm_zone;
  14498. }),
  14499. "%%": (function() {
  14500. return "%";
  14501. })
  14502. };
  14503. for (var rule in EXPANSION_RULES_2) {
  14504. if (pattern.indexOf(rule) >= 0) {
  14505. pattern = pattern.replace(new RegExp(rule, "g"), EXPANSION_RULES_2[rule](date));
  14506. }
  14507. }
  14508. var bytes = intArrayFromString(pattern, false);
  14509. if (bytes.length > maxsize) {
  14510. return 0;
  14511. }
  14512. writeArrayToMemory(bytes, s);
  14513. return bytes.length - 1;
  14514. }
  14515. function _sysconf(name) {
  14516. switch (name) {
  14517. case 30:
  14518. return PAGE_SIZE;
  14519. case 85:
  14520. var maxHeapSize = 2 * 1024 * 1024 * 1024 - 65536;
  14521. return maxHeapSize / PAGE_SIZE;
  14522. case 132:
  14523. case 133:
  14524. case 12:
  14525. case 137:
  14526. case 138:
  14527. case 15:
  14528. case 235:
  14529. case 16:
  14530. case 17:
  14531. case 18:
  14532. case 19:
  14533. case 20:
  14534. case 149:
  14535. case 13:
  14536. case 10:
  14537. case 236:
  14538. case 153:
  14539. case 9:
  14540. case 21:
  14541. case 22:
  14542. case 159:
  14543. case 154:
  14544. case 14:
  14545. case 77:
  14546. case 78:
  14547. case 139:
  14548. case 80:
  14549. case 81:
  14550. case 82:
  14551. case 68:
  14552. case 67:
  14553. case 164:
  14554. case 11:
  14555. case 29:
  14556. case 47:
  14557. case 48:
  14558. case 95:
  14559. case 52:
  14560. case 51:
  14561. case 46:
  14562. return 200809;
  14563. case 79:
  14564. return 0;
  14565. case 27:
  14566. case 246:
  14567. case 127:
  14568. case 128:
  14569. case 23:
  14570. case 24:
  14571. case 160:
  14572. case 161:
  14573. case 181:
  14574. case 182:
  14575. case 242:
  14576. case 183:
  14577. case 184:
  14578. case 243:
  14579. case 244:
  14580. case 245:
  14581. case 165:
  14582. case 178:
  14583. case 179:
  14584. case 49:
  14585. case 50:
  14586. case 168:
  14587. case 169:
  14588. case 175:
  14589. case 170:
  14590. case 171:
  14591. case 172:
  14592. case 97:
  14593. case 76:
  14594. case 32:
  14595. case 173:
  14596. case 35:
  14597. return -1;
  14598. case 176:
  14599. case 177:
  14600. case 7:
  14601. case 155:
  14602. case 8:
  14603. case 157:
  14604. case 125:
  14605. case 126:
  14606. case 92:
  14607. case 93:
  14608. case 129:
  14609. case 130:
  14610. case 131:
  14611. case 94:
  14612. case 91:
  14613. return 1;
  14614. case 74:
  14615. case 60:
  14616. case 69:
  14617. case 70:
  14618. case 4:
  14619. return 1024;
  14620. case 31:
  14621. case 42:
  14622. case 72:
  14623. return 32;
  14624. case 87:
  14625. case 26:
  14626. case 33:
  14627. return 2147483647;
  14628. case 34:
  14629. case 1:
  14630. return 47839;
  14631. case 38:
  14632. case 36:
  14633. return 99;
  14634. case 43:
  14635. case 37:
  14636. return 2048;
  14637. case 0:
  14638. return 2097152;
  14639. case 3:
  14640. return 65536;
  14641. case 28:
  14642. return 32768;
  14643. case 44:
  14644. return 32767;
  14645. case 75:
  14646. return 16384;
  14647. case 39:
  14648. return 1e3;
  14649. case 89:
  14650. return 700;
  14651. case 71:
  14652. return 256;
  14653. case 40:
  14654. return 255;
  14655. case 2:
  14656. return 100;
  14657. case 180:
  14658. return 64;
  14659. case 25:
  14660. return 20;
  14661. case 5:
  14662. return 16;
  14663. case 6:
  14664. return 6;
  14665. case 73:
  14666. return 4;
  14667. case 84:
  14668. {
  14669. if (typeof navigator === "object") return navigator["hardwareConcurrency"] || 1;
  14670. return 1;
  14671. }
  14672. }
  14673. ___setErrNo(ERRNO_CODES.EINVAL);
  14674. return -1;
  14675. }
  14676. function _time(ptr) {
  14677. var ret = Date.now() / 1e3 | 0;
  14678. if (ptr) {
  14679. HEAP32[ptr >> 2] = ret;
  14680. }
  14681. return ret;
  14682. }
  14683. function _unsetenv(name) {
  14684. if (name === 0) {
  14685. ___setErrNo(ERRNO_CODES.EINVAL);
  14686. return -1;
  14687. }
  14688. name = Pointer_stringify(name);
  14689. if (name === "" || name.indexOf("=") !== -1) {
  14690. ___setErrNo(ERRNO_CODES.EINVAL);
  14691. return -1;
  14692. }
  14693. if (ENV.hasOwnProperty(name)) {
  14694. delete ENV[name];
  14695. ___buildEnvironment(__get_environ());
  14696. }
  14697. return 0;
  14698. }
  14699. function _utime(path, times) {
  14700. var time;
  14701. if (times) {
  14702. var offset = 4;
  14703. time = HEAP32[times + offset >> 2];
  14704. time *= 1e3;
  14705. } else {
  14706. time = Date.now();
  14707. }
  14708. path = Pointer_stringify(path);
  14709. try {
  14710. FS.utime(path, time, time);
  14711. return 0;
  14712. } catch (e) {
  14713. FS.handleFSError(e);
  14714. return -1;
  14715. }
  14716. }
  14717. FS.staticInit();
  14718. __ATINIT__.unshift((function() {
  14719. if (!Module["noFSInit"] && !FS.init.initialized) FS.init();
  14720. }));
  14721. __ATMAIN__.push((function() {
  14722. FS.ignorePermissions = false;
  14723. }));
  14724. __ATEXIT__.push((function() {
  14725. FS.quit();
  14726. }));
  14727. Module["FS_createPath"] = FS.createPath;
  14728. Module["FS_createDataFile"] = FS.createDataFile;
  14729. __ATINIT__.unshift((function() {
  14730. TTY.init();
  14731. }));
  14732. __ATEXIT__.push((function() {
  14733. TTY.shutdown();
  14734. }));
  14735. if (ENVIRONMENT_IS_NODE) {
  14736. var fs = require("fs");
  14737. var NODEJS_PATH = require("path");
  14738. NODEFS.staticInit();
  14739. }
  14740. __ATINIT__.push((function() {
  14741. SOCKFS.root = FS.mount(SOCKFS, {}, null);
  14742. }));
  14743. __ATINIT__.push((function() {
  14744. PIPEFS.root = FS.mount(PIPEFS, {}, null);
  14745. }));
  14746. if (ENVIRONMENT_IS_NODE) {
  14747. _emscripten_get_now = function _emscripten_get_now_actual() {
  14748. var t = process["hrtime"]();
  14749. return t[0] * 1e3 + t[1] / 1e6;
  14750. };
  14751. } else if (typeof dateNow !== "undefined") {
  14752. _emscripten_get_now = dateNow;
  14753. } else if (typeof self === "object" && self["performance"] && typeof self["performance"]["now"] === "function") {
  14754. _emscripten_get_now = (function() {
  14755. return self["performance"]["now"]();
  14756. });
  14757. } else if (typeof performance === "object" && typeof performance["now"] === "function") {
  14758. _emscripten_get_now = (function() {
  14759. return performance["now"]();
  14760. });
  14761. } else {
  14762. _emscripten_get_now = Date.now;
  14763. }
  14764. Module["requestFullScreen"] = function Module_requestFullScreen(lockPointer, resizeCanvas, vrDevice) {
  14765. err("Module.requestFullScreen is deprecated. Please call Module.requestFullscreen instead.");
  14766. Module["requestFullScreen"] = Module["requestFullscreen"];
  14767. Browser.requestFullScreen(lockPointer, resizeCanvas, vrDevice);
  14768. };
  14769. Module["requestFullscreen"] = function Module_requestFullscreen(lockPointer, resizeCanvas, vrDevice) {
  14770. Browser.requestFullscreen(lockPointer, resizeCanvas, vrDevice);
  14771. };
  14772. Module["requestAnimationFrame"] = function Module_requestAnimationFrame(func) {
  14773. Browser.requestAnimationFrame(func);
  14774. };
  14775. Module["setCanvasSize"] = function Module_setCanvasSize(width, height, noUpdates) {
  14776. Browser.setCanvasSize(width, height, noUpdates);
  14777. };
  14778. Module["pauseMainLoop"] = function Module_pauseMainLoop() {
  14779. Browser.mainLoop.pause();
  14780. };
  14781. Module["resumeMainLoop"] = function Module_resumeMainLoop() {
  14782. Browser.mainLoop.resume();
  14783. };
  14784. Module["getUserMedia"] = function Module_getUserMedia() {
  14785. Browser.getUserMedia();
  14786. };
  14787. Module["createContext"] = function Module_createContext(canvas, useWebGL, setInModule, webGLContextAttributes) {
  14788. return Browser.createContext(canvas, useWebGL, setInModule, webGLContextAttributes);
  14789. };
  14790. JSEvents.staticInit();
  14791. var GLctx;
  14792. GL.init();
  14793. DYNAMICTOP_PTR = staticAlloc(4);
  14794. STACK_BASE = STACKTOP = alignMemory(STATICTOP);
  14795. STACK_MAX = STACK_BASE + TOTAL_STACK;
  14796. DYNAMIC_BASE = alignMemory(STACK_MAX);
  14797. HEAP32[DYNAMICTOP_PTR >> 2] = DYNAMIC_BASE;
  14798. staticSealed = true;
  14799. assert(DYNAMIC_BASE < TOTAL_MEMORY, "TOTAL_MEMORY not big enough for stack");
  14800. function intArrayFromString(stringy, dontAddNull, length) {
  14801. var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1;
  14802. var u8array = new Array(len);
  14803. var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length);
  14804. if (dontAddNull) u8array.length = numBytesWritten;
  14805. return u8array;
  14806. }
  14807. function nullFunc_dd(x) {
  14808. err("Invalid function pointer called with signature 'dd'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14809. err("Build with ASSERTIONS=2 for more info.");
  14810. abort(x);
  14811. }
  14812. function nullFunc_ddd(x) {
  14813. err("Invalid function pointer called with signature 'ddd'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14814. err("Build with ASSERTIONS=2 for more info.");
  14815. abort(x);
  14816. }
  14817. function nullFunc_dddi(x) {
  14818. err("Invalid function pointer called with signature 'dddi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14819. err("Build with ASSERTIONS=2 for more info.");
  14820. abort(x);
  14821. }
  14822. function nullFunc_ddi(x) {
  14823. err("Invalid function pointer called with signature 'ddi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14824. err("Build with ASSERTIONS=2 for more info.");
  14825. abort(x);
  14826. }
  14827. function nullFunc_ddidi(x) {
  14828. err("Invalid function pointer called with signature 'ddidi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14829. err("Build with ASSERTIONS=2 for more info.");
  14830. abort(x);
  14831. }
  14832. function nullFunc_dfi(x) {
  14833. err("Invalid function pointer called with signature 'dfi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14834. err("Build with ASSERTIONS=2 for more info.");
  14835. abort(x);
  14836. }
  14837. function nullFunc_di(x) {
  14838. err("Invalid function pointer called with signature 'di'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14839. err("Build with ASSERTIONS=2 for more info.");
  14840. abort(x);
  14841. }
  14842. function nullFunc_diddi(x) {
  14843. err("Invalid function pointer called with signature 'diddi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14844. err("Build with ASSERTIONS=2 for more info.");
  14845. abort(x);
  14846. }
  14847. function nullFunc_didi(x) {
  14848. err("Invalid function pointer called with signature 'didi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14849. err("Build with ASSERTIONS=2 for more info.");
  14850. abort(x);
  14851. }
  14852. function nullFunc_dii(x) {
  14853. err("Invalid function pointer called with signature 'dii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14854. err("Build with ASSERTIONS=2 for more info.");
  14855. abort(x);
  14856. }
  14857. function nullFunc_diidi(x) {
  14858. err("Invalid function pointer called with signature 'diidi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14859. err("Build with ASSERTIONS=2 for more info.");
  14860. abort(x);
  14861. }
  14862. function nullFunc_diii(x) {
  14863. err("Invalid function pointer called with signature 'diii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14864. err("Build with ASSERTIONS=2 for more info.");
  14865. abort(x);
  14866. }
  14867. function nullFunc_diiid(x) {
  14868. err("Invalid function pointer called with signature 'diiid'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14869. err("Build with ASSERTIONS=2 for more info.");
  14870. abort(x);
  14871. }
  14872. function nullFunc_diiidi(x) {
  14873. err("Invalid function pointer called with signature 'diiidi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14874. err("Build with ASSERTIONS=2 for more info.");
  14875. abort(x);
  14876. }
  14877. function nullFunc_diiii(x) {
  14878. err("Invalid function pointer called with signature 'diiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14879. err("Build with ASSERTIONS=2 for more info.");
  14880. abort(x);
  14881. }
  14882. function nullFunc_dij(x) {
  14883. err("Invalid function pointer called with signature 'dij'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14884. err("Build with ASSERTIONS=2 for more info.");
  14885. abort(x);
  14886. }
  14887. function nullFunc_dji(x) {
  14888. err("Invalid function pointer called with signature 'dji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14889. err("Build with ASSERTIONS=2 for more info.");
  14890. abort(x);
  14891. }
  14892. function nullFunc_f(x) {
  14893. err("Invalid function pointer called with signature 'f'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14894. err("Build with ASSERTIONS=2 for more info.");
  14895. abort(x);
  14896. }
  14897. function nullFunc_fdi(x) {
  14898. err("Invalid function pointer called with signature 'fdi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14899. err("Build with ASSERTIONS=2 for more info.");
  14900. abort(x);
  14901. }
  14902. function nullFunc_ff(x) {
  14903. err("Invalid function pointer called with signature 'ff'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14904. err("Build with ASSERTIONS=2 for more info.");
  14905. abort(x);
  14906. }
  14907. function nullFunc_fff(x) {
  14908. err("Invalid function pointer called with signature 'fff'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14909. err("Build with ASSERTIONS=2 for more info.");
  14910. abort(x);
  14911. }
  14912. function nullFunc_fffff(x) {
  14913. err("Invalid function pointer called with signature 'fffff'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14914. err("Build with ASSERTIONS=2 for more info.");
  14915. abort(x);
  14916. }
  14917. function nullFunc_ffffffi(x) {
  14918. err("Invalid function pointer called with signature 'ffffffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14919. err("Build with ASSERTIONS=2 for more info.");
  14920. abort(x);
  14921. }
  14922. function nullFunc_fffffi(x) {
  14923. err("Invalid function pointer called with signature 'fffffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14924. err("Build with ASSERTIONS=2 for more info.");
  14925. abort(x);
  14926. }
  14927. function nullFunc_ffffi(x) {
  14928. err("Invalid function pointer called with signature 'ffffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14929. err("Build with ASSERTIONS=2 for more info.");
  14930. abort(x);
  14931. }
  14932. function nullFunc_ffffii(x) {
  14933. err("Invalid function pointer called with signature 'ffffii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14934. err("Build with ASSERTIONS=2 for more info.");
  14935. abort(x);
  14936. }
  14937. function nullFunc_fffi(x) {
  14938. err("Invalid function pointer called with signature 'fffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14939. err("Build with ASSERTIONS=2 for more info.");
  14940. abort(x);
  14941. }
  14942. function nullFunc_fffifffi(x) {
  14943. err("Invalid function pointer called with signature 'fffifffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14944. err("Build with ASSERTIONS=2 for more info.");
  14945. abort(x);
  14946. }
  14947. function nullFunc_ffi(x) {
  14948. err("Invalid function pointer called with signature 'ffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14949. err("Build with ASSERTIONS=2 for more info.");
  14950. abort(x);
  14951. }
  14952. function nullFunc_fi(x) {
  14953. err("Invalid function pointer called with signature 'fi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14954. err("Build with ASSERTIONS=2 for more info.");
  14955. abort(x);
  14956. }
  14957. function nullFunc_fidi(x) {
  14958. err("Invalid function pointer called with signature 'fidi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14959. err("Build with ASSERTIONS=2 for more info.");
  14960. abort(x);
  14961. }
  14962. function nullFunc_fif(x) {
  14963. err("Invalid function pointer called with signature 'fif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14964. err("Build with ASSERTIONS=2 for more info.");
  14965. abort(x);
  14966. }
  14967. function nullFunc_fiff(x) {
  14968. err("Invalid function pointer called with signature 'fiff'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14969. err("Build with ASSERTIONS=2 for more info.");
  14970. abort(x);
  14971. }
  14972. function nullFunc_fiffffi(x) {
  14973. err("Invalid function pointer called with signature 'fiffffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14974. err("Build with ASSERTIONS=2 for more info.");
  14975. abort(x);
  14976. }
  14977. function nullFunc_fifffi(x) {
  14978. err("Invalid function pointer called with signature 'fifffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14979. err("Build with ASSERTIONS=2 for more info.");
  14980. abort(x);
  14981. }
  14982. function nullFunc_fiffi(x) {
  14983. err("Invalid function pointer called with signature 'fiffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14984. err("Build with ASSERTIONS=2 for more info.");
  14985. abort(x);
  14986. }
  14987. function nullFunc_fifi(x) {
  14988. err("Invalid function pointer called with signature 'fifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14989. err("Build with ASSERTIONS=2 for more info.");
  14990. abort(x);
  14991. }
  14992. function nullFunc_fifii(x) {
  14993. err("Invalid function pointer called with signature 'fifii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14994. err("Build with ASSERTIONS=2 for more info.");
  14995. abort(x);
  14996. }
  14997. function nullFunc_fifiii(x) {
  14998. err("Invalid function pointer called with signature 'fifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  14999. err("Build with ASSERTIONS=2 for more info.");
  15000. abort(x);
  15001. }
  15002. function nullFunc_fifiiiii(x) {
  15003. err("Invalid function pointer called with signature 'fifiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15004. err("Build with ASSERTIONS=2 for more info.");
  15005. abort(x);
  15006. }
  15007. function nullFunc_fii(x) {
  15008. err("Invalid function pointer called with signature 'fii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15009. err("Build with ASSERTIONS=2 for more info.");
  15010. abort(x);
  15011. }
  15012. function nullFunc_fiifdi(x) {
  15013. err("Invalid function pointer called with signature 'fiifdi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15014. err("Build with ASSERTIONS=2 for more info.");
  15015. abort(x);
  15016. }
  15017. function nullFunc_fiiffffi(x) {
  15018. err("Invalid function pointer called with signature 'fiiffffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15019. err("Build with ASSERTIONS=2 for more info.");
  15020. abort(x);
  15021. }
  15022. function nullFunc_fiiffi(x) {
  15023. err("Invalid function pointer called with signature 'fiiffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15024. err("Build with ASSERTIONS=2 for more info.");
  15025. abort(x);
  15026. }
  15027. function nullFunc_fiifi(x) {
  15028. err("Invalid function pointer called with signature 'fiifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15029. err("Build with ASSERTIONS=2 for more info.");
  15030. abort(x);
  15031. }
  15032. function nullFunc_fiifii(x) {
  15033. err("Invalid function pointer called with signature 'fiifii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15034. err("Build with ASSERTIONS=2 for more info.");
  15035. abort(x);
  15036. }
  15037. function nullFunc_fiifji(x) {
  15038. err("Invalid function pointer called with signature 'fiifji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15039. err("Build with ASSERTIONS=2 for more info.");
  15040. abort(x);
  15041. }
  15042. function nullFunc_fiii(x) {
  15043. err("Invalid function pointer called with signature 'fiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15044. err("Build with ASSERTIONS=2 for more info.");
  15045. abort(x);
  15046. }
  15047. function nullFunc_fiiif(x) {
  15048. err("Invalid function pointer called with signature 'fiiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15049. err("Build with ASSERTIONS=2 for more info.");
  15050. abort(x);
  15051. }
  15052. function nullFunc_fiiifii(x) {
  15053. err("Invalid function pointer called with signature 'fiiifii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15054. err("Build with ASSERTIONS=2 for more info.");
  15055. abort(x);
  15056. }
  15057. function nullFunc_fiiii(x) {
  15058. err("Invalid function pointer called with signature 'fiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15059. err("Build with ASSERTIONS=2 for more info.");
  15060. abort(x);
  15061. }
  15062. function nullFunc_fiiiif(x) {
  15063. err("Invalid function pointer called with signature 'fiiiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15064. err("Build with ASSERTIONS=2 for more info.");
  15065. abort(x);
  15066. }
  15067. function nullFunc_fiiiiii(x) {
  15068. err("Invalid function pointer called with signature 'fiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15069. err("Build with ASSERTIONS=2 for more info.");
  15070. abort(x);
  15071. }
  15072. function nullFunc_fiiiiiifiifif(x) {
  15073. err("Invalid function pointer called with signature 'fiiiiiifiifif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15074. err("Build with ASSERTIONS=2 for more info.");
  15075. abort(x);
  15076. }
  15077. function nullFunc_fiiiiiifiiiif(x) {
  15078. err("Invalid function pointer called with signature 'fiiiiiifiiiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15079. err("Build with ASSERTIONS=2 for more info.");
  15080. abort(x);
  15081. }
  15082. function nullFunc_fji(x) {
  15083. err("Invalid function pointer called with signature 'fji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15084. err("Build with ASSERTIONS=2 for more info.");
  15085. abort(x);
  15086. }
  15087. function nullFunc_i(x) {
  15088. err("Invalid function pointer called with signature 'i'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15089. err("Build with ASSERTIONS=2 for more info.");
  15090. abort(x);
  15091. }
  15092. function nullFunc_idddi(x) {
  15093. err("Invalid function pointer called with signature 'idddi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15094. err("Build with ASSERTIONS=2 for more info.");
  15095. abort(x);
  15096. }
  15097. function nullFunc_iddi(x) {
  15098. err("Invalid function pointer called with signature 'iddi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15099. err("Build with ASSERTIONS=2 for more info.");
  15100. abort(x);
  15101. }
  15102. function nullFunc_iddii(x) {
  15103. err("Invalid function pointer called with signature 'iddii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15104. err("Build with ASSERTIONS=2 for more info.");
  15105. abort(x);
  15106. }
  15107. function nullFunc_idi(x) {
  15108. err("Invalid function pointer called with signature 'idi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15109. err("Build with ASSERTIONS=2 for more info.");
  15110. abort(x);
  15111. }
  15112. function nullFunc_idii(x) {
  15113. err("Invalid function pointer called with signature 'idii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15114. err("Build with ASSERTIONS=2 for more info.");
  15115. abort(x);
  15116. }
  15117. function nullFunc_idiii(x) {
  15118. err("Invalid function pointer called with signature 'idiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15119. err("Build with ASSERTIONS=2 for more info.");
  15120. abort(x);
  15121. }
  15122. function nullFunc_idiiii(x) {
  15123. err("Invalid function pointer called with signature 'idiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15124. err("Build with ASSERTIONS=2 for more info.");
  15125. abort(x);
  15126. }
  15127. function nullFunc_idiiiii(x) {
  15128. err("Invalid function pointer called with signature 'idiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15129. err("Build with ASSERTIONS=2 for more info.");
  15130. abort(x);
  15131. }
  15132. function nullFunc_iffffi(x) {
  15133. err("Invalid function pointer called with signature 'iffffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15134. err("Build with ASSERTIONS=2 for more info.");
  15135. abort(x);
  15136. }
  15137. function nullFunc_ifffi(x) {
  15138. err("Invalid function pointer called with signature 'ifffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15139. err("Build with ASSERTIONS=2 for more info.");
  15140. abort(x);
  15141. }
  15142. function nullFunc_iffi(x) {
  15143. err("Invalid function pointer called with signature 'iffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15144. err("Build with ASSERTIONS=2 for more info.");
  15145. abort(x);
  15146. }
  15147. function nullFunc_ifi(x) {
  15148. err("Invalid function pointer called with signature 'ifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15149. err("Build with ASSERTIONS=2 for more info.");
  15150. abort(x);
  15151. }
  15152. function nullFunc_ifiii(x) {
  15153. err("Invalid function pointer called with signature 'ifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15154. err("Build with ASSERTIONS=2 for more info.");
  15155. abort(x);
  15156. }
  15157. function nullFunc_ifiiii(x) {
  15158. err("Invalid function pointer called with signature 'ifiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15159. err("Build with ASSERTIONS=2 for more info.");
  15160. abort(x);
  15161. }
  15162. function nullFunc_ii(x) {
  15163. err("Invalid function pointer called with signature 'ii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15164. err("Build with ASSERTIONS=2 for more info.");
  15165. abort(x);
  15166. }
  15167. function nullFunc_iidi(x) {
  15168. err("Invalid function pointer called with signature 'iidi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15169. err("Build with ASSERTIONS=2 for more info.");
  15170. abort(x);
  15171. }
  15172. function nullFunc_iidii(x) {
  15173. err("Invalid function pointer called with signature 'iidii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15174. err("Build with ASSERTIONS=2 for more info.");
  15175. abort(x);
  15176. }
  15177. function nullFunc_iidiii(x) {
  15178. err("Invalid function pointer called with signature 'iidiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15179. err("Build with ASSERTIONS=2 for more info.");
  15180. abort(x);
  15181. }
  15182. function nullFunc_iif(x) {
  15183. err("Invalid function pointer called with signature 'iif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15184. err("Build with ASSERTIONS=2 for more info.");
  15185. abort(x);
  15186. }
  15187. function nullFunc_iifff(x) {
  15188. err("Invalid function pointer called with signature 'iifff'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15189. err("Build with ASSERTIONS=2 for more info.");
  15190. abort(x);
  15191. }
  15192. function nullFunc_iiffffiii(x) {
  15193. err("Invalid function pointer called with signature 'iiffffiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15194. err("Build with ASSERTIONS=2 for more info.");
  15195. abort(x);
  15196. }
  15197. function nullFunc_iifffi(x) {
  15198. err("Invalid function pointer called with signature 'iifffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15199. err("Build with ASSERTIONS=2 for more info.");
  15200. abort(x);
  15201. }
  15202. function nullFunc_iiffi(x) {
  15203. err("Invalid function pointer called with signature 'iiffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15204. err("Build with ASSERTIONS=2 for more info.");
  15205. abort(x);
  15206. }
  15207. function nullFunc_iiffifiii(x) {
  15208. err("Invalid function pointer called with signature 'iiffifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15209. err("Build with ASSERTIONS=2 for more info.");
  15210. abort(x);
  15211. }
  15212. function nullFunc_iiffii(x) {
  15213. err("Invalid function pointer called with signature 'iiffii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15214. err("Build with ASSERTIONS=2 for more info.");
  15215. abort(x);
  15216. }
  15217. function nullFunc_iiffiii(x) {
  15218. err("Invalid function pointer called with signature 'iiffiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15219. err("Build with ASSERTIONS=2 for more info.");
  15220. abort(x);
  15221. }
  15222. function nullFunc_iiffiiiii(x) {
  15223. err("Invalid function pointer called with signature 'iiffiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15224. err("Build with ASSERTIONS=2 for more info.");
  15225. abort(x);
  15226. }
  15227. function nullFunc_iifi(x) {
  15228. err("Invalid function pointer called with signature 'iifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15229. err("Build with ASSERTIONS=2 for more info.");
  15230. abort(x);
  15231. }
  15232. function nullFunc_iififi(x) {
  15233. err("Invalid function pointer called with signature 'iififi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15234. err("Build with ASSERTIONS=2 for more info.");
  15235. abort(x);
  15236. }
  15237. function nullFunc_iifii(x) {
  15238. err("Invalid function pointer called with signature 'iifii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15239. err("Build with ASSERTIONS=2 for more info.");
  15240. abort(x);
  15241. }
  15242. function nullFunc_iifiifiii(x) {
  15243. err("Invalid function pointer called with signature 'iifiifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15244. err("Build with ASSERTIONS=2 for more info.");
  15245. abort(x);
  15246. }
  15247. function nullFunc_iifiii(x) {
  15248. err("Invalid function pointer called with signature 'iifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15249. err("Build with ASSERTIONS=2 for more info.");
  15250. abort(x);
  15251. }
  15252. function nullFunc_iifiiii(x) {
  15253. err("Invalid function pointer called with signature 'iifiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15254. err("Build with ASSERTIONS=2 for more info.");
  15255. abort(x);
  15256. }
  15257. function nullFunc_iifiiiii(x) {
  15258. err("Invalid function pointer called with signature 'iifiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15259. err("Build with ASSERTIONS=2 for more info.");
  15260. abort(x);
  15261. }
  15262. function nullFunc_iifiiiiii(x) {
  15263. err("Invalid function pointer called with signature 'iifiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15264. err("Build with ASSERTIONS=2 for more info.");
  15265. abort(x);
  15266. }
  15267. function nullFunc_iii(x) {
  15268. err("Invalid function pointer called with signature 'iii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15269. err("Build with ASSERTIONS=2 for more info.");
  15270. abort(x);
  15271. }
  15272. function nullFunc_iiiddi(x) {
  15273. err("Invalid function pointer called with signature 'iiiddi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15274. err("Build with ASSERTIONS=2 for more info.");
  15275. abort(x);
  15276. }
  15277. function nullFunc_iiidi(x) {
  15278. err("Invalid function pointer called with signature 'iiidi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15279. err("Build with ASSERTIONS=2 for more info.");
  15280. abort(x);
  15281. }
  15282. function nullFunc_iiidii(x) {
  15283. err("Invalid function pointer called with signature 'iiidii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15284. err("Build with ASSERTIONS=2 for more info.");
  15285. abort(x);
  15286. }
  15287. function nullFunc_iiidiii(x) {
  15288. err("Invalid function pointer called with signature 'iiidiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15289. err("Build with ASSERTIONS=2 for more info.");
  15290. abort(x);
  15291. }
  15292. function nullFunc_iiif(x) {
  15293. err("Invalid function pointer called with signature 'iiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15294. err("Build with ASSERTIONS=2 for more info.");
  15295. abort(x);
  15296. }
  15297. function nullFunc_iiiffi(x) {
  15298. err("Invalid function pointer called with signature 'iiiffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15299. err("Build with ASSERTIONS=2 for more info.");
  15300. abort(x);
  15301. }
  15302. function nullFunc_iiiffifiii(x) {
  15303. err("Invalid function pointer called with signature 'iiiffifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15304. err("Build with ASSERTIONS=2 for more info.");
  15305. abort(x);
  15306. }
  15307. function nullFunc_iiiffii(x) {
  15308. err("Invalid function pointer called with signature 'iiiffii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15309. err("Build with ASSERTIONS=2 for more info.");
  15310. abort(x);
  15311. }
  15312. function nullFunc_iiifi(x) {
  15313. err("Invalid function pointer called with signature 'iiifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15314. err("Build with ASSERTIONS=2 for more info.");
  15315. abort(x);
  15316. }
  15317. function nullFunc_iiififii(x) {
  15318. err("Invalid function pointer called with signature 'iiififii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15319. err("Build with ASSERTIONS=2 for more info.");
  15320. abort(x);
  15321. }
  15322. function nullFunc_iiifii(x) {
  15323. err("Invalid function pointer called with signature 'iiifii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15324. err("Build with ASSERTIONS=2 for more info.");
  15325. abort(x);
  15326. }
  15327. function nullFunc_iiifiifii(x) {
  15328. err("Invalid function pointer called with signature 'iiifiifii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15329. err("Build with ASSERTIONS=2 for more info.");
  15330. abort(x);
  15331. }
  15332. function nullFunc_iiifiifiii(x) {
  15333. err("Invalid function pointer called with signature 'iiifiifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15334. err("Build with ASSERTIONS=2 for more info.");
  15335. abort(x);
  15336. }
  15337. function nullFunc_iiifiifiiii(x) {
  15338. err("Invalid function pointer called with signature 'iiifiifiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15339. err("Build with ASSERTIONS=2 for more info.");
  15340. abort(x);
  15341. }
  15342. function nullFunc_iiifiii(x) {
  15343. err("Invalid function pointer called with signature 'iiifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15344. err("Build with ASSERTIONS=2 for more info.");
  15345. abort(x);
  15346. }
  15347. function nullFunc_iiifiiii(x) {
  15348. err("Invalid function pointer called with signature 'iiifiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15349. err("Build with ASSERTIONS=2 for more info.");
  15350. abort(x);
  15351. }
  15352. function nullFunc_iiifiiiii(x) {
  15353. err("Invalid function pointer called with signature 'iiifiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15354. err("Build with ASSERTIONS=2 for more info.");
  15355. abort(x);
  15356. }
  15357. function nullFunc_iiii(x) {
  15358. err("Invalid function pointer called with signature 'iiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15359. err("Build with ASSERTIONS=2 for more info.");
  15360. abort(x);
  15361. }
  15362. function nullFunc_iiiif(x) {
  15363. err("Invalid function pointer called with signature 'iiiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15364. err("Build with ASSERTIONS=2 for more info.");
  15365. abort(x);
  15366. }
  15367. function nullFunc_iiiifffffi(x) {
  15368. err("Invalid function pointer called with signature 'iiiifffffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15369. err("Build with ASSERTIONS=2 for more info.");
  15370. abort(x);
  15371. }
  15372. function nullFunc_iiiifffffii(x) {
  15373. err("Invalid function pointer called with signature 'iiiifffffii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15374. err("Build with ASSERTIONS=2 for more info.");
  15375. abort(x);
  15376. }
  15377. function nullFunc_iiiiffii(x) {
  15378. err("Invalid function pointer called with signature 'iiiiffii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15379. err("Build with ASSERTIONS=2 for more info.");
  15380. abort(x);
  15381. }
  15382. function nullFunc_iiiifi(x) {
  15383. err("Invalid function pointer called with signature 'iiiifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15384. err("Build with ASSERTIONS=2 for more info.");
  15385. abort(x);
  15386. }
  15387. function nullFunc_iiiififi(x) {
  15388. err("Invalid function pointer called with signature 'iiiififi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15389. err("Build with ASSERTIONS=2 for more info.");
  15390. abort(x);
  15391. }
  15392. function nullFunc_iiiifii(x) {
  15393. err("Invalid function pointer called with signature 'iiiifii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15394. err("Build with ASSERTIONS=2 for more info.");
  15395. abort(x);
  15396. }
  15397. function nullFunc_iiiifiii(x) {
  15398. err("Invalid function pointer called with signature 'iiiifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15399. err("Build with ASSERTIONS=2 for more info.");
  15400. abort(x);
  15401. }
  15402. function nullFunc_iiiifiiii(x) {
  15403. err("Invalid function pointer called with signature 'iiiifiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15404. err("Build with ASSERTIONS=2 for more info.");
  15405. abort(x);
  15406. }
  15407. function nullFunc_iiiifiiiii(x) {
  15408. err("Invalid function pointer called with signature 'iiiifiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15409. err("Build with ASSERTIONS=2 for more info.");
  15410. abort(x);
  15411. }
  15412. function nullFunc_iiiii(x) {
  15413. err("Invalid function pointer called with signature 'iiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15414. err("Build with ASSERTIONS=2 for more info.");
  15415. abort(x);
  15416. }
  15417. function nullFunc_iiiiidii(x) {
  15418. err("Invalid function pointer called with signature 'iiiiidii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15419. err("Build with ASSERTIONS=2 for more info.");
  15420. abort(x);
  15421. }
  15422. function nullFunc_iiiiiffi(x) {
  15423. err("Invalid function pointer called with signature 'iiiiiffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15424. err("Build with ASSERTIONS=2 for more info.");
  15425. abort(x);
  15426. }
  15427. function nullFunc_iiiiifi(x) {
  15428. err("Invalid function pointer called with signature 'iiiiifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15429. err("Build with ASSERTIONS=2 for more info.");
  15430. abort(x);
  15431. }
  15432. function nullFunc_iiiiifii(x) {
  15433. err("Invalid function pointer called with signature 'iiiiifii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15434. err("Build with ASSERTIONS=2 for more info.");
  15435. abort(x);
  15436. }
  15437. function nullFunc_iiiiifiii(x) {
  15438. err("Invalid function pointer called with signature 'iiiiifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15439. err("Build with ASSERTIONS=2 for more info.");
  15440. abort(x);
  15441. }
  15442. function nullFunc_iiiiifiiiiif(x) {
  15443. err("Invalid function pointer called with signature 'iiiiifiiiiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15444. err("Build with ASSERTIONS=2 for more info.");
  15445. abort(x);
  15446. }
  15447. function nullFunc_iiiiii(x) {
  15448. err("Invalid function pointer called with signature 'iiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15449. err("Build with ASSERTIONS=2 for more info.");
  15450. abort(x);
  15451. }
  15452. function nullFunc_iiiiiifffiiifiii(x) {
  15453. err("Invalid function pointer called with signature 'iiiiiifffiiifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15454. err("Build with ASSERTIONS=2 for more info.");
  15455. abort(x);
  15456. }
  15457. function nullFunc_iiiiiiffiiiiiiiiiffffiii(x) {
  15458. err("Invalid function pointer called with signature 'iiiiiiffiiiiiiiiiffffiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15459. err("Build with ASSERTIONS=2 for more info.");
  15460. abort(x);
  15461. }
  15462. function nullFunc_iiiiiiffiiiiiiiiiffffiiii(x) {
  15463. err("Invalid function pointer called with signature 'iiiiiiffiiiiiiiiiffffiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15464. err("Build with ASSERTIONS=2 for more info.");
  15465. abort(x);
  15466. }
  15467. function nullFunc_iiiiiiffiiiiiiiiiiiiiii(x) {
  15468. err("Invalid function pointer called with signature 'iiiiiiffiiiiiiiiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15469. err("Build with ASSERTIONS=2 for more info.");
  15470. abort(x);
  15471. }
  15472. function nullFunc_iiiiiifiif(x) {
  15473. err("Invalid function pointer called with signature 'iiiiiifiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15474. err("Build with ASSERTIONS=2 for more info.");
  15475. abort(x);
  15476. }
  15477. function nullFunc_iiiiiifiii(x) {
  15478. err("Invalid function pointer called with signature 'iiiiiifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15479. err("Build with ASSERTIONS=2 for more info.");
  15480. abort(x);
  15481. }
  15482. function nullFunc_iiiiiii(x) {
  15483. err("Invalid function pointer called with signature 'iiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15484. err("Build with ASSERTIONS=2 for more info.");
  15485. abort(x);
  15486. }
  15487. function nullFunc_iiiiiiifiif(x) {
  15488. err("Invalid function pointer called with signature 'iiiiiiifiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15489. err("Build with ASSERTIONS=2 for more info.");
  15490. abort(x);
  15491. }
  15492. function nullFunc_iiiiiiii(x) {
  15493. err("Invalid function pointer called with signature 'iiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15494. err("Build with ASSERTIONS=2 for more info.");
  15495. abort(x);
  15496. }
  15497. function nullFunc_iiiiiiiii(x) {
  15498. err("Invalid function pointer called with signature 'iiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15499. err("Build with ASSERTIONS=2 for more info.");
  15500. abort(x);
  15501. }
  15502. function nullFunc_iiiiiiiiii(x) {
  15503. err("Invalid function pointer called with signature 'iiiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15504. err("Build with ASSERTIONS=2 for more info.");
  15505. abort(x);
  15506. }
  15507. function nullFunc_iiiiiiiiiii(x) {
  15508. err("Invalid function pointer called with signature 'iiiiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15509. err("Build with ASSERTIONS=2 for more info.");
  15510. abort(x);
  15511. }
  15512. function nullFunc_iiiiiiiiiiii(x) {
  15513. err("Invalid function pointer called with signature 'iiiiiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15514. err("Build with ASSERTIONS=2 for more info.");
  15515. abort(x);
  15516. }
  15517. function nullFunc_iiiiiiiiiiiii(x) {
  15518. err("Invalid function pointer called with signature 'iiiiiiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15519. err("Build with ASSERTIONS=2 for more info.");
  15520. abort(x);
  15521. }
  15522. function nullFunc_iiiiiiiiiiiiii(x) {
  15523. err("Invalid function pointer called with signature 'iiiiiiiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15524. err("Build with ASSERTIONS=2 for more info.");
  15525. abort(x);
  15526. }
  15527. function nullFunc_iiiiij(x) {
  15528. err("Invalid function pointer called with signature 'iiiiij'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15529. err("Build with ASSERTIONS=2 for more info.");
  15530. abort(x);
  15531. }
  15532. function nullFunc_iiiiiji(x) {
  15533. err("Invalid function pointer called with signature 'iiiiiji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15534. err("Build with ASSERTIONS=2 for more info.");
  15535. abort(x);
  15536. }
  15537. function nullFunc_iiiiijjiiiii(x) {
  15538. err("Invalid function pointer called with signature 'iiiiijjiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15539. err("Build with ASSERTIONS=2 for more info.");
  15540. abort(x);
  15541. }
  15542. function nullFunc_iiiij(x) {
  15543. err("Invalid function pointer called with signature 'iiiij'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15544. err("Build with ASSERTIONS=2 for more info.");
  15545. abort(x);
  15546. }
  15547. function nullFunc_iiiiji(x) {
  15548. err("Invalid function pointer called with signature 'iiiiji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15549. err("Build with ASSERTIONS=2 for more info.");
  15550. abort(x);
  15551. }
  15552. function nullFunc_iiiijii(x) {
  15553. err("Invalid function pointer called with signature 'iiiijii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15554. err("Build with ASSERTIONS=2 for more info.");
  15555. abort(x);
  15556. }
  15557. function nullFunc_iiiijijii(x) {
  15558. err("Invalid function pointer called with signature 'iiiijijii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15559. err("Build with ASSERTIONS=2 for more info.");
  15560. abort(x);
  15561. }
  15562. function nullFunc_iiiijjii(x) {
  15563. err("Invalid function pointer called with signature 'iiiijjii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15564. err("Build with ASSERTIONS=2 for more info.");
  15565. abort(x);
  15566. }
  15567. function nullFunc_iiiijjiiii(x) {
  15568. err("Invalid function pointer called with signature 'iiiijjiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15569. err("Build with ASSERTIONS=2 for more info.");
  15570. abort(x);
  15571. }
  15572. function nullFunc_iiij(x) {
  15573. err("Invalid function pointer called with signature 'iiij'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15574. err("Build with ASSERTIONS=2 for more info.");
  15575. abort(x);
  15576. }
  15577. function nullFunc_iiiji(x) {
  15578. err("Invalid function pointer called with signature 'iiiji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15579. err("Build with ASSERTIONS=2 for more info.");
  15580. abort(x);
  15581. }
  15582. function nullFunc_iiijii(x) {
  15583. err("Invalid function pointer called with signature 'iiijii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15584. err("Build with ASSERTIONS=2 for more info.");
  15585. abort(x);
  15586. }
  15587. function nullFunc_iiijiii(x) {
  15588. err("Invalid function pointer called with signature 'iiijiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15589. err("Build with ASSERTIONS=2 for more info.");
  15590. abort(x);
  15591. }
  15592. function nullFunc_iiijji(x) {
  15593. err("Invalid function pointer called with signature 'iiijji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15594. err("Build with ASSERTIONS=2 for more info.");
  15595. abort(x);
  15596. }
  15597. function nullFunc_iiijjii(x) {
  15598. err("Invalid function pointer called with signature 'iiijjii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15599. err("Build with ASSERTIONS=2 for more info.");
  15600. abort(x);
  15601. }
  15602. function nullFunc_iij(x) {
  15603. err("Invalid function pointer called with signature 'iij'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15604. err("Build with ASSERTIONS=2 for more info.");
  15605. abort(x);
  15606. }
  15607. function nullFunc_iiji(x) {
  15608. err("Invalid function pointer called with signature 'iiji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15609. err("Build with ASSERTIONS=2 for more info.");
  15610. abort(x);
  15611. }
  15612. function nullFunc_iijii(x) {
  15613. err("Invalid function pointer called with signature 'iijii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15614. err("Build with ASSERTIONS=2 for more info.");
  15615. abort(x);
  15616. }
  15617. function nullFunc_iijiii(x) {
  15618. err("Invalid function pointer called with signature 'iijiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15619. err("Build with ASSERTIONS=2 for more info.");
  15620. abort(x);
  15621. }
  15622. function nullFunc_iijji(x) {
  15623. err("Invalid function pointer called with signature 'iijji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15624. err("Build with ASSERTIONS=2 for more info.");
  15625. abort(x);
  15626. }
  15627. function nullFunc_iijjii(x) {
  15628. err("Invalid function pointer called with signature 'iijjii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15629. err("Build with ASSERTIONS=2 for more info.");
  15630. abort(x);
  15631. }
  15632. function nullFunc_iijjiii(x) {
  15633. err("Invalid function pointer called with signature 'iijjiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15634. err("Build with ASSERTIONS=2 for more info.");
  15635. abort(x);
  15636. }
  15637. function nullFunc_iijjji(x) {
  15638. err("Invalid function pointer called with signature 'iijjji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15639. err("Build with ASSERTIONS=2 for more info.");
  15640. abort(x);
  15641. }
  15642. function nullFunc_ij(x) {
  15643. err("Invalid function pointer called with signature 'ij'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15644. err("Build with ASSERTIONS=2 for more info.");
  15645. abort(x);
  15646. }
  15647. function nullFunc_iji(x) {
  15648. err("Invalid function pointer called with signature 'iji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15649. err("Build with ASSERTIONS=2 for more info.");
  15650. abort(x);
  15651. }
  15652. function nullFunc_ijiii(x) {
  15653. err("Invalid function pointer called with signature 'ijiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15654. err("Build with ASSERTIONS=2 for more info.");
  15655. abort(x);
  15656. }
  15657. function nullFunc_ijiiii(x) {
  15658. err("Invalid function pointer called with signature 'ijiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15659. err("Build with ASSERTIONS=2 for more info.");
  15660. abort(x);
  15661. }
  15662. function nullFunc_ijiiiii(x) {
  15663. err("Invalid function pointer called with signature 'ijiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15664. err("Build with ASSERTIONS=2 for more info.");
  15665. abort(x);
  15666. }
  15667. function nullFunc_ijiiiiii(x) {
  15668. err("Invalid function pointer called with signature 'ijiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15669. err("Build with ASSERTIONS=2 for more info.");
  15670. abort(x);
  15671. }
  15672. function nullFunc_ijj(x) {
  15673. err("Invalid function pointer called with signature 'ijj'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15674. err("Build with ASSERTIONS=2 for more info.");
  15675. abort(x);
  15676. }
  15677. function nullFunc_ijji(x) {
  15678. err("Invalid function pointer called with signature 'ijji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15679. err("Build with ASSERTIONS=2 for more info.");
  15680. abort(x);
  15681. }
  15682. function nullFunc_j(x) {
  15683. err("Invalid function pointer called with signature 'j'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15684. err("Build with ASSERTIONS=2 for more info.");
  15685. abort(x);
  15686. }
  15687. function nullFunc_jdi(x) {
  15688. err("Invalid function pointer called with signature 'jdi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15689. err("Build with ASSERTIONS=2 for more info.");
  15690. abort(x);
  15691. }
  15692. function nullFunc_jdii(x) {
  15693. err("Invalid function pointer called with signature 'jdii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15694. err("Build with ASSERTIONS=2 for more info.");
  15695. abort(x);
  15696. }
  15697. function nullFunc_jfi(x) {
  15698. err("Invalid function pointer called with signature 'jfi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15699. err("Build with ASSERTIONS=2 for more info.");
  15700. abort(x);
  15701. }
  15702. function nullFunc_ji(x) {
  15703. err("Invalid function pointer called with signature 'ji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15704. err("Build with ASSERTIONS=2 for more info.");
  15705. abort(x);
  15706. }
  15707. function nullFunc_jid(x) {
  15708. err("Invalid function pointer called with signature 'jid'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15709. err("Build with ASSERTIONS=2 for more info.");
  15710. abort(x);
  15711. }
  15712. function nullFunc_jidi(x) {
  15713. err("Invalid function pointer called with signature 'jidi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15714. err("Build with ASSERTIONS=2 for more info.");
  15715. abort(x);
  15716. }
  15717. function nullFunc_jidii(x) {
  15718. err("Invalid function pointer called with signature 'jidii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15719. err("Build with ASSERTIONS=2 for more info.");
  15720. abort(x);
  15721. }
  15722. function nullFunc_jifi(x) {
  15723. err("Invalid function pointer called with signature 'jifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15724. err("Build with ASSERTIONS=2 for more info.");
  15725. abort(x);
  15726. }
  15727. function nullFunc_jii(x) {
  15728. err("Invalid function pointer called with signature 'jii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15729. err("Build with ASSERTIONS=2 for more info.");
  15730. abort(x);
  15731. }
  15732. function nullFunc_jiii(x) {
  15733. err("Invalid function pointer called with signature 'jiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15734. err("Build with ASSERTIONS=2 for more info.");
  15735. abort(x);
  15736. }
  15737. function nullFunc_jiiii(x) {
  15738. err("Invalid function pointer called with signature 'jiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15739. err("Build with ASSERTIONS=2 for more info.");
  15740. abort(x);
  15741. }
  15742. function nullFunc_jiiiii(x) {
  15743. err("Invalid function pointer called with signature 'jiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15744. err("Build with ASSERTIONS=2 for more info.");
  15745. abort(x);
  15746. }
  15747. function nullFunc_jiiiiii(x) {
  15748. err("Invalid function pointer called with signature 'jiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15749. err("Build with ASSERTIONS=2 for more info.");
  15750. abort(x);
  15751. }
  15752. function nullFunc_jiiiiiiiiii(x) {
  15753. err("Invalid function pointer called with signature 'jiiiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15754. err("Build with ASSERTIONS=2 for more info.");
  15755. abort(x);
  15756. }
  15757. function nullFunc_jiiij(x) {
  15758. err("Invalid function pointer called with signature 'jiiij'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15759. err("Build with ASSERTIONS=2 for more info.");
  15760. abort(x);
  15761. }
  15762. function nullFunc_jiiiji(x) {
  15763. err("Invalid function pointer called with signature 'jiiiji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15764. err("Build with ASSERTIONS=2 for more info.");
  15765. abort(x);
  15766. }
  15767. function nullFunc_jiiji(x) {
  15768. err("Invalid function pointer called with signature 'jiiji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15769. err("Build with ASSERTIONS=2 for more info.");
  15770. abort(x);
  15771. }
  15772. function nullFunc_jiji(x) {
  15773. err("Invalid function pointer called with signature 'jiji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15774. err("Build with ASSERTIONS=2 for more info.");
  15775. abort(x);
  15776. }
  15777. function nullFunc_jijii(x) {
  15778. err("Invalid function pointer called with signature 'jijii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15779. err("Build with ASSERTIONS=2 for more info.");
  15780. abort(x);
  15781. }
  15782. function nullFunc_jijiii(x) {
  15783. err("Invalid function pointer called with signature 'jijiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15784. err("Build with ASSERTIONS=2 for more info.");
  15785. abort(x);
  15786. }
  15787. function nullFunc_jijj(x) {
  15788. err("Invalid function pointer called with signature 'jijj'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15789. err("Build with ASSERTIONS=2 for more info.");
  15790. abort(x);
  15791. }
  15792. function nullFunc_jijji(x) {
  15793. err("Invalid function pointer called with signature 'jijji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15794. err("Build with ASSERTIONS=2 for more info.");
  15795. abort(x);
  15796. }
  15797. function nullFunc_jj(x) {
  15798. err("Invalid function pointer called with signature 'jj'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15799. err("Build with ASSERTIONS=2 for more info.");
  15800. abort(x);
  15801. }
  15802. function nullFunc_jji(x) {
  15803. err("Invalid function pointer called with signature 'jji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15804. err("Build with ASSERTIONS=2 for more info.");
  15805. abort(x);
  15806. }
  15807. function nullFunc_jjii(x) {
  15808. err("Invalid function pointer called with signature 'jjii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15809. err("Build with ASSERTIONS=2 for more info.");
  15810. abort(x);
  15811. }
  15812. function nullFunc_jjji(x) {
  15813. err("Invalid function pointer called with signature 'jjji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15814. err("Build with ASSERTIONS=2 for more info.");
  15815. abort(x);
  15816. }
  15817. function nullFunc_jjjji(x) {
  15818. err("Invalid function pointer called with signature 'jjjji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15819. err("Build with ASSERTIONS=2 for more info.");
  15820. abort(x);
  15821. }
  15822. function nullFunc_v(x) {
  15823. err("Invalid function pointer called with signature 'v'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15824. err("Build with ASSERTIONS=2 for more info.");
  15825. abort(x);
  15826. }
  15827. function nullFunc_vd(x) {
  15828. err("Invalid function pointer called with signature 'vd'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15829. err("Build with ASSERTIONS=2 for more info.");
  15830. abort(x);
  15831. }
  15832. function nullFunc_vdi(x) {
  15833. err("Invalid function pointer called with signature 'vdi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15834. err("Build with ASSERTIONS=2 for more info.");
  15835. abort(x);
  15836. }
  15837. function nullFunc_vdii(x) {
  15838. err("Invalid function pointer called with signature 'vdii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15839. err("Build with ASSERTIONS=2 for more info.");
  15840. abort(x);
  15841. }
  15842. function nullFunc_vf(x) {
  15843. err("Invalid function pointer called with signature 'vf'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15844. err("Build with ASSERTIONS=2 for more info.");
  15845. abort(x);
  15846. }
  15847. function nullFunc_vff(x) {
  15848. err("Invalid function pointer called with signature 'vff'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15849. err("Build with ASSERTIONS=2 for more info.");
  15850. abort(x);
  15851. }
  15852. function nullFunc_vfff(x) {
  15853. err("Invalid function pointer called with signature 'vfff'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15854. err("Build with ASSERTIONS=2 for more info.");
  15855. abort(x);
  15856. }
  15857. function nullFunc_vffff(x) {
  15858. err("Invalid function pointer called with signature 'vffff'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15859. err("Build with ASSERTIONS=2 for more info.");
  15860. abort(x);
  15861. }
  15862. function nullFunc_vffffffi(x) {
  15863. err("Invalid function pointer called with signature 'vffffffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15864. err("Build with ASSERTIONS=2 for more info.");
  15865. abort(x);
  15866. }
  15867. function nullFunc_vffffffii(x) {
  15868. err("Invalid function pointer called with signature 'vffffffii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15869. err("Build with ASSERTIONS=2 for more info.");
  15870. abort(x);
  15871. }
  15872. function nullFunc_vffffi(x) {
  15873. err("Invalid function pointer called with signature 'vffffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15874. err("Build with ASSERTIONS=2 for more info.");
  15875. abort(x);
  15876. }
  15877. function nullFunc_vffffii(x) {
  15878. err("Invalid function pointer called with signature 'vffffii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15879. err("Build with ASSERTIONS=2 for more info.");
  15880. abort(x);
  15881. }
  15882. function nullFunc_vffffiiii(x) {
  15883. err("Invalid function pointer called with signature 'vffffiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15884. err("Build with ASSERTIONS=2 for more info.");
  15885. abort(x);
  15886. }
  15887. function nullFunc_vfffi(x) {
  15888. err("Invalid function pointer called with signature 'vfffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15889. err("Build with ASSERTIONS=2 for more info.");
  15890. abort(x);
  15891. }
  15892. function nullFunc_vffi(x) {
  15893. err("Invalid function pointer called with signature 'vffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15894. err("Build with ASSERTIONS=2 for more info.");
  15895. abort(x);
  15896. }
  15897. function nullFunc_vfi(x) {
  15898. err("Invalid function pointer called with signature 'vfi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15899. err("Build with ASSERTIONS=2 for more info.");
  15900. abort(x);
  15901. }
  15902. function nullFunc_vfii(x) {
  15903. err("Invalid function pointer called with signature 'vfii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15904. err("Build with ASSERTIONS=2 for more info.");
  15905. abort(x);
  15906. }
  15907. function nullFunc_vfiii(x) {
  15908. err("Invalid function pointer called with signature 'vfiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15909. err("Build with ASSERTIONS=2 for more info.");
  15910. abort(x);
  15911. }
  15912. function nullFunc_vfiiiii(x) {
  15913. err("Invalid function pointer called with signature 'vfiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15914. err("Build with ASSERTIONS=2 for more info.");
  15915. abort(x);
  15916. }
  15917. function nullFunc_vi(x) {
  15918. err("Invalid function pointer called with signature 'vi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15919. err("Build with ASSERTIONS=2 for more info.");
  15920. abort(x);
  15921. }
  15922. function nullFunc_vid(x) {
  15923. err("Invalid function pointer called with signature 'vid'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15924. err("Build with ASSERTIONS=2 for more info.");
  15925. abort(x);
  15926. }
  15927. function nullFunc_vidd(x) {
  15928. err("Invalid function pointer called with signature 'vidd'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15929. err("Build with ASSERTIONS=2 for more info.");
  15930. abort(x);
  15931. }
  15932. function nullFunc_vidddi(x) {
  15933. err("Invalid function pointer called with signature 'vidddi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15934. err("Build with ASSERTIONS=2 for more info.");
  15935. abort(x);
  15936. }
  15937. function nullFunc_viddi(x) {
  15938. err("Invalid function pointer called with signature 'viddi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15939. err("Build with ASSERTIONS=2 for more info.");
  15940. abort(x);
  15941. }
  15942. function nullFunc_viddiiii(x) {
  15943. err("Invalid function pointer called with signature 'viddiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15944. err("Build with ASSERTIONS=2 for more info.");
  15945. abort(x);
  15946. }
  15947. function nullFunc_vidi(x) {
  15948. err("Invalid function pointer called with signature 'vidi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15949. err("Build with ASSERTIONS=2 for more info.");
  15950. abort(x);
  15951. }
  15952. function nullFunc_vidii(x) {
  15953. err("Invalid function pointer called with signature 'vidii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15954. err("Build with ASSERTIONS=2 for more info.");
  15955. abort(x);
  15956. }
  15957. function nullFunc_vidiii(x) {
  15958. err("Invalid function pointer called with signature 'vidiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15959. err("Build with ASSERTIONS=2 for more info.");
  15960. abort(x);
  15961. }
  15962. function nullFunc_vif(x) {
  15963. err("Invalid function pointer called with signature 'vif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15964. err("Build with ASSERTIONS=2 for more info.");
  15965. abort(x);
  15966. }
  15967. function nullFunc_viff(x) {
  15968. err("Invalid function pointer called with signature 'viff'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15969. err("Build with ASSERTIONS=2 for more info.");
  15970. abort(x);
  15971. }
  15972. function nullFunc_vifff(x) {
  15973. err("Invalid function pointer called with signature 'vifff'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15974. err("Build with ASSERTIONS=2 for more info.");
  15975. abort(x);
  15976. }
  15977. function nullFunc_viffff(x) {
  15978. err("Invalid function pointer called with signature 'viffff'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15979. err("Build with ASSERTIONS=2 for more info.");
  15980. abort(x);
  15981. }
  15982. function nullFunc_viffffffi(x) {
  15983. err("Invalid function pointer called with signature 'viffffffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15984. err("Build with ASSERTIONS=2 for more info.");
  15985. abort(x);
  15986. }
  15987. function nullFunc_vifffffi(x) {
  15988. err("Invalid function pointer called with signature 'vifffffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15989. err("Build with ASSERTIONS=2 for more info.");
  15990. abort(x);
  15991. }
  15992. function nullFunc_viffffi(x) {
  15993. err("Invalid function pointer called with signature 'viffffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15994. err("Build with ASSERTIONS=2 for more info.");
  15995. abort(x);
  15996. }
  15997. function nullFunc_viffffii(x) {
  15998. err("Invalid function pointer called with signature 'viffffii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  15999. err("Build with ASSERTIONS=2 for more info.");
  16000. abort(x);
  16001. }
  16002. function nullFunc_viffffiifffiiiiif(x) {
  16003. err("Invalid function pointer called with signature 'viffffiifffiiiiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16004. err("Build with ASSERTIONS=2 for more info.");
  16005. abort(x);
  16006. }
  16007. function nullFunc_vifffi(x) {
  16008. err("Invalid function pointer called with signature 'vifffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16009. err("Build with ASSERTIONS=2 for more info.");
  16010. abort(x);
  16011. }
  16012. function nullFunc_vifffii(x) {
  16013. err("Invalid function pointer called with signature 'vifffii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16014. err("Build with ASSERTIONS=2 for more info.");
  16015. abort(x);
  16016. }
  16017. function nullFunc_viffi(x) {
  16018. err("Invalid function pointer called with signature 'viffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16019. err("Build with ASSERTIONS=2 for more info.");
  16020. abort(x);
  16021. }
  16022. function nullFunc_viffifffi(x) {
  16023. err("Invalid function pointer called with signature 'viffifffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16024. err("Build with ASSERTIONS=2 for more info.");
  16025. abort(x);
  16026. }
  16027. function nullFunc_viffii(x) {
  16028. err("Invalid function pointer called with signature 'viffii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16029. err("Build with ASSERTIONS=2 for more info.");
  16030. abort(x);
  16031. }
  16032. function nullFunc_viffiifffffiii(x) {
  16033. err("Invalid function pointer called with signature 'viffiifffffiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16034. err("Build with ASSERTIONS=2 for more info.");
  16035. abort(x);
  16036. }
  16037. function nullFunc_viffiifffiii(x) {
  16038. err("Invalid function pointer called with signature 'viffiifffiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16039. err("Build with ASSERTIONS=2 for more info.");
  16040. abort(x);
  16041. }
  16042. function nullFunc_viffiii(x) {
  16043. err("Invalid function pointer called with signature 'viffiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16044. err("Build with ASSERTIONS=2 for more info.");
  16045. abort(x);
  16046. }
  16047. function nullFunc_viffiiiif(x) {
  16048. err("Invalid function pointer called with signature 'viffiiiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16049. err("Build with ASSERTIONS=2 for more info.");
  16050. abort(x);
  16051. }
  16052. function nullFunc_vifi(x) {
  16053. err("Invalid function pointer called with signature 'vifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16054. err("Build with ASSERTIONS=2 for more info.");
  16055. abort(x);
  16056. }
  16057. function nullFunc_vififi(x) {
  16058. err("Invalid function pointer called with signature 'vififi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16059. err("Build with ASSERTIONS=2 for more info.");
  16060. abort(x);
  16061. }
  16062. function nullFunc_vifii(x) {
  16063. err("Invalid function pointer called with signature 'vifii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16064. err("Build with ASSERTIONS=2 for more info.");
  16065. abort(x);
  16066. }
  16067. function nullFunc_vifiii(x) {
  16068. err("Invalid function pointer called with signature 'vifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16069. err("Build with ASSERTIONS=2 for more info.");
  16070. abort(x);
  16071. }
  16072. function nullFunc_vifiiii(x) {
  16073. err("Invalid function pointer called with signature 'vifiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16074. err("Build with ASSERTIONS=2 for more info.");
  16075. abort(x);
  16076. }
  16077. function nullFunc_vifiiiii(x) {
  16078. err("Invalid function pointer called with signature 'vifiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16079. err("Build with ASSERTIONS=2 for more info.");
  16080. abort(x);
  16081. }
  16082. function nullFunc_vii(x) {
  16083. err("Invalid function pointer called with signature 'vii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16084. err("Build with ASSERTIONS=2 for more info.");
  16085. abort(x);
  16086. }
  16087. function nullFunc_viid(x) {
  16088. err("Invalid function pointer called with signature 'viid'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16089. err("Build with ASSERTIONS=2 for more info.");
  16090. abort(x);
  16091. }
  16092. function nullFunc_viidd(x) {
  16093. err("Invalid function pointer called with signature 'viidd'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16094. err("Build with ASSERTIONS=2 for more info.");
  16095. abort(x);
  16096. }
  16097. function nullFunc_viidi(x) {
  16098. err("Invalid function pointer called with signature 'viidi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16099. err("Build with ASSERTIONS=2 for more info.");
  16100. abort(x);
  16101. }
  16102. function nullFunc_viidii(x) {
  16103. err("Invalid function pointer called with signature 'viidii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16104. err("Build with ASSERTIONS=2 for more info.");
  16105. abort(x);
  16106. }
  16107. function nullFunc_viif(x) {
  16108. err("Invalid function pointer called with signature 'viif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16109. err("Build with ASSERTIONS=2 for more info.");
  16110. abort(x);
  16111. }
  16112. function nullFunc_viiff(x) {
  16113. err("Invalid function pointer called with signature 'viiff'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16114. err("Build with ASSERTIONS=2 for more info.");
  16115. abort(x);
  16116. }
  16117. function nullFunc_viifff(x) {
  16118. err("Invalid function pointer called with signature 'viifff'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16119. err("Build with ASSERTIONS=2 for more info.");
  16120. abort(x);
  16121. }
  16122. function nullFunc_viifffi(x) {
  16123. err("Invalid function pointer called with signature 'viifffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16124. err("Build with ASSERTIONS=2 for more info.");
  16125. abort(x);
  16126. }
  16127. function nullFunc_viiffi(x) {
  16128. err("Invalid function pointer called with signature 'viiffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16129. err("Build with ASSERTIONS=2 for more info.");
  16130. abort(x);
  16131. }
  16132. function nullFunc_viiffii(x) {
  16133. err("Invalid function pointer called with signature 'viiffii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16134. err("Build with ASSERTIONS=2 for more info.");
  16135. abort(x);
  16136. }
  16137. function nullFunc_viifi(x) {
  16138. err("Invalid function pointer called with signature 'viifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16139. err("Build with ASSERTIONS=2 for more info.");
  16140. abort(x);
  16141. }
  16142. function nullFunc_viifii(x) {
  16143. err("Invalid function pointer called with signature 'viifii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16144. err("Build with ASSERTIONS=2 for more info.");
  16145. abort(x);
  16146. }
  16147. function nullFunc_viifiii(x) {
  16148. err("Invalid function pointer called with signature 'viifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16149. err("Build with ASSERTIONS=2 for more info.");
  16150. abort(x);
  16151. }
  16152. function nullFunc_viifiiii(x) {
  16153. err("Invalid function pointer called with signature 'viifiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16154. err("Build with ASSERTIONS=2 for more info.");
  16155. abort(x);
  16156. }
  16157. function nullFunc_viii(x) {
  16158. err("Invalid function pointer called with signature 'viii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16159. err("Build with ASSERTIONS=2 for more info.");
  16160. abort(x);
  16161. }
  16162. function nullFunc_viiidi(x) {
  16163. err("Invalid function pointer called with signature 'viiidi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16164. err("Build with ASSERTIONS=2 for more info.");
  16165. abort(x);
  16166. }
  16167. function nullFunc_viiif(x) {
  16168. err("Invalid function pointer called with signature 'viiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16169. err("Build with ASSERTIONS=2 for more info.");
  16170. abort(x);
  16171. }
  16172. function nullFunc_viiiffffi(x) {
  16173. err("Invalid function pointer called with signature 'viiiffffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16174. err("Build with ASSERTIONS=2 for more info.");
  16175. abort(x);
  16176. }
  16177. function nullFunc_viiifffi(x) {
  16178. err("Invalid function pointer called with signature 'viiifffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16179. err("Build with ASSERTIONS=2 for more info.");
  16180. abort(x);
  16181. }
  16182. function nullFunc_viiiffi(x) {
  16183. err("Invalid function pointer called with signature 'viiiffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16184. err("Build with ASSERTIONS=2 for more info.");
  16185. abort(x);
  16186. }
  16187. function nullFunc_viiiffii(x) {
  16188. err("Invalid function pointer called with signature 'viiiffii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16189. err("Build with ASSERTIONS=2 for more info.");
  16190. abort(x);
  16191. }
  16192. function nullFunc_viiifi(x) {
  16193. err("Invalid function pointer called with signature 'viiifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16194. err("Build with ASSERTIONS=2 for more info.");
  16195. abort(x);
  16196. }
  16197. function nullFunc_viiififfi(x) {
  16198. err("Invalid function pointer called with signature 'viiififfi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16199. err("Build with ASSERTIONS=2 for more info.");
  16200. abort(x);
  16201. }
  16202. function nullFunc_viiififi(x) {
  16203. err("Invalid function pointer called with signature 'viiififi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16204. err("Build with ASSERTIONS=2 for more info.");
  16205. abort(x);
  16206. }
  16207. function nullFunc_viiifii(x) {
  16208. err("Invalid function pointer called with signature 'viiifii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16209. err("Build with ASSERTIONS=2 for more info.");
  16210. abort(x);
  16211. }
  16212. function nullFunc_viiifiii(x) {
  16213. err("Invalid function pointer called with signature 'viiifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16214. err("Build with ASSERTIONS=2 for more info.");
  16215. abort(x);
  16216. }
  16217. function nullFunc_viiifiiiii(x) {
  16218. err("Invalid function pointer called with signature 'viiifiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16219. err("Build with ASSERTIONS=2 for more info.");
  16220. abort(x);
  16221. }
  16222. function nullFunc_viiii(x) {
  16223. err("Invalid function pointer called with signature 'viiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16224. err("Build with ASSERTIONS=2 for more info.");
  16225. abort(x);
  16226. }
  16227. function nullFunc_viiiiddi(x) {
  16228. err("Invalid function pointer called with signature 'viiiiddi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16229. err("Build with ASSERTIONS=2 for more info.");
  16230. abort(x);
  16231. }
  16232. function nullFunc_viiiif(x) {
  16233. err("Invalid function pointer called with signature 'viiiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16234. err("Build with ASSERTIONS=2 for more info.");
  16235. abort(x);
  16236. }
  16237. function nullFunc_viiiiffi(x) {
  16238. err("Invalid function pointer called with signature 'viiiiffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16239. err("Build with ASSERTIONS=2 for more info.");
  16240. abort(x);
  16241. }
  16242. function nullFunc_viiiifi(x) {
  16243. err("Invalid function pointer called with signature 'viiiifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16244. err("Build with ASSERTIONS=2 for more info.");
  16245. abort(x);
  16246. }
  16247. function nullFunc_viiiififfi(x) {
  16248. err("Invalid function pointer called with signature 'viiiififfi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16249. err("Build with ASSERTIONS=2 for more info.");
  16250. abort(x);
  16251. }
  16252. function nullFunc_viiiifii(x) {
  16253. err("Invalid function pointer called with signature 'viiiifii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16254. err("Build with ASSERTIONS=2 for more info.");
  16255. abort(x);
  16256. }
  16257. function nullFunc_viiiifiifi(x) {
  16258. err("Invalid function pointer called with signature 'viiiifiifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16259. err("Build with ASSERTIONS=2 for more info.");
  16260. abort(x);
  16261. }
  16262. function nullFunc_viiiifiii(x) {
  16263. err("Invalid function pointer called with signature 'viiiifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16264. err("Build with ASSERTIONS=2 for more info.");
  16265. abort(x);
  16266. }
  16267. function nullFunc_viiiifiiii(x) {
  16268. err("Invalid function pointer called with signature 'viiiifiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16269. err("Build with ASSERTIONS=2 for more info.");
  16270. abort(x);
  16271. }
  16272. function nullFunc_viiiifiiiii(x) {
  16273. err("Invalid function pointer called with signature 'viiiifiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16274. err("Build with ASSERTIONS=2 for more info.");
  16275. abort(x);
  16276. }
  16277. function nullFunc_viiiifiiiiif(x) {
  16278. err("Invalid function pointer called with signature 'viiiifiiiiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16279. err("Build with ASSERTIONS=2 for more info.");
  16280. abort(x);
  16281. }
  16282. function nullFunc_viiiifiiiiiiii(x) {
  16283. err("Invalid function pointer called with signature 'viiiifiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16284. err("Build with ASSERTIONS=2 for more info.");
  16285. abort(x);
  16286. }
  16287. function nullFunc_viiiii(x) {
  16288. err("Invalid function pointer called with signature 'viiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16289. err("Build with ASSERTIONS=2 for more info.");
  16290. abort(x);
  16291. }
  16292. function nullFunc_viiiiif(x) {
  16293. err("Invalid function pointer called with signature 'viiiiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16294. err("Build with ASSERTIONS=2 for more info.");
  16295. abort(x);
  16296. }
  16297. function nullFunc_viiiiifffi(x) {
  16298. err("Invalid function pointer called with signature 'viiiiifffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16299. err("Build with ASSERTIONS=2 for more info.");
  16300. abort(x);
  16301. }
  16302. function nullFunc_viiiiiffi(x) {
  16303. err("Invalid function pointer called with signature 'viiiiiffi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16304. err("Build with ASSERTIONS=2 for more info.");
  16305. abort(x);
  16306. }
  16307. function nullFunc_viiiiiffii(x) {
  16308. err("Invalid function pointer called with signature 'viiiiiffii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16309. err("Build with ASSERTIONS=2 for more info.");
  16310. abort(x);
  16311. }
  16312. function nullFunc_viiiiifi(x) {
  16313. err("Invalid function pointer called with signature 'viiiiifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16314. err("Build with ASSERTIONS=2 for more info.");
  16315. abort(x);
  16316. }
  16317. function nullFunc_viiiiifii(x) {
  16318. err("Invalid function pointer called with signature 'viiiiifii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16319. err("Build with ASSERTIONS=2 for more info.");
  16320. abort(x);
  16321. }
  16322. function nullFunc_viiiiii(x) {
  16323. err("Invalid function pointer called with signature 'viiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16324. err("Build with ASSERTIONS=2 for more info.");
  16325. abort(x);
  16326. }
  16327. function nullFunc_viiiiiif(x) {
  16328. err("Invalid function pointer called with signature 'viiiiiif'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16329. err("Build with ASSERTIONS=2 for more info.");
  16330. abort(x);
  16331. }
  16332. function nullFunc_viiiiiifddfiii(x) {
  16333. err("Invalid function pointer called with signature 'viiiiiifddfiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16334. err("Build with ASSERTIONS=2 for more info.");
  16335. abort(x);
  16336. }
  16337. function nullFunc_viiiiiiffffiii(x) {
  16338. err("Invalid function pointer called with signature 'viiiiiiffffiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16339. err("Build with ASSERTIONS=2 for more info.");
  16340. abort(x);
  16341. }
  16342. function nullFunc_viiiiiifi(x) {
  16343. err("Invalid function pointer called with signature 'viiiiiifi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16344. err("Build with ASSERTIONS=2 for more info.");
  16345. abort(x);
  16346. }
  16347. function nullFunc_viiiiiifiifiii(x) {
  16348. err("Invalid function pointer called with signature 'viiiiiifiifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16349. err("Build with ASSERTIONS=2 for more info.");
  16350. abort(x);
  16351. }
  16352. function nullFunc_viiiiiifjjfiii(x) {
  16353. err("Invalid function pointer called with signature 'viiiiiifjjfiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16354. err("Build with ASSERTIONS=2 for more info.");
  16355. abort(x);
  16356. }
  16357. function nullFunc_viiiiiii(x) {
  16358. err("Invalid function pointer called with signature 'viiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16359. err("Build with ASSERTIONS=2 for more info.");
  16360. abort(x);
  16361. }
  16362. function nullFunc_viiiiiiifddfii(x) {
  16363. err("Invalid function pointer called with signature 'viiiiiiifddfii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16364. err("Build with ASSERTIONS=2 for more info.");
  16365. abort(x);
  16366. }
  16367. function nullFunc_viiiiiiiffffii(x) {
  16368. err("Invalid function pointer called with signature 'viiiiiiiffffii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16369. err("Build with ASSERTIONS=2 for more info.");
  16370. abort(x);
  16371. }
  16372. function nullFunc_viiiiiiifiifii(x) {
  16373. err("Invalid function pointer called with signature 'viiiiiiifiifii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16374. err("Build with ASSERTIONS=2 for more info.");
  16375. abort(x);
  16376. }
  16377. function nullFunc_viiiiiiifiii(x) {
  16378. err("Invalid function pointer called with signature 'viiiiiiifiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16379. err("Build with ASSERTIONS=2 for more info.");
  16380. abort(x);
  16381. }
  16382. function nullFunc_viiiiiiifjjfii(x) {
  16383. err("Invalid function pointer called with signature 'viiiiiiifjjfii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16384. err("Build with ASSERTIONS=2 for more info.");
  16385. abort(x);
  16386. }
  16387. function nullFunc_viiiiiiii(x) {
  16388. err("Invalid function pointer called with signature 'viiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16389. err("Build with ASSERTIONS=2 for more info.");
  16390. abort(x);
  16391. }
  16392. function nullFunc_viiiiiiiii(x) {
  16393. err("Invalid function pointer called with signature 'viiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16394. err("Build with ASSERTIONS=2 for more info.");
  16395. abort(x);
  16396. }
  16397. function nullFunc_viiiiiiiiii(x) {
  16398. err("Invalid function pointer called with signature 'viiiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16399. err("Build with ASSERTIONS=2 for more info.");
  16400. abort(x);
  16401. }
  16402. function nullFunc_viiiiiiiiiii(x) {
  16403. err("Invalid function pointer called with signature 'viiiiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16404. err("Build with ASSERTIONS=2 for more info.");
  16405. abort(x);
  16406. }
  16407. function nullFunc_viiiiiiiiiiifii(x) {
  16408. err("Invalid function pointer called with signature 'viiiiiiiiiiifii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16409. err("Build with ASSERTIONS=2 for more info.");
  16410. abort(x);
  16411. }
  16412. function nullFunc_viiiiiiiiiiii(x) {
  16413. err("Invalid function pointer called with signature 'viiiiiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16414. err("Build with ASSERTIONS=2 for more info.");
  16415. abort(x);
  16416. }
  16417. function nullFunc_viiiiiiiiiiiii(x) {
  16418. err("Invalid function pointer called with signature 'viiiiiiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16419. err("Build with ASSERTIONS=2 for more info.");
  16420. abort(x);
  16421. }
  16422. function nullFunc_viiiiiiiiiiiiii(x) {
  16423. err("Invalid function pointer called with signature 'viiiiiiiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16424. err("Build with ASSERTIONS=2 for more info.");
  16425. abort(x);
  16426. }
  16427. function nullFunc_viiiiiiiiiiiiiii(x) {
  16428. err("Invalid function pointer called with signature 'viiiiiiiiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16429. err("Build with ASSERTIONS=2 for more info.");
  16430. abort(x);
  16431. }
  16432. function nullFunc_viiiiiiiiiiiiiiiiii(x) {
  16433. err("Invalid function pointer called with signature 'viiiiiiiiiiiiiiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16434. err("Build with ASSERTIONS=2 for more info.");
  16435. abort(x);
  16436. }
  16437. function nullFunc_viiiiiiiiiji(x) {
  16438. err("Invalid function pointer called with signature 'viiiiiiiiiji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16439. err("Build with ASSERTIONS=2 for more info.");
  16440. abort(x);
  16441. }
  16442. function nullFunc_viiiiiiiji(x) {
  16443. err("Invalid function pointer called with signature 'viiiiiiiji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16444. err("Build with ASSERTIONS=2 for more info.");
  16445. abort(x);
  16446. }
  16447. function nullFunc_viiiiiiijii(x) {
  16448. err("Invalid function pointer called with signature 'viiiiiiijii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16449. err("Build with ASSERTIONS=2 for more info.");
  16450. abort(x);
  16451. }
  16452. function nullFunc_viiiiiji(x) {
  16453. err("Invalid function pointer called with signature 'viiiiiji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16454. err("Build with ASSERTIONS=2 for more info.");
  16455. abort(x);
  16456. }
  16457. function nullFunc_viiiiijii(x) {
  16458. err("Invalid function pointer called with signature 'viiiiijii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16459. err("Build with ASSERTIONS=2 for more info.");
  16460. abort(x);
  16461. }
  16462. function nullFunc_viiiij(x) {
  16463. err("Invalid function pointer called with signature 'viiiij'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16464. err("Build with ASSERTIONS=2 for more info.");
  16465. abort(x);
  16466. }
  16467. function nullFunc_viiiiji(x) {
  16468. err("Invalid function pointer called with signature 'viiiiji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16469. err("Build with ASSERTIONS=2 for more info.");
  16470. abort(x);
  16471. }
  16472. function nullFunc_viiiijii(x) {
  16473. err("Invalid function pointer called with signature 'viiiijii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16474. err("Build with ASSERTIONS=2 for more info.");
  16475. abort(x);
  16476. }
  16477. function nullFunc_viiiijiiii(x) {
  16478. err("Invalid function pointer called with signature 'viiiijiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16479. err("Build with ASSERTIONS=2 for more info.");
  16480. abort(x);
  16481. }
  16482. function nullFunc_viiiijjiii(x) {
  16483. err("Invalid function pointer called with signature 'viiiijjiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16484. err("Build with ASSERTIONS=2 for more info.");
  16485. abort(x);
  16486. }
  16487. function nullFunc_viiiji(x) {
  16488. err("Invalid function pointer called with signature 'viiiji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16489. err("Build with ASSERTIONS=2 for more info.");
  16490. abort(x);
  16491. }
  16492. function nullFunc_viiijji(x) {
  16493. err("Invalid function pointer called with signature 'viiijji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16494. err("Build with ASSERTIONS=2 for more info.");
  16495. abort(x);
  16496. }
  16497. function nullFunc_viiijjii(x) {
  16498. err("Invalid function pointer called with signature 'viiijjii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16499. err("Build with ASSERTIONS=2 for more info.");
  16500. abort(x);
  16501. }
  16502. function nullFunc_viiijjiii(x) {
  16503. err("Invalid function pointer called with signature 'viiijjiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16504. err("Build with ASSERTIONS=2 for more info.");
  16505. abort(x);
  16506. }
  16507. function nullFunc_viij(x) {
  16508. err("Invalid function pointer called with signature 'viij'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16509. err("Build with ASSERTIONS=2 for more info.");
  16510. abort(x);
  16511. }
  16512. function nullFunc_viiji(x) {
  16513. err("Invalid function pointer called with signature 'viiji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16514. err("Build with ASSERTIONS=2 for more info.");
  16515. abort(x);
  16516. }
  16517. function nullFunc_viijii(x) {
  16518. err("Invalid function pointer called with signature 'viijii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16519. err("Build with ASSERTIONS=2 for more info.");
  16520. abort(x);
  16521. }
  16522. function nullFunc_viijiiii(x) {
  16523. err("Invalid function pointer called with signature 'viijiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16524. err("Build with ASSERTIONS=2 for more info.");
  16525. abort(x);
  16526. }
  16527. function nullFunc_viijiijiii(x) {
  16528. err("Invalid function pointer called with signature 'viijiijiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16529. err("Build with ASSERTIONS=2 for more info.");
  16530. abort(x);
  16531. }
  16532. function nullFunc_viijijii(x) {
  16533. err("Invalid function pointer called with signature 'viijijii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16534. err("Build with ASSERTIONS=2 for more info.");
  16535. abort(x);
  16536. }
  16537. function nullFunc_viijijiii(x) {
  16538. err("Invalid function pointer called with signature 'viijijiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16539. err("Build with ASSERTIONS=2 for more info.");
  16540. abort(x);
  16541. }
  16542. function nullFunc_viijijj(x) {
  16543. err("Invalid function pointer called with signature 'viijijj'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16544. err("Build with ASSERTIONS=2 for more info.");
  16545. abort(x);
  16546. }
  16547. function nullFunc_viijj(x) {
  16548. err("Invalid function pointer called with signature 'viijj'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16549. err("Build with ASSERTIONS=2 for more info.");
  16550. abort(x);
  16551. }
  16552. function nullFunc_viijji(x) {
  16553. err("Invalid function pointer called with signature 'viijji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16554. err("Build with ASSERTIONS=2 for more info.");
  16555. abort(x);
  16556. }
  16557. function nullFunc_viijjii(x) {
  16558. err("Invalid function pointer called with signature 'viijjii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16559. err("Build with ASSERTIONS=2 for more info.");
  16560. abort(x);
  16561. }
  16562. function nullFunc_viijjiii(x) {
  16563. err("Invalid function pointer called with signature 'viijjiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16564. err("Build with ASSERTIONS=2 for more info.");
  16565. abort(x);
  16566. }
  16567. function nullFunc_viijjji(x) {
  16568. err("Invalid function pointer called with signature 'viijjji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16569. err("Build with ASSERTIONS=2 for more info.");
  16570. abort(x);
  16571. }
  16572. function nullFunc_vij(x) {
  16573. err("Invalid function pointer called with signature 'vij'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16574. err("Build with ASSERTIONS=2 for more info.");
  16575. abort(x);
  16576. }
  16577. function nullFunc_viji(x) {
  16578. err("Invalid function pointer called with signature 'viji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16579. err("Build with ASSERTIONS=2 for more info.");
  16580. abort(x);
  16581. }
  16582. function nullFunc_vijii(x) {
  16583. err("Invalid function pointer called with signature 'vijii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16584. err("Build with ASSERTIONS=2 for more info.");
  16585. abort(x);
  16586. }
  16587. function nullFunc_vijiii(x) {
  16588. err("Invalid function pointer called with signature 'vijiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16589. err("Build with ASSERTIONS=2 for more info.");
  16590. abort(x);
  16591. }
  16592. function nullFunc_vijiji(x) {
  16593. err("Invalid function pointer called with signature 'vijiji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16594. err("Build with ASSERTIONS=2 for more info.");
  16595. abort(x);
  16596. }
  16597. function nullFunc_vijijji(x) {
  16598. err("Invalid function pointer called with signature 'vijijji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16599. err("Build with ASSERTIONS=2 for more info.");
  16600. abort(x);
  16601. }
  16602. function nullFunc_vijji(x) {
  16603. err("Invalid function pointer called with signature 'vijji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16604. err("Build with ASSERTIONS=2 for more info.");
  16605. abort(x);
  16606. }
  16607. function nullFunc_vijjii(x) {
  16608. err("Invalid function pointer called with signature 'vijjii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16609. err("Build with ASSERTIONS=2 for more info.");
  16610. abort(x);
  16611. }
  16612. function nullFunc_vji(x) {
  16613. err("Invalid function pointer called with signature 'vji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16614. err("Build with ASSERTIONS=2 for more info.");
  16615. abort(x);
  16616. }
  16617. function nullFunc_vjii(x) {
  16618. err("Invalid function pointer called with signature 'vjii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16619. err("Build with ASSERTIONS=2 for more info.");
  16620. abort(x);
  16621. }
  16622. function nullFunc_vjiiii(x) {
  16623. err("Invalid function pointer called with signature 'vjiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16624. err("Build with ASSERTIONS=2 for more info.");
  16625. abort(x);
  16626. }
  16627. function nullFunc_vjji(x) {
  16628. err("Invalid function pointer called with signature 'vjji'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");
  16629. err("Build with ASSERTIONS=2 for more info.");
  16630. abort(x);
  16631. }
  16632. Module["wasmTableSize"] = 127181;
  16633. Module["wasmMaxTableSize"] = 127181;
  16634. function invoke_dd(index, a1) {
  16635. var sp = stackSave();
  16636. try {
  16637. return Module["dynCall_dd"](index, a1);
  16638. } catch (e) {
  16639. stackRestore(sp);
  16640. if (typeof e !== "number" && e !== "longjmp") throw e;
  16641. Module["setThrew"](1, 0);
  16642. }
  16643. }
  16644. function invoke_ddd(index, a1, a2) {
  16645. var sp = stackSave();
  16646. try {
  16647. return Module["dynCall_ddd"](index, a1, a2);
  16648. } catch (e) {
  16649. stackRestore(sp);
  16650. if (typeof e !== "number" && e !== "longjmp") throw e;
  16651. Module["setThrew"](1, 0);
  16652. }
  16653. }
  16654. function invoke_dddi(index, a1, a2, a3) {
  16655. var sp = stackSave();
  16656. try {
  16657. return Module["dynCall_dddi"](index, a1, a2, a3);
  16658. } catch (e) {
  16659. stackRestore(sp);
  16660. if (typeof e !== "number" && e !== "longjmp") throw e;
  16661. Module["setThrew"](1, 0);
  16662. }
  16663. }
  16664. function invoke_ddi(index, a1, a2) {
  16665. var sp = stackSave();
  16666. try {
  16667. return Module["dynCall_ddi"](index, a1, a2);
  16668. } catch (e) {
  16669. stackRestore(sp);
  16670. if (typeof e !== "number" && e !== "longjmp") throw e;
  16671. Module["setThrew"](1, 0);
  16672. }
  16673. }
  16674. function invoke_ddidi(index, a1, a2, a3, a4) {
  16675. var sp = stackSave();
  16676. try {
  16677. return Module["dynCall_ddidi"](index, a1, a2, a3, a4);
  16678. } catch (e) {
  16679. stackRestore(sp);
  16680. if (typeof e !== "number" && e !== "longjmp") throw e;
  16681. Module["setThrew"](1, 0);
  16682. }
  16683. }
  16684. function invoke_dfi(index, a1, a2) {
  16685. var sp = stackSave();
  16686. try {
  16687. return Module["dynCall_dfi"](index, a1, a2);
  16688. } catch (e) {
  16689. stackRestore(sp);
  16690. if (typeof e !== "number" && e !== "longjmp") throw e;
  16691. Module["setThrew"](1, 0);
  16692. }
  16693. }
  16694. function invoke_di(index, a1) {
  16695. var sp = stackSave();
  16696. try {
  16697. return Module["dynCall_di"](index, a1);
  16698. } catch (e) {
  16699. stackRestore(sp);
  16700. if (typeof e !== "number" && e !== "longjmp") throw e;
  16701. Module["setThrew"](1, 0);
  16702. }
  16703. }
  16704. function invoke_diddi(index, a1, a2, a3, a4) {
  16705. var sp = stackSave();
  16706. try {
  16707. return Module["dynCall_diddi"](index, a1, a2, a3, a4);
  16708. } catch (e) {
  16709. stackRestore(sp);
  16710. if (typeof e !== "number" && e !== "longjmp") throw e;
  16711. Module["setThrew"](1, 0);
  16712. }
  16713. }
  16714. function invoke_didi(index, a1, a2, a3) {
  16715. var sp = stackSave();
  16716. try {
  16717. return Module["dynCall_didi"](index, a1, a2, a3);
  16718. } catch (e) {
  16719. stackRestore(sp);
  16720. if (typeof e !== "number" && e !== "longjmp") throw e;
  16721. Module["setThrew"](1, 0);
  16722. }
  16723. }
  16724. function invoke_dii(index, a1, a2) {
  16725. var sp = stackSave();
  16726. try {
  16727. return Module["dynCall_dii"](index, a1, a2);
  16728. } catch (e) {
  16729. stackRestore(sp);
  16730. if (typeof e !== "number" && e !== "longjmp") throw e;
  16731. Module["setThrew"](1, 0);
  16732. }
  16733. }
  16734. function invoke_diidi(index, a1, a2, a3, a4) {
  16735. var sp = stackSave();
  16736. try {
  16737. return Module["dynCall_diidi"](index, a1, a2, a3, a4);
  16738. } catch (e) {
  16739. stackRestore(sp);
  16740. if (typeof e !== "number" && e !== "longjmp") throw e;
  16741. Module["setThrew"](1, 0);
  16742. }
  16743. }
  16744. function invoke_diii(index, a1, a2, a3) {
  16745. var sp = stackSave();
  16746. try {
  16747. return Module["dynCall_diii"](index, a1, a2, a3);
  16748. } catch (e) {
  16749. stackRestore(sp);
  16750. if (typeof e !== "number" && e !== "longjmp") throw e;
  16751. Module["setThrew"](1, 0);
  16752. }
  16753. }
  16754. function invoke_diiid(index, a1, a2, a3, a4) {
  16755. var sp = stackSave();
  16756. try {
  16757. return Module["dynCall_diiid"](index, a1, a2, a3, a4);
  16758. } catch (e) {
  16759. stackRestore(sp);
  16760. if (typeof e !== "number" && e !== "longjmp") throw e;
  16761. Module["setThrew"](1, 0);
  16762. }
  16763. }
  16764. function invoke_diiidi(index, a1, a2, a3, a4, a5) {
  16765. var sp = stackSave();
  16766. try {
  16767. return Module["dynCall_diiidi"](index, a1, a2, a3, a4, a5);
  16768. } catch (e) {
  16769. stackRestore(sp);
  16770. if (typeof e !== "number" && e !== "longjmp") throw e;
  16771. Module["setThrew"](1, 0);
  16772. }
  16773. }
  16774. function invoke_diiii(index, a1, a2, a3, a4) {
  16775. var sp = stackSave();
  16776. try {
  16777. return Module["dynCall_diiii"](index, a1, a2, a3, a4);
  16778. } catch (e) {
  16779. stackRestore(sp);
  16780. if (typeof e !== "number" && e !== "longjmp") throw e;
  16781. Module["setThrew"](1, 0);
  16782. }
  16783. }
  16784. function invoke_dij(index, a1, a2, a3) {
  16785. var sp = stackSave();
  16786. try {
  16787. return Module["dynCall_dij"](index, a1, a2, a3);
  16788. } catch (e) {
  16789. stackRestore(sp);
  16790. if (typeof e !== "number" && e !== "longjmp") throw e;
  16791. Module["setThrew"](1, 0);
  16792. }
  16793. }
  16794. function invoke_dji(index, a1, a2, a3) {
  16795. var sp = stackSave();
  16796. try {
  16797. return Module["dynCall_dji"](index, a1, a2, a3);
  16798. } catch (e) {
  16799. stackRestore(sp);
  16800. if (typeof e !== "number" && e !== "longjmp") throw e;
  16801. Module["setThrew"](1, 0);
  16802. }
  16803. }
  16804. function invoke_f(index) {
  16805. var sp = stackSave();
  16806. try {
  16807. return Module["dynCall_f"](index);
  16808. } catch (e) {
  16809. stackRestore(sp);
  16810. if (typeof e !== "number" && e !== "longjmp") throw e;
  16811. Module["setThrew"](1, 0);
  16812. }
  16813. }
  16814. function invoke_fdi(index, a1, a2) {
  16815. var sp = stackSave();
  16816. try {
  16817. return Module["dynCall_fdi"](index, a1, a2);
  16818. } catch (e) {
  16819. stackRestore(sp);
  16820. if (typeof e !== "number" && e !== "longjmp") throw e;
  16821. Module["setThrew"](1, 0);
  16822. }
  16823. }
  16824. function invoke_ff(index, a1) {
  16825. var sp = stackSave();
  16826. try {
  16827. return Module["dynCall_ff"](index, a1);
  16828. } catch (e) {
  16829. stackRestore(sp);
  16830. if (typeof e !== "number" && e !== "longjmp") throw e;
  16831. Module["setThrew"](1, 0);
  16832. }
  16833. }
  16834. function invoke_fff(index, a1, a2) {
  16835. var sp = stackSave();
  16836. try {
  16837. return Module["dynCall_fff"](index, a1, a2);
  16838. } catch (e) {
  16839. stackRestore(sp);
  16840. if (typeof e !== "number" && e !== "longjmp") throw e;
  16841. Module["setThrew"](1, 0);
  16842. }
  16843. }
  16844. function invoke_fffff(index, a1, a2, a3, a4) {
  16845. var sp = stackSave();
  16846. try {
  16847. return Module["dynCall_fffff"](index, a1, a2, a3, a4);
  16848. } catch (e) {
  16849. stackRestore(sp);
  16850. if (typeof e !== "number" && e !== "longjmp") throw e;
  16851. Module["setThrew"](1, 0);
  16852. }
  16853. }
  16854. function invoke_ffffffi(index, a1, a2, a3, a4, a5, a6) {
  16855. var sp = stackSave();
  16856. try {
  16857. return Module["dynCall_ffffffi"](index, a1, a2, a3, a4, a5, a6);
  16858. } catch (e) {
  16859. stackRestore(sp);
  16860. if (typeof e !== "number" && e !== "longjmp") throw e;
  16861. Module["setThrew"](1, 0);
  16862. }
  16863. }
  16864. function invoke_fffffi(index, a1, a2, a3, a4, a5) {
  16865. var sp = stackSave();
  16866. try {
  16867. return Module["dynCall_fffffi"](index, a1, a2, a3, a4, a5);
  16868. } catch (e) {
  16869. stackRestore(sp);
  16870. if (typeof e !== "number" && e !== "longjmp") throw e;
  16871. Module["setThrew"](1, 0);
  16872. }
  16873. }
  16874. function invoke_ffffi(index, a1, a2, a3, a4) {
  16875. var sp = stackSave();
  16876. try {
  16877. return Module["dynCall_ffffi"](index, a1, a2, a3, a4);
  16878. } catch (e) {
  16879. stackRestore(sp);
  16880. if (typeof e !== "number" && e !== "longjmp") throw e;
  16881. Module["setThrew"](1, 0);
  16882. }
  16883. }
  16884. function invoke_ffffii(index, a1, a2, a3, a4, a5) {
  16885. var sp = stackSave();
  16886. try {
  16887. return Module["dynCall_ffffii"](index, a1, a2, a3, a4, a5);
  16888. } catch (e) {
  16889. stackRestore(sp);
  16890. if (typeof e !== "number" && e !== "longjmp") throw e;
  16891. Module["setThrew"](1, 0);
  16892. }
  16893. }
  16894. function invoke_fffi(index, a1, a2, a3) {
  16895. var sp = stackSave();
  16896. try {
  16897. return Module["dynCall_fffi"](index, a1, a2, a3);
  16898. } catch (e) {
  16899. stackRestore(sp);
  16900. if (typeof e !== "number" && e !== "longjmp") throw e;
  16901. Module["setThrew"](1, 0);
  16902. }
  16903. }
  16904. function invoke_fffifffi(index, a1, a2, a3, a4, a5, a6, a7) {
  16905. var sp = stackSave();
  16906. try {
  16907. return Module["dynCall_fffifffi"](index, a1, a2, a3, a4, a5, a6, a7);
  16908. } catch (e) {
  16909. stackRestore(sp);
  16910. if (typeof e !== "number" && e !== "longjmp") throw e;
  16911. Module["setThrew"](1, 0);
  16912. }
  16913. }
  16914. function invoke_ffi(index, a1, a2) {
  16915. var sp = stackSave();
  16916. try {
  16917. return Module["dynCall_ffi"](index, a1, a2);
  16918. } catch (e) {
  16919. stackRestore(sp);
  16920. if (typeof e !== "number" && e !== "longjmp") throw e;
  16921. Module["setThrew"](1, 0);
  16922. }
  16923. }
  16924. function invoke_fi(index, a1) {
  16925. var sp = stackSave();
  16926. try {
  16927. return Module["dynCall_fi"](index, a1);
  16928. } catch (e) {
  16929. stackRestore(sp);
  16930. if (typeof e !== "number" && e !== "longjmp") throw e;
  16931. Module["setThrew"](1, 0);
  16932. }
  16933. }
  16934. function invoke_fidi(index, a1, a2, a3) {
  16935. var sp = stackSave();
  16936. try {
  16937. return Module["dynCall_fidi"](index, a1, a2, a3);
  16938. } catch (e) {
  16939. stackRestore(sp);
  16940. if (typeof e !== "number" && e !== "longjmp") throw e;
  16941. Module["setThrew"](1, 0);
  16942. }
  16943. }
  16944. function invoke_fif(index, a1, a2) {
  16945. var sp = stackSave();
  16946. try {
  16947. return Module["dynCall_fif"](index, a1, a2);
  16948. } catch (e) {
  16949. stackRestore(sp);
  16950. if (typeof e !== "number" && e !== "longjmp") throw e;
  16951. Module["setThrew"](1, 0);
  16952. }
  16953. }
  16954. function invoke_fiff(index, a1, a2, a3) {
  16955. var sp = stackSave();
  16956. try {
  16957. return Module["dynCall_fiff"](index, a1, a2, a3);
  16958. } catch (e) {
  16959. stackRestore(sp);
  16960. if (typeof e !== "number" && e !== "longjmp") throw e;
  16961. Module["setThrew"](1, 0);
  16962. }
  16963. }
  16964. function invoke_fiffffi(index, a1, a2, a3, a4, a5, a6) {
  16965. var sp = stackSave();
  16966. try {
  16967. return Module["dynCall_fiffffi"](index, a1, a2, a3, a4, a5, a6);
  16968. } catch (e) {
  16969. stackRestore(sp);
  16970. if (typeof e !== "number" && e !== "longjmp") throw e;
  16971. Module["setThrew"](1, 0);
  16972. }
  16973. }
  16974. function invoke_fifffi(index, a1, a2, a3, a4, a5) {
  16975. var sp = stackSave();
  16976. try {
  16977. return Module["dynCall_fifffi"](index, a1, a2, a3, a4, a5);
  16978. } catch (e) {
  16979. stackRestore(sp);
  16980. if (typeof e !== "number" && e !== "longjmp") throw e;
  16981. Module["setThrew"](1, 0);
  16982. }
  16983. }
  16984. function invoke_fiffi(index, a1, a2, a3, a4) {
  16985. var sp = stackSave();
  16986. try {
  16987. return Module["dynCall_fiffi"](index, a1, a2, a3, a4);
  16988. } catch (e) {
  16989. stackRestore(sp);
  16990. if (typeof e !== "number" && e !== "longjmp") throw e;
  16991. Module["setThrew"](1, 0);
  16992. }
  16993. }
  16994. function invoke_fifi(index, a1, a2, a3) {
  16995. var sp = stackSave();
  16996. try {
  16997. return Module["dynCall_fifi"](index, a1, a2, a3);
  16998. } catch (e) {
  16999. stackRestore(sp);
  17000. if (typeof e !== "number" && e !== "longjmp") throw e;
  17001. Module["setThrew"](1, 0);
  17002. }
  17003. }
  17004. function invoke_fifii(index, a1, a2, a3, a4) {
  17005. var sp = stackSave();
  17006. try {
  17007. return Module["dynCall_fifii"](index, a1, a2, a3, a4);
  17008. } catch (e) {
  17009. stackRestore(sp);
  17010. if (typeof e !== "number" && e !== "longjmp") throw e;
  17011. Module["setThrew"](1, 0);
  17012. }
  17013. }
  17014. function invoke_fifiii(index, a1, a2, a3, a4, a5) {
  17015. var sp = stackSave();
  17016. try {
  17017. return Module["dynCall_fifiii"](index, a1, a2, a3, a4, a5);
  17018. } catch (e) {
  17019. stackRestore(sp);
  17020. if (typeof e !== "number" && e !== "longjmp") throw e;
  17021. Module["setThrew"](1, 0);
  17022. }
  17023. }
  17024. function invoke_fifiiiii(index, a1, a2, a3, a4, a5, a6, a7) {
  17025. var sp = stackSave();
  17026. try {
  17027. return Module["dynCall_fifiiiii"](index, a1, a2, a3, a4, a5, a6, a7);
  17028. } catch (e) {
  17029. stackRestore(sp);
  17030. if (typeof e !== "number" && e !== "longjmp") throw e;
  17031. Module["setThrew"](1, 0);
  17032. }
  17033. }
  17034. function invoke_fii(index, a1, a2) {
  17035. var sp = stackSave();
  17036. try {
  17037. return Module["dynCall_fii"](index, a1, a2);
  17038. } catch (e) {
  17039. stackRestore(sp);
  17040. if (typeof e !== "number" && e !== "longjmp") throw e;
  17041. Module["setThrew"](1, 0);
  17042. }
  17043. }
  17044. function invoke_fiifdi(index, a1, a2, a3, a4, a5) {
  17045. var sp = stackSave();
  17046. try {
  17047. return Module["dynCall_fiifdi"](index, a1, a2, a3, a4, a5);
  17048. } catch (e) {
  17049. stackRestore(sp);
  17050. if (typeof e !== "number" && e !== "longjmp") throw e;
  17051. Module["setThrew"](1, 0);
  17052. }
  17053. }
  17054. function invoke_fiiffffi(index, a1, a2, a3, a4, a5, a6, a7) {
  17055. var sp = stackSave();
  17056. try {
  17057. return Module["dynCall_fiiffffi"](index, a1, a2, a3, a4, a5, a6, a7);
  17058. } catch (e) {
  17059. stackRestore(sp);
  17060. if (typeof e !== "number" && e !== "longjmp") throw e;
  17061. Module["setThrew"](1, 0);
  17062. }
  17063. }
  17064. function invoke_fiiffi(index, a1, a2, a3, a4, a5) {
  17065. var sp = stackSave();
  17066. try {
  17067. return Module["dynCall_fiiffi"](index, a1, a2, a3, a4, a5);
  17068. } catch (e) {
  17069. stackRestore(sp);
  17070. if (typeof e !== "number" && e !== "longjmp") throw e;
  17071. Module["setThrew"](1, 0);
  17072. }
  17073. }
  17074. function invoke_fiifi(index, a1, a2, a3, a4) {
  17075. var sp = stackSave();
  17076. try {
  17077. return Module["dynCall_fiifi"](index, a1, a2, a3, a4);
  17078. } catch (e) {
  17079. stackRestore(sp);
  17080. if (typeof e !== "number" && e !== "longjmp") throw e;
  17081. Module["setThrew"](1, 0);
  17082. }
  17083. }
  17084. function invoke_fiifii(index, a1, a2, a3, a4, a5) {
  17085. var sp = stackSave();
  17086. try {
  17087. return Module["dynCall_fiifii"](index, a1, a2, a3, a4, a5);
  17088. } catch (e) {
  17089. stackRestore(sp);
  17090. if (typeof e !== "number" && e !== "longjmp") throw e;
  17091. Module["setThrew"](1, 0);
  17092. }
  17093. }
  17094. function invoke_fiifji(index, a1, a2, a3, a4, a5, a6) {
  17095. var sp = stackSave();
  17096. try {
  17097. return Module["dynCall_fiifji"](index, a1, a2, a3, a4, a5, a6);
  17098. } catch (e) {
  17099. stackRestore(sp);
  17100. if (typeof e !== "number" && e !== "longjmp") throw e;
  17101. Module["setThrew"](1, 0);
  17102. }
  17103. }
  17104. function invoke_fiii(index, a1, a2, a3) {
  17105. var sp = stackSave();
  17106. try {
  17107. return Module["dynCall_fiii"](index, a1, a2, a3);
  17108. } catch (e) {
  17109. stackRestore(sp);
  17110. if (typeof e !== "number" && e !== "longjmp") throw e;
  17111. Module["setThrew"](1, 0);
  17112. }
  17113. }
  17114. function invoke_fiiif(index, a1, a2, a3, a4) {
  17115. var sp = stackSave();
  17116. try {
  17117. return Module["dynCall_fiiif"](index, a1, a2, a3, a4);
  17118. } catch (e) {
  17119. stackRestore(sp);
  17120. if (typeof e !== "number" && e !== "longjmp") throw e;
  17121. Module["setThrew"](1, 0);
  17122. }
  17123. }
  17124. function invoke_fiiifii(index, a1, a2, a3, a4, a5, a6) {
  17125. var sp = stackSave();
  17126. try {
  17127. return Module["dynCall_fiiifii"](index, a1, a2, a3, a4, a5, a6);
  17128. } catch (e) {
  17129. stackRestore(sp);
  17130. if (typeof e !== "number" && e !== "longjmp") throw e;
  17131. Module["setThrew"](1, 0);
  17132. }
  17133. }
  17134. function invoke_fiiii(index, a1, a2, a3, a4) {
  17135. var sp = stackSave();
  17136. try {
  17137. return Module["dynCall_fiiii"](index, a1, a2, a3, a4);
  17138. } catch (e) {
  17139. stackRestore(sp);
  17140. if (typeof e !== "number" && e !== "longjmp") throw e;
  17141. Module["setThrew"](1, 0);
  17142. }
  17143. }
  17144. function invoke_fiiiif(index, a1, a2, a3, a4, a5) {
  17145. var sp = stackSave();
  17146. try {
  17147. return Module["dynCall_fiiiif"](index, a1, a2, a3, a4, a5);
  17148. } catch (e) {
  17149. stackRestore(sp);
  17150. if (typeof e !== "number" && e !== "longjmp") throw e;
  17151. Module["setThrew"](1, 0);
  17152. }
  17153. }
  17154. function invoke_fiiiiii(index, a1, a2, a3, a4, a5, a6) {
  17155. var sp = stackSave();
  17156. try {
  17157. return Module["dynCall_fiiiiii"](index, a1, a2, a3, a4, a5, a6);
  17158. } catch (e) {
  17159. stackRestore(sp);
  17160. if (typeof e !== "number" && e !== "longjmp") throw e;
  17161. Module["setThrew"](1, 0);
  17162. }
  17163. }
  17164. function invoke_fiiiiiifiifif(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) {
  17165. var sp = stackSave();
  17166. try {
  17167. return Module["dynCall_fiiiiiifiifif"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
  17168. } catch (e) {
  17169. stackRestore(sp);
  17170. if (typeof e !== "number" && e !== "longjmp") throw e;
  17171. Module["setThrew"](1, 0);
  17172. }
  17173. }
  17174. function invoke_fiiiiiifiiiif(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) {
  17175. var sp = stackSave();
  17176. try {
  17177. return Module["dynCall_fiiiiiifiiiif"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
  17178. } catch (e) {
  17179. stackRestore(sp);
  17180. if (typeof e !== "number" && e !== "longjmp") throw e;
  17181. Module["setThrew"](1, 0);
  17182. }
  17183. }
  17184. function invoke_fji(index, a1, a2, a3) {
  17185. var sp = stackSave();
  17186. try {
  17187. return Module["dynCall_fji"](index, a1, a2, a3);
  17188. } catch (e) {
  17189. stackRestore(sp);
  17190. if (typeof e !== "number" && e !== "longjmp") throw e;
  17191. Module["setThrew"](1, 0);
  17192. }
  17193. }
  17194. function invoke_i(index) {
  17195. var sp = stackSave();
  17196. try {
  17197. return Module["dynCall_i"](index);
  17198. } catch (e) {
  17199. stackRestore(sp);
  17200. if (typeof e !== "number" && e !== "longjmp") throw e;
  17201. Module["setThrew"](1, 0);
  17202. }
  17203. }
  17204. function invoke_idddi(index, a1, a2, a3, a4) {
  17205. var sp = stackSave();
  17206. try {
  17207. return Module["dynCall_idddi"](index, a1, a2, a3, a4);
  17208. } catch (e) {
  17209. stackRestore(sp);
  17210. if (typeof e !== "number" && e !== "longjmp") throw e;
  17211. Module["setThrew"](1, 0);
  17212. }
  17213. }
  17214. function invoke_iddi(index, a1, a2, a3) {
  17215. var sp = stackSave();
  17216. try {
  17217. return Module["dynCall_iddi"](index, a1, a2, a3);
  17218. } catch (e) {
  17219. stackRestore(sp);
  17220. if (typeof e !== "number" && e !== "longjmp") throw e;
  17221. Module["setThrew"](1, 0);
  17222. }
  17223. }
  17224. function invoke_iddii(index, a1, a2, a3, a4) {
  17225. var sp = stackSave();
  17226. try {
  17227. return Module["dynCall_iddii"](index, a1, a2, a3, a4);
  17228. } catch (e) {
  17229. stackRestore(sp);
  17230. if (typeof e !== "number" && e !== "longjmp") throw e;
  17231. Module["setThrew"](1, 0);
  17232. }
  17233. }
  17234. function invoke_idi(index, a1, a2) {
  17235. var sp = stackSave();
  17236. try {
  17237. return Module["dynCall_idi"](index, a1, a2);
  17238. } catch (e) {
  17239. stackRestore(sp);
  17240. if (typeof e !== "number" && e !== "longjmp") throw e;
  17241. Module["setThrew"](1, 0);
  17242. }
  17243. }
  17244. function invoke_idii(index, a1, a2, a3) {
  17245. var sp = stackSave();
  17246. try {
  17247. return Module["dynCall_idii"](index, a1, a2, a3);
  17248. } catch (e) {
  17249. stackRestore(sp);
  17250. if (typeof e !== "number" && e !== "longjmp") throw e;
  17251. Module["setThrew"](1, 0);
  17252. }
  17253. }
  17254. function invoke_idiii(index, a1, a2, a3, a4) {
  17255. var sp = stackSave();
  17256. try {
  17257. return Module["dynCall_idiii"](index, a1, a2, a3, a4);
  17258. } catch (e) {
  17259. stackRestore(sp);
  17260. if (typeof e !== "number" && e !== "longjmp") throw e;
  17261. Module["setThrew"](1, 0);
  17262. }
  17263. }
  17264. function invoke_idiiii(index, a1, a2, a3, a4, a5) {
  17265. var sp = stackSave();
  17266. try {
  17267. return Module["dynCall_idiiii"](index, a1, a2, a3, a4, a5);
  17268. } catch (e) {
  17269. stackRestore(sp);
  17270. if (typeof e !== "number" && e !== "longjmp") throw e;
  17271. Module["setThrew"](1, 0);
  17272. }
  17273. }
  17274. function invoke_idiiiii(index, a1, a2, a3, a4, a5, a6) {
  17275. var sp = stackSave();
  17276. try {
  17277. return Module["dynCall_idiiiii"](index, a1, a2, a3, a4, a5, a6);
  17278. } catch (e) {
  17279. stackRestore(sp);
  17280. if (typeof e !== "number" && e !== "longjmp") throw e;
  17281. Module["setThrew"](1, 0);
  17282. }
  17283. }
  17284. function invoke_iffffi(index, a1, a2, a3, a4, a5) {
  17285. var sp = stackSave();
  17286. try {
  17287. return Module["dynCall_iffffi"](index, a1, a2, a3, a4, a5);
  17288. } catch (e) {
  17289. stackRestore(sp);
  17290. if (typeof e !== "number" && e !== "longjmp") throw e;
  17291. Module["setThrew"](1, 0);
  17292. }
  17293. }
  17294. function invoke_ifffi(index, a1, a2, a3, a4) {
  17295. var sp = stackSave();
  17296. try {
  17297. return Module["dynCall_ifffi"](index, a1, a2, a3, a4);
  17298. } catch (e) {
  17299. stackRestore(sp);
  17300. if (typeof e !== "number" && e !== "longjmp") throw e;
  17301. Module["setThrew"](1, 0);
  17302. }
  17303. }
  17304. function invoke_iffi(index, a1, a2, a3) {
  17305. var sp = stackSave();
  17306. try {
  17307. return Module["dynCall_iffi"](index, a1, a2, a3);
  17308. } catch (e) {
  17309. stackRestore(sp);
  17310. if (typeof e !== "number" && e !== "longjmp") throw e;
  17311. Module["setThrew"](1, 0);
  17312. }
  17313. }
  17314. function invoke_ifi(index, a1, a2) {
  17315. var sp = stackSave();
  17316. try {
  17317. return Module["dynCall_ifi"](index, a1, a2);
  17318. } catch (e) {
  17319. stackRestore(sp);
  17320. if (typeof e !== "number" && e !== "longjmp") throw e;
  17321. Module["setThrew"](1, 0);
  17322. }
  17323. }
  17324. function invoke_ifiii(index, a1, a2, a3, a4) {
  17325. var sp = stackSave();
  17326. try {
  17327. return Module["dynCall_ifiii"](index, a1, a2, a3, a4);
  17328. } catch (e) {
  17329. stackRestore(sp);
  17330. if (typeof e !== "number" && e !== "longjmp") throw e;
  17331. Module["setThrew"](1, 0);
  17332. }
  17333. }
  17334. function invoke_ifiiii(index, a1, a2, a3, a4, a5) {
  17335. var sp = stackSave();
  17336. try {
  17337. return Module["dynCall_ifiiii"](index, a1, a2, a3, a4, a5);
  17338. } catch (e) {
  17339. stackRestore(sp);
  17340. if (typeof e !== "number" && e !== "longjmp") throw e;
  17341. Module["setThrew"](1, 0);
  17342. }
  17343. }
  17344. function invoke_ii(index, a1) {
  17345. var sp = stackSave();
  17346. try {
  17347. return Module["dynCall_ii"](index, a1);
  17348. } catch (e) {
  17349. stackRestore(sp);
  17350. if (typeof e !== "number" && e !== "longjmp") throw e;
  17351. Module["setThrew"](1, 0);
  17352. }
  17353. }
  17354. function invoke_iidi(index, a1, a2, a3) {
  17355. var sp = stackSave();
  17356. try {
  17357. return Module["dynCall_iidi"](index, a1, a2, a3);
  17358. } catch (e) {
  17359. stackRestore(sp);
  17360. if (typeof e !== "number" && e !== "longjmp") throw e;
  17361. Module["setThrew"](1, 0);
  17362. }
  17363. }
  17364. function invoke_iidii(index, a1, a2, a3, a4) {
  17365. var sp = stackSave();
  17366. try {
  17367. return Module["dynCall_iidii"](index, a1, a2, a3, a4);
  17368. } catch (e) {
  17369. stackRestore(sp);
  17370. if (typeof e !== "number" && e !== "longjmp") throw e;
  17371. Module["setThrew"](1, 0);
  17372. }
  17373. }
  17374. function invoke_iidiii(index, a1, a2, a3, a4, a5) {
  17375. var sp = stackSave();
  17376. try {
  17377. return Module["dynCall_iidiii"](index, a1, a2, a3, a4, a5);
  17378. } catch (e) {
  17379. stackRestore(sp);
  17380. if (typeof e !== "number" && e !== "longjmp") throw e;
  17381. Module["setThrew"](1, 0);
  17382. }
  17383. }
  17384. function invoke_iif(index, a1, a2) {
  17385. var sp = stackSave();
  17386. try {
  17387. return Module["dynCall_iif"](index, a1, a2);
  17388. } catch (e) {
  17389. stackRestore(sp);
  17390. if (typeof e !== "number" && e !== "longjmp") throw e;
  17391. Module["setThrew"](1, 0);
  17392. }
  17393. }
  17394. function invoke_iifff(index, a1, a2, a3, a4) {
  17395. var sp = stackSave();
  17396. try {
  17397. return Module["dynCall_iifff"](index, a1, a2, a3, a4);
  17398. } catch (e) {
  17399. stackRestore(sp);
  17400. if (typeof e !== "number" && e !== "longjmp") throw e;
  17401. Module["setThrew"](1, 0);
  17402. }
  17403. }
  17404. function invoke_iiffffiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17405. var sp = stackSave();
  17406. try {
  17407. return Module["dynCall_iiffffiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17408. } catch (e) {
  17409. stackRestore(sp);
  17410. if (typeof e !== "number" && e !== "longjmp") throw e;
  17411. Module["setThrew"](1, 0);
  17412. }
  17413. }
  17414. function invoke_iifffi(index, a1, a2, a3, a4, a5) {
  17415. var sp = stackSave();
  17416. try {
  17417. return Module["dynCall_iifffi"](index, a1, a2, a3, a4, a5);
  17418. } catch (e) {
  17419. stackRestore(sp);
  17420. if (typeof e !== "number" && e !== "longjmp") throw e;
  17421. Module["setThrew"](1, 0);
  17422. }
  17423. }
  17424. function invoke_iiffi(index, a1, a2, a3, a4) {
  17425. var sp = stackSave();
  17426. try {
  17427. return Module["dynCall_iiffi"](index, a1, a2, a3, a4);
  17428. } catch (e) {
  17429. stackRestore(sp);
  17430. if (typeof e !== "number" && e !== "longjmp") throw e;
  17431. Module["setThrew"](1, 0);
  17432. }
  17433. }
  17434. function invoke_iiffifiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17435. var sp = stackSave();
  17436. try {
  17437. return Module["dynCall_iiffifiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17438. } catch (e) {
  17439. stackRestore(sp);
  17440. if (typeof e !== "number" && e !== "longjmp") throw e;
  17441. Module["setThrew"](1, 0);
  17442. }
  17443. }
  17444. function invoke_iiffii(index, a1, a2, a3, a4, a5) {
  17445. var sp = stackSave();
  17446. try {
  17447. return Module["dynCall_iiffii"](index, a1, a2, a3, a4, a5);
  17448. } catch (e) {
  17449. stackRestore(sp);
  17450. if (typeof e !== "number" && e !== "longjmp") throw e;
  17451. Module["setThrew"](1, 0);
  17452. }
  17453. }
  17454. function invoke_iiffiii(index, a1, a2, a3, a4, a5, a6) {
  17455. var sp = stackSave();
  17456. try {
  17457. return Module["dynCall_iiffiii"](index, a1, a2, a3, a4, a5, a6);
  17458. } catch (e) {
  17459. stackRestore(sp);
  17460. if (typeof e !== "number" && e !== "longjmp") throw e;
  17461. Module["setThrew"](1, 0);
  17462. }
  17463. }
  17464. function invoke_iiffiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17465. var sp = stackSave();
  17466. try {
  17467. return Module["dynCall_iiffiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17468. } catch (e) {
  17469. stackRestore(sp);
  17470. if (typeof e !== "number" && e !== "longjmp") throw e;
  17471. Module["setThrew"](1, 0);
  17472. }
  17473. }
  17474. function invoke_iifi(index, a1, a2, a3) {
  17475. var sp = stackSave();
  17476. try {
  17477. return Module["dynCall_iifi"](index, a1, a2, a3);
  17478. } catch (e) {
  17479. stackRestore(sp);
  17480. if (typeof e !== "number" && e !== "longjmp") throw e;
  17481. Module["setThrew"](1, 0);
  17482. }
  17483. }
  17484. function invoke_iififi(index, a1, a2, a3, a4, a5) {
  17485. var sp = stackSave();
  17486. try {
  17487. return Module["dynCall_iififi"](index, a1, a2, a3, a4, a5);
  17488. } catch (e) {
  17489. stackRestore(sp);
  17490. if (typeof e !== "number" && e !== "longjmp") throw e;
  17491. Module["setThrew"](1, 0);
  17492. }
  17493. }
  17494. function invoke_iifii(index, a1, a2, a3, a4) {
  17495. var sp = stackSave();
  17496. try {
  17497. return Module["dynCall_iifii"](index, a1, a2, a3, a4);
  17498. } catch (e) {
  17499. stackRestore(sp);
  17500. if (typeof e !== "number" && e !== "longjmp") throw e;
  17501. Module["setThrew"](1, 0);
  17502. }
  17503. }
  17504. function invoke_iifiifiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17505. var sp = stackSave();
  17506. try {
  17507. return Module["dynCall_iifiifiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17508. } catch (e) {
  17509. stackRestore(sp);
  17510. if (typeof e !== "number" && e !== "longjmp") throw e;
  17511. Module["setThrew"](1, 0);
  17512. }
  17513. }
  17514. function invoke_iifiii(index, a1, a2, a3, a4, a5) {
  17515. var sp = stackSave();
  17516. try {
  17517. return Module["dynCall_iifiii"](index, a1, a2, a3, a4, a5);
  17518. } catch (e) {
  17519. stackRestore(sp);
  17520. if (typeof e !== "number" && e !== "longjmp") throw e;
  17521. Module["setThrew"](1, 0);
  17522. }
  17523. }
  17524. function invoke_iifiiii(index, a1, a2, a3, a4, a5, a6) {
  17525. var sp = stackSave();
  17526. try {
  17527. return Module["dynCall_iifiiii"](index, a1, a2, a3, a4, a5, a6);
  17528. } catch (e) {
  17529. stackRestore(sp);
  17530. if (typeof e !== "number" && e !== "longjmp") throw e;
  17531. Module["setThrew"](1, 0);
  17532. }
  17533. }
  17534. function invoke_iifiiiii(index, a1, a2, a3, a4, a5, a6, a7) {
  17535. var sp = stackSave();
  17536. try {
  17537. return Module["dynCall_iifiiiii"](index, a1, a2, a3, a4, a5, a6, a7);
  17538. } catch (e) {
  17539. stackRestore(sp);
  17540. if (typeof e !== "number" && e !== "longjmp") throw e;
  17541. Module["setThrew"](1, 0);
  17542. }
  17543. }
  17544. function invoke_iifiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17545. var sp = stackSave();
  17546. try {
  17547. return Module["dynCall_iifiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17548. } catch (e) {
  17549. stackRestore(sp);
  17550. if (typeof e !== "number" && e !== "longjmp") throw e;
  17551. Module["setThrew"](1, 0);
  17552. }
  17553. }
  17554. function invoke_iii(index, a1, a2) {
  17555. var sp = stackSave();
  17556. try {
  17557. return Module["dynCall_iii"](index, a1, a2);
  17558. } catch (e) {
  17559. stackRestore(sp);
  17560. if (typeof e !== "number" && e !== "longjmp") throw e;
  17561. Module["setThrew"](1, 0);
  17562. }
  17563. }
  17564. function invoke_iiiddi(index, a1, a2, a3, a4, a5) {
  17565. var sp = stackSave();
  17566. try {
  17567. return Module["dynCall_iiiddi"](index, a1, a2, a3, a4, a5);
  17568. } catch (e) {
  17569. stackRestore(sp);
  17570. if (typeof e !== "number" && e !== "longjmp") throw e;
  17571. Module["setThrew"](1, 0);
  17572. }
  17573. }
  17574. function invoke_iiidi(index, a1, a2, a3, a4) {
  17575. var sp = stackSave();
  17576. try {
  17577. return Module["dynCall_iiidi"](index, a1, a2, a3, a4);
  17578. } catch (e) {
  17579. stackRestore(sp);
  17580. if (typeof e !== "number" && e !== "longjmp") throw e;
  17581. Module["setThrew"](1, 0);
  17582. }
  17583. }
  17584. function invoke_iiidii(index, a1, a2, a3, a4, a5) {
  17585. var sp = stackSave();
  17586. try {
  17587. return Module["dynCall_iiidii"](index, a1, a2, a3, a4, a5);
  17588. } catch (e) {
  17589. stackRestore(sp);
  17590. if (typeof e !== "number" && e !== "longjmp") throw e;
  17591. Module["setThrew"](1, 0);
  17592. }
  17593. }
  17594. function invoke_iiidiii(index, a1, a2, a3, a4, a5, a6) {
  17595. var sp = stackSave();
  17596. try {
  17597. return Module["dynCall_iiidiii"](index, a1, a2, a3, a4, a5, a6);
  17598. } catch (e) {
  17599. stackRestore(sp);
  17600. if (typeof e !== "number" && e !== "longjmp") throw e;
  17601. Module["setThrew"](1, 0);
  17602. }
  17603. }
  17604. function invoke_iiif(index, a1, a2, a3) {
  17605. var sp = stackSave();
  17606. try {
  17607. return Module["dynCall_iiif"](index, a1, a2, a3);
  17608. } catch (e) {
  17609. stackRestore(sp);
  17610. if (typeof e !== "number" && e !== "longjmp") throw e;
  17611. Module["setThrew"](1, 0);
  17612. }
  17613. }
  17614. function invoke_iiiffi(index, a1, a2, a3, a4, a5) {
  17615. var sp = stackSave();
  17616. try {
  17617. return Module["dynCall_iiiffi"](index, a1, a2, a3, a4, a5);
  17618. } catch (e) {
  17619. stackRestore(sp);
  17620. if (typeof e !== "number" && e !== "longjmp") throw e;
  17621. Module["setThrew"](1, 0);
  17622. }
  17623. }
  17624. function invoke_iiiffifiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  17625. var sp = stackSave();
  17626. try {
  17627. return Module["dynCall_iiiffifiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  17628. } catch (e) {
  17629. stackRestore(sp);
  17630. if (typeof e !== "number" && e !== "longjmp") throw e;
  17631. Module["setThrew"](1, 0);
  17632. }
  17633. }
  17634. function invoke_iiiffii(index, a1, a2, a3, a4, a5, a6) {
  17635. var sp = stackSave();
  17636. try {
  17637. return Module["dynCall_iiiffii"](index, a1, a2, a3, a4, a5, a6);
  17638. } catch (e) {
  17639. stackRestore(sp);
  17640. if (typeof e !== "number" && e !== "longjmp") throw e;
  17641. Module["setThrew"](1, 0);
  17642. }
  17643. }
  17644. function invoke_iiifi(index, a1, a2, a3, a4) {
  17645. var sp = stackSave();
  17646. try {
  17647. return Module["dynCall_iiifi"](index, a1, a2, a3, a4);
  17648. } catch (e) {
  17649. stackRestore(sp);
  17650. if (typeof e !== "number" && e !== "longjmp") throw e;
  17651. Module["setThrew"](1, 0);
  17652. }
  17653. }
  17654. function invoke_iiififii(index, a1, a2, a3, a4, a5, a6, a7) {
  17655. var sp = stackSave();
  17656. try {
  17657. return Module["dynCall_iiififii"](index, a1, a2, a3, a4, a5, a6, a7);
  17658. } catch (e) {
  17659. stackRestore(sp);
  17660. if (typeof e !== "number" && e !== "longjmp") throw e;
  17661. Module["setThrew"](1, 0);
  17662. }
  17663. }
  17664. function invoke_iiifii(index, a1, a2, a3, a4, a5) {
  17665. var sp = stackSave();
  17666. try {
  17667. return Module["dynCall_iiifii"](index, a1, a2, a3, a4, a5);
  17668. } catch (e) {
  17669. stackRestore(sp);
  17670. if (typeof e !== "number" && e !== "longjmp") throw e;
  17671. Module["setThrew"](1, 0);
  17672. }
  17673. }
  17674. function invoke_iiifiifii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17675. var sp = stackSave();
  17676. try {
  17677. return Module["dynCall_iiifiifii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17678. } catch (e) {
  17679. stackRestore(sp);
  17680. if (typeof e !== "number" && e !== "longjmp") throw e;
  17681. Module["setThrew"](1, 0);
  17682. }
  17683. }
  17684. function invoke_iiifiifiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  17685. var sp = stackSave();
  17686. try {
  17687. return Module["dynCall_iiifiifiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  17688. } catch (e) {
  17689. stackRestore(sp);
  17690. if (typeof e !== "number" && e !== "longjmp") throw e;
  17691. Module["setThrew"](1, 0);
  17692. }
  17693. }
  17694. function invoke_iiifiifiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  17695. var sp = stackSave();
  17696. try {
  17697. return Module["dynCall_iiifiifiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  17698. } catch (e) {
  17699. stackRestore(sp);
  17700. if (typeof e !== "number" && e !== "longjmp") throw e;
  17701. Module["setThrew"](1, 0);
  17702. }
  17703. }
  17704. function invoke_iiifiii(index, a1, a2, a3, a4, a5, a6) {
  17705. var sp = stackSave();
  17706. try {
  17707. return Module["dynCall_iiifiii"](index, a1, a2, a3, a4, a5, a6);
  17708. } catch (e) {
  17709. stackRestore(sp);
  17710. if (typeof e !== "number" && e !== "longjmp") throw e;
  17711. Module["setThrew"](1, 0);
  17712. }
  17713. }
  17714. function invoke_iiifiiii(index, a1, a2, a3, a4, a5, a6, a7) {
  17715. var sp = stackSave();
  17716. try {
  17717. return Module["dynCall_iiifiiii"](index, a1, a2, a3, a4, a5, a6, a7);
  17718. } catch (e) {
  17719. stackRestore(sp);
  17720. if (typeof e !== "number" && e !== "longjmp") throw e;
  17721. Module["setThrew"](1, 0);
  17722. }
  17723. }
  17724. function invoke_iiifiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17725. var sp = stackSave();
  17726. try {
  17727. return Module["dynCall_iiifiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17728. } catch (e) {
  17729. stackRestore(sp);
  17730. if (typeof e !== "number" && e !== "longjmp") throw e;
  17731. Module["setThrew"](1, 0);
  17732. }
  17733. }
  17734. function invoke_iiii(index, a1, a2, a3) {
  17735. var sp = stackSave();
  17736. try {
  17737. return Module["dynCall_iiii"](index, a1, a2, a3);
  17738. } catch (e) {
  17739. stackRestore(sp);
  17740. if (typeof e !== "number" && e !== "longjmp") throw e;
  17741. Module["setThrew"](1, 0);
  17742. }
  17743. }
  17744. function invoke_iiiif(index, a1, a2, a3, a4) {
  17745. var sp = stackSave();
  17746. try {
  17747. return Module["dynCall_iiiif"](index, a1, a2, a3, a4);
  17748. } catch (e) {
  17749. stackRestore(sp);
  17750. if (typeof e !== "number" && e !== "longjmp") throw e;
  17751. Module["setThrew"](1, 0);
  17752. }
  17753. }
  17754. function invoke_iiiifffffi(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  17755. var sp = stackSave();
  17756. try {
  17757. return Module["dynCall_iiiifffffi"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  17758. } catch (e) {
  17759. stackRestore(sp);
  17760. if (typeof e !== "number" && e !== "longjmp") throw e;
  17761. Module["setThrew"](1, 0);
  17762. }
  17763. }
  17764. function invoke_iiiifffffii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  17765. var sp = stackSave();
  17766. try {
  17767. return Module["dynCall_iiiifffffii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  17768. } catch (e) {
  17769. stackRestore(sp);
  17770. if (typeof e !== "number" && e !== "longjmp") throw e;
  17771. Module["setThrew"](1, 0);
  17772. }
  17773. }
  17774. function invoke_iiiiffii(index, a1, a2, a3, a4, a5, a6, a7) {
  17775. var sp = stackSave();
  17776. try {
  17777. return Module["dynCall_iiiiffii"](index, a1, a2, a3, a4, a5, a6, a7);
  17778. } catch (e) {
  17779. stackRestore(sp);
  17780. if (typeof e !== "number" && e !== "longjmp") throw e;
  17781. Module["setThrew"](1, 0);
  17782. }
  17783. }
  17784. function invoke_iiiifi(index, a1, a2, a3, a4, a5) {
  17785. var sp = stackSave();
  17786. try {
  17787. return Module["dynCall_iiiifi"](index, a1, a2, a3, a4, a5);
  17788. } catch (e) {
  17789. stackRestore(sp);
  17790. if (typeof e !== "number" && e !== "longjmp") throw e;
  17791. Module["setThrew"](1, 0);
  17792. }
  17793. }
  17794. function invoke_iiiififi(index, a1, a2, a3, a4, a5, a6, a7) {
  17795. var sp = stackSave();
  17796. try {
  17797. return Module["dynCall_iiiififi"](index, a1, a2, a3, a4, a5, a6, a7);
  17798. } catch (e) {
  17799. stackRestore(sp);
  17800. if (typeof e !== "number" && e !== "longjmp") throw e;
  17801. Module["setThrew"](1, 0);
  17802. }
  17803. }
  17804. function invoke_iiiifii(index, a1, a2, a3, a4, a5, a6) {
  17805. var sp = stackSave();
  17806. try {
  17807. return Module["dynCall_iiiifii"](index, a1, a2, a3, a4, a5, a6);
  17808. } catch (e) {
  17809. stackRestore(sp);
  17810. if (typeof e !== "number" && e !== "longjmp") throw e;
  17811. Module["setThrew"](1, 0);
  17812. }
  17813. }
  17814. function invoke_iiiifiii(index, a1, a2, a3, a4, a5, a6, a7) {
  17815. var sp = stackSave();
  17816. try {
  17817. return Module["dynCall_iiiifiii"](index, a1, a2, a3, a4, a5, a6, a7);
  17818. } catch (e) {
  17819. stackRestore(sp);
  17820. if (typeof e !== "number" && e !== "longjmp") throw e;
  17821. Module["setThrew"](1, 0);
  17822. }
  17823. }
  17824. function invoke_iiiifiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17825. var sp = stackSave();
  17826. try {
  17827. return Module["dynCall_iiiifiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17828. } catch (e) {
  17829. stackRestore(sp);
  17830. if (typeof e !== "number" && e !== "longjmp") throw e;
  17831. Module["setThrew"](1, 0);
  17832. }
  17833. }
  17834. function invoke_iiiifiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  17835. var sp = stackSave();
  17836. try {
  17837. return Module["dynCall_iiiifiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  17838. } catch (e) {
  17839. stackRestore(sp);
  17840. if (typeof e !== "number" && e !== "longjmp") throw e;
  17841. Module["setThrew"](1, 0);
  17842. }
  17843. }
  17844. function invoke_iiiii(index, a1, a2, a3, a4) {
  17845. var sp = stackSave();
  17846. try {
  17847. return Module["dynCall_iiiii"](index, a1, a2, a3, a4);
  17848. } catch (e) {
  17849. stackRestore(sp);
  17850. if (typeof e !== "number" && e !== "longjmp") throw e;
  17851. Module["setThrew"](1, 0);
  17852. }
  17853. }
  17854. function invoke_iiiiidii(index, a1, a2, a3, a4, a5, a6, a7) {
  17855. var sp = stackSave();
  17856. try {
  17857. return Module["dynCall_iiiiidii"](index, a1, a2, a3, a4, a5, a6, a7);
  17858. } catch (e) {
  17859. stackRestore(sp);
  17860. if (typeof e !== "number" && e !== "longjmp") throw e;
  17861. Module["setThrew"](1, 0);
  17862. }
  17863. }
  17864. function invoke_iiiiiffi(index, a1, a2, a3, a4, a5, a6, a7) {
  17865. var sp = stackSave();
  17866. try {
  17867. return Module["dynCall_iiiiiffi"](index, a1, a2, a3, a4, a5, a6, a7);
  17868. } catch (e) {
  17869. stackRestore(sp);
  17870. if (typeof e !== "number" && e !== "longjmp") throw e;
  17871. Module["setThrew"](1, 0);
  17872. }
  17873. }
  17874. function invoke_iiiiifi(index, a1, a2, a3, a4, a5, a6) {
  17875. var sp = stackSave();
  17876. try {
  17877. return Module["dynCall_iiiiifi"](index, a1, a2, a3, a4, a5, a6);
  17878. } catch (e) {
  17879. stackRestore(sp);
  17880. if (typeof e !== "number" && e !== "longjmp") throw e;
  17881. Module["setThrew"](1, 0);
  17882. }
  17883. }
  17884. function invoke_iiiiifii(index, a1, a2, a3, a4, a5, a6, a7) {
  17885. var sp = stackSave();
  17886. try {
  17887. return Module["dynCall_iiiiifii"](index, a1, a2, a3, a4, a5, a6, a7);
  17888. } catch (e) {
  17889. stackRestore(sp);
  17890. if (typeof e !== "number" && e !== "longjmp") throw e;
  17891. Module["setThrew"](1, 0);
  17892. }
  17893. }
  17894. function invoke_iiiiifiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  17895. var sp = stackSave();
  17896. try {
  17897. return Module["dynCall_iiiiifiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  17898. } catch (e) {
  17899. stackRestore(sp);
  17900. if (typeof e !== "number" && e !== "longjmp") throw e;
  17901. Module["setThrew"](1, 0);
  17902. }
  17903. }
  17904. function invoke_iiiiifiiiiif(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
  17905. var sp = stackSave();
  17906. try {
  17907. return Module["dynCall_iiiiifiiiiif"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
  17908. } catch (e) {
  17909. stackRestore(sp);
  17910. if (typeof e !== "number" && e !== "longjmp") throw e;
  17911. Module["setThrew"](1, 0);
  17912. }
  17913. }
  17914. function invoke_iiiiii(index, a1, a2, a3, a4, a5) {
  17915. var sp = stackSave();
  17916. try {
  17917. return Module["dynCall_iiiiii"](index, a1, a2, a3, a4, a5);
  17918. } catch (e) {
  17919. stackRestore(sp);
  17920. if (typeof e !== "number" && e !== "longjmp") throw e;
  17921. Module["setThrew"](1, 0);
  17922. }
  17923. }
  17924. function invoke_iiiiiifffiiifiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) {
  17925. var sp = stackSave();
  17926. try {
  17927. return Module["dynCall_iiiiiifffiiifiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15);
  17928. } catch (e) {
  17929. stackRestore(sp);
  17930. if (typeof e !== "number" && e !== "longjmp") throw e;
  17931. Module["setThrew"](1, 0);
  17932. }
  17933. }
  17934. function invoke_iiiiiiffiiiiiiiiiffffiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23) {
  17935. var sp = stackSave();
  17936. try {
  17937. return Module["dynCall_iiiiiiffiiiiiiiiiffffiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23);
  17938. } catch (e) {
  17939. stackRestore(sp);
  17940. if (typeof e !== "number" && e !== "longjmp") throw e;
  17941. Module["setThrew"](1, 0);
  17942. }
  17943. }
  17944. function invoke_iiiiiiffiiiiiiiiiffffiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24) {
  17945. var sp = stackSave();
  17946. try {
  17947. return Module["dynCall_iiiiiiffiiiiiiiiiffffiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24);
  17948. } catch (e) {
  17949. stackRestore(sp);
  17950. if (typeof e !== "number" && e !== "longjmp") throw e;
  17951. Module["setThrew"](1, 0);
  17952. }
  17953. }
  17954. function invoke_iiiiiiffiiiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22) {
  17955. var sp = stackSave();
  17956. try {
  17957. return Module["dynCall_iiiiiiffiiiiiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22);
  17958. } catch (e) {
  17959. stackRestore(sp);
  17960. if (typeof e !== "number" && e !== "longjmp") throw e;
  17961. Module["setThrew"](1, 0);
  17962. }
  17963. }
  17964. function invoke_iiiiiifiif(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  17965. var sp = stackSave();
  17966. try {
  17967. return Module["dynCall_iiiiiifiif"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  17968. } catch (e) {
  17969. stackRestore(sp);
  17970. if (typeof e !== "number" && e !== "longjmp") throw e;
  17971. Module["setThrew"](1, 0);
  17972. }
  17973. }
  17974. function invoke_iiiiiifiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  17975. var sp = stackSave();
  17976. try {
  17977. return Module["dynCall_iiiiiifiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  17978. } catch (e) {
  17979. stackRestore(sp);
  17980. if (typeof e !== "number" && e !== "longjmp") throw e;
  17981. Module["setThrew"](1, 0);
  17982. }
  17983. }
  17984. function invoke_iiiiiii(index, a1, a2, a3, a4, a5, a6) {
  17985. var sp = stackSave();
  17986. try {
  17987. return Module["dynCall_iiiiiii"](index, a1, a2, a3, a4, a5, a6);
  17988. } catch (e) {
  17989. stackRestore(sp);
  17990. if (typeof e !== "number" && e !== "longjmp") throw e;
  17991. Module["setThrew"](1, 0);
  17992. }
  17993. }
  17994. function invoke_iiiiiiifiif(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  17995. var sp = stackSave();
  17996. try {
  17997. return Module["dynCall_iiiiiiifiif"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  17998. } catch (e) {
  17999. stackRestore(sp);
  18000. if (typeof e !== "number" && e !== "longjmp") throw e;
  18001. Module["setThrew"](1, 0);
  18002. }
  18003. }
  18004. function invoke_iiiiiiii(index, a1, a2, a3, a4, a5, a6, a7) {
  18005. var sp = stackSave();
  18006. try {
  18007. return Module["dynCall_iiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7);
  18008. } catch (e) {
  18009. stackRestore(sp);
  18010. if (typeof e !== "number" && e !== "longjmp") throw e;
  18011. Module["setThrew"](1, 0);
  18012. }
  18013. }
  18014. function invoke_iiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  18015. var sp = stackSave();
  18016. try {
  18017. return Module["dynCall_iiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  18018. } catch (e) {
  18019. stackRestore(sp);
  18020. if (typeof e !== "number" && e !== "longjmp") throw e;
  18021. Module["setThrew"](1, 0);
  18022. }
  18023. }
  18024. function invoke_iiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  18025. var sp = stackSave();
  18026. try {
  18027. return Module["dynCall_iiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  18028. } catch (e) {
  18029. stackRestore(sp);
  18030. if (typeof e !== "number" && e !== "longjmp") throw e;
  18031. Module["setThrew"](1, 0);
  18032. }
  18033. }
  18034. function invoke_iiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  18035. var sp = stackSave();
  18036. try {
  18037. return Module["dynCall_iiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  18038. } catch (e) {
  18039. stackRestore(sp);
  18040. if (typeof e !== "number" && e !== "longjmp") throw e;
  18041. Module["setThrew"](1, 0);
  18042. }
  18043. }
  18044. function invoke_iiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
  18045. var sp = stackSave();
  18046. try {
  18047. return Module["dynCall_iiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
  18048. } catch (e) {
  18049. stackRestore(sp);
  18050. if (typeof e !== "number" && e !== "longjmp") throw e;
  18051. Module["setThrew"](1, 0);
  18052. }
  18053. }
  18054. function invoke_iiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) {
  18055. var sp = stackSave();
  18056. try {
  18057. return Module["dynCall_iiiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
  18058. } catch (e) {
  18059. stackRestore(sp);
  18060. if (typeof e !== "number" && e !== "longjmp") throw e;
  18061. Module["setThrew"](1, 0);
  18062. }
  18063. }
  18064. function invoke_iiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) {
  18065. var sp = stackSave();
  18066. try {
  18067. return Module["dynCall_iiiiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
  18068. } catch (e) {
  18069. stackRestore(sp);
  18070. if (typeof e !== "number" && e !== "longjmp") throw e;
  18071. Module["setThrew"](1, 0);
  18072. }
  18073. }
  18074. function invoke_iiiiij(index, a1, a2, a3, a4, a5, a6) {
  18075. var sp = stackSave();
  18076. try {
  18077. return Module["dynCall_iiiiij"](index, a1, a2, a3, a4, a5, a6);
  18078. } catch (e) {
  18079. stackRestore(sp);
  18080. if (typeof e !== "number" && e !== "longjmp") throw e;
  18081. Module["setThrew"](1, 0);
  18082. }
  18083. }
  18084. function invoke_iiiiiji(index, a1, a2, a3, a4, a5, a6, a7) {
  18085. var sp = stackSave();
  18086. try {
  18087. return Module["dynCall_iiiiiji"](index, a1, a2, a3, a4, a5, a6, a7);
  18088. } catch (e) {
  18089. stackRestore(sp);
  18090. if (typeof e !== "number" && e !== "longjmp") throw e;
  18091. Module["setThrew"](1, 0);
  18092. }
  18093. }
  18094. function invoke_iiiiijjiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) {
  18095. var sp = stackSave();
  18096. try {
  18097. return Module["dynCall_iiiiijjiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
  18098. } catch (e) {
  18099. stackRestore(sp);
  18100. if (typeof e !== "number" && e !== "longjmp") throw e;
  18101. Module["setThrew"](1, 0);
  18102. }
  18103. }
  18104. function invoke_iiiij(index, a1, a2, a3, a4, a5) {
  18105. var sp = stackSave();
  18106. try {
  18107. return Module["dynCall_iiiij"](index, a1, a2, a3, a4, a5);
  18108. } catch (e) {
  18109. stackRestore(sp);
  18110. if (typeof e !== "number" && e !== "longjmp") throw e;
  18111. Module["setThrew"](1, 0);
  18112. }
  18113. }
  18114. function invoke_iiiiji(index, a1, a2, a3, a4, a5, a6) {
  18115. var sp = stackSave();
  18116. try {
  18117. return Module["dynCall_iiiiji"](index, a1, a2, a3, a4, a5, a6);
  18118. } catch (e) {
  18119. stackRestore(sp);
  18120. if (typeof e !== "number" && e !== "longjmp") throw e;
  18121. Module["setThrew"](1, 0);
  18122. }
  18123. }
  18124. function invoke_iiiijii(index, a1, a2, a3, a4, a5, a6, a7) {
  18125. var sp = stackSave();
  18126. try {
  18127. return Module["dynCall_iiiijii"](index, a1, a2, a3, a4, a5, a6, a7);
  18128. } catch (e) {
  18129. stackRestore(sp);
  18130. if (typeof e !== "number" && e !== "longjmp") throw e;
  18131. Module["setThrew"](1, 0);
  18132. }
  18133. }
  18134. function invoke_iiiijijii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  18135. var sp = stackSave();
  18136. try {
  18137. return Module["dynCall_iiiijijii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  18138. } catch (e) {
  18139. stackRestore(sp);
  18140. if (typeof e !== "number" && e !== "longjmp") throw e;
  18141. Module["setThrew"](1, 0);
  18142. }
  18143. }
  18144. function invoke_iiiijjii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  18145. var sp = stackSave();
  18146. try {
  18147. return Module["dynCall_iiiijjii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  18148. } catch (e) {
  18149. stackRestore(sp);
  18150. if (typeof e !== "number" && e !== "longjmp") throw e;
  18151. Module["setThrew"](1, 0);
  18152. }
  18153. }
  18154. function invoke_iiiijjiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
  18155. var sp = stackSave();
  18156. try {
  18157. return Module["dynCall_iiiijjiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
  18158. } catch (e) {
  18159. stackRestore(sp);
  18160. if (typeof e !== "number" && e !== "longjmp") throw e;
  18161. Module["setThrew"](1, 0);
  18162. }
  18163. }
  18164. function invoke_iiij(index, a1, a2, a3, a4) {
  18165. var sp = stackSave();
  18166. try {
  18167. return Module["dynCall_iiij"](index, a1, a2, a3, a4);
  18168. } catch (e) {
  18169. stackRestore(sp);
  18170. if (typeof e !== "number" && e !== "longjmp") throw e;
  18171. Module["setThrew"](1, 0);
  18172. }
  18173. }
  18174. function invoke_iiiji(index, a1, a2, a3, a4, a5) {
  18175. var sp = stackSave();
  18176. try {
  18177. return Module["dynCall_iiiji"](index, a1, a2, a3, a4, a5);
  18178. } catch (e) {
  18179. stackRestore(sp);
  18180. if (typeof e !== "number" && e !== "longjmp") throw e;
  18181. Module["setThrew"](1, 0);
  18182. }
  18183. }
  18184. function invoke_iiijii(index, a1, a2, a3, a4, a5, a6) {
  18185. var sp = stackSave();
  18186. try {
  18187. return Module["dynCall_iiijii"](index, a1, a2, a3, a4, a5, a6);
  18188. } catch (e) {
  18189. stackRestore(sp);
  18190. if (typeof e !== "number" && e !== "longjmp") throw e;
  18191. Module["setThrew"](1, 0);
  18192. }
  18193. }
  18194. function invoke_iiijiii(index, a1, a2, a3, a4, a5, a6, a7) {
  18195. var sp = stackSave();
  18196. try {
  18197. return Module["dynCall_iiijiii"](index, a1, a2, a3, a4, a5, a6, a7);
  18198. } catch (e) {
  18199. stackRestore(sp);
  18200. if (typeof e !== "number" && e !== "longjmp") throw e;
  18201. Module["setThrew"](1, 0);
  18202. }
  18203. }
  18204. function invoke_iiijji(index, a1, a2, a3, a4, a5, a6, a7) {
  18205. var sp = stackSave();
  18206. try {
  18207. return Module["dynCall_iiijji"](index, a1, a2, a3, a4, a5, a6, a7);
  18208. } catch (e) {
  18209. stackRestore(sp);
  18210. if (typeof e !== "number" && e !== "longjmp") throw e;
  18211. Module["setThrew"](1, 0);
  18212. }
  18213. }
  18214. function invoke_iiijjii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  18215. var sp = stackSave();
  18216. try {
  18217. return Module["dynCall_iiijjii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  18218. } catch (e) {
  18219. stackRestore(sp);
  18220. if (typeof e !== "number" && e !== "longjmp") throw e;
  18221. Module["setThrew"](1, 0);
  18222. }
  18223. }
  18224. function invoke_iij(index, a1, a2, a3) {
  18225. var sp = stackSave();
  18226. try {
  18227. return Module["dynCall_iij"](index, a1, a2, a3);
  18228. } catch (e) {
  18229. stackRestore(sp);
  18230. if (typeof e !== "number" && e !== "longjmp") throw e;
  18231. Module["setThrew"](1, 0);
  18232. }
  18233. }
  18234. function invoke_iiji(index, a1, a2, a3, a4) {
  18235. var sp = stackSave();
  18236. try {
  18237. return Module["dynCall_iiji"](index, a1, a2, a3, a4);
  18238. } catch (e) {
  18239. stackRestore(sp);
  18240. if (typeof e !== "number" && e !== "longjmp") throw e;
  18241. Module["setThrew"](1, 0);
  18242. }
  18243. }
  18244. function invoke_iijii(index, a1, a2, a3, a4, a5) {
  18245. var sp = stackSave();
  18246. try {
  18247. return Module["dynCall_iijii"](index, a1, a2, a3, a4, a5);
  18248. } catch (e) {
  18249. stackRestore(sp);
  18250. if (typeof e !== "number" && e !== "longjmp") throw e;
  18251. Module["setThrew"](1, 0);
  18252. }
  18253. }
  18254. function invoke_iijiii(index, a1, a2, a3, a4, a5, a6) {
  18255. var sp = stackSave();
  18256. try {
  18257. return Module["dynCall_iijiii"](index, a1, a2, a3, a4, a5, a6);
  18258. } catch (e) {
  18259. stackRestore(sp);
  18260. if (typeof e !== "number" && e !== "longjmp") throw e;
  18261. Module["setThrew"](1, 0);
  18262. }
  18263. }
  18264. function invoke_iijji(index, a1, a2, a3, a4, a5, a6) {
  18265. var sp = stackSave();
  18266. try {
  18267. return Module["dynCall_iijji"](index, a1, a2, a3, a4, a5, a6);
  18268. } catch (e) {
  18269. stackRestore(sp);
  18270. if (typeof e !== "number" && e !== "longjmp") throw e;
  18271. Module["setThrew"](1, 0);
  18272. }
  18273. }
  18274. function invoke_iijjii(index, a1, a2, a3, a4, a5, a6, a7) {
  18275. var sp = stackSave();
  18276. try {
  18277. return Module["dynCall_iijjii"](index, a1, a2, a3, a4, a5, a6, a7);
  18278. } catch (e) {
  18279. stackRestore(sp);
  18280. if (typeof e !== "number" && e !== "longjmp") throw e;
  18281. Module["setThrew"](1, 0);
  18282. }
  18283. }
  18284. function invoke_iijjiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  18285. var sp = stackSave();
  18286. try {
  18287. return Module["dynCall_iijjiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  18288. } catch (e) {
  18289. stackRestore(sp);
  18290. if (typeof e !== "number" && e !== "longjmp") throw e;
  18291. Module["setThrew"](1, 0);
  18292. }
  18293. }
  18294. function invoke_iijjji(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  18295. var sp = stackSave();
  18296. try {
  18297. return Module["dynCall_iijjji"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  18298. } catch (e) {
  18299. stackRestore(sp);
  18300. if (typeof e !== "number" && e !== "longjmp") throw e;
  18301. Module["setThrew"](1, 0);
  18302. }
  18303. }
  18304. function invoke_ij(index, a1, a2) {
  18305. var sp = stackSave();
  18306. try {
  18307. return Module["dynCall_ij"](index, a1, a2);
  18308. } catch (e) {
  18309. stackRestore(sp);
  18310. if (typeof e !== "number" && e !== "longjmp") throw e;
  18311. Module["setThrew"](1, 0);
  18312. }
  18313. }
  18314. function invoke_iji(index, a1, a2, a3) {
  18315. var sp = stackSave();
  18316. try {
  18317. return Module["dynCall_iji"](index, a1, a2, a3);
  18318. } catch (e) {
  18319. stackRestore(sp);
  18320. if (typeof e !== "number" && e !== "longjmp") throw e;
  18321. Module["setThrew"](1, 0);
  18322. }
  18323. }
  18324. function invoke_ijiii(index, a1, a2, a3, a4, a5) {
  18325. var sp = stackSave();
  18326. try {
  18327. return Module["dynCall_ijiii"](index, a1, a2, a3, a4, a5);
  18328. } catch (e) {
  18329. stackRestore(sp);
  18330. if (typeof e !== "number" && e !== "longjmp") throw e;
  18331. Module["setThrew"](1, 0);
  18332. }
  18333. }
  18334. function invoke_ijiiii(index, a1, a2, a3, a4, a5, a6) {
  18335. var sp = stackSave();
  18336. try {
  18337. return Module["dynCall_ijiiii"](index, a1, a2, a3, a4, a5, a6);
  18338. } catch (e) {
  18339. stackRestore(sp);
  18340. if (typeof e !== "number" && e !== "longjmp") throw e;
  18341. Module["setThrew"](1, 0);
  18342. }
  18343. }
  18344. function invoke_ijiiiii(index, a1, a2, a3, a4, a5, a6, a7) {
  18345. var sp = stackSave();
  18346. try {
  18347. return Module["dynCall_ijiiiii"](index, a1, a2, a3, a4, a5, a6, a7);
  18348. } catch (e) {
  18349. stackRestore(sp);
  18350. if (typeof e !== "number" && e !== "longjmp") throw e;
  18351. Module["setThrew"](1, 0);
  18352. }
  18353. }
  18354. function invoke_ijiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  18355. var sp = stackSave();
  18356. try {
  18357. return Module["dynCall_ijiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  18358. } catch (e) {
  18359. stackRestore(sp);
  18360. if (typeof e !== "number" && e !== "longjmp") throw e;
  18361. Module["setThrew"](1, 0);
  18362. }
  18363. }
  18364. function invoke_ijj(index, a1, a2, a3, a4) {
  18365. var sp = stackSave();
  18366. try {
  18367. return Module["dynCall_ijj"](index, a1, a2, a3, a4);
  18368. } catch (e) {
  18369. stackRestore(sp);
  18370. if (typeof e !== "number" && e !== "longjmp") throw e;
  18371. Module["setThrew"](1, 0);
  18372. }
  18373. }
  18374. function invoke_ijji(index, a1, a2, a3, a4, a5) {
  18375. var sp = stackSave();
  18376. try {
  18377. return Module["dynCall_ijji"](index, a1, a2, a3, a4, a5);
  18378. } catch (e) {
  18379. stackRestore(sp);
  18380. if (typeof e !== "number" && e !== "longjmp") throw e;
  18381. Module["setThrew"](1, 0);
  18382. }
  18383. }
  18384. function invoke_j(index) {
  18385. var sp = stackSave();
  18386. try {
  18387. return Module["dynCall_j"](index);
  18388. } catch (e) {
  18389. stackRestore(sp);
  18390. if (typeof e !== "number" && e !== "longjmp") throw e;
  18391. Module["setThrew"](1, 0);
  18392. }
  18393. }
  18394. function invoke_jdi(index, a1, a2) {
  18395. var sp = stackSave();
  18396. try {
  18397. return Module["dynCall_jdi"](index, a1, a2);
  18398. } catch (e) {
  18399. stackRestore(sp);
  18400. if (typeof e !== "number" && e !== "longjmp") throw e;
  18401. Module["setThrew"](1, 0);
  18402. }
  18403. }
  18404. function invoke_jdii(index, a1, a2, a3) {
  18405. var sp = stackSave();
  18406. try {
  18407. return Module["dynCall_jdii"](index, a1, a2, a3);
  18408. } catch (e) {
  18409. stackRestore(sp);
  18410. if (typeof e !== "number" && e !== "longjmp") throw e;
  18411. Module["setThrew"](1, 0);
  18412. }
  18413. }
  18414. function invoke_jfi(index, a1, a2) {
  18415. var sp = stackSave();
  18416. try {
  18417. return Module["dynCall_jfi"](index, a1, a2);
  18418. } catch (e) {
  18419. stackRestore(sp);
  18420. if (typeof e !== "number" && e !== "longjmp") throw e;
  18421. Module["setThrew"](1, 0);
  18422. }
  18423. }
  18424. function invoke_ji(index, a1) {
  18425. var sp = stackSave();
  18426. try {
  18427. return Module["dynCall_ji"](index, a1);
  18428. } catch (e) {
  18429. stackRestore(sp);
  18430. if (typeof e !== "number" && e !== "longjmp") throw e;
  18431. Module["setThrew"](1, 0);
  18432. }
  18433. }
  18434. function invoke_jid(index, a1, a2) {
  18435. var sp = stackSave();
  18436. try {
  18437. return Module["dynCall_jid"](index, a1, a2);
  18438. } catch (e) {
  18439. stackRestore(sp);
  18440. if (typeof e !== "number" && e !== "longjmp") throw e;
  18441. Module["setThrew"](1, 0);
  18442. }
  18443. }
  18444. function invoke_jidi(index, a1, a2, a3) {
  18445. var sp = stackSave();
  18446. try {
  18447. return Module["dynCall_jidi"](index, a1, a2, a3);
  18448. } catch (e) {
  18449. stackRestore(sp);
  18450. if (typeof e !== "number" && e !== "longjmp") throw e;
  18451. Module["setThrew"](1, 0);
  18452. }
  18453. }
  18454. function invoke_jidii(index, a1, a2, a3, a4) {
  18455. var sp = stackSave();
  18456. try {
  18457. return Module["dynCall_jidii"](index, a1, a2, a3, a4);
  18458. } catch (e) {
  18459. stackRestore(sp);
  18460. if (typeof e !== "number" && e !== "longjmp") throw e;
  18461. Module["setThrew"](1, 0);
  18462. }
  18463. }
  18464. function invoke_jifi(index, a1, a2, a3) {
  18465. var sp = stackSave();
  18466. try {
  18467. return Module["dynCall_jifi"](index, a1, a2, a3);
  18468. } catch (e) {
  18469. stackRestore(sp);
  18470. if (typeof e !== "number" && e !== "longjmp") throw e;
  18471. Module["setThrew"](1, 0);
  18472. }
  18473. }
  18474. function invoke_jii(index, a1, a2) {
  18475. var sp = stackSave();
  18476. try {
  18477. return Module["dynCall_jii"](index, a1, a2);
  18478. } catch (e) {
  18479. stackRestore(sp);
  18480. if (typeof e !== "number" && e !== "longjmp") throw e;
  18481. Module["setThrew"](1, 0);
  18482. }
  18483. }
  18484. function invoke_jiii(index, a1, a2, a3) {
  18485. var sp = stackSave();
  18486. try {
  18487. return Module["dynCall_jiii"](index, a1, a2, a3);
  18488. } catch (e) {
  18489. stackRestore(sp);
  18490. if (typeof e !== "number" && e !== "longjmp") throw e;
  18491. Module["setThrew"](1, 0);
  18492. }
  18493. }
  18494. function invoke_jiiii(index, a1, a2, a3, a4) {
  18495. var sp = stackSave();
  18496. try {
  18497. return Module["dynCall_jiiii"](index, a1, a2, a3, a4);
  18498. } catch (e) {
  18499. stackRestore(sp);
  18500. if (typeof e !== "number" && e !== "longjmp") throw e;
  18501. Module["setThrew"](1, 0);
  18502. }
  18503. }
  18504. function invoke_jiiiii(index, a1, a2, a3, a4, a5) {
  18505. var sp = stackSave();
  18506. try {
  18507. return Module["dynCall_jiiiii"](index, a1, a2, a3, a4, a5);
  18508. } catch (e) {
  18509. stackRestore(sp);
  18510. if (typeof e !== "number" && e !== "longjmp") throw e;
  18511. Module["setThrew"](1, 0);
  18512. }
  18513. }
  18514. function invoke_jiiiiii(index, a1, a2, a3, a4, a5, a6) {
  18515. var sp = stackSave();
  18516. try {
  18517. return Module["dynCall_jiiiiii"](index, a1, a2, a3, a4, a5, a6);
  18518. } catch (e) {
  18519. stackRestore(sp);
  18520. if (typeof e !== "number" && e !== "longjmp") throw e;
  18521. Module["setThrew"](1, 0);
  18522. }
  18523. }
  18524. function invoke_jiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  18525. var sp = stackSave();
  18526. try {
  18527. return Module["dynCall_jiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  18528. } catch (e) {
  18529. stackRestore(sp);
  18530. if (typeof e !== "number" && e !== "longjmp") throw e;
  18531. Module["setThrew"](1, 0);
  18532. }
  18533. }
  18534. function invoke_jiiij(index, a1, a2, a3, a4, a5) {
  18535. var sp = stackSave();
  18536. try {
  18537. return Module["dynCall_jiiij"](index, a1, a2, a3, a4, a5);
  18538. } catch (e) {
  18539. stackRestore(sp);
  18540. if (typeof e !== "number" && e !== "longjmp") throw e;
  18541. Module["setThrew"](1, 0);
  18542. }
  18543. }
  18544. function invoke_jiiiji(index, a1, a2, a3, a4, a5, a6) {
  18545. var sp = stackSave();
  18546. try {
  18547. return Module["dynCall_jiiiji"](index, a1, a2, a3, a4, a5, a6);
  18548. } catch (e) {
  18549. stackRestore(sp);
  18550. if (typeof e !== "number" && e !== "longjmp") throw e;
  18551. Module["setThrew"](1, 0);
  18552. }
  18553. }
  18554. function invoke_jiiji(index, a1, a2, a3, a4, a5) {
  18555. var sp = stackSave();
  18556. try {
  18557. return Module["dynCall_jiiji"](index, a1, a2, a3, a4, a5);
  18558. } catch (e) {
  18559. stackRestore(sp);
  18560. if (typeof e !== "number" && e !== "longjmp") throw e;
  18561. Module["setThrew"](1, 0);
  18562. }
  18563. }
  18564. function invoke_jiji(index, a1, a2, a3, a4) {
  18565. var sp = stackSave();
  18566. try {
  18567. return Module["dynCall_jiji"](index, a1, a2, a3, a4);
  18568. } catch (e) {
  18569. stackRestore(sp);
  18570. if (typeof e !== "number" && e !== "longjmp") throw e;
  18571. Module["setThrew"](1, 0);
  18572. }
  18573. }
  18574. function invoke_jijii(index, a1, a2, a3, a4, a5) {
  18575. var sp = stackSave();
  18576. try {
  18577. return Module["dynCall_jijii"](index, a1, a2, a3, a4, a5);
  18578. } catch (e) {
  18579. stackRestore(sp);
  18580. if (typeof e !== "number" && e !== "longjmp") throw e;
  18581. Module["setThrew"](1, 0);
  18582. }
  18583. }
  18584. function invoke_jijiii(index, a1, a2, a3, a4, a5, a6) {
  18585. var sp = stackSave();
  18586. try {
  18587. return Module["dynCall_jijiii"](index, a1, a2, a3, a4, a5, a6);
  18588. } catch (e) {
  18589. stackRestore(sp);
  18590. if (typeof e !== "number" && e !== "longjmp") throw e;
  18591. Module["setThrew"](1, 0);
  18592. }
  18593. }
  18594. function invoke_jijj(index, a1, a2, a3, a4, a5) {
  18595. var sp = stackSave();
  18596. try {
  18597. return Module["dynCall_jijj"](index, a1, a2, a3, a4, a5);
  18598. } catch (e) {
  18599. stackRestore(sp);
  18600. if (typeof e !== "number" && e !== "longjmp") throw e;
  18601. Module["setThrew"](1, 0);
  18602. }
  18603. }
  18604. function invoke_jijji(index, a1, a2, a3, a4, a5, a6) {
  18605. var sp = stackSave();
  18606. try {
  18607. return Module["dynCall_jijji"](index, a1, a2, a3, a4, a5, a6);
  18608. } catch (e) {
  18609. stackRestore(sp);
  18610. if (typeof e !== "number" && e !== "longjmp") throw e;
  18611. Module["setThrew"](1, 0);
  18612. }
  18613. }
  18614. function invoke_jj(index, a1, a2) {
  18615. var sp = stackSave();
  18616. try {
  18617. return Module["dynCall_jj"](index, a1, a2);
  18618. } catch (e) {
  18619. stackRestore(sp);
  18620. if (typeof e !== "number" && e !== "longjmp") throw e;
  18621. Module["setThrew"](1, 0);
  18622. }
  18623. }
  18624. function invoke_jji(index, a1, a2, a3) {
  18625. var sp = stackSave();
  18626. try {
  18627. return Module["dynCall_jji"](index, a1, a2, a3);
  18628. } catch (e) {
  18629. stackRestore(sp);
  18630. if (typeof e !== "number" && e !== "longjmp") throw e;
  18631. Module["setThrew"](1, 0);
  18632. }
  18633. }
  18634. function invoke_jjii(index, a1, a2, a3, a4) {
  18635. var sp = stackSave();
  18636. try {
  18637. return Module["dynCall_jjii"](index, a1, a2, a3, a4);
  18638. } catch (e) {
  18639. stackRestore(sp);
  18640. if (typeof e !== "number" && e !== "longjmp") throw e;
  18641. Module["setThrew"](1, 0);
  18642. }
  18643. }
  18644. function invoke_jjji(index, a1, a2, a3, a4, a5) {
  18645. var sp = stackSave();
  18646. try {
  18647. return Module["dynCall_jjji"](index, a1, a2, a3, a4, a5);
  18648. } catch (e) {
  18649. stackRestore(sp);
  18650. if (typeof e !== "number" && e !== "longjmp") throw e;
  18651. Module["setThrew"](1, 0);
  18652. }
  18653. }
  18654. function invoke_jjjji(index, a1, a2, a3, a4, a5, a6, a7) {
  18655. var sp = stackSave();
  18656. try {
  18657. return Module["dynCall_jjjji"](index, a1, a2, a3, a4, a5, a6, a7);
  18658. } catch (e) {
  18659. stackRestore(sp);
  18660. if (typeof e !== "number" && e !== "longjmp") throw e;
  18661. Module["setThrew"](1, 0);
  18662. }
  18663. }
  18664. function invoke_v(index) {
  18665. var sp = stackSave();
  18666. try {
  18667. Module["dynCall_v"](index);
  18668. } catch (e) {
  18669. stackRestore(sp);
  18670. if (typeof e !== "number" && e !== "longjmp") throw e;
  18671. Module["setThrew"](1, 0);
  18672. }
  18673. }
  18674. function invoke_vd(index, a1) {
  18675. var sp = stackSave();
  18676. try {
  18677. Module["dynCall_vd"](index, a1);
  18678. } catch (e) {
  18679. stackRestore(sp);
  18680. if (typeof e !== "number" && e !== "longjmp") throw e;
  18681. Module["setThrew"](1, 0);
  18682. }
  18683. }
  18684. function invoke_vdi(index, a1, a2) {
  18685. var sp = stackSave();
  18686. try {
  18687. Module["dynCall_vdi"](index, a1, a2);
  18688. } catch (e) {
  18689. stackRestore(sp);
  18690. if (typeof e !== "number" && e !== "longjmp") throw e;
  18691. Module["setThrew"](1, 0);
  18692. }
  18693. }
  18694. function invoke_vdii(index, a1, a2, a3) {
  18695. var sp = stackSave();
  18696. try {
  18697. Module["dynCall_vdii"](index, a1, a2, a3);
  18698. } catch (e) {
  18699. stackRestore(sp);
  18700. if (typeof e !== "number" && e !== "longjmp") throw e;
  18701. Module["setThrew"](1, 0);
  18702. }
  18703. }
  18704. function invoke_vf(index, a1) {
  18705. var sp = stackSave();
  18706. try {
  18707. Module["dynCall_vf"](index, a1);
  18708. } catch (e) {
  18709. stackRestore(sp);
  18710. if (typeof e !== "number" && e !== "longjmp") throw e;
  18711. Module["setThrew"](1, 0);
  18712. }
  18713. }
  18714. function invoke_vff(index, a1, a2) {
  18715. var sp = stackSave();
  18716. try {
  18717. Module["dynCall_vff"](index, a1, a2);
  18718. } catch (e) {
  18719. stackRestore(sp);
  18720. if (typeof e !== "number" && e !== "longjmp") throw e;
  18721. Module["setThrew"](1, 0);
  18722. }
  18723. }
  18724. function invoke_vfff(index, a1, a2, a3) {
  18725. var sp = stackSave();
  18726. try {
  18727. Module["dynCall_vfff"](index, a1, a2, a3);
  18728. } catch (e) {
  18729. stackRestore(sp);
  18730. if (typeof e !== "number" && e !== "longjmp") throw e;
  18731. Module["setThrew"](1, 0);
  18732. }
  18733. }
  18734. function invoke_vffff(index, a1, a2, a3, a4) {
  18735. var sp = stackSave();
  18736. try {
  18737. Module["dynCall_vffff"](index, a1, a2, a3, a4);
  18738. } catch (e) {
  18739. stackRestore(sp);
  18740. if (typeof e !== "number" && e !== "longjmp") throw e;
  18741. Module["setThrew"](1, 0);
  18742. }
  18743. }
  18744. function invoke_vffffffi(index, a1, a2, a3, a4, a5, a6, a7) {
  18745. var sp = stackSave();
  18746. try {
  18747. Module["dynCall_vffffffi"](index, a1, a2, a3, a4, a5, a6, a7);
  18748. } catch (e) {
  18749. stackRestore(sp);
  18750. if (typeof e !== "number" && e !== "longjmp") throw e;
  18751. Module["setThrew"](1, 0);
  18752. }
  18753. }
  18754. function invoke_vffffffii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  18755. var sp = stackSave();
  18756. try {
  18757. Module["dynCall_vffffffii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  18758. } catch (e) {
  18759. stackRestore(sp);
  18760. if (typeof e !== "number" && e !== "longjmp") throw e;
  18761. Module["setThrew"](1, 0);
  18762. }
  18763. }
  18764. function invoke_vffffi(index, a1, a2, a3, a4, a5) {
  18765. var sp = stackSave();
  18766. try {
  18767. Module["dynCall_vffffi"](index, a1, a2, a3, a4, a5);
  18768. } catch (e) {
  18769. stackRestore(sp);
  18770. if (typeof e !== "number" && e !== "longjmp") throw e;
  18771. Module["setThrew"](1, 0);
  18772. }
  18773. }
  18774. function invoke_vffffii(index, a1, a2, a3, a4, a5, a6) {
  18775. var sp = stackSave();
  18776. try {
  18777. Module["dynCall_vffffii"](index, a1, a2, a3, a4, a5, a6);
  18778. } catch (e) {
  18779. stackRestore(sp);
  18780. if (typeof e !== "number" && e !== "longjmp") throw e;
  18781. Module["setThrew"](1, 0);
  18782. }
  18783. }
  18784. function invoke_vffffiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  18785. var sp = stackSave();
  18786. try {
  18787. Module["dynCall_vffffiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  18788. } catch (e) {
  18789. stackRestore(sp);
  18790. if (typeof e !== "number" && e !== "longjmp") throw e;
  18791. Module["setThrew"](1, 0);
  18792. }
  18793. }
  18794. function invoke_vfffi(index, a1, a2, a3, a4) {
  18795. var sp = stackSave();
  18796. try {
  18797. Module["dynCall_vfffi"](index, a1, a2, a3, a4);
  18798. } catch (e) {
  18799. stackRestore(sp);
  18800. if (typeof e !== "number" && e !== "longjmp") throw e;
  18801. Module["setThrew"](1, 0);
  18802. }
  18803. }
  18804. function invoke_vffi(index, a1, a2, a3) {
  18805. var sp = stackSave();
  18806. try {
  18807. Module["dynCall_vffi"](index, a1, a2, a3);
  18808. } catch (e) {
  18809. stackRestore(sp);
  18810. if (typeof e !== "number" && e !== "longjmp") throw e;
  18811. Module["setThrew"](1, 0);
  18812. }
  18813. }
  18814. function invoke_vfi(index, a1, a2) {
  18815. var sp = stackSave();
  18816. try {
  18817. Module["dynCall_vfi"](index, a1, a2);
  18818. } catch (e) {
  18819. stackRestore(sp);
  18820. if (typeof e !== "number" && e !== "longjmp") throw e;
  18821. Module["setThrew"](1, 0);
  18822. }
  18823. }
  18824. function invoke_vfii(index, a1, a2, a3) {
  18825. var sp = stackSave();
  18826. try {
  18827. Module["dynCall_vfii"](index, a1, a2, a3);
  18828. } catch (e) {
  18829. stackRestore(sp);
  18830. if (typeof e !== "number" && e !== "longjmp") throw e;
  18831. Module["setThrew"](1, 0);
  18832. }
  18833. }
  18834. function invoke_vfiii(index, a1, a2, a3, a4) {
  18835. var sp = stackSave();
  18836. try {
  18837. Module["dynCall_vfiii"](index, a1, a2, a3, a4);
  18838. } catch (e) {
  18839. stackRestore(sp);
  18840. if (typeof e !== "number" && e !== "longjmp") throw e;
  18841. Module["setThrew"](1, 0);
  18842. }
  18843. }
  18844. function invoke_vfiiiii(index, a1, a2, a3, a4, a5, a6) {
  18845. var sp = stackSave();
  18846. try {
  18847. Module["dynCall_vfiiiii"](index, a1, a2, a3, a4, a5, a6);
  18848. } catch (e) {
  18849. stackRestore(sp);
  18850. if (typeof e !== "number" && e !== "longjmp") throw e;
  18851. Module["setThrew"](1, 0);
  18852. }
  18853. }
  18854. function invoke_vi(index, a1) {
  18855. var sp = stackSave();
  18856. try {
  18857. Module["dynCall_vi"](index, a1);
  18858. } catch (e) {
  18859. stackRestore(sp);
  18860. if (typeof e !== "number" && e !== "longjmp") throw e;
  18861. Module["setThrew"](1, 0);
  18862. }
  18863. }
  18864. function invoke_vid(index, a1, a2) {
  18865. var sp = stackSave();
  18866. try {
  18867. Module["dynCall_vid"](index, a1, a2);
  18868. } catch (e) {
  18869. stackRestore(sp);
  18870. if (typeof e !== "number" && e !== "longjmp") throw e;
  18871. Module["setThrew"](1, 0);
  18872. }
  18873. }
  18874. function invoke_vidd(index, a1, a2, a3) {
  18875. var sp = stackSave();
  18876. try {
  18877. Module["dynCall_vidd"](index, a1, a2, a3);
  18878. } catch (e) {
  18879. stackRestore(sp);
  18880. if (typeof e !== "number" && e !== "longjmp") throw e;
  18881. Module["setThrew"](1, 0);
  18882. }
  18883. }
  18884. function invoke_vidddi(index, a1, a2, a3, a4, a5) {
  18885. var sp = stackSave();
  18886. try {
  18887. Module["dynCall_vidddi"](index, a1, a2, a3, a4, a5);
  18888. } catch (e) {
  18889. stackRestore(sp);
  18890. if (typeof e !== "number" && e !== "longjmp") throw e;
  18891. Module["setThrew"](1, 0);
  18892. }
  18893. }
  18894. function invoke_viddi(index, a1, a2, a3, a4) {
  18895. var sp = stackSave();
  18896. try {
  18897. Module["dynCall_viddi"](index, a1, a2, a3, a4);
  18898. } catch (e) {
  18899. stackRestore(sp);
  18900. if (typeof e !== "number" && e !== "longjmp") throw e;
  18901. Module["setThrew"](1, 0);
  18902. }
  18903. }
  18904. function invoke_viddiiii(index, a1, a2, a3, a4, a5, a6, a7) {
  18905. var sp = stackSave();
  18906. try {
  18907. Module["dynCall_viddiiii"](index, a1, a2, a3, a4, a5, a6, a7);
  18908. } catch (e) {
  18909. stackRestore(sp);
  18910. if (typeof e !== "number" && e !== "longjmp") throw e;
  18911. Module["setThrew"](1, 0);
  18912. }
  18913. }
  18914. function invoke_vidi(index, a1, a2, a3) {
  18915. var sp = stackSave();
  18916. try {
  18917. Module["dynCall_vidi"](index, a1, a2, a3);
  18918. } catch (e) {
  18919. stackRestore(sp);
  18920. if (typeof e !== "number" && e !== "longjmp") throw e;
  18921. Module["setThrew"](1, 0);
  18922. }
  18923. }
  18924. function invoke_vidii(index, a1, a2, a3, a4) {
  18925. var sp = stackSave();
  18926. try {
  18927. Module["dynCall_vidii"](index, a1, a2, a3, a4);
  18928. } catch (e) {
  18929. stackRestore(sp);
  18930. if (typeof e !== "number" && e !== "longjmp") throw e;
  18931. Module["setThrew"](1, 0);
  18932. }
  18933. }
  18934. function invoke_vidiii(index, a1, a2, a3, a4, a5) {
  18935. var sp = stackSave();
  18936. try {
  18937. Module["dynCall_vidiii"](index, a1, a2, a3, a4, a5);
  18938. } catch (e) {
  18939. stackRestore(sp);
  18940. if (typeof e !== "number" && e !== "longjmp") throw e;
  18941. Module["setThrew"](1, 0);
  18942. }
  18943. }
  18944. function invoke_vif(index, a1, a2) {
  18945. var sp = stackSave();
  18946. try {
  18947. Module["dynCall_vif"](index, a1, a2);
  18948. } catch (e) {
  18949. stackRestore(sp);
  18950. if (typeof e !== "number" && e !== "longjmp") throw e;
  18951. Module["setThrew"](1, 0);
  18952. }
  18953. }
  18954. function invoke_viff(index, a1, a2, a3) {
  18955. var sp = stackSave();
  18956. try {
  18957. Module["dynCall_viff"](index, a1, a2, a3);
  18958. } catch (e) {
  18959. stackRestore(sp);
  18960. if (typeof e !== "number" && e !== "longjmp") throw e;
  18961. Module["setThrew"](1, 0);
  18962. }
  18963. }
  18964. function invoke_vifff(index, a1, a2, a3, a4) {
  18965. var sp = stackSave();
  18966. try {
  18967. Module["dynCall_vifff"](index, a1, a2, a3, a4);
  18968. } catch (e) {
  18969. stackRestore(sp);
  18970. if (typeof e !== "number" && e !== "longjmp") throw e;
  18971. Module["setThrew"](1, 0);
  18972. }
  18973. }
  18974. function invoke_viffff(index, a1, a2, a3, a4, a5) {
  18975. var sp = stackSave();
  18976. try {
  18977. Module["dynCall_viffff"](index, a1, a2, a3, a4, a5);
  18978. } catch (e) {
  18979. stackRestore(sp);
  18980. if (typeof e !== "number" && e !== "longjmp") throw e;
  18981. Module["setThrew"](1, 0);
  18982. }
  18983. }
  18984. function invoke_viffffffi(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  18985. var sp = stackSave();
  18986. try {
  18987. Module["dynCall_viffffffi"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  18988. } catch (e) {
  18989. stackRestore(sp);
  18990. if (typeof e !== "number" && e !== "longjmp") throw e;
  18991. Module["setThrew"](1, 0);
  18992. }
  18993. }
  18994. function invoke_vifffffi(index, a1, a2, a3, a4, a5, a6, a7) {
  18995. var sp = stackSave();
  18996. try {
  18997. Module["dynCall_vifffffi"](index, a1, a2, a3, a4, a5, a6, a7);
  18998. } catch (e) {
  18999. stackRestore(sp);
  19000. if (typeof e !== "number" && e !== "longjmp") throw e;
  19001. Module["setThrew"](1, 0);
  19002. }
  19003. }
  19004. function invoke_viffffi(index, a1, a2, a3, a4, a5, a6) {
  19005. var sp = stackSave();
  19006. try {
  19007. Module["dynCall_viffffi"](index, a1, a2, a3, a4, a5, a6);
  19008. } catch (e) {
  19009. stackRestore(sp);
  19010. if (typeof e !== "number" && e !== "longjmp") throw e;
  19011. Module["setThrew"](1, 0);
  19012. }
  19013. }
  19014. function invoke_viffffii(index, a1, a2, a3, a4, a5, a6, a7) {
  19015. var sp = stackSave();
  19016. try {
  19017. Module["dynCall_viffffii"](index, a1, a2, a3, a4, a5, a6, a7);
  19018. } catch (e) {
  19019. stackRestore(sp);
  19020. if (typeof e !== "number" && e !== "longjmp") throw e;
  19021. Module["setThrew"](1, 0);
  19022. }
  19023. }
  19024. function invoke_viffffiifffiiiiif(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16) {
  19025. var sp = stackSave();
  19026. try {
  19027. Module["dynCall_viffffiifffiiiiif"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16);
  19028. } catch (e) {
  19029. stackRestore(sp);
  19030. if (typeof e !== "number" && e !== "longjmp") throw e;
  19031. Module["setThrew"](1, 0);
  19032. }
  19033. }
  19034. function invoke_vifffi(index, a1, a2, a3, a4, a5) {
  19035. var sp = stackSave();
  19036. try {
  19037. Module["dynCall_vifffi"](index, a1, a2, a3, a4, a5);
  19038. } catch (e) {
  19039. stackRestore(sp);
  19040. if (typeof e !== "number" && e !== "longjmp") throw e;
  19041. Module["setThrew"](1, 0);
  19042. }
  19043. }
  19044. function invoke_vifffii(index, a1, a2, a3, a4, a5, a6) {
  19045. var sp = stackSave();
  19046. try {
  19047. Module["dynCall_vifffii"](index, a1, a2, a3, a4, a5, a6);
  19048. } catch (e) {
  19049. stackRestore(sp);
  19050. if (typeof e !== "number" && e !== "longjmp") throw e;
  19051. Module["setThrew"](1, 0);
  19052. }
  19053. }
  19054. function invoke_viffi(index, a1, a2, a3, a4) {
  19055. var sp = stackSave();
  19056. try {
  19057. Module["dynCall_viffi"](index, a1, a2, a3, a4);
  19058. } catch (e) {
  19059. stackRestore(sp);
  19060. if (typeof e !== "number" && e !== "longjmp") throw e;
  19061. Module["setThrew"](1, 0);
  19062. }
  19063. }
  19064. function invoke_viffifffi(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  19065. var sp = stackSave();
  19066. try {
  19067. Module["dynCall_viffifffi"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  19068. } catch (e) {
  19069. stackRestore(sp);
  19070. if (typeof e !== "number" && e !== "longjmp") throw e;
  19071. Module["setThrew"](1, 0);
  19072. }
  19073. }
  19074. function invoke_viffii(index, a1, a2, a3, a4, a5) {
  19075. var sp = stackSave();
  19076. try {
  19077. Module["dynCall_viffii"](index, a1, a2, a3, a4, a5);
  19078. } catch (e) {
  19079. stackRestore(sp);
  19080. if (typeof e !== "number" && e !== "longjmp") throw e;
  19081. Module["setThrew"](1, 0);
  19082. }
  19083. }
  19084. function invoke_viffiifffffiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) {
  19085. var sp = stackSave();
  19086. try {
  19087. Module["dynCall_viffiifffffiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
  19088. } catch (e) {
  19089. stackRestore(sp);
  19090. if (typeof e !== "number" && e !== "longjmp") throw e;
  19091. Module["setThrew"](1, 0);
  19092. }
  19093. }
  19094. function invoke_viffiifffiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
  19095. var sp = stackSave();
  19096. try {
  19097. Module["dynCall_viffiifffiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
  19098. } catch (e) {
  19099. stackRestore(sp);
  19100. if (typeof e !== "number" && e !== "longjmp") throw e;
  19101. Module["setThrew"](1, 0);
  19102. }
  19103. }
  19104. function invoke_viffiii(index, a1, a2, a3, a4, a5, a6) {
  19105. var sp = stackSave();
  19106. try {
  19107. Module["dynCall_viffiii"](index, a1, a2, a3, a4, a5, a6);
  19108. } catch (e) {
  19109. stackRestore(sp);
  19110. if (typeof e !== "number" && e !== "longjmp") throw e;
  19111. Module["setThrew"](1, 0);
  19112. }
  19113. }
  19114. function invoke_viffiiiif(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  19115. var sp = stackSave();
  19116. try {
  19117. Module["dynCall_viffiiiif"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  19118. } catch (e) {
  19119. stackRestore(sp);
  19120. if (typeof e !== "number" && e !== "longjmp") throw e;
  19121. Module["setThrew"](1, 0);
  19122. }
  19123. }
  19124. function invoke_vifi(index, a1, a2, a3) {
  19125. var sp = stackSave();
  19126. try {
  19127. Module["dynCall_vifi"](index, a1, a2, a3);
  19128. } catch (e) {
  19129. stackRestore(sp);
  19130. if (typeof e !== "number" && e !== "longjmp") throw e;
  19131. Module["setThrew"](1, 0);
  19132. }
  19133. }
  19134. function invoke_vififi(index, a1, a2, a3, a4, a5) {
  19135. var sp = stackSave();
  19136. try {
  19137. Module["dynCall_vififi"](index, a1, a2, a3, a4, a5);
  19138. } catch (e) {
  19139. stackRestore(sp);
  19140. if (typeof e !== "number" && e !== "longjmp") throw e;
  19141. Module["setThrew"](1, 0);
  19142. }
  19143. }
  19144. function invoke_vifii(index, a1, a2, a3, a4) {
  19145. var sp = stackSave();
  19146. try {
  19147. Module["dynCall_vifii"](index, a1, a2, a3, a4);
  19148. } catch (e) {
  19149. stackRestore(sp);
  19150. if (typeof e !== "number" && e !== "longjmp") throw e;
  19151. Module["setThrew"](1, 0);
  19152. }
  19153. }
  19154. function invoke_vifiii(index, a1, a2, a3, a4, a5) {
  19155. var sp = stackSave();
  19156. try {
  19157. Module["dynCall_vifiii"](index, a1, a2, a3, a4, a5);
  19158. } catch (e) {
  19159. stackRestore(sp);
  19160. if (typeof e !== "number" && e !== "longjmp") throw e;
  19161. Module["setThrew"](1, 0);
  19162. }
  19163. }
  19164. function invoke_vifiiii(index, a1, a2, a3, a4, a5, a6) {
  19165. var sp = stackSave();
  19166. try {
  19167. Module["dynCall_vifiiii"](index, a1, a2, a3, a4, a5, a6);
  19168. } catch (e) {
  19169. stackRestore(sp);
  19170. if (typeof e !== "number" && e !== "longjmp") throw e;
  19171. Module["setThrew"](1, 0);
  19172. }
  19173. }
  19174. function invoke_vifiiiii(index, a1, a2, a3, a4, a5, a6, a7) {
  19175. var sp = stackSave();
  19176. try {
  19177. Module["dynCall_vifiiiii"](index, a1, a2, a3, a4, a5, a6, a7);
  19178. } catch (e) {
  19179. stackRestore(sp);
  19180. if (typeof e !== "number" && e !== "longjmp") throw e;
  19181. Module["setThrew"](1, 0);
  19182. }
  19183. }
  19184. function invoke_vii(index, a1, a2) {
  19185. var sp = stackSave();
  19186. try {
  19187. Module["dynCall_vii"](index, a1, a2);
  19188. } catch (e) {
  19189. stackRestore(sp);
  19190. if (typeof e !== "number" && e !== "longjmp") throw e;
  19191. Module["setThrew"](1, 0);
  19192. }
  19193. }
  19194. function invoke_viid(index, a1, a2, a3) {
  19195. var sp = stackSave();
  19196. try {
  19197. Module["dynCall_viid"](index, a1, a2, a3);
  19198. } catch (e) {
  19199. stackRestore(sp);
  19200. if (typeof e !== "number" && e !== "longjmp") throw e;
  19201. Module["setThrew"](1, 0);
  19202. }
  19203. }
  19204. function invoke_viidd(index, a1, a2, a3, a4) {
  19205. var sp = stackSave();
  19206. try {
  19207. Module["dynCall_viidd"](index, a1, a2, a3, a4);
  19208. } catch (e) {
  19209. stackRestore(sp);
  19210. if (typeof e !== "number" && e !== "longjmp") throw e;
  19211. Module["setThrew"](1, 0);
  19212. }
  19213. }
  19214. function invoke_viidi(index, a1, a2, a3, a4) {
  19215. var sp = stackSave();
  19216. try {
  19217. Module["dynCall_viidi"](index, a1, a2, a3, a4);
  19218. } catch (e) {
  19219. stackRestore(sp);
  19220. if (typeof e !== "number" && e !== "longjmp") throw e;
  19221. Module["setThrew"](1, 0);
  19222. }
  19223. }
  19224. function invoke_viidii(index, a1, a2, a3, a4, a5) {
  19225. var sp = stackSave();
  19226. try {
  19227. Module["dynCall_viidii"](index, a1, a2, a3, a4, a5);
  19228. } catch (e) {
  19229. stackRestore(sp);
  19230. if (typeof e !== "number" && e !== "longjmp") throw e;
  19231. Module["setThrew"](1, 0);
  19232. }
  19233. }
  19234. function invoke_viif(index, a1, a2, a3) {
  19235. var sp = stackSave();
  19236. try {
  19237. Module["dynCall_viif"](index, a1, a2, a3);
  19238. } catch (e) {
  19239. stackRestore(sp);
  19240. if (typeof e !== "number" && e !== "longjmp") throw e;
  19241. Module["setThrew"](1, 0);
  19242. }
  19243. }
  19244. function invoke_viiff(index, a1, a2, a3, a4) {
  19245. var sp = stackSave();
  19246. try {
  19247. Module["dynCall_viiff"](index, a1, a2, a3, a4);
  19248. } catch (e) {
  19249. stackRestore(sp);
  19250. if (typeof e !== "number" && e !== "longjmp") throw e;
  19251. Module["setThrew"](1, 0);
  19252. }
  19253. }
  19254. function invoke_viifff(index, a1, a2, a3, a4, a5) {
  19255. var sp = stackSave();
  19256. try {
  19257. Module["dynCall_viifff"](index, a1, a2, a3, a4, a5);
  19258. } catch (e) {
  19259. stackRestore(sp);
  19260. if (typeof e !== "number" && e !== "longjmp") throw e;
  19261. Module["setThrew"](1, 0);
  19262. }
  19263. }
  19264. function invoke_viifffi(index, a1, a2, a3, a4, a5, a6) {
  19265. var sp = stackSave();
  19266. try {
  19267. Module["dynCall_viifffi"](index, a1, a2, a3, a4, a5, a6);
  19268. } catch (e) {
  19269. stackRestore(sp);
  19270. if (typeof e !== "number" && e !== "longjmp") throw e;
  19271. Module["setThrew"](1, 0);
  19272. }
  19273. }
  19274. function invoke_viiffi(index, a1, a2, a3, a4, a5) {
  19275. var sp = stackSave();
  19276. try {
  19277. Module["dynCall_viiffi"](index, a1, a2, a3, a4, a5);
  19278. } catch (e) {
  19279. stackRestore(sp);
  19280. if (typeof e !== "number" && e !== "longjmp") throw e;
  19281. Module["setThrew"](1, 0);
  19282. }
  19283. }
  19284. function invoke_viiffii(index, a1, a2, a3, a4, a5, a6) {
  19285. var sp = stackSave();
  19286. try {
  19287. Module["dynCall_viiffii"](index, a1, a2, a3, a4, a5, a6);
  19288. } catch (e) {
  19289. stackRestore(sp);
  19290. if (typeof e !== "number" && e !== "longjmp") throw e;
  19291. Module["setThrew"](1, 0);
  19292. }
  19293. }
  19294. function invoke_viifi(index, a1, a2, a3, a4) {
  19295. var sp = stackSave();
  19296. try {
  19297. Module["dynCall_viifi"](index, a1, a2, a3, a4);
  19298. } catch (e) {
  19299. stackRestore(sp);
  19300. if (typeof e !== "number" && e !== "longjmp") throw e;
  19301. Module["setThrew"](1, 0);
  19302. }
  19303. }
  19304. function invoke_viifii(index, a1, a2, a3, a4, a5) {
  19305. var sp = stackSave();
  19306. try {
  19307. Module["dynCall_viifii"](index, a1, a2, a3, a4, a5);
  19308. } catch (e) {
  19309. stackRestore(sp);
  19310. if (typeof e !== "number" && e !== "longjmp") throw e;
  19311. Module["setThrew"](1, 0);
  19312. }
  19313. }
  19314. function invoke_viifiii(index, a1, a2, a3, a4, a5, a6) {
  19315. var sp = stackSave();
  19316. try {
  19317. Module["dynCall_viifiii"](index, a1, a2, a3, a4, a5, a6);
  19318. } catch (e) {
  19319. stackRestore(sp);
  19320. if (typeof e !== "number" && e !== "longjmp") throw e;
  19321. Module["setThrew"](1, 0);
  19322. }
  19323. }
  19324. function invoke_viifiiii(index, a1, a2, a3, a4, a5, a6, a7) {
  19325. var sp = stackSave();
  19326. try {
  19327. Module["dynCall_viifiiii"](index, a1, a2, a3, a4, a5, a6, a7);
  19328. } catch (e) {
  19329. stackRestore(sp);
  19330. if (typeof e !== "number" && e !== "longjmp") throw e;
  19331. Module["setThrew"](1, 0);
  19332. }
  19333. }
  19334. function invoke_viii(index, a1, a2, a3) {
  19335. var sp = stackSave();
  19336. try {
  19337. Module["dynCall_viii"](index, a1, a2, a3);
  19338. } catch (e) {
  19339. stackRestore(sp);
  19340. if (typeof e !== "number" && e !== "longjmp") throw e;
  19341. Module["setThrew"](1, 0);
  19342. }
  19343. }
  19344. function invoke_viiidi(index, a1, a2, a3, a4, a5) {
  19345. var sp = stackSave();
  19346. try {
  19347. Module["dynCall_viiidi"](index, a1, a2, a3, a4, a5);
  19348. } catch (e) {
  19349. stackRestore(sp);
  19350. if (typeof e !== "number" && e !== "longjmp") throw e;
  19351. Module["setThrew"](1, 0);
  19352. }
  19353. }
  19354. function invoke_viiif(index, a1, a2, a3, a4) {
  19355. var sp = stackSave();
  19356. try {
  19357. Module["dynCall_viiif"](index, a1, a2, a3, a4);
  19358. } catch (e) {
  19359. stackRestore(sp);
  19360. if (typeof e !== "number" && e !== "longjmp") throw e;
  19361. Module["setThrew"](1, 0);
  19362. }
  19363. }
  19364. function invoke_viiiffffi(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  19365. var sp = stackSave();
  19366. try {
  19367. Module["dynCall_viiiffffi"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  19368. } catch (e) {
  19369. stackRestore(sp);
  19370. if (typeof e !== "number" && e !== "longjmp") throw e;
  19371. Module["setThrew"](1, 0);
  19372. }
  19373. }
  19374. function invoke_viiifffi(index, a1, a2, a3, a4, a5, a6, a7) {
  19375. var sp = stackSave();
  19376. try {
  19377. Module["dynCall_viiifffi"](index, a1, a2, a3, a4, a5, a6, a7);
  19378. } catch (e) {
  19379. stackRestore(sp);
  19380. if (typeof e !== "number" && e !== "longjmp") throw e;
  19381. Module["setThrew"](1, 0);
  19382. }
  19383. }
  19384. function invoke_viiiffi(index, a1, a2, a3, a4, a5, a6) {
  19385. var sp = stackSave();
  19386. try {
  19387. Module["dynCall_viiiffi"](index, a1, a2, a3, a4, a5, a6);
  19388. } catch (e) {
  19389. stackRestore(sp);
  19390. if (typeof e !== "number" && e !== "longjmp") throw e;
  19391. Module["setThrew"](1, 0);
  19392. }
  19393. }
  19394. function invoke_viiiffii(index, a1, a2, a3, a4, a5, a6, a7) {
  19395. var sp = stackSave();
  19396. try {
  19397. Module["dynCall_viiiffii"](index, a1, a2, a3, a4, a5, a6, a7);
  19398. } catch (e) {
  19399. stackRestore(sp);
  19400. if (typeof e !== "number" && e !== "longjmp") throw e;
  19401. Module["setThrew"](1, 0);
  19402. }
  19403. }
  19404. function invoke_viiifi(index, a1, a2, a3, a4, a5) {
  19405. var sp = stackSave();
  19406. try {
  19407. Module["dynCall_viiifi"](index, a1, a2, a3, a4, a5);
  19408. } catch (e) {
  19409. stackRestore(sp);
  19410. if (typeof e !== "number" && e !== "longjmp") throw e;
  19411. Module["setThrew"](1, 0);
  19412. }
  19413. }
  19414. function invoke_viiififfi(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  19415. var sp = stackSave();
  19416. try {
  19417. Module["dynCall_viiififfi"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  19418. } catch (e) {
  19419. stackRestore(sp);
  19420. if (typeof e !== "number" && e !== "longjmp") throw e;
  19421. Module["setThrew"](1, 0);
  19422. }
  19423. }
  19424. function invoke_viiififi(index, a1, a2, a3, a4, a5, a6, a7) {
  19425. var sp = stackSave();
  19426. try {
  19427. Module["dynCall_viiififi"](index, a1, a2, a3, a4, a5, a6, a7);
  19428. } catch (e) {
  19429. stackRestore(sp);
  19430. if (typeof e !== "number" && e !== "longjmp") throw e;
  19431. Module["setThrew"](1, 0);
  19432. }
  19433. }
  19434. function invoke_viiifii(index, a1, a2, a3, a4, a5, a6) {
  19435. var sp = stackSave();
  19436. try {
  19437. Module["dynCall_viiifii"](index, a1, a2, a3, a4, a5, a6);
  19438. } catch (e) {
  19439. stackRestore(sp);
  19440. if (typeof e !== "number" && e !== "longjmp") throw e;
  19441. Module["setThrew"](1, 0);
  19442. }
  19443. }
  19444. function invoke_viiifiii(index, a1, a2, a3, a4, a5, a6, a7) {
  19445. var sp = stackSave();
  19446. try {
  19447. Module["dynCall_viiifiii"](index, a1, a2, a3, a4, a5, a6, a7);
  19448. } catch (e) {
  19449. stackRestore(sp);
  19450. if (typeof e !== "number" && e !== "longjmp") throw e;
  19451. Module["setThrew"](1, 0);
  19452. }
  19453. }
  19454. function invoke_viiifiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  19455. var sp = stackSave();
  19456. try {
  19457. Module["dynCall_viiifiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  19458. } catch (e) {
  19459. stackRestore(sp);
  19460. if (typeof e !== "number" && e !== "longjmp") throw e;
  19461. Module["setThrew"](1, 0);
  19462. }
  19463. }
  19464. function invoke_viiii(index, a1, a2, a3, a4) {
  19465. var sp = stackSave();
  19466. try {
  19467. Module["dynCall_viiii"](index, a1, a2, a3, a4);
  19468. } catch (e) {
  19469. stackRestore(sp);
  19470. if (typeof e !== "number" && e !== "longjmp") throw e;
  19471. Module["setThrew"](1, 0);
  19472. }
  19473. }
  19474. function invoke_viiiiddi(index, a1, a2, a3, a4, a5, a6, a7) {
  19475. var sp = stackSave();
  19476. try {
  19477. Module["dynCall_viiiiddi"](index, a1, a2, a3, a4, a5, a6, a7);
  19478. } catch (e) {
  19479. stackRestore(sp);
  19480. if (typeof e !== "number" && e !== "longjmp") throw e;
  19481. Module["setThrew"](1, 0);
  19482. }
  19483. }
  19484. function invoke_viiiif(index, a1, a2, a3, a4, a5) {
  19485. var sp = stackSave();
  19486. try {
  19487. Module["dynCall_viiiif"](index, a1, a2, a3, a4, a5);
  19488. } catch (e) {
  19489. stackRestore(sp);
  19490. if (typeof e !== "number" && e !== "longjmp") throw e;
  19491. Module["setThrew"](1, 0);
  19492. }
  19493. }
  19494. function invoke_viiiiffi(index, a1, a2, a3, a4, a5, a6, a7) {
  19495. var sp = stackSave();
  19496. try {
  19497. Module["dynCall_viiiiffi"](index, a1, a2, a3, a4, a5, a6, a7);
  19498. } catch (e) {
  19499. stackRestore(sp);
  19500. if (typeof e !== "number" && e !== "longjmp") throw e;
  19501. Module["setThrew"](1, 0);
  19502. }
  19503. }
  19504. function invoke_viiiifi(index, a1, a2, a3, a4, a5, a6) {
  19505. var sp = stackSave();
  19506. try {
  19507. Module["dynCall_viiiifi"](index, a1, a2, a3, a4, a5, a6);
  19508. } catch (e) {
  19509. stackRestore(sp);
  19510. if (typeof e !== "number" && e !== "longjmp") throw e;
  19511. Module["setThrew"](1, 0);
  19512. }
  19513. }
  19514. function invoke_viiiififfi(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  19515. var sp = stackSave();
  19516. try {
  19517. Module["dynCall_viiiififfi"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  19518. } catch (e) {
  19519. stackRestore(sp);
  19520. if (typeof e !== "number" && e !== "longjmp") throw e;
  19521. Module["setThrew"](1, 0);
  19522. }
  19523. }
  19524. function invoke_viiiifii(index, a1, a2, a3, a4, a5, a6, a7) {
  19525. var sp = stackSave();
  19526. try {
  19527. Module["dynCall_viiiifii"](index, a1, a2, a3, a4, a5, a6, a7);
  19528. } catch (e) {
  19529. stackRestore(sp);
  19530. if (typeof e !== "number" && e !== "longjmp") throw e;
  19531. Module["setThrew"](1, 0);
  19532. }
  19533. }
  19534. function invoke_viiiifiifi(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  19535. var sp = stackSave();
  19536. try {
  19537. Module["dynCall_viiiifiifi"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  19538. } catch (e) {
  19539. stackRestore(sp);
  19540. if (typeof e !== "number" && e !== "longjmp") throw e;
  19541. Module["setThrew"](1, 0);
  19542. }
  19543. }
  19544. function invoke_viiiifiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  19545. var sp = stackSave();
  19546. try {
  19547. Module["dynCall_viiiifiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  19548. } catch (e) {
  19549. stackRestore(sp);
  19550. if (typeof e !== "number" && e !== "longjmp") throw e;
  19551. Module["setThrew"](1, 0);
  19552. }
  19553. }
  19554. function invoke_viiiifiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  19555. var sp = stackSave();
  19556. try {
  19557. Module["dynCall_viiiifiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  19558. } catch (e) {
  19559. stackRestore(sp);
  19560. if (typeof e !== "number" && e !== "longjmp") throw e;
  19561. Module["setThrew"](1, 0);
  19562. }
  19563. }
  19564. function invoke_viiiifiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  19565. var sp = stackSave();
  19566. try {
  19567. Module["dynCall_viiiifiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  19568. } catch (e) {
  19569. stackRestore(sp);
  19570. if (typeof e !== "number" && e !== "longjmp") throw e;
  19571. Module["setThrew"](1, 0);
  19572. }
  19573. }
  19574. function invoke_viiiifiiiiif(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
  19575. var sp = stackSave();
  19576. try {
  19577. Module["dynCall_viiiifiiiiif"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
  19578. } catch (e) {
  19579. stackRestore(sp);
  19580. if (typeof e !== "number" && e !== "longjmp") throw e;
  19581. Module["setThrew"](1, 0);
  19582. }
  19583. }
  19584. function invoke_viiiifiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) {
  19585. var sp = stackSave();
  19586. try {
  19587. Module["dynCall_viiiifiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
  19588. } catch (e) {
  19589. stackRestore(sp);
  19590. if (typeof e !== "number" && e !== "longjmp") throw e;
  19591. Module["setThrew"](1, 0);
  19592. }
  19593. }
  19594. function invoke_viiiii(index, a1, a2, a3, a4, a5) {
  19595. var sp = stackSave();
  19596. try {
  19597. Module["dynCall_viiiii"](index, a1, a2, a3, a4, a5);
  19598. } catch (e) {
  19599. stackRestore(sp);
  19600. if (typeof e !== "number" && e !== "longjmp") throw e;
  19601. Module["setThrew"](1, 0);
  19602. }
  19603. }
  19604. function invoke_viiiiif(index, a1, a2, a3, a4, a5, a6) {
  19605. var sp = stackSave();
  19606. try {
  19607. Module["dynCall_viiiiif"](index, a1, a2, a3, a4, a5, a6);
  19608. } catch (e) {
  19609. stackRestore(sp);
  19610. if (typeof e !== "number" && e !== "longjmp") throw e;
  19611. Module["setThrew"](1, 0);
  19612. }
  19613. }
  19614. function invoke_viiiiifffi(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  19615. var sp = stackSave();
  19616. try {
  19617. Module["dynCall_viiiiifffi"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  19618. } catch (e) {
  19619. stackRestore(sp);
  19620. if (typeof e !== "number" && e !== "longjmp") throw e;
  19621. Module["setThrew"](1, 0);
  19622. }
  19623. }
  19624. function invoke_viiiiiffi(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  19625. var sp = stackSave();
  19626. try {
  19627. Module["dynCall_viiiiiffi"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  19628. } catch (e) {
  19629. stackRestore(sp);
  19630. if (typeof e !== "number" && e !== "longjmp") throw e;
  19631. Module["setThrew"](1, 0);
  19632. }
  19633. }
  19634. function invoke_viiiiiffii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  19635. var sp = stackSave();
  19636. try {
  19637. Module["dynCall_viiiiiffii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  19638. } catch (e) {
  19639. stackRestore(sp);
  19640. if (typeof e !== "number" && e !== "longjmp") throw e;
  19641. Module["setThrew"](1, 0);
  19642. }
  19643. }
  19644. function invoke_viiiiifi(index, a1, a2, a3, a4, a5, a6, a7) {
  19645. var sp = stackSave();
  19646. try {
  19647. Module["dynCall_viiiiifi"](index, a1, a2, a3, a4, a5, a6, a7);
  19648. } catch (e) {
  19649. stackRestore(sp);
  19650. if (typeof e !== "number" && e !== "longjmp") throw e;
  19651. Module["setThrew"](1, 0);
  19652. }
  19653. }
  19654. function invoke_viiiiifii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  19655. var sp = stackSave();
  19656. try {
  19657. Module["dynCall_viiiiifii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  19658. } catch (e) {
  19659. stackRestore(sp);
  19660. if (typeof e !== "number" && e !== "longjmp") throw e;
  19661. Module["setThrew"](1, 0);
  19662. }
  19663. }
  19664. function invoke_viiiiii(index, a1, a2, a3, a4, a5, a6) {
  19665. var sp = stackSave();
  19666. try {
  19667. Module["dynCall_viiiiii"](index, a1, a2, a3, a4, a5, a6);
  19668. } catch (e) {
  19669. stackRestore(sp);
  19670. if (typeof e !== "number" && e !== "longjmp") throw e;
  19671. Module["setThrew"](1, 0);
  19672. }
  19673. }
  19674. function invoke_viiiiiif(index, a1, a2, a3, a4, a5, a6, a7) {
  19675. var sp = stackSave();
  19676. try {
  19677. Module["dynCall_viiiiiif"](index, a1, a2, a3, a4, a5, a6, a7);
  19678. } catch (e) {
  19679. stackRestore(sp);
  19680. if (typeof e !== "number" && e !== "longjmp") throw e;
  19681. Module["setThrew"](1, 0);
  19682. }
  19683. }
  19684. function invoke_viiiiiifddfiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) {
  19685. var sp = stackSave();
  19686. try {
  19687. Module["dynCall_viiiiiifddfiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
  19688. } catch (e) {
  19689. stackRestore(sp);
  19690. if (typeof e !== "number" && e !== "longjmp") throw e;
  19691. Module["setThrew"](1, 0);
  19692. }
  19693. }
  19694. function invoke_viiiiiiffffiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) {
  19695. var sp = stackSave();
  19696. try {
  19697. Module["dynCall_viiiiiiffffiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
  19698. } catch (e) {
  19699. stackRestore(sp);
  19700. if (typeof e !== "number" && e !== "longjmp") throw e;
  19701. Module["setThrew"](1, 0);
  19702. }
  19703. }
  19704. function invoke_viiiiiifi(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  19705. var sp = stackSave();
  19706. try {
  19707. Module["dynCall_viiiiiifi"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  19708. } catch (e) {
  19709. stackRestore(sp);
  19710. if (typeof e !== "number" && e !== "longjmp") throw e;
  19711. Module["setThrew"](1, 0);
  19712. }
  19713. }
  19714. function invoke_viiiiiifiifiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) {
  19715. var sp = stackSave();
  19716. try {
  19717. Module["dynCall_viiiiiifiifiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
  19718. } catch (e) {
  19719. stackRestore(sp);
  19720. if (typeof e !== "number" && e !== "longjmp") throw e;
  19721. Module["setThrew"](1, 0);
  19722. }
  19723. }
  19724. function invoke_viiiiiifjjfiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) {
  19725. var sp = stackSave();
  19726. try {
  19727. Module["dynCall_viiiiiifjjfiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15);
  19728. } catch (e) {
  19729. stackRestore(sp);
  19730. if (typeof e !== "number" && e !== "longjmp") throw e;
  19731. Module["setThrew"](1, 0);
  19732. }
  19733. }
  19734. function invoke_viiiiiii(index, a1, a2, a3, a4, a5, a6, a7) {
  19735. var sp = stackSave();
  19736. try {
  19737. Module["dynCall_viiiiiii"](index, a1, a2, a3, a4, a5, a6, a7);
  19738. } catch (e) {
  19739. stackRestore(sp);
  19740. if (typeof e !== "number" && e !== "longjmp") throw e;
  19741. Module["setThrew"](1, 0);
  19742. }
  19743. }
  19744. function invoke_viiiiiiifddfii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) {
  19745. var sp = stackSave();
  19746. try {
  19747. Module["dynCall_viiiiiiifddfii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
  19748. } catch (e) {
  19749. stackRestore(sp);
  19750. if (typeof e !== "number" && e !== "longjmp") throw e;
  19751. Module["setThrew"](1, 0);
  19752. }
  19753. }
  19754. function invoke_viiiiiiiffffii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) {
  19755. var sp = stackSave();
  19756. try {
  19757. Module["dynCall_viiiiiiiffffii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
  19758. } catch (e) {
  19759. stackRestore(sp);
  19760. if (typeof e !== "number" && e !== "longjmp") throw e;
  19761. Module["setThrew"](1, 0);
  19762. }
  19763. }
  19764. function invoke_viiiiiiifiifii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) {
  19765. var sp = stackSave();
  19766. try {
  19767. Module["dynCall_viiiiiiifiifii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
  19768. } catch (e) {
  19769. stackRestore(sp);
  19770. if (typeof e !== "number" && e !== "longjmp") throw e;
  19771. Module["setThrew"](1, 0);
  19772. }
  19773. }
  19774. function invoke_viiiiiiifiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
  19775. var sp = stackSave();
  19776. try {
  19777. Module["dynCall_viiiiiiifiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
  19778. } catch (e) {
  19779. stackRestore(sp);
  19780. if (typeof e !== "number" && e !== "longjmp") throw e;
  19781. Module["setThrew"](1, 0);
  19782. }
  19783. }
  19784. function invoke_viiiiiiifjjfii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) {
  19785. var sp = stackSave();
  19786. try {
  19787. Module["dynCall_viiiiiiifjjfii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15);
  19788. } catch (e) {
  19789. stackRestore(sp);
  19790. if (typeof e !== "number" && e !== "longjmp") throw e;
  19791. Module["setThrew"](1, 0);
  19792. }
  19793. }
  19794. function invoke_viiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  19795. var sp = stackSave();
  19796. try {
  19797. Module["dynCall_viiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  19798. } catch (e) {
  19799. stackRestore(sp);
  19800. if (typeof e !== "number" && e !== "longjmp") throw e;
  19801. Module["setThrew"](1, 0);
  19802. }
  19803. }
  19804. function invoke_viiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  19805. var sp = stackSave();
  19806. try {
  19807. Module["dynCall_viiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  19808. } catch (e) {
  19809. stackRestore(sp);
  19810. if (typeof e !== "number" && e !== "longjmp") throw e;
  19811. Module["setThrew"](1, 0);
  19812. }
  19813. }
  19814. function invoke_viiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  19815. var sp = stackSave();
  19816. try {
  19817. Module["dynCall_viiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  19818. } catch (e) {
  19819. stackRestore(sp);
  19820. if (typeof e !== "number" && e !== "longjmp") throw e;
  19821. Module["setThrew"](1, 0);
  19822. }
  19823. }
  19824. function invoke_viiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
  19825. var sp = stackSave();
  19826. try {
  19827. Module["dynCall_viiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
  19828. } catch (e) {
  19829. stackRestore(sp);
  19830. if (typeof e !== "number" && e !== "longjmp") throw e;
  19831. Module["setThrew"](1, 0);
  19832. }
  19833. }
  19834. function invoke_viiiiiiiiiiifii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) {
  19835. var sp = stackSave();
  19836. try {
  19837. Module["dynCall_viiiiiiiiiiifii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14);
  19838. } catch (e) {
  19839. stackRestore(sp);
  19840. if (typeof e !== "number" && e !== "longjmp") throw e;
  19841. Module["setThrew"](1, 0);
  19842. }
  19843. }
  19844. function invoke_viiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) {
  19845. var sp = stackSave();
  19846. try {
  19847. Module["dynCall_viiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
  19848. } catch (e) {
  19849. stackRestore(sp);
  19850. if (typeof e !== "number" && e !== "longjmp") throw e;
  19851. Module["setThrew"](1, 0);
  19852. }
  19853. }
  19854. function invoke_viiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) {
  19855. var sp = stackSave();
  19856. try {
  19857. Module["dynCall_viiiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
  19858. } catch (e) {
  19859. stackRestore(sp);
  19860. if (typeof e !== "number" && e !== "longjmp") throw e;
  19861. Module["setThrew"](1, 0);
  19862. }
  19863. }
  19864. function invoke_viiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14) {
  19865. var sp = stackSave();
  19866. try {
  19867. Module["dynCall_viiiiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14);
  19868. } catch (e) {
  19869. stackRestore(sp);
  19870. if (typeof e !== "number" && e !== "longjmp") throw e;
  19871. Module["setThrew"](1, 0);
  19872. }
  19873. }
  19874. function invoke_viiiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) {
  19875. var sp = stackSave();
  19876. try {
  19877. Module["dynCall_viiiiiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15);
  19878. } catch (e) {
  19879. stackRestore(sp);
  19880. if (typeof e !== "number" && e !== "longjmp") throw e;
  19881. Module["setThrew"](1, 0);
  19882. }
  19883. }
  19884. function invoke_viiiiiiiiiiiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18) {
  19885. var sp = stackSave();
  19886. try {
  19887. Module["dynCall_viiiiiiiiiiiiiiiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18);
  19888. } catch (e) {
  19889. stackRestore(sp);
  19890. if (typeof e !== "number" && e !== "longjmp") throw e;
  19891. Module["setThrew"](1, 0);
  19892. }
  19893. }
  19894. function invoke_viiiiiiiiiji(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) {
  19895. var sp = stackSave();
  19896. try {
  19897. Module["dynCall_viiiiiiiiiji"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
  19898. } catch (e) {
  19899. stackRestore(sp);
  19900. if (typeof e !== "number" && e !== "longjmp") throw e;
  19901. Module["setThrew"](1, 0);
  19902. }
  19903. }
  19904. function invoke_viiiiiiiji(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  19905. var sp = stackSave();
  19906. try {
  19907. Module["dynCall_viiiiiiiji"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  19908. } catch (e) {
  19909. stackRestore(sp);
  19910. if (typeof e !== "number" && e !== "longjmp") throw e;
  19911. Module["setThrew"](1, 0);
  19912. }
  19913. }
  19914. function invoke_viiiiiiijii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
  19915. var sp = stackSave();
  19916. try {
  19917. Module["dynCall_viiiiiiijii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
  19918. } catch (e) {
  19919. stackRestore(sp);
  19920. if (typeof e !== "number" && e !== "longjmp") throw e;
  19921. Module["setThrew"](1, 0);
  19922. }
  19923. }
  19924. function invoke_viiiiiji(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  19925. var sp = stackSave();
  19926. try {
  19927. Module["dynCall_viiiiiji"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  19928. } catch (e) {
  19929. stackRestore(sp);
  19930. if (typeof e !== "number" && e !== "longjmp") throw e;
  19931. Module["setThrew"](1, 0);
  19932. }
  19933. }
  19934. function invoke_viiiiijii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  19935. var sp = stackSave();
  19936. try {
  19937. Module["dynCall_viiiiijii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  19938. } catch (e) {
  19939. stackRestore(sp);
  19940. if (typeof e !== "number" && e !== "longjmp") throw e;
  19941. Module["setThrew"](1, 0);
  19942. }
  19943. }
  19944. function invoke_viiiij(index, a1, a2, a3, a4, a5, a6) {
  19945. var sp = stackSave();
  19946. try {
  19947. Module["dynCall_viiiij"](index, a1, a2, a3, a4, a5, a6);
  19948. } catch (e) {
  19949. stackRestore(sp);
  19950. if (typeof e !== "number" && e !== "longjmp") throw e;
  19951. Module["setThrew"](1, 0);
  19952. }
  19953. }
  19954. function invoke_viiiiji(index, a1, a2, a3, a4, a5, a6, a7) {
  19955. var sp = stackSave();
  19956. try {
  19957. Module["dynCall_viiiiji"](index, a1, a2, a3, a4, a5, a6, a7);
  19958. } catch (e) {
  19959. stackRestore(sp);
  19960. if (typeof e !== "number" && e !== "longjmp") throw e;
  19961. Module["setThrew"](1, 0);
  19962. }
  19963. }
  19964. function invoke_viiiijii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  19965. var sp = stackSave();
  19966. try {
  19967. Module["dynCall_viiiijii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  19968. } catch (e) {
  19969. stackRestore(sp);
  19970. if (typeof e !== "number" && e !== "longjmp") throw e;
  19971. Module["setThrew"](1, 0);
  19972. }
  19973. }
  19974. function invoke_viiiijiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  19975. var sp = stackSave();
  19976. try {
  19977. Module["dynCall_viiiijiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  19978. } catch (e) {
  19979. stackRestore(sp);
  19980. if (typeof e !== "number" && e !== "longjmp") throw e;
  19981. Module["setThrew"](1, 0);
  19982. }
  19983. }
  19984. function invoke_viiiijjiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
  19985. var sp = stackSave();
  19986. try {
  19987. Module["dynCall_viiiijjiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
  19988. } catch (e) {
  19989. stackRestore(sp);
  19990. if (typeof e !== "number" && e !== "longjmp") throw e;
  19991. Module["setThrew"](1, 0);
  19992. }
  19993. }
  19994. function invoke_viiiji(index, a1, a2, a3, a4, a5, a6) {
  19995. var sp = stackSave();
  19996. try {
  19997. Module["dynCall_viiiji"](index, a1, a2, a3, a4, a5, a6);
  19998. } catch (e) {
  19999. stackRestore(sp);
  20000. if (typeof e !== "number" && e !== "longjmp") throw e;
  20001. Module["setThrew"](1, 0);
  20002. }
  20003. }
  20004. function invoke_viiijji(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  20005. var sp = stackSave();
  20006. try {
  20007. Module["dynCall_viiijji"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  20008. } catch (e) {
  20009. stackRestore(sp);
  20010. if (typeof e !== "number" && e !== "longjmp") throw e;
  20011. Module["setThrew"](1, 0);
  20012. }
  20013. }
  20014. function invoke_viiijjii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  20015. var sp = stackSave();
  20016. try {
  20017. Module["dynCall_viiijjii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  20018. } catch (e) {
  20019. stackRestore(sp);
  20020. if (typeof e !== "number" && e !== "longjmp") throw e;
  20021. Module["setThrew"](1, 0);
  20022. }
  20023. }
  20024. function invoke_viiijjiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  20025. var sp = stackSave();
  20026. try {
  20027. Module["dynCall_viiijjiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  20028. } catch (e) {
  20029. stackRestore(sp);
  20030. if (typeof e !== "number" && e !== "longjmp") throw e;
  20031. Module["setThrew"](1, 0);
  20032. }
  20033. }
  20034. function invoke_viij(index, a1, a2, a3, a4) {
  20035. var sp = stackSave();
  20036. try {
  20037. Module["dynCall_viij"](index, a1, a2, a3, a4);
  20038. } catch (e) {
  20039. stackRestore(sp);
  20040. if (typeof e !== "number" && e !== "longjmp") throw e;
  20041. Module["setThrew"](1, 0);
  20042. }
  20043. }
  20044. function invoke_viiji(index, a1, a2, a3, a4, a5) {
  20045. var sp = stackSave();
  20046. try {
  20047. Module["dynCall_viiji"](index, a1, a2, a3, a4, a5);
  20048. } catch (e) {
  20049. stackRestore(sp);
  20050. if (typeof e !== "number" && e !== "longjmp") throw e;
  20051. Module["setThrew"](1, 0);
  20052. }
  20053. }
  20054. function invoke_viijii(index, a1, a2, a3, a4, a5, a6) {
  20055. var sp = stackSave();
  20056. try {
  20057. Module["dynCall_viijii"](index, a1, a2, a3, a4, a5, a6);
  20058. } catch (e) {
  20059. stackRestore(sp);
  20060. if (typeof e !== "number" && e !== "longjmp") throw e;
  20061. Module["setThrew"](1, 0);
  20062. }
  20063. }
  20064. function invoke_viijiiii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  20065. var sp = stackSave();
  20066. try {
  20067. Module["dynCall_viijiiii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  20068. } catch (e) {
  20069. stackRestore(sp);
  20070. if (typeof e !== "number" && e !== "longjmp") throw e;
  20071. Module["setThrew"](1, 0);
  20072. }
  20073. }
  20074. function invoke_viijiijiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) {
  20075. var sp = stackSave();
  20076. try {
  20077. Module["dynCall_viijiijiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
  20078. } catch (e) {
  20079. stackRestore(sp);
  20080. if (typeof e !== "number" && e !== "longjmp") throw e;
  20081. Module["setThrew"](1, 0);
  20082. }
  20083. }
  20084. function invoke_viijijii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  20085. var sp = stackSave();
  20086. try {
  20087. Module["dynCall_viijijii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  20088. } catch (e) {
  20089. stackRestore(sp);
  20090. if (typeof e !== "number" && e !== "longjmp") throw e;
  20091. Module["setThrew"](1, 0);
  20092. }
  20093. }
  20094. function invoke_viijijiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) {
  20095. var sp = stackSave();
  20096. try {
  20097. Module["dynCall_viijijiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
  20098. } catch (e) {
  20099. stackRestore(sp);
  20100. if (typeof e !== "number" && e !== "longjmp") throw e;
  20101. Module["setThrew"](1, 0);
  20102. }
  20103. }
  20104. function invoke_viijijj(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  20105. var sp = stackSave();
  20106. try {
  20107. Module["dynCall_viijijj"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  20108. } catch (e) {
  20109. stackRestore(sp);
  20110. if (typeof e !== "number" && e !== "longjmp") throw e;
  20111. Module["setThrew"](1, 0);
  20112. }
  20113. }
  20114. function invoke_viijj(index, a1, a2, a3, a4, a5, a6) {
  20115. var sp = stackSave();
  20116. try {
  20117. Module["dynCall_viijj"](index, a1, a2, a3, a4, a5, a6);
  20118. } catch (e) {
  20119. stackRestore(sp);
  20120. if (typeof e !== "number" && e !== "longjmp") throw e;
  20121. Module["setThrew"](1, 0);
  20122. }
  20123. }
  20124. function invoke_viijji(index, a1, a2, a3, a4, a5, a6, a7) {
  20125. var sp = stackSave();
  20126. try {
  20127. Module["dynCall_viijji"](index, a1, a2, a3, a4, a5, a6, a7);
  20128. } catch (e) {
  20129. stackRestore(sp);
  20130. if (typeof e !== "number" && e !== "longjmp") throw e;
  20131. Module["setThrew"](1, 0);
  20132. }
  20133. }
  20134. function invoke_viijjii(index, a1, a2, a3, a4, a5, a6, a7, a8) {
  20135. var sp = stackSave();
  20136. try {
  20137. Module["dynCall_viijjii"](index, a1, a2, a3, a4, a5, a6, a7, a8);
  20138. } catch (e) {
  20139. stackRestore(sp);
  20140. if (typeof e !== "number" && e !== "longjmp") throw e;
  20141. Module["setThrew"](1, 0);
  20142. }
  20143. }
  20144. function invoke_viijjiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  20145. var sp = stackSave();
  20146. try {
  20147. Module["dynCall_viijjiii"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  20148. } catch (e) {
  20149. stackRestore(sp);
  20150. if (typeof e !== "number" && e !== "longjmp") throw e;
  20151. Module["setThrew"](1, 0);
  20152. }
  20153. }
  20154. function invoke_viijjji(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  20155. var sp = stackSave();
  20156. try {
  20157. Module["dynCall_viijjji"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  20158. } catch (e) {
  20159. stackRestore(sp);
  20160. if (typeof e !== "number" && e !== "longjmp") throw e;
  20161. Module["setThrew"](1, 0);
  20162. }
  20163. }
  20164. function invoke_vij(index, a1, a2, a3) {
  20165. var sp = stackSave();
  20166. try {
  20167. Module["dynCall_vij"](index, a1, a2, a3);
  20168. } catch (e) {
  20169. stackRestore(sp);
  20170. if (typeof e !== "number" && e !== "longjmp") throw e;
  20171. Module["setThrew"](1, 0);
  20172. }
  20173. }
  20174. function invoke_viji(index, a1, a2, a3, a4) {
  20175. var sp = stackSave();
  20176. try {
  20177. Module["dynCall_viji"](index, a1, a2, a3, a4);
  20178. } catch (e) {
  20179. stackRestore(sp);
  20180. if (typeof e !== "number" && e !== "longjmp") throw e;
  20181. Module["setThrew"](1, 0);
  20182. }
  20183. }
  20184. function invoke_vijii(index, a1, a2, a3, a4, a5) {
  20185. var sp = stackSave();
  20186. try {
  20187. Module["dynCall_vijii"](index, a1, a2, a3, a4, a5);
  20188. } catch (e) {
  20189. stackRestore(sp);
  20190. if (typeof e !== "number" && e !== "longjmp") throw e;
  20191. Module["setThrew"](1, 0);
  20192. }
  20193. }
  20194. function invoke_vijiii(index, a1, a2, a3, a4, a5, a6) {
  20195. var sp = stackSave();
  20196. try {
  20197. Module["dynCall_vijiii"](index, a1, a2, a3, a4, a5, a6);
  20198. } catch (e) {
  20199. stackRestore(sp);
  20200. if (typeof e !== "number" && e !== "longjmp") throw e;
  20201. Module["setThrew"](1, 0);
  20202. }
  20203. }
  20204. function invoke_vijiji(index, a1, a2, a3, a4, a5, a6, a7) {
  20205. var sp = stackSave();
  20206. try {
  20207. Module["dynCall_vijiji"](index, a1, a2, a3, a4, a5, a6, a7);
  20208. } catch (e) {
  20209. stackRestore(sp);
  20210. if (typeof e !== "number" && e !== "longjmp") throw e;
  20211. Module["setThrew"](1, 0);
  20212. }
  20213. }
  20214. function invoke_vijijji(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
  20215. var sp = stackSave();
  20216. try {
  20217. Module["dynCall_vijijji"](index, a1, a2, a3, a4, a5, a6, a7, a8, a9);
  20218. } catch (e) {
  20219. stackRestore(sp);
  20220. if (typeof e !== "number" && e !== "longjmp") throw e;
  20221. Module["setThrew"](1, 0);
  20222. }
  20223. }
  20224. function invoke_vijji(index, a1, a2, a3, a4, a5, a6) {
  20225. var sp = stackSave();
  20226. try {
  20227. Module["dynCall_vijji"](index, a1, a2, a3, a4, a5, a6);
  20228. } catch (e) {
  20229. stackRestore(sp);
  20230. if (typeof e !== "number" && e !== "longjmp") throw e;
  20231. Module["setThrew"](1, 0);
  20232. }
  20233. }
  20234. function invoke_vijjii(index, a1, a2, a3, a4, a5, a6, a7) {
  20235. var sp = stackSave();
  20236. try {
  20237. Module["dynCall_vijjii"](index, a1, a2, a3, a4, a5, a6, a7);
  20238. } catch (e) {
  20239. stackRestore(sp);
  20240. if (typeof e !== "number" && e !== "longjmp") throw e;
  20241. Module["setThrew"](1, 0);
  20242. }
  20243. }
  20244. function invoke_vji(index, a1, a2, a3) {
  20245. var sp = stackSave();
  20246. try {
  20247. Module["dynCall_vji"](index, a1, a2, a3);
  20248. } catch (e) {
  20249. stackRestore(sp);
  20250. if (typeof e !== "number" && e !== "longjmp") throw e;
  20251. Module["setThrew"](1, 0);
  20252. }
  20253. }
  20254. function invoke_vjii(index, a1, a2, a3, a4) {
  20255. var sp = stackSave();
  20256. try {
  20257. Module["dynCall_vjii"](index, a1, a2, a3, a4);
  20258. } catch (e) {
  20259. stackRestore(sp);
  20260. if (typeof e !== "number" && e !== "longjmp") throw e;
  20261. Module["setThrew"](1, 0);
  20262. }
  20263. }
  20264. function invoke_vjiiii(index, a1, a2, a3, a4, a5, a6) {
  20265. var sp = stackSave();
  20266. try {
  20267. Module["dynCall_vjiiii"](index, a1, a2, a3, a4, a5, a6);
  20268. } catch (e) {
  20269. stackRestore(sp);
  20270. if (typeof e !== "number" && e !== "longjmp") throw e;
  20271. Module["setThrew"](1, 0);
  20272. }
  20273. }
  20274. function invoke_vjji(index, a1, a2, a3, a4, a5) {
  20275. var sp = stackSave();
  20276. try {
  20277. Module["dynCall_vjji"](index, a1, a2, a3, a4, a5);
  20278. } catch (e) {
  20279. stackRestore(sp);
  20280. if (typeof e !== "number" && e !== "longjmp") throw e;
  20281. Module["setThrew"](1, 0);
  20282. }
  20283. }
  20284. Module.asmGlobalArg = {};
  20285. Module.asmLibraryArg = {
  20286. "abort": abort,
  20287. "assert": assert,
  20288. "enlargeMemory": enlargeMemory,
  20289. "getTotalMemory": getTotalMemory,
  20290. "abortOnCannotGrowMemory": abortOnCannotGrowMemory,
  20291. "abortStackOverflow": abortStackOverflow,
  20292. "nullFunc_dd": nullFunc_dd,
  20293. "nullFunc_ddd": nullFunc_ddd,
  20294. "nullFunc_dddi": nullFunc_dddi,
  20295. "nullFunc_ddi": nullFunc_ddi,
  20296. "nullFunc_ddidi": nullFunc_ddidi,
  20297. "nullFunc_dfi": nullFunc_dfi,
  20298. "nullFunc_di": nullFunc_di,
  20299. "nullFunc_diddi": nullFunc_diddi,
  20300. "nullFunc_didi": nullFunc_didi,
  20301. "nullFunc_dii": nullFunc_dii,
  20302. "nullFunc_diidi": nullFunc_diidi,
  20303. "nullFunc_diii": nullFunc_diii,
  20304. "nullFunc_diiid": nullFunc_diiid,
  20305. "nullFunc_diiidi": nullFunc_diiidi,
  20306. "nullFunc_diiii": nullFunc_diiii,
  20307. "nullFunc_dij": nullFunc_dij,
  20308. "nullFunc_dji": nullFunc_dji,
  20309. "nullFunc_f": nullFunc_f,
  20310. "nullFunc_fdi": nullFunc_fdi,
  20311. "nullFunc_ff": nullFunc_ff,
  20312. "nullFunc_fff": nullFunc_fff,
  20313. "nullFunc_fffff": nullFunc_fffff,
  20314. "nullFunc_ffffffi": nullFunc_ffffffi,
  20315. "nullFunc_fffffi": nullFunc_fffffi,
  20316. "nullFunc_ffffi": nullFunc_ffffi,
  20317. "nullFunc_ffffii": nullFunc_ffffii,
  20318. "nullFunc_fffi": nullFunc_fffi,
  20319. "nullFunc_fffifffi": nullFunc_fffifffi,
  20320. "nullFunc_ffi": nullFunc_ffi,
  20321. "nullFunc_fi": nullFunc_fi,
  20322. "nullFunc_fidi": nullFunc_fidi,
  20323. "nullFunc_fif": nullFunc_fif,
  20324. "nullFunc_fiff": nullFunc_fiff,
  20325. "nullFunc_fiffffi": nullFunc_fiffffi,
  20326. "nullFunc_fifffi": nullFunc_fifffi,
  20327. "nullFunc_fiffi": nullFunc_fiffi,
  20328. "nullFunc_fifi": nullFunc_fifi,
  20329. "nullFunc_fifii": nullFunc_fifii,
  20330. "nullFunc_fifiii": nullFunc_fifiii,
  20331. "nullFunc_fifiiiii": nullFunc_fifiiiii,
  20332. "nullFunc_fii": nullFunc_fii,
  20333. "nullFunc_fiifdi": nullFunc_fiifdi,
  20334. "nullFunc_fiiffffi": nullFunc_fiiffffi,
  20335. "nullFunc_fiiffi": nullFunc_fiiffi,
  20336. "nullFunc_fiifi": nullFunc_fiifi,
  20337. "nullFunc_fiifii": nullFunc_fiifii,
  20338. "nullFunc_fiifji": nullFunc_fiifji,
  20339. "nullFunc_fiii": nullFunc_fiii,
  20340. "nullFunc_fiiif": nullFunc_fiiif,
  20341. "nullFunc_fiiifii": nullFunc_fiiifii,
  20342. "nullFunc_fiiii": nullFunc_fiiii,
  20343. "nullFunc_fiiiif": nullFunc_fiiiif,
  20344. "nullFunc_fiiiiii": nullFunc_fiiiiii,
  20345. "nullFunc_fiiiiiifiifif": nullFunc_fiiiiiifiifif,
  20346. "nullFunc_fiiiiiifiiiif": nullFunc_fiiiiiifiiiif,
  20347. "nullFunc_fji": nullFunc_fji,
  20348. "nullFunc_i": nullFunc_i,
  20349. "nullFunc_idddi": nullFunc_idddi,
  20350. "nullFunc_iddi": nullFunc_iddi,
  20351. "nullFunc_iddii": nullFunc_iddii,
  20352. "nullFunc_idi": nullFunc_idi,
  20353. "nullFunc_idii": nullFunc_idii,
  20354. "nullFunc_idiii": nullFunc_idiii,
  20355. "nullFunc_idiiii": nullFunc_idiiii,
  20356. "nullFunc_idiiiii": nullFunc_idiiiii,
  20357. "nullFunc_iffffi": nullFunc_iffffi,
  20358. "nullFunc_ifffi": nullFunc_ifffi,
  20359. "nullFunc_iffi": nullFunc_iffi,
  20360. "nullFunc_ifi": nullFunc_ifi,
  20361. "nullFunc_ifiii": nullFunc_ifiii,
  20362. "nullFunc_ifiiii": nullFunc_ifiiii,
  20363. "nullFunc_ii": nullFunc_ii,
  20364. "nullFunc_iidi": nullFunc_iidi,
  20365. "nullFunc_iidii": nullFunc_iidii,
  20366. "nullFunc_iidiii": nullFunc_iidiii,
  20367. "nullFunc_iif": nullFunc_iif,
  20368. "nullFunc_iifff": nullFunc_iifff,
  20369. "nullFunc_iiffffiii": nullFunc_iiffffiii,
  20370. "nullFunc_iifffi": nullFunc_iifffi,
  20371. "nullFunc_iiffi": nullFunc_iiffi,
  20372. "nullFunc_iiffifiii": nullFunc_iiffifiii,
  20373. "nullFunc_iiffii": nullFunc_iiffii,
  20374. "nullFunc_iiffiii": nullFunc_iiffiii,
  20375. "nullFunc_iiffiiiii": nullFunc_iiffiiiii,
  20376. "nullFunc_iifi": nullFunc_iifi,
  20377. "nullFunc_iififi": nullFunc_iififi,
  20378. "nullFunc_iifii": nullFunc_iifii,
  20379. "nullFunc_iifiifiii": nullFunc_iifiifiii,
  20380. "nullFunc_iifiii": nullFunc_iifiii,
  20381. "nullFunc_iifiiii": nullFunc_iifiiii,
  20382. "nullFunc_iifiiiii": nullFunc_iifiiiii,
  20383. "nullFunc_iifiiiiii": nullFunc_iifiiiiii,
  20384. "nullFunc_iii": nullFunc_iii,
  20385. "nullFunc_iiiddi": nullFunc_iiiddi,
  20386. "nullFunc_iiidi": nullFunc_iiidi,
  20387. "nullFunc_iiidii": nullFunc_iiidii,
  20388. "nullFunc_iiidiii": nullFunc_iiidiii,
  20389. "nullFunc_iiif": nullFunc_iiif,
  20390. "nullFunc_iiiffi": nullFunc_iiiffi,
  20391. "nullFunc_iiiffifiii": nullFunc_iiiffifiii,
  20392. "nullFunc_iiiffii": nullFunc_iiiffii,
  20393. "nullFunc_iiifi": nullFunc_iiifi,
  20394. "nullFunc_iiififii": nullFunc_iiififii,
  20395. "nullFunc_iiifii": nullFunc_iiifii,
  20396. "nullFunc_iiifiifii": nullFunc_iiifiifii,
  20397. "nullFunc_iiifiifiii": nullFunc_iiifiifiii,
  20398. "nullFunc_iiifiifiiii": nullFunc_iiifiifiiii,
  20399. "nullFunc_iiifiii": nullFunc_iiifiii,
  20400. "nullFunc_iiifiiii": nullFunc_iiifiiii,
  20401. "nullFunc_iiifiiiii": nullFunc_iiifiiiii,
  20402. "nullFunc_iiii": nullFunc_iiii,
  20403. "nullFunc_iiiif": nullFunc_iiiif,
  20404. "nullFunc_iiiifffffi": nullFunc_iiiifffffi,
  20405. "nullFunc_iiiifffffii": nullFunc_iiiifffffii,
  20406. "nullFunc_iiiiffii": nullFunc_iiiiffii,
  20407. "nullFunc_iiiifi": nullFunc_iiiifi,
  20408. "nullFunc_iiiififi": nullFunc_iiiififi,
  20409. "nullFunc_iiiifii": nullFunc_iiiifii,
  20410. "nullFunc_iiiifiii": nullFunc_iiiifiii,
  20411. "nullFunc_iiiifiiii": nullFunc_iiiifiiii,
  20412. "nullFunc_iiiifiiiii": nullFunc_iiiifiiiii,
  20413. "nullFunc_iiiii": nullFunc_iiiii,
  20414. "nullFunc_iiiiidii": nullFunc_iiiiidii,
  20415. "nullFunc_iiiiiffi": nullFunc_iiiiiffi,
  20416. "nullFunc_iiiiifi": nullFunc_iiiiifi,
  20417. "nullFunc_iiiiifii": nullFunc_iiiiifii,
  20418. "nullFunc_iiiiifiii": nullFunc_iiiiifiii,
  20419. "nullFunc_iiiiifiiiiif": nullFunc_iiiiifiiiiif,
  20420. "nullFunc_iiiiii": nullFunc_iiiiii,
  20421. "nullFunc_iiiiiifffiiifiii": nullFunc_iiiiiifffiiifiii,
  20422. "nullFunc_iiiiiiffiiiiiiiiiffffiii": nullFunc_iiiiiiffiiiiiiiiiffffiii,
  20423. "nullFunc_iiiiiiffiiiiiiiiiffffiiii": nullFunc_iiiiiiffiiiiiiiiiffffiiii,
  20424. "nullFunc_iiiiiiffiiiiiiiiiiiiiii": nullFunc_iiiiiiffiiiiiiiiiiiiiii,
  20425. "nullFunc_iiiiiifiif": nullFunc_iiiiiifiif,
  20426. "nullFunc_iiiiiifiii": nullFunc_iiiiiifiii,
  20427. "nullFunc_iiiiiii": nullFunc_iiiiiii,
  20428. "nullFunc_iiiiiiifiif": nullFunc_iiiiiiifiif,
  20429. "nullFunc_iiiiiiii": nullFunc_iiiiiiii,
  20430. "nullFunc_iiiiiiiii": nullFunc_iiiiiiiii,
  20431. "nullFunc_iiiiiiiiii": nullFunc_iiiiiiiiii,
  20432. "nullFunc_iiiiiiiiiii": nullFunc_iiiiiiiiiii,
  20433. "nullFunc_iiiiiiiiiiii": nullFunc_iiiiiiiiiiii,
  20434. "nullFunc_iiiiiiiiiiiii": nullFunc_iiiiiiiiiiiii,
  20435. "nullFunc_iiiiiiiiiiiiii": nullFunc_iiiiiiiiiiiiii,
  20436. "nullFunc_iiiiij": nullFunc_iiiiij,
  20437. "nullFunc_iiiiiji": nullFunc_iiiiiji,
  20438. "nullFunc_iiiiijjiiiii": nullFunc_iiiiijjiiiii,
  20439. "nullFunc_iiiij": nullFunc_iiiij,
  20440. "nullFunc_iiiiji": nullFunc_iiiiji,
  20441. "nullFunc_iiiijii": nullFunc_iiiijii,
  20442. "nullFunc_iiiijijii": nullFunc_iiiijijii,
  20443. "nullFunc_iiiijjii": nullFunc_iiiijjii,
  20444. "nullFunc_iiiijjiiii": nullFunc_iiiijjiiii,
  20445. "nullFunc_iiij": nullFunc_iiij,
  20446. "nullFunc_iiiji": nullFunc_iiiji,
  20447. "nullFunc_iiijii": nullFunc_iiijii,
  20448. "nullFunc_iiijiii": nullFunc_iiijiii,
  20449. "nullFunc_iiijji": nullFunc_iiijji,
  20450. "nullFunc_iiijjii": nullFunc_iiijjii,
  20451. "nullFunc_iij": nullFunc_iij,
  20452. "nullFunc_iiji": nullFunc_iiji,
  20453. "nullFunc_iijii": nullFunc_iijii,
  20454. "nullFunc_iijiii": nullFunc_iijiii,
  20455. "nullFunc_iijji": nullFunc_iijji,
  20456. "nullFunc_iijjii": nullFunc_iijjii,
  20457. "nullFunc_iijjiii": nullFunc_iijjiii,
  20458. "nullFunc_iijjji": nullFunc_iijjji,
  20459. "nullFunc_ij": nullFunc_ij,
  20460. "nullFunc_iji": nullFunc_iji,
  20461. "nullFunc_ijiii": nullFunc_ijiii,
  20462. "nullFunc_ijiiii": nullFunc_ijiiii,
  20463. "nullFunc_ijiiiii": nullFunc_ijiiiii,
  20464. "nullFunc_ijiiiiii": nullFunc_ijiiiiii,
  20465. "nullFunc_ijj": nullFunc_ijj,
  20466. "nullFunc_ijji": nullFunc_ijji,
  20467. "nullFunc_j": nullFunc_j,
  20468. "nullFunc_jdi": nullFunc_jdi,
  20469. "nullFunc_jdii": nullFunc_jdii,
  20470. "nullFunc_jfi": nullFunc_jfi,
  20471. "nullFunc_ji": nullFunc_ji,
  20472. "nullFunc_jid": nullFunc_jid,
  20473. "nullFunc_jidi": nullFunc_jidi,
  20474. "nullFunc_jidii": nullFunc_jidii,
  20475. "nullFunc_jifi": nullFunc_jifi,
  20476. "nullFunc_jii": nullFunc_jii,
  20477. "nullFunc_jiii": nullFunc_jiii,
  20478. "nullFunc_jiiii": nullFunc_jiiii,
  20479. "nullFunc_jiiiii": nullFunc_jiiiii,
  20480. "nullFunc_jiiiiii": nullFunc_jiiiiii,
  20481. "nullFunc_jiiiiiiiiii": nullFunc_jiiiiiiiiii,
  20482. "nullFunc_jiiij": nullFunc_jiiij,
  20483. "nullFunc_jiiiji": nullFunc_jiiiji,
  20484. "nullFunc_jiiji": nullFunc_jiiji,
  20485. "nullFunc_jiji": nullFunc_jiji,
  20486. "nullFunc_jijii": nullFunc_jijii,
  20487. "nullFunc_jijiii": nullFunc_jijiii,
  20488. "nullFunc_jijj": nullFunc_jijj,
  20489. "nullFunc_jijji": nullFunc_jijji,
  20490. "nullFunc_jj": nullFunc_jj,
  20491. "nullFunc_jji": nullFunc_jji,
  20492. "nullFunc_jjii": nullFunc_jjii,
  20493. "nullFunc_jjji": nullFunc_jjji,
  20494. "nullFunc_jjjji": nullFunc_jjjji,
  20495. "nullFunc_v": nullFunc_v,
  20496. "nullFunc_vd": nullFunc_vd,
  20497. "nullFunc_vdi": nullFunc_vdi,
  20498. "nullFunc_vdii": nullFunc_vdii,
  20499. "nullFunc_vf": nullFunc_vf,
  20500. "nullFunc_vff": nullFunc_vff,
  20501. "nullFunc_vfff": nullFunc_vfff,
  20502. "nullFunc_vffff": nullFunc_vffff,
  20503. "nullFunc_vffffffi": nullFunc_vffffffi,
  20504. "nullFunc_vffffffii": nullFunc_vffffffii,
  20505. "nullFunc_vffffi": nullFunc_vffffi,
  20506. "nullFunc_vffffii": nullFunc_vffffii,
  20507. "nullFunc_vffffiiii": nullFunc_vffffiiii,
  20508. "nullFunc_vfffi": nullFunc_vfffi,
  20509. "nullFunc_vffi": nullFunc_vffi,
  20510. "nullFunc_vfi": nullFunc_vfi,
  20511. "nullFunc_vfii": nullFunc_vfii,
  20512. "nullFunc_vfiii": nullFunc_vfiii,
  20513. "nullFunc_vfiiiii": nullFunc_vfiiiii,
  20514. "nullFunc_vi": nullFunc_vi,
  20515. "nullFunc_vid": nullFunc_vid,
  20516. "nullFunc_vidd": nullFunc_vidd,
  20517. "nullFunc_vidddi": nullFunc_vidddi,
  20518. "nullFunc_viddi": nullFunc_viddi,
  20519. "nullFunc_viddiiii": nullFunc_viddiiii,
  20520. "nullFunc_vidi": nullFunc_vidi,
  20521. "nullFunc_vidii": nullFunc_vidii,
  20522. "nullFunc_vidiii": nullFunc_vidiii,
  20523. "nullFunc_vif": nullFunc_vif,
  20524. "nullFunc_viff": nullFunc_viff,
  20525. "nullFunc_vifff": nullFunc_vifff,
  20526. "nullFunc_viffff": nullFunc_viffff,
  20527. "nullFunc_viffffffi": nullFunc_viffffffi,
  20528. "nullFunc_vifffffi": nullFunc_vifffffi,
  20529. "nullFunc_viffffi": nullFunc_viffffi,
  20530. "nullFunc_viffffii": nullFunc_viffffii,
  20531. "nullFunc_viffffiifffiiiiif": nullFunc_viffffiifffiiiiif,
  20532. "nullFunc_vifffi": nullFunc_vifffi,
  20533. "nullFunc_vifffii": nullFunc_vifffii,
  20534. "nullFunc_viffi": nullFunc_viffi,
  20535. "nullFunc_viffifffi": nullFunc_viffifffi,
  20536. "nullFunc_viffii": nullFunc_viffii,
  20537. "nullFunc_viffiifffffiii": nullFunc_viffiifffffiii,
  20538. "nullFunc_viffiifffiii": nullFunc_viffiifffiii,
  20539. "nullFunc_viffiii": nullFunc_viffiii,
  20540. "nullFunc_viffiiiif": nullFunc_viffiiiif,
  20541. "nullFunc_vifi": nullFunc_vifi,
  20542. "nullFunc_vififi": nullFunc_vififi,
  20543. "nullFunc_vifii": nullFunc_vifii,
  20544. "nullFunc_vifiii": nullFunc_vifiii,
  20545. "nullFunc_vifiiii": nullFunc_vifiiii,
  20546. "nullFunc_vifiiiii": nullFunc_vifiiiii,
  20547. "nullFunc_vii": nullFunc_vii,
  20548. "nullFunc_viid": nullFunc_viid,
  20549. "nullFunc_viidd": nullFunc_viidd,
  20550. "nullFunc_viidi": nullFunc_viidi,
  20551. "nullFunc_viidii": nullFunc_viidii,
  20552. "nullFunc_viif": nullFunc_viif,
  20553. "nullFunc_viiff": nullFunc_viiff,
  20554. "nullFunc_viifff": nullFunc_viifff,
  20555. "nullFunc_viifffi": nullFunc_viifffi,
  20556. "nullFunc_viiffi": nullFunc_viiffi,
  20557. "nullFunc_viiffii": nullFunc_viiffii,
  20558. "nullFunc_viifi": nullFunc_viifi,
  20559. "nullFunc_viifii": nullFunc_viifii,
  20560. "nullFunc_viifiii": nullFunc_viifiii,
  20561. "nullFunc_viifiiii": nullFunc_viifiiii,
  20562. "nullFunc_viii": nullFunc_viii,
  20563. "nullFunc_viiidi": nullFunc_viiidi,
  20564. "nullFunc_viiif": nullFunc_viiif,
  20565. "nullFunc_viiiffffi": nullFunc_viiiffffi,
  20566. "nullFunc_viiifffi": nullFunc_viiifffi,
  20567. "nullFunc_viiiffi": nullFunc_viiiffi,
  20568. "nullFunc_viiiffii": nullFunc_viiiffii,
  20569. "nullFunc_viiifi": nullFunc_viiifi,
  20570. "nullFunc_viiififfi": nullFunc_viiififfi,
  20571. "nullFunc_viiififi": nullFunc_viiififi,
  20572. "nullFunc_viiifii": nullFunc_viiifii,
  20573. "nullFunc_viiifiii": nullFunc_viiifiii,
  20574. "nullFunc_viiifiiiii": nullFunc_viiifiiiii,
  20575. "nullFunc_viiii": nullFunc_viiii,
  20576. "nullFunc_viiiiddi": nullFunc_viiiiddi,
  20577. "nullFunc_viiiif": nullFunc_viiiif,
  20578. "nullFunc_viiiiffi": nullFunc_viiiiffi,
  20579. "nullFunc_viiiifi": nullFunc_viiiifi,
  20580. "nullFunc_viiiififfi": nullFunc_viiiififfi,
  20581. "nullFunc_viiiifii": nullFunc_viiiifii,
  20582. "nullFunc_viiiifiifi": nullFunc_viiiifiifi,
  20583. "nullFunc_viiiifiii": nullFunc_viiiifiii,
  20584. "nullFunc_viiiifiiii": nullFunc_viiiifiiii,
  20585. "nullFunc_viiiifiiiii": nullFunc_viiiifiiiii,
  20586. "nullFunc_viiiifiiiiif": nullFunc_viiiifiiiiif,
  20587. "nullFunc_viiiifiiiiiiii": nullFunc_viiiifiiiiiiii,
  20588. "nullFunc_viiiii": nullFunc_viiiii,
  20589. "nullFunc_viiiiif": nullFunc_viiiiif,
  20590. "nullFunc_viiiiifffi": nullFunc_viiiiifffi,
  20591. "nullFunc_viiiiiffi": nullFunc_viiiiiffi,
  20592. "nullFunc_viiiiiffii": nullFunc_viiiiiffii,
  20593. "nullFunc_viiiiifi": nullFunc_viiiiifi,
  20594. "nullFunc_viiiiifii": nullFunc_viiiiifii,
  20595. "nullFunc_viiiiii": nullFunc_viiiiii,
  20596. "nullFunc_viiiiiif": nullFunc_viiiiiif,
  20597. "nullFunc_viiiiiifddfiii": nullFunc_viiiiiifddfiii,
  20598. "nullFunc_viiiiiiffffiii": nullFunc_viiiiiiffffiii,
  20599. "nullFunc_viiiiiifi": nullFunc_viiiiiifi,
  20600. "nullFunc_viiiiiifiifiii": nullFunc_viiiiiifiifiii,
  20601. "nullFunc_viiiiiifjjfiii": nullFunc_viiiiiifjjfiii,
  20602. "nullFunc_viiiiiii": nullFunc_viiiiiii,
  20603. "nullFunc_viiiiiiifddfii": nullFunc_viiiiiiifddfii,
  20604. "nullFunc_viiiiiiiffffii": nullFunc_viiiiiiiffffii,
  20605. "nullFunc_viiiiiiifiifii": nullFunc_viiiiiiifiifii,
  20606. "nullFunc_viiiiiiifiii": nullFunc_viiiiiiifiii,
  20607. "nullFunc_viiiiiiifjjfii": nullFunc_viiiiiiifjjfii,
  20608. "nullFunc_viiiiiiii": nullFunc_viiiiiiii,
  20609. "nullFunc_viiiiiiiii": nullFunc_viiiiiiiii,
  20610. "nullFunc_viiiiiiiiii": nullFunc_viiiiiiiiii,
  20611. "nullFunc_viiiiiiiiiii": nullFunc_viiiiiiiiiii,
  20612. "nullFunc_viiiiiiiiiiifii": nullFunc_viiiiiiiiiiifii,
  20613. "nullFunc_viiiiiiiiiiii": nullFunc_viiiiiiiiiiii,
  20614. "nullFunc_viiiiiiiiiiiii": nullFunc_viiiiiiiiiiiii,
  20615. "nullFunc_viiiiiiiiiiiiii": nullFunc_viiiiiiiiiiiiii,
  20616. "nullFunc_viiiiiiiiiiiiiii": nullFunc_viiiiiiiiiiiiiii,
  20617. "nullFunc_viiiiiiiiiiiiiiiiii": nullFunc_viiiiiiiiiiiiiiiiii,
  20618. "nullFunc_viiiiiiiiiji": nullFunc_viiiiiiiiiji,
  20619. "nullFunc_viiiiiiiji": nullFunc_viiiiiiiji,
  20620. "nullFunc_viiiiiiijii": nullFunc_viiiiiiijii,
  20621. "nullFunc_viiiiiji": nullFunc_viiiiiji,
  20622. "nullFunc_viiiiijii": nullFunc_viiiiijii,
  20623. "nullFunc_viiiij": nullFunc_viiiij,
  20624. "nullFunc_viiiiji": nullFunc_viiiiji,
  20625. "nullFunc_viiiijii": nullFunc_viiiijii,
  20626. "nullFunc_viiiijiiii": nullFunc_viiiijiiii,
  20627. "nullFunc_viiiijjiii": nullFunc_viiiijjiii,
  20628. "nullFunc_viiiji": nullFunc_viiiji,
  20629. "nullFunc_viiijji": nullFunc_viiijji,
  20630. "nullFunc_viiijjii": nullFunc_viiijjii,
  20631. "nullFunc_viiijjiii": nullFunc_viiijjiii,
  20632. "nullFunc_viij": nullFunc_viij,
  20633. "nullFunc_viiji": nullFunc_viiji,
  20634. "nullFunc_viijii": nullFunc_viijii,
  20635. "nullFunc_viijiiii": nullFunc_viijiiii,
  20636. "nullFunc_viijiijiii": nullFunc_viijiijiii,
  20637. "nullFunc_viijijii": nullFunc_viijijii,
  20638. "nullFunc_viijijiii": nullFunc_viijijiii,
  20639. "nullFunc_viijijj": nullFunc_viijijj,
  20640. "nullFunc_viijj": nullFunc_viijj,
  20641. "nullFunc_viijji": nullFunc_viijji,
  20642. "nullFunc_viijjii": nullFunc_viijjii,
  20643. "nullFunc_viijjiii": nullFunc_viijjiii,
  20644. "nullFunc_viijjji": nullFunc_viijjji,
  20645. "nullFunc_vij": nullFunc_vij,
  20646. "nullFunc_viji": nullFunc_viji,
  20647. "nullFunc_vijii": nullFunc_vijii,
  20648. "nullFunc_vijiii": nullFunc_vijiii,
  20649. "nullFunc_vijiji": nullFunc_vijiji,
  20650. "nullFunc_vijijji": nullFunc_vijijji,
  20651. "nullFunc_vijji": nullFunc_vijji,
  20652. "nullFunc_vijjii": nullFunc_vijjii,
  20653. "nullFunc_vji": nullFunc_vji,
  20654. "nullFunc_vjii": nullFunc_vjii,
  20655. "nullFunc_vjiiii": nullFunc_vjiiii,
  20656. "nullFunc_vjji": nullFunc_vjji,
  20657. "invoke_dd": invoke_dd,
  20658. "invoke_ddd": invoke_ddd,
  20659. "invoke_dddi": invoke_dddi,
  20660. "invoke_ddi": invoke_ddi,
  20661. "invoke_ddidi": invoke_ddidi,
  20662. "invoke_dfi": invoke_dfi,
  20663. "invoke_di": invoke_di,
  20664. "invoke_diddi": invoke_diddi,
  20665. "invoke_didi": invoke_didi,
  20666. "invoke_dii": invoke_dii,
  20667. "invoke_diidi": invoke_diidi,
  20668. "invoke_diii": invoke_diii,
  20669. "invoke_diiid": invoke_diiid,
  20670. "invoke_diiidi": invoke_diiidi,
  20671. "invoke_diiii": invoke_diiii,
  20672. "invoke_dij": invoke_dij,
  20673. "invoke_dji": invoke_dji,
  20674. "invoke_f": invoke_f,
  20675. "invoke_fdi": invoke_fdi,
  20676. "invoke_ff": invoke_ff,
  20677. "invoke_fff": invoke_fff,
  20678. "invoke_fffff": invoke_fffff,
  20679. "invoke_ffffffi": invoke_ffffffi,
  20680. "invoke_fffffi": invoke_fffffi,
  20681. "invoke_ffffi": invoke_ffffi,
  20682. "invoke_ffffii": invoke_ffffii,
  20683. "invoke_fffi": invoke_fffi,
  20684. "invoke_fffifffi": invoke_fffifffi,
  20685. "invoke_ffi": invoke_ffi,
  20686. "invoke_fi": invoke_fi,
  20687. "invoke_fidi": invoke_fidi,
  20688. "invoke_fif": invoke_fif,
  20689. "invoke_fiff": invoke_fiff,
  20690. "invoke_fiffffi": invoke_fiffffi,
  20691. "invoke_fifffi": invoke_fifffi,
  20692. "invoke_fiffi": invoke_fiffi,
  20693. "invoke_fifi": invoke_fifi,
  20694. "invoke_fifii": invoke_fifii,
  20695. "invoke_fifiii": invoke_fifiii,
  20696. "invoke_fifiiiii": invoke_fifiiiii,
  20697. "invoke_fii": invoke_fii,
  20698. "invoke_fiifdi": invoke_fiifdi,
  20699. "invoke_fiiffffi": invoke_fiiffffi,
  20700. "invoke_fiiffi": invoke_fiiffi,
  20701. "invoke_fiifi": invoke_fiifi,
  20702. "invoke_fiifii": invoke_fiifii,
  20703. "invoke_fiifji": invoke_fiifji,
  20704. "invoke_fiii": invoke_fiii,
  20705. "invoke_fiiif": invoke_fiiif,
  20706. "invoke_fiiifii": invoke_fiiifii,
  20707. "invoke_fiiii": invoke_fiiii,
  20708. "invoke_fiiiif": invoke_fiiiif,
  20709. "invoke_fiiiiii": invoke_fiiiiii,
  20710. "invoke_fiiiiiifiifif": invoke_fiiiiiifiifif,
  20711. "invoke_fiiiiiifiiiif": invoke_fiiiiiifiiiif,
  20712. "invoke_fji": invoke_fji,
  20713. "invoke_i": invoke_i,
  20714. "invoke_idddi": invoke_idddi,
  20715. "invoke_iddi": invoke_iddi,
  20716. "invoke_iddii": invoke_iddii,
  20717. "invoke_idi": invoke_idi,
  20718. "invoke_idii": invoke_idii,
  20719. "invoke_idiii": invoke_idiii,
  20720. "invoke_idiiii": invoke_idiiii,
  20721. "invoke_idiiiii": invoke_idiiiii,
  20722. "invoke_iffffi": invoke_iffffi,
  20723. "invoke_ifffi": invoke_ifffi,
  20724. "invoke_iffi": invoke_iffi,
  20725. "invoke_ifi": invoke_ifi,
  20726. "invoke_ifiii": invoke_ifiii,
  20727. "invoke_ifiiii": invoke_ifiiii,
  20728. "invoke_ii": invoke_ii,
  20729. "invoke_iidi": invoke_iidi,
  20730. "invoke_iidii": invoke_iidii,
  20731. "invoke_iidiii": invoke_iidiii,
  20732. "invoke_iif": invoke_iif,
  20733. "invoke_iifff": invoke_iifff,
  20734. "invoke_iiffffiii": invoke_iiffffiii,
  20735. "invoke_iifffi": invoke_iifffi,
  20736. "invoke_iiffi": invoke_iiffi,
  20737. "invoke_iiffifiii": invoke_iiffifiii,
  20738. "invoke_iiffii": invoke_iiffii,
  20739. "invoke_iiffiii": invoke_iiffiii,
  20740. "invoke_iiffiiiii": invoke_iiffiiiii,
  20741. "invoke_iifi": invoke_iifi,
  20742. "invoke_iififi": invoke_iififi,
  20743. "invoke_iifii": invoke_iifii,
  20744. "invoke_iifiifiii": invoke_iifiifiii,
  20745. "invoke_iifiii": invoke_iifiii,
  20746. "invoke_iifiiii": invoke_iifiiii,
  20747. "invoke_iifiiiii": invoke_iifiiiii,
  20748. "invoke_iifiiiiii": invoke_iifiiiiii,
  20749. "invoke_iii": invoke_iii,
  20750. "invoke_iiiddi": invoke_iiiddi,
  20751. "invoke_iiidi": invoke_iiidi,
  20752. "invoke_iiidii": invoke_iiidii,
  20753. "invoke_iiidiii": invoke_iiidiii,
  20754. "invoke_iiif": invoke_iiif,
  20755. "invoke_iiiffi": invoke_iiiffi,
  20756. "invoke_iiiffifiii": invoke_iiiffifiii,
  20757. "invoke_iiiffii": invoke_iiiffii,
  20758. "invoke_iiifi": invoke_iiifi,
  20759. "invoke_iiififii": invoke_iiififii,
  20760. "invoke_iiifii": invoke_iiifii,
  20761. "invoke_iiifiifii": invoke_iiifiifii,
  20762. "invoke_iiifiifiii": invoke_iiifiifiii,
  20763. "invoke_iiifiifiiii": invoke_iiifiifiiii,
  20764. "invoke_iiifiii": invoke_iiifiii,
  20765. "invoke_iiifiiii": invoke_iiifiiii,
  20766. "invoke_iiifiiiii": invoke_iiifiiiii,
  20767. "invoke_iiii": invoke_iiii,
  20768. "invoke_iiiif": invoke_iiiif,
  20769. "invoke_iiiifffffi": invoke_iiiifffffi,
  20770. "invoke_iiiifffffii": invoke_iiiifffffii,
  20771. "invoke_iiiiffii": invoke_iiiiffii,
  20772. "invoke_iiiifi": invoke_iiiifi,
  20773. "invoke_iiiififi": invoke_iiiififi,
  20774. "invoke_iiiifii": invoke_iiiifii,
  20775. "invoke_iiiifiii": invoke_iiiifiii,
  20776. "invoke_iiiifiiii": invoke_iiiifiiii,
  20777. "invoke_iiiifiiiii": invoke_iiiifiiiii,
  20778. "invoke_iiiii": invoke_iiiii,
  20779. "invoke_iiiiidii": invoke_iiiiidii,
  20780. "invoke_iiiiiffi": invoke_iiiiiffi,
  20781. "invoke_iiiiifi": invoke_iiiiifi,
  20782. "invoke_iiiiifii": invoke_iiiiifii,
  20783. "invoke_iiiiifiii": invoke_iiiiifiii,
  20784. "invoke_iiiiifiiiiif": invoke_iiiiifiiiiif,
  20785. "invoke_iiiiii": invoke_iiiiii,
  20786. "invoke_iiiiiifffiiifiii": invoke_iiiiiifffiiifiii,
  20787. "invoke_iiiiiiffiiiiiiiiiffffiii": invoke_iiiiiiffiiiiiiiiiffffiii,
  20788. "invoke_iiiiiiffiiiiiiiiiffffiiii": invoke_iiiiiiffiiiiiiiiiffffiiii,
  20789. "invoke_iiiiiiffiiiiiiiiiiiiiii": invoke_iiiiiiffiiiiiiiiiiiiiii,
  20790. "invoke_iiiiiifiif": invoke_iiiiiifiif,
  20791. "invoke_iiiiiifiii": invoke_iiiiiifiii,
  20792. "invoke_iiiiiii": invoke_iiiiiii,
  20793. "invoke_iiiiiiifiif": invoke_iiiiiiifiif,
  20794. "invoke_iiiiiiii": invoke_iiiiiiii,
  20795. "invoke_iiiiiiiii": invoke_iiiiiiiii,
  20796. "invoke_iiiiiiiiii": invoke_iiiiiiiiii,
  20797. "invoke_iiiiiiiiiii": invoke_iiiiiiiiiii,
  20798. "invoke_iiiiiiiiiiii": invoke_iiiiiiiiiiii,
  20799. "invoke_iiiiiiiiiiiii": invoke_iiiiiiiiiiiii,
  20800. "invoke_iiiiiiiiiiiiii": invoke_iiiiiiiiiiiiii,
  20801. "invoke_iiiiij": invoke_iiiiij,
  20802. "invoke_iiiiiji": invoke_iiiiiji,
  20803. "invoke_iiiiijjiiiii": invoke_iiiiijjiiiii,
  20804. "invoke_iiiij": invoke_iiiij,
  20805. "invoke_iiiiji": invoke_iiiiji,
  20806. "invoke_iiiijii": invoke_iiiijii,
  20807. "invoke_iiiijijii": invoke_iiiijijii,
  20808. "invoke_iiiijjii": invoke_iiiijjii,
  20809. "invoke_iiiijjiiii": invoke_iiiijjiiii,
  20810. "invoke_iiij": invoke_iiij,
  20811. "invoke_iiiji": invoke_iiiji,
  20812. "invoke_iiijii": invoke_iiijii,
  20813. "invoke_iiijiii": invoke_iiijiii,
  20814. "invoke_iiijji": invoke_iiijji,
  20815. "invoke_iiijjii": invoke_iiijjii,
  20816. "invoke_iij": invoke_iij,
  20817. "invoke_iiji": invoke_iiji,
  20818. "invoke_iijii": invoke_iijii,
  20819. "invoke_iijiii": invoke_iijiii,
  20820. "invoke_iijji": invoke_iijji,
  20821. "invoke_iijjii": invoke_iijjii,
  20822. "invoke_iijjiii": invoke_iijjiii,
  20823. "invoke_iijjji": invoke_iijjji,
  20824. "invoke_ij": invoke_ij,
  20825. "invoke_iji": invoke_iji,
  20826. "invoke_ijiii": invoke_ijiii,
  20827. "invoke_ijiiii": invoke_ijiiii,
  20828. "invoke_ijiiiii": invoke_ijiiiii,
  20829. "invoke_ijiiiiii": invoke_ijiiiiii,
  20830. "invoke_ijj": invoke_ijj,
  20831. "invoke_ijji": invoke_ijji,
  20832. "invoke_j": invoke_j,
  20833. "invoke_jdi": invoke_jdi,
  20834. "invoke_jdii": invoke_jdii,
  20835. "invoke_jfi": invoke_jfi,
  20836. "invoke_ji": invoke_ji,
  20837. "invoke_jid": invoke_jid,
  20838. "invoke_jidi": invoke_jidi,
  20839. "invoke_jidii": invoke_jidii,
  20840. "invoke_jifi": invoke_jifi,
  20841. "invoke_jii": invoke_jii,
  20842. "invoke_jiii": invoke_jiii,
  20843. "invoke_jiiii": invoke_jiiii,
  20844. "invoke_jiiiii": invoke_jiiiii,
  20845. "invoke_jiiiiii": invoke_jiiiiii,
  20846. "invoke_jiiiiiiiiii": invoke_jiiiiiiiiii,
  20847. "invoke_jiiij": invoke_jiiij,
  20848. "invoke_jiiiji": invoke_jiiiji,
  20849. "invoke_jiiji": invoke_jiiji,
  20850. "invoke_jiji": invoke_jiji,
  20851. "invoke_jijii": invoke_jijii,
  20852. "invoke_jijiii": invoke_jijiii,
  20853. "invoke_jijj": invoke_jijj,
  20854. "invoke_jijji": invoke_jijji,
  20855. "invoke_jj": invoke_jj,
  20856. "invoke_jji": invoke_jji,
  20857. "invoke_jjii": invoke_jjii,
  20858. "invoke_jjji": invoke_jjji,
  20859. "invoke_jjjji": invoke_jjjji,
  20860. "invoke_v": invoke_v,
  20861. "invoke_vd": invoke_vd,
  20862. "invoke_vdi": invoke_vdi,
  20863. "invoke_vdii": invoke_vdii,
  20864. "invoke_vf": invoke_vf,
  20865. "invoke_vff": invoke_vff,
  20866. "invoke_vfff": invoke_vfff,
  20867. "invoke_vffff": invoke_vffff,
  20868. "invoke_vffffffi": invoke_vffffffi,
  20869. "invoke_vffffffii": invoke_vffffffii,
  20870. "invoke_vffffi": invoke_vffffi,
  20871. "invoke_vffffii": invoke_vffffii,
  20872. "invoke_vffffiiii": invoke_vffffiiii,
  20873. "invoke_vfffi": invoke_vfffi,
  20874. "invoke_vffi": invoke_vffi,
  20875. "invoke_vfi": invoke_vfi,
  20876. "invoke_vfii": invoke_vfii,
  20877. "invoke_vfiii": invoke_vfiii,
  20878. "invoke_vfiiiii": invoke_vfiiiii,
  20879. "invoke_vi": invoke_vi,
  20880. "invoke_vid": invoke_vid,
  20881. "invoke_vidd": invoke_vidd,
  20882. "invoke_vidddi": invoke_vidddi,
  20883. "invoke_viddi": invoke_viddi,
  20884. "invoke_viddiiii": invoke_viddiiii,
  20885. "invoke_vidi": invoke_vidi,
  20886. "invoke_vidii": invoke_vidii,
  20887. "invoke_vidiii": invoke_vidiii,
  20888. "invoke_vif": invoke_vif,
  20889. "invoke_viff": invoke_viff,
  20890. "invoke_vifff": invoke_vifff,
  20891. "invoke_viffff": invoke_viffff,
  20892. "invoke_viffffffi": invoke_viffffffi,
  20893. "invoke_vifffffi": invoke_vifffffi,
  20894. "invoke_viffffi": invoke_viffffi,
  20895. "invoke_viffffii": invoke_viffffii,
  20896. "invoke_viffffiifffiiiiif": invoke_viffffiifffiiiiif,
  20897. "invoke_vifffi": invoke_vifffi,
  20898. "invoke_vifffii": invoke_vifffii,
  20899. "invoke_viffi": invoke_viffi,
  20900. "invoke_viffifffi": invoke_viffifffi,
  20901. "invoke_viffii": invoke_viffii,
  20902. "invoke_viffiifffffiii": invoke_viffiifffffiii,
  20903. "invoke_viffiifffiii": invoke_viffiifffiii,
  20904. "invoke_viffiii": invoke_viffiii,
  20905. "invoke_viffiiiif": invoke_viffiiiif,
  20906. "invoke_vifi": invoke_vifi,
  20907. "invoke_vififi": invoke_vififi,
  20908. "invoke_vifii": invoke_vifii,
  20909. "invoke_vifiii": invoke_vifiii,
  20910. "invoke_vifiiii": invoke_vifiiii,
  20911. "invoke_vifiiiii": invoke_vifiiiii,
  20912. "invoke_vii": invoke_vii,
  20913. "invoke_viid": invoke_viid,
  20914. "invoke_viidd": invoke_viidd,
  20915. "invoke_viidi": invoke_viidi,
  20916. "invoke_viidii": invoke_viidii,
  20917. "invoke_viif": invoke_viif,
  20918. "invoke_viiff": invoke_viiff,
  20919. "invoke_viifff": invoke_viifff,
  20920. "invoke_viifffi": invoke_viifffi,
  20921. "invoke_viiffi": invoke_viiffi,
  20922. "invoke_viiffii": invoke_viiffii,
  20923. "invoke_viifi": invoke_viifi,
  20924. "invoke_viifii": invoke_viifii,
  20925. "invoke_viifiii": invoke_viifiii,
  20926. "invoke_viifiiii": invoke_viifiiii,
  20927. "invoke_viii": invoke_viii,
  20928. "invoke_viiidi": invoke_viiidi,
  20929. "invoke_viiif": invoke_viiif,
  20930. "invoke_viiiffffi": invoke_viiiffffi,
  20931. "invoke_viiifffi": invoke_viiifffi,
  20932. "invoke_viiiffi": invoke_viiiffi,
  20933. "invoke_viiiffii": invoke_viiiffii,
  20934. "invoke_viiifi": invoke_viiifi,
  20935. "invoke_viiififfi": invoke_viiififfi,
  20936. "invoke_viiififi": invoke_viiififi,
  20937. "invoke_viiifii": invoke_viiifii,
  20938. "invoke_viiifiii": invoke_viiifiii,
  20939. "invoke_viiifiiiii": invoke_viiifiiiii,
  20940. "invoke_viiii": invoke_viiii,
  20941. "invoke_viiiiddi": invoke_viiiiddi,
  20942. "invoke_viiiif": invoke_viiiif,
  20943. "invoke_viiiiffi": invoke_viiiiffi,
  20944. "invoke_viiiifi": invoke_viiiifi,
  20945. "invoke_viiiififfi": invoke_viiiififfi,
  20946. "invoke_viiiifii": invoke_viiiifii,
  20947. "invoke_viiiifiifi": invoke_viiiifiifi,
  20948. "invoke_viiiifiii": invoke_viiiifiii,
  20949. "invoke_viiiifiiii": invoke_viiiifiiii,
  20950. "invoke_viiiifiiiii": invoke_viiiifiiiii,
  20951. "invoke_viiiifiiiiif": invoke_viiiifiiiiif,
  20952. "invoke_viiiifiiiiiiii": invoke_viiiifiiiiiiii,
  20953. "invoke_viiiii": invoke_viiiii,
  20954. "invoke_viiiiif": invoke_viiiiif,
  20955. "invoke_viiiiifffi": invoke_viiiiifffi,
  20956. "invoke_viiiiiffi": invoke_viiiiiffi,
  20957. "invoke_viiiiiffii": invoke_viiiiiffii,
  20958. "invoke_viiiiifi": invoke_viiiiifi,
  20959. "invoke_viiiiifii": invoke_viiiiifii,
  20960. "invoke_viiiiii": invoke_viiiiii,
  20961. "invoke_viiiiiif": invoke_viiiiiif,
  20962. "invoke_viiiiiifddfiii": invoke_viiiiiifddfiii,
  20963. "invoke_viiiiiiffffiii": invoke_viiiiiiffffiii,
  20964. "invoke_viiiiiifi": invoke_viiiiiifi,
  20965. "invoke_viiiiiifiifiii": invoke_viiiiiifiifiii,
  20966. "invoke_viiiiiifjjfiii": invoke_viiiiiifjjfiii,
  20967. "invoke_viiiiiii": invoke_viiiiiii,
  20968. "invoke_viiiiiiifddfii": invoke_viiiiiiifddfii,
  20969. "invoke_viiiiiiiffffii": invoke_viiiiiiiffffii,
  20970. "invoke_viiiiiiifiifii": invoke_viiiiiiifiifii,
  20971. "invoke_viiiiiiifiii": invoke_viiiiiiifiii,
  20972. "invoke_viiiiiiifjjfii": invoke_viiiiiiifjjfii,
  20973. "invoke_viiiiiiii": invoke_viiiiiiii,
  20974. "invoke_viiiiiiiii": invoke_viiiiiiiii,
  20975. "invoke_viiiiiiiiii": invoke_viiiiiiiiii,
  20976. "invoke_viiiiiiiiiii": invoke_viiiiiiiiiii,
  20977. "invoke_viiiiiiiiiiifii": invoke_viiiiiiiiiiifii,
  20978. "invoke_viiiiiiiiiiii": invoke_viiiiiiiiiiii,
  20979. "invoke_viiiiiiiiiiiii": invoke_viiiiiiiiiiiii,
  20980. "invoke_viiiiiiiiiiiiii": invoke_viiiiiiiiiiiiii,
  20981. "invoke_viiiiiiiiiiiiiii": invoke_viiiiiiiiiiiiiii,
  20982. "invoke_viiiiiiiiiiiiiiiiii": invoke_viiiiiiiiiiiiiiiiii,
  20983. "invoke_viiiiiiiiiji": invoke_viiiiiiiiiji,
  20984. "invoke_viiiiiiiji": invoke_viiiiiiiji,
  20985. "invoke_viiiiiiijii": invoke_viiiiiiijii,
  20986. "invoke_viiiiiji": invoke_viiiiiji,
  20987. "invoke_viiiiijii": invoke_viiiiijii,
  20988. "invoke_viiiij": invoke_viiiij,
  20989. "invoke_viiiiji": invoke_viiiiji,
  20990. "invoke_viiiijii": invoke_viiiijii,
  20991. "invoke_viiiijiiii": invoke_viiiijiiii,
  20992. "invoke_viiiijjiii": invoke_viiiijjiii,
  20993. "invoke_viiiji": invoke_viiiji,
  20994. "invoke_viiijji": invoke_viiijji,
  20995. "invoke_viiijjii": invoke_viiijjii,
  20996. "invoke_viiijjiii": invoke_viiijjiii,
  20997. "invoke_viij": invoke_viij,
  20998. "invoke_viiji": invoke_viiji,
  20999. "invoke_viijii": invoke_viijii,
  21000. "invoke_viijiiii": invoke_viijiiii,
  21001. "invoke_viijiijiii": invoke_viijiijiii,
  21002. "invoke_viijijii": invoke_viijijii,
  21003. "invoke_viijijiii": invoke_viijijiii,
  21004. "invoke_viijijj": invoke_viijijj,
  21005. "invoke_viijj": invoke_viijj,
  21006. "invoke_viijji": invoke_viijji,
  21007. "invoke_viijjii": invoke_viijjii,
  21008. "invoke_viijjiii": invoke_viijjiii,
  21009. "invoke_viijjji": invoke_viijjji,
  21010. "invoke_vij": invoke_vij,
  21011. "invoke_viji": invoke_viji,
  21012. "invoke_vijii": invoke_vijii,
  21013. "invoke_vijiii": invoke_vijiii,
  21014. "invoke_vijiji": invoke_vijiji,
  21015. "invoke_vijijji": invoke_vijijji,
  21016. "invoke_vijji": invoke_vijji,
  21017. "invoke_vijjii": invoke_vijjii,
  21018. "invoke_vji": invoke_vji,
  21019. "invoke_vjii": invoke_vjii,
  21020. "invoke_vjiiii": invoke_vjiiii,
  21021. "invoke_vjji": invoke_vjji,
  21022. "_JS_Cursor_SetImage": _JS_Cursor_SetImage,
  21023. "_JS_Cursor_SetShow": _JS_Cursor_SetShow,
  21024. "_JS_Eval_ClearTimeout": _JS_Eval_ClearTimeout,
  21025. "_JS_Eval_SetTimeout": _JS_Eval_SetTimeout,
  21026. "_JS_FileSystem_Initialize": _JS_FileSystem_Initialize,
  21027. "_JS_FileSystem_Sync": _JS_FileSystem_Sync,
  21028. "_JS_Log_Dump": _JS_Log_Dump,
  21029. "_JS_Log_StackTrace": _JS_Log_StackTrace,
  21030. "_JS_Profiler_InjectJobs": _JS_Profiler_InjectJobs,
  21031. "_JS_Sound_Create_Channel": _JS_Sound_Create_Channel,
  21032. "_JS_Sound_GetLength": _JS_Sound_GetLength,
  21033. "_JS_Sound_GetLoadState": _JS_Sound_GetLoadState,
  21034. "_JS_Sound_Init": _JS_Sound_Init,
  21035. "_JS_Sound_Load": _JS_Sound_Load,
  21036. "_JS_Sound_Load_PCM": _JS_Sound_Load_PCM,
  21037. "_JS_Sound_Play": _JS_Sound_Play,
  21038. "_JS_Sound_ReleaseInstance": _JS_Sound_ReleaseInstance,
  21039. "_JS_Sound_ResumeIfNeeded": _JS_Sound_ResumeIfNeeded,
  21040. "_JS_Sound_Set3D": _JS_Sound_Set3D,
  21041. "_JS_Sound_SetListenerOrientation": _JS_Sound_SetListenerOrientation,
  21042. "_JS_Sound_SetListenerPosition": _JS_Sound_SetListenerPosition,
  21043. "_JS_Sound_SetLoop": _JS_Sound_SetLoop,
  21044. "_JS_Sound_SetLoopPoints": _JS_Sound_SetLoopPoints,
  21045. "_JS_Sound_SetPitch": _JS_Sound_SetPitch,
  21046. "_JS_Sound_SetPosition": _JS_Sound_SetPosition,
  21047. "_JS_Sound_SetVolume": _JS_Sound_SetVolume,
  21048. "_JS_Sound_Stop": _JS_Sound_Stop,
  21049. "_JS_SystemInfo_GetCanvasClientSize": _JS_SystemInfo_GetCanvasClientSize,
  21050. "_JS_SystemInfo_GetDocumentURL": _JS_SystemInfo_GetDocumentURL,
  21051. "_JS_SystemInfo_GetGPUInfo": _JS_SystemInfo_GetGPUInfo,
  21052. "_JS_SystemInfo_GetMemory": _JS_SystemInfo_GetMemory,
  21053. "_JS_SystemInfo_GetOS": _JS_SystemInfo_GetOS,
  21054. "_JS_SystemInfo_GetPreferredDevicePixelRatio": _JS_SystemInfo_GetPreferredDevicePixelRatio,
  21055. "_JS_SystemInfo_GetScreenSize": _JS_SystemInfo_GetScreenSize,
  21056. "_JS_SystemInfo_GetStreamingAssetsURL": _JS_SystemInfo_GetStreamingAssetsURL,
  21057. "_JS_SystemInfo_HasCursorLock": _JS_SystemInfo_HasCursorLock,
  21058. "_JS_SystemInfo_HasFullscreen": _JS_SystemInfo_HasFullscreen,
  21059. "_JS_SystemInfo_HasWebGL": _JS_SystemInfo_HasWebGL,
  21060. "_JS_Video_CanPlayFormat": _JS_Video_CanPlayFormat,
  21061. "_JS_Video_Create": _JS_Video_Create,
  21062. "_JS_Video_Destroy": _JS_Video_Destroy,
  21063. "_JS_Video_Duration": _JS_Video_Duration,
  21064. "_JS_Video_EnableAudioTrack": _JS_Video_EnableAudioTrack,
  21065. "_JS_Video_GetAudioLanguageCode": _JS_Video_GetAudioLanguageCode,
  21066. "_JS_Video_GetNumAudioTracks": _JS_Video_GetNumAudioTracks,
  21067. "_JS_Video_Height": _JS_Video_Height,
  21068. "_JS_Video_IsPlaying": _JS_Video_IsPlaying,
  21069. "_JS_Video_IsReady": _JS_Video_IsReady,
  21070. "_JS_Video_Pause": _JS_Video_Pause,
  21071. "_JS_Video_Play": _JS_Video_Play,
  21072. "_JS_Video_Seek": _JS_Video_Seek,
  21073. "_JS_Video_SetEndedHandler": _JS_Video_SetEndedHandler,
  21074. "_JS_Video_SetErrorHandler": _JS_Video_SetErrorHandler,
  21075. "_JS_Video_SetLoop": _JS_Video_SetLoop,
  21076. "_JS_Video_SetMute": _JS_Video_SetMute,
  21077. "_JS_Video_SetPlaybackRate": _JS_Video_SetPlaybackRate,
  21078. "_JS_Video_SetReadyHandler": _JS_Video_SetReadyHandler,
  21079. "_JS_Video_SetSeekedOnceHandler": _JS_Video_SetSeekedOnceHandler,
  21080. "_JS_Video_SetVolume": _JS_Video_SetVolume,
  21081. "_JS_Video_Time": _JS_Video_Time,
  21082. "_JS_Video_UpdateToTexture": _JS_Video_UpdateToTexture,
  21083. "_JS_Video_Width": _JS_Video_Width,
  21084. "_JS_WebRequest_Abort": _JS_WebRequest_Abort,
  21085. "_JS_WebRequest_Create": _JS_WebRequest_Create,
  21086. "_JS_WebRequest_GetResponseHeaders": _JS_WebRequest_GetResponseHeaders,
  21087. "_JS_WebRequest_Release": _JS_WebRequest_Release,
  21088. "_JS_WebRequest_Send": _JS_WebRequest_Send,
  21089. "_JS_WebRequest_SetProgressHandler": _JS_WebRequest_SetProgressHandler,
  21090. "_JS_WebRequest_SetRequestHeader": _JS_WebRequest_SetRequestHeader,
  21091. "_JS_WebRequest_SetResponseHandler": _JS_WebRequest_SetResponseHandler,
  21092. "_JS_WebRequest_SetTimeout": _JS_WebRequest_SetTimeout,
  21093. "__ZSt18uncaught_exceptionv": __ZSt18uncaught_exceptionv,
  21094. "___atomic_fetch_add_8": ___atomic_fetch_add_8,
  21095. "___buildEnvironment": ___buildEnvironment,
  21096. "___cxa_allocate_exception": ___cxa_allocate_exception,
  21097. "___cxa_begin_catch": ___cxa_begin_catch,
  21098. "___cxa_end_catch": ___cxa_end_catch,
  21099. "___cxa_find_matching_catch": ___cxa_find_matching_catch,
  21100. "___cxa_find_matching_catch_2": ___cxa_find_matching_catch_2,
  21101. "___cxa_find_matching_catch_3": ___cxa_find_matching_catch_3,
  21102. "___cxa_find_matching_catch_4": ___cxa_find_matching_catch_4,
  21103. "___cxa_free_exception": ___cxa_free_exception,
  21104. "___cxa_pure_virtual": ___cxa_pure_virtual,
  21105. "___cxa_rethrow": ___cxa_rethrow,
  21106. "___cxa_throw": ___cxa_throw,
  21107. "___gxx_personality_v0": ___gxx_personality_v0,
  21108. "___lock": ___lock,
  21109. "___map_file": ___map_file,
  21110. "___resumeException": ___resumeException,
  21111. "___setErrNo": ___setErrNo,
  21112. "___syscall10": ___syscall10,
  21113. "___syscall102": ___syscall102,
  21114. "___syscall122": ___syscall122,
  21115. "___syscall140": ___syscall140,
  21116. "___syscall142": ___syscall142,
  21117. "___syscall145": ___syscall145,
  21118. "___syscall146": ___syscall146,
  21119. "___syscall15": ___syscall15,
  21120. "___syscall168": ___syscall168,
  21121. "___syscall183": ___syscall183,
  21122. "___syscall192": ___syscall192,
  21123. "___syscall193": ___syscall193,
  21124. "___syscall194": ___syscall194,
  21125. "___syscall195": ___syscall195,
  21126. "___syscall196": ___syscall196,
  21127. "___syscall197": ___syscall197,
  21128. "___syscall199": ___syscall199,
  21129. "___syscall20": ___syscall20,
  21130. "___syscall202": ___syscall202,
  21131. "___syscall220": ___syscall220,
  21132. "___syscall221": ___syscall221,
  21133. "___syscall268": ___syscall268,
  21134. "___syscall3": ___syscall3,
  21135. "___syscall33": ___syscall33,
  21136. "___syscall38": ___syscall38,
  21137. "___syscall39": ___syscall39,
  21138. "___syscall4": ___syscall4,
  21139. "___syscall40": ___syscall40,
  21140. "___syscall41": ___syscall41,
  21141. "___syscall42": ___syscall42,
  21142. "___syscall5": ___syscall5,
  21143. "___syscall54": ___syscall54,
  21144. "___syscall6": ___syscall6,
  21145. "___syscall63": ___syscall63,
  21146. "___syscall77": ___syscall77,
  21147. "___syscall85": ___syscall85,
  21148. "___syscall91": ___syscall91,
  21149. "___unlock": ___unlock,
  21150. "__addDays": __addDays,
  21151. "__arraySum": __arraySum,
  21152. "__emscripten_do_request_fullscreen": __emscripten_do_request_fullscreen,
  21153. "__emscripten_sample_gamepad_data": __emscripten_sample_gamepad_data,
  21154. "__emscripten_traverse_stack": __emscripten_traverse_stack,
  21155. "__exit": __exit,
  21156. "__formatString": __formatString,
  21157. "__inet_ntop4_raw": __inet_ntop4_raw,
  21158. "__inet_ntop6_raw": __inet_ntop6_raw,
  21159. "__inet_pton4_raw": __inet_pton4_raw,
  21160. "__inet_pton6_raw": __inet_pton6_raw,
  21161. "__isLeapYear": __isLeapYear,
  21162. "__read_sockaddr": __read_sockaddr,
  21163. "__reallyNegative": __reallyNegative,
  21164. "__setLetterbox": __setLetterbox,
  21165. "__write_sockaddr": __write_sockaddr,
  21166. "_abort": _abort,
  21167. "_atexit": _atexit,
  21168. "_clock": _clock,
  21169. "_clock_getres": _clock_getres,
  21170. "_clock_gettime": _clock_gettime,
  21171. "_difftime": _difftime,
  21172. "_dlclose": _dlclose,
  21173. "_dlopen": _dlopen,
  21174. "_dlsym": _dlsym,
  21175. "_emscripten_asm_const_i": _emscripten_asm_const_i,
  21176. "_emscripten_asm_const_id": _emscripten_asm_const_id,
  21177. "_emscripten_asm_const_ii": _emscripten_asm_const_ii,
  21178. "_emscripten_asm_const_sync_on_main_thread_i": _emscripten_asm_const_sync_on_main_thread_i,
  21179. "_emscripten_cancel_main_loop": _emscripten_cancel_main_loop,
  21180. "_emscripten_exit_fullscreen": _emscripten_exit_fullscreen,
  21181. "_emscripten_exit_pointerlock": _emscripten_exit_pointerlock,
  21182. "_emscripten_get_callstack_js": _emscripten_get_callstack_js,
  21183. "_emscripten_get_canvas_element_size": _emscripten_get_canvas_element_size,
  21184. "_emscripten_get_canvas_element_size_calling_thread": _emscripten_get_canvas_element_size_calling_thread,
  21185. "_emscripten_get_canvas_element_size_main_thread": _emscripten_get_canvas_element_size_main_thread,
  21186. "_emscripten_get_fullscreen_status": _emscripten_get_fullscreen_status,
  21187. "_emscripten_get_gamepad_status": _emscripten_get_gamepad_status,
  21188. "_emscripten_get_main_loop_timing": _emscripten_get_main_loop_timing,
  21189. "_emscripten_get_now": _emscripten_get_now,
  21190. "_emscripten_get_now_is_monotonic": _emscripten_get_now_is_monotonic,
  21191. "_emscripten_get_now_res": _emscripten_get_now_res,
  21192. "_emscripten_get_num_gamepads": _emscripten_get_num_gamepads,
  21193. "_emscripten_has_threading_support": _emscripten_has_threading_support,
  21194. "_emscripten_html5_remove_all_event_listeners": _emscripten_html5_remove_all_event_listeners,
  21195. "_emscripten_is_webgl_context_lost": _emscripten_is_webgl_context_lost,
  21196. "_emscripten_log": _emscripten_log,
  21197. "_emscripten_log_js": _emscripten_log_js,
  21198. "_emscripten_longjmp": _emscripten_longjmp,
  21199. "_emscripten_memcpy_big": _emscripten_memcpy_big,
  21200. "_emscripten_num_logical_cores": _emscripten_num_logical_cores,
  21201. "_emscripten_request_fullscreen": _emscripten_request_fullscreen,
  21202. "_emscripten_request_pointerlock": _emscripten_request_pointerlock,
  21203. "_emscripten_set_blur_callback_on_thread": _emscripten_set_blur_callback_on_thread,
  21204. "_emscripten_set_canvas_element_size": _emscripten_set_canvas_element_size,
  21205. "_emscripten_set_canvas_element_size_calling_thread": _emscripten_set_canvas_element_size_calling_thread,
  21206. "_emscripten_set_canvas_element_size_main_thread": _emscripten_set_canvas_element_size_main_thread,
  21207. "_emscripten_set_dblclick_callback_on_thread": _emscripten_set_dblclick_callback_on_thread,
  21208. "_emscripten_set_devicemotion_callback_on_thread": _emscripten_set_devicemotion_callback_on_thread,
  21209. "_emscripten_set_deviceorientation_callback_on_thread": _emscripten_set_deviceorientation_callback_on_thread,
  21210. "_emscripten_set_focus_callback_on_thread": _emscripten_set_focus_callback_on_thread,
  21211. "_emscripten_set_fullscreenchange_callback_on_thread": _emscripten_set_fullscreenchange_callback_on_thread,
  21212. "_emscripten_set_gamepadconnected_callback_on_thread": _emscripten_set_gamepadconnected_callback_on_thread,
  21213. "_emscripten_set_gamepaddisconnected_callback_on_thread": _emscripten_set_gamepaddisconnected_callback_on_thread,
  21214. "_emscripten_set_keydown_callback_on_thread": _emscripten_set_keydown_callback_on_thread,
  21215. "_emscripten_set_keypress_callback_on_thread": _emscripten_set_keypress_callback_on_thread,
  21216. "_emscripten_set_keyup_callback_on_thread": _emscripten_set_keyup_callback_on_thread,
  21217. "_emscripten_set_main_loop": _emscripten_set_main_loop,
  21218. "_emscripten_set_main_loop_timing": _emscripten_set_main_loop_timing,
  21219. "_emscripten_set_mousedown_callback_on_thread": _emscripten_set_mousedown_callback_on_thread,
  21220. "_emscripten_set_mousemove_callback_on_thread": _emscripten_set_mousemove_callback_on_thread,
  21221. "_emscripten_set_mouseup_callback_on_thread": _emscripten_set_mouseup_callback_on_thread,
  21222. "_emscripten_set_touchcancel_callback_on_thread": _emscripten_set_touchcancel_callback_on_thread,
  21223. "_emscripten_set_touchend_callback_on_thread": _emscripten_set_touchend_callback_on_thread,
  21224. "_emscripten_set_touchmove_callback_on_thread": _emscripten_set_touchmove_callback_on_thread,
  21225. "_emscripten_set_touchstart_callback_on_thread": _emscripten_set_touchstart_callback_on_thread,
  21226. "_emscripten_set_wheel_callback_on_thread": _emscripten_set_wheel_callback_on_thread,
  21227. "_emscripten_webgl_create_context": _emscripten_webgl_create_context,
  21228. "_emscripten_webgl_destroy_context": _emscripten_webgl_destroy_context,
  21229. "_emscripten_webgl_destroy_context_calling_thread": _emscripten_webgl_destroy_context_calling_thread,
  21230. "_emscripten_webgl_do_create_context": _emscripten_webgl_do_create_context,
  21231. "_emscripten_webgl_do_get_current_context": _emscripten_webgl_do_get_current_context,
  21232. "_emscripten_webgl_enable_extension": _emscripten_webgl_enable_extension,
  21233. "_emscripten_webgl_enable_extension_calling_thread": _emscripten_webgl_enable_extension_calling_thread,
  21234. "_emscripten_webgl_get_current_context": _emscripten_webgl_get_current_context,
  21235. "_emscripten_webgl_init_context_attributes": _emscripten_webgl_init_context_attributes,
  21236. "_emscripten_webgl_make_context_current": _emscripten_webgl_make_context_current,
  21237. "_exit": _exit,
  21238. "_flock": _flock,
  21239. "_getaddrinfo": _getaddrinfo,
  21240. "_getenv": _getenv,
  21241. "_gethostbyaddr": _gethostbyaddr,
  21242. "_gethostbyname": _gethostbyname,
  21243. "_getnameinfo": _getnameinfo,
  21244. "_getpagesize": _getpagesize,
  21245. "_getpwuid": _getpwuid,
  21246. "_gettimeofday": _gettimeofday,
  21247. "_glActiveTexture": _glActiveTexture,
  21248. "_glAttachShader": _glAttachShader,
  21249. "_glBeginQuery": _glBeginQuery,
  21250. "_glBeginTransformFeedback": _glBeginTransformFeedback,
  21251. "_glBindAttribLocation": _glBindAttribLocation,
  21252. "_glBindBuffer": _glBindBuffer,
  21253. "_glBindBufferBase": _glBindBufferBase,
  21254. "_glBindBufferRange": _glBindBufferRange,
  21255. "_glBindFramebuffer": _glBindFramebuffer,
  21256. "_glBindRenderbuffer": _glBindRenderbuffer,
  21257. "_glBindSampler": _glBindSampler,
  21258. "_glBindTexture": _glBindTexture,
  21259. "_glBindTransformFeedback": _glBindTransformFeedback,
  21260. "_glBindVertexArray": _glBindVertexArray,
  21261. "_glBlendEquation": _glBlendEquation,
  21262. "_glBlendEquationSeparate": _glBlendEquationSeparate,
  21263. "_glBlendFuncSeparate": _glBlendFuncSeparate,
  21264. "_glBlitFramebuffer": _glBlitFramebuffer,
  21265. "_glBufferData": _glBufferData,
  21266. "_glBufferSubData": _glBufferSubData,
  21267. "_glCheckFramebufferStatus": _glCheckFramebufferStatus,
  21268. "_glClear": _glClear,
  21269. "_glClearColor": _glClearColor,
  21270. "_glClearDepthf": _glClearDepthf,
  21271. "_glClearStencil": _glClearStencil,
  21272. "_glClientWaitSync": _glClientWaitSync,
  21273. "_glColorMask": _glColorMask,
  21274. "_glCompileShader": _glCompileShader,
  21275. "_glCompressedTexImage2D": _glCompressedTexImage2D,
  21276. "_glCompressedTexSubImage2D": _glCompressedTexSubImage2D,
  21277. "_glCompressedTexSubImage3D": _glCompressedTexSubImage3D,
  21278. "_glCopyBufferSubData": _glCopyBufferSubData,
  21279. "_glCopyTexImage2D": _glCopyTexImage2D,
  21280. "_glCopyTexSubImage2D": _glCopyTexSubImage2D,
  21281. "_glCreateProgram": _glCreateProgram,
  21282. "_glCreateShader": _glCreateShader,
  21283. "_glCullFace": _glCullFace,
  21284. "_glDeleteBuffers": _glDeleteBuffers,
  21285. "_glDeleteFramebuffers": _glDeleteFramebuffers,
  21286. "_glDeleteProgram": _glDeleteProgram,
  21287. "_glDeleteQueries": _glDeleteQueries,
  21288. "_glDeleteRenderbuffers": _glDeleteRenderbuffers,
  21289. "_glDeleteSamplers": _glDeleteSamplers,
  21290. "_glDeleteShader": _glDeleteShader,
  21291. "_glDeleteSync": _glDeleteSync,
  21292. "_glDeleteTextures": _glDeleteTextures,
  21293. "_glDeleteTransformFeedbacks": _glDeleteTransformFeedbacks,
  21294. "_glDeleteVertexArrays": _glDeleteVertexArrays,
  21295. "_glDepthFunc": _glDepthFunc,
  21296. "_glDepthMask": _glDepthMask,
  21297. "_glDetachShader": _glDetachShader,
  21298. "_glDisable": _glDisable,
  21299. "_glDisableVertexAttribArray": _glDisableVertexAttribArray,
  21300. "_glDrawArrays": _glDrawArrays,
  21301. "_glDrawArraysInstanced": _glDrawArraysInstanced,
  21302. "_glDrawBuffers": _glDrawBuffers,
  21303. "_glDrawElements": _glDrawElements,
  21304. "_glDrawElementsInstanced": _glDrawElementsInstanced,
  21305. "_glEnable": _glEnable,
  21306. "_glEnableVertexAttribArray": _glEnableVertexAttribArray,
  21307. "_glEndQuery": _glEndQuery,
  21308. "_glEndTransformFeedback": _glEndTransformFeedback,
  21309. "_glFenceSync": _glFenceSync,
  21310. "_glFinish": _glFinish,
  21311. "_glFlush": _glFlush,
  21312. "_glFlushMappedBufferRange": _glFlushMappedBufferRange,
  21313. "_glFramebufferRenderbuffer": _glFramebufferRenderbuffer,
  21314. "_glFramebufferTexture2D": _glFramebufferTexture2D,
  21315. "_glFramebufferTextureLayer": _glFramebufferTextureLayer,
  21316. "_glFrontFace": _glFrontFace,
  21317. "_glGenBuffers": _glGenBuffers,
  21318. "_glGenFramebuffers": _glGenFramebuffers,
  21319. "_glGenQueries": _glGenQueries,
  21320. "_glGenRenderbuffers": _glGenRenderbuffers,
  21321. "_glGenSamplers": _glGenSamplers,
  21322. "_glGenTextures": _glGenTextures,
  21323. "_glGenTransformFeedbacks": _glGenTransformFeedbacks,
  21324. "_glGenVertexArrays": _glGenVertexArrays,
  21325. "_glGenerateMipmap": _glGenerateMipmap,
  21326. "_glGetActiveAttrib": _glGetActiveAttrib,
  21327. "_glGetActiveUniform": _glGetActiveUniform,
  21328. "_glGetActiveUniformBlockName": _glGetActiveUniformBlockName,
  21329. "_glGetActiveUniformBlockiv": _glGetActiveUniformBlockiv,
  21330. "_glGetActiveUniformsiv": _glGetActiveUniformsiv,
  21331. "_glGetAttribLocation": _glGetAttribLocation,
  21332. "_glGetError": _glGetError,
  21333. "_glGetFramebufferAttachmentParameteriv": _glGetFramebufferAttachmentParameteriv,
  21334. "_glGetIntegeri_v": _glGetIntegeri_v,
  21335. "_glGetIntegerv": _glGetIntegerv,
  21336. "_glGetInternalformativ": _glGetInternalformativ,
  21337. "_glGetProgramBinary": _glGetProgramBinary,
  21338. "_glGetProgramInfoLog": _glGetProgramInfoLog,
  21339. "_glGetProgramiv": _glGetProgramiv,
  21340. "_glGetRenderbufferParameteriv": _glGetRenderbufferParameteriv,
  21341. "_glGetShaderInfoLog": _glGetShaderInfoLog,
  21342. "_glGetShaderPrecisionFormat": _glGetShaderPrecisionFormat,
  21343. "_glGetShaderSource": _glGetShaderSource,
  21344. "_glGetShaderiv": _glGetShaderiv,
  21345. "_glGetString": _glGetString,
  21346. "_glGetStringi": _glGetStringi,
  21347. "_glGetTexParameteriv": _glGetTexParameteriv,
  21348. "_glGetUniformBlockIndex": _glGetUniformBlockIndex,
  21349. "_glGetUniformIndices": _glGetUniformIndices,
  21350. "_glGetUniformLocation": _glGetUniformLocation,
  21351. "_glGetUniformiv": _glGetUniformiv,
  21352. "_glGetVertexAttribiv": _glGetVertexAttribiv,
  21353. "_glInvalidateFramebuffer": _glInvalidateFramebuffer,
  21354. "_glIsEnabled": _glIsEnabled,
  21355. "_glIsVertexArray": _glIsVertexArray,
  21356. "_glLinkProgram": _glLinkProgram,
  21357. "_glMapBufferRange": _glMapBufferRange,
  21358. "_glPixelStorei": _glPixelStorei,
  21359. "_glPolygonOffset": _glPolygonOffset,
  21360. "_glProgramBinary": _glProgramBinary,
  21361. "_glProgramParameteri": _glProgramParameteri,
  21362. "_glReadBuffer": _glReadBuffer,
  21363. "_glReadPixels": _glReadPixels,
  21364. "_glRenderbufferStorage": _glRenderbufferStorage,
  21365. "_glRenderbufferStorageMultisample": _glRenderbufferStorageMultisample,
  21366. "_glSamplerParameteri": _glSamplerParameteri,
  21367. "_glScissor": _glScissor,
  21368. "_glShaderSource": _glShaderSource,
  21369. "_glStencilFuncSeparate": _glStencilFuncSeparate,
  21370. "_glStencilMask": _glStencilMask,
  21371. "_glStencilOpSeparate": _glStencilOpSeparate,
  21372. "_glTexImage2D": _glTexImage2D,
  21373. "_glTexImage3D": _glTexImage3D,
  21374. "_glTexParameterf": _glTexParameterf,
  21375. "_glTexParameteri": _glTexParameteri,
  21376. "_glTexParameteriv": _glTexParameteriv,
  21377. "_glTexStorage2D": _glTexStorage2D,
  21378. "_glTexStorage3D": _glTexStorage3D,
  21379. "_glTexSubImage2D": _glTexSubImage2D,
  21380. "_glTexSubImage3D": _glTexSubImage3D,
  21381. "_glTransformFeedbackVaryings": _glTransformFeedbackVaryings,
  21382. "_glUniform1fv": _glUniform1fv,
  21383. "_glUniform1i": _glUniform1i,
  21384. "_glUniform1iv": _glUniform1iv,
  21385. "_glUniform1uiv": _glUniform1uiv,
  21386. "_glUniform2fv": _glUniform2fv,
  21387. "_glUniform2iv": _glUniform2iv,
  21388. "_glUniform2uiv": _glUniform2uiv,
  21389. "_glUniform3fv": _glUniform3fv,
  21390. "_glUniform3iv": _glUniform3iv,
  21391. "_glUniform3uiv": _glUniform3uiv,
  21392. "_glUniform4fv": _glUniform4fv,
  21393. "_glUniform4iv": _glUniform4iv,
  21394. "_glUniform4uiv": _glUniform4uiv,
  21395. "_glUniformBlockBinding": _glUniformBlockBinding,
  21396. "_glUniformMatrix3fv": _glUniformMatrix3fv,
  21397. "_glUniformMatrix4fv": _glUniformMatrix4fv,
  21398. "_glUnmapBuffer": _glUnmapBuffer,
  21399. "_glUseProgram": _glUseProgram,
  21400. "_glValidateProgram": _glValidateProgram,
  21401. "_glVertexAttrib4f": _glVertexAttrib4f,
  21402. "_glVertexAttrib4fv": _glVertexAttrib4fv,
  21403. "_glVertexAttribIPointer": _glVertexAttribIPointer,
  21404. "_glVertexAttribPointer": _glVertexAttribPointer,
  21405. "_glViewport": _glViewport,
  21406. "_gmtime": _gmtime,
  21407. "_gmtime_r": _gmtime_r,
  21408. "_inet_addr": _inet_addr,
  21409. "_llvm_ceil_f32": _llvm_ceil_f32,
  21410. "_llvm_ceil_f64": _llvm_ceil_f64,
  21411. "_llvm_copysign_f64": _llvm_copysign_f64,
  21412. "_llvm_cos_f32": _llvm_cos_f32,
  21413. "_llvm_cttz_i32": _llvm_cttz_i32,
  21414. "_llvm_eh_typeid_for": _llvm_eh_typeid_for,
  21415. "_llvm_exp2_f32": _llvm_exp2_f32,
  21416. "_llvm_fabs_f32": _llvm_fabs_f32,
  21417. "_llvm_fabs_f64": _llvm_fabs_f64,
  21418. "_llvm_floor_f32": _llvm_floor_f32,
  21419. "_llvm_floor_f64": _llvm_floor_f64,
  21420. "_llvm_log10_f32": _llvm_log10_f32,
  21421. "_llvm_log10_f64": _llvm_log10_f64,
  21422. "_llvm_log2_f32": _llvm_log2_f32,
  21423. "_llvm_pow_f64": _llvm_pow_f64,
  21424. "_llvm_sin_f32": _llvm_sin_f32,
  21425. "_llvm_sqrt_f32": _llvm_sqrt_f32,
  21426. "_llvm_trap": _llvm_trap,
  21427. "_llvm_trunc_f32": _llvm_trunc_f32,
  21428. "_localtime": _localtime,
  21429. "_localtime_r": _localtime_r,
  21430. "_longjmp": _longjmp,
  21431. "_mktime": _mktime,
  21432. "_pthread_cond_destroy": _pthread_cond_destroy,
  21433. "_pthread_cond_init": _pthread_cond_init,
  21434. "_pthread_cond_timedwait": _pthread_cond_timedwait,
  21435. "_pthread_cond_wait": _pthread_cond_wait,
  21436. "_pthread_getspecific": _pthread_getspecific,
  21437. "_pthread_key_create": _pthread_key_create,
  21438. "_pthread_key_delete": _pthread_key_delete,
  21439. "_pthread_mutex_destroy": _pthread_mutex_destroy,
  21440. "_pthread_mutex_init": _pthread_mutex_init,
  21441. "_pthread_mutexattr_destroy": _pthread_mutexattr_destroy,
  21442. "_pthread_mutexattr_init": _pthread_mutexattr_init,
  21443. "_pthread_mutexattr_setprotocol": _pthread_mutexattr_setprotocol,
  21444. "_pthread_mutexattr_settype": _pthread_mutexattr_settype,
  21445. "_pthread_once": _pthread_once,
  21446. "_pthread_setspecific": _pthread_setspecific,
  21447. "_sched_yield": _sched_yield,
  21448. "_setenv": _setenv,
  21449. "_sigaction": _sigaction,
  21450. "_sigemptyset": _sigemptyset,
  21451. "_strftime": _strftime,
  21452. "_sysconf": _sysconf,
  21453. "_time": _time,
  21454. "_tzset": _tzset,
  21455. "_unsetenv": _unsetenv,
  21456. "_utime": _utime,
  21457. "emscriptenWebGLComputeImageSize": emscriptenWebGLComputeImageSize,
  21458. "emscriptenWebGLGet": emscriptenWebGLGet,
  21459. "emscriptenWebGLGetBufferBinding": emscriptenWebGLGetBufferBinding,
  21460. "emscriptenWebGLGetHeapForType": emscriptenWebGLGetHeapForType,
  21461. "emscriptenWebGLGetIndexed": emscriptenWebGLGetIndexed,
  21462. "emscriptenWebGLGetShiftForType": emscriptenWebGLGetShiftForType,
  21463. "emscriptenWebGLGetTexPixelData": emscriptenWebGLGetTexPixelData,
  21464. "emscriptenWebGLGetUniform": emscriptenWebGLGetUniform,
  21465. "emscriptenWebGLGetVertexAttrib": emscriptenWebGLGetVertexAttrib,
  21466. "emscriptenWebGLValidateMapBufferTarget": emscriptenWebGLValidateMapBufferTarget,
  21467. "emscripten_get_canvas_element_size_js": emscripten_get_canvas_element_size_js,
  21468. "emscripten_set_canvas_element_size_js": emscripten_set_canvas_element_size_js,
  21469. "DYNAMICTOP_PTR": DYNAMICTOP_PTR,
  21470. "tempDoublePtr": tempDoublePtr,
  21471. "ABORT": ABORT,
  21472. "STACKTOP": STACKTOP,
  21473. "STACK_MAX": STACK_MAX
  21474. };
  21475. var asm = Module["asm"](Module.asmGlobalArg, Module.asmLibraryArg, buffer);
  21476. var real__InjectProfilerSample = asm["_InjectProfilerSample"];
  21477. asm["_InjectProfilerSample"] = (function() {
  21478. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21479. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21480. return real__InjectProfilerSample.apply(null, arguments);
  21481. });
  21482. var real__SendMessage = asm["_SendMessage"];
  21483. asm["_SendMessage"] = (function() {
  21484. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21485. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21486. return real__SendMessage.apply(null, arguments);
  21487. });
  21488. var real__SendMessageFloat = asm["_SendMessageFloat"];
  21489. asm["_SendMessageFloat"] = (function() {
  21490. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21491. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21492. return real__SendMessageFloat.apply(null, arguments);
  21493. });
  21494. var real__SendMessageString = asm["_SendMessageString"];
  21495. asm["_SendMessageString"] = (function() {
  21496. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21497. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21498. return real__SendMessageString.apply(null, arguments);
  21499. });
  21500. var real__SetFullscreen = asm["_SetFullscreen"];
  21501. asm["_SetFullscreen"] = (function() {
  21502. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21503. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21504. return real__SetFullscreen.apply(null, arguments);
  21505. });
  21506. var real___GLOBAL__sub_I_AIScriptingClasses_cpp = asm["__GLOBAL__sub_I_AIScriptingClasses_cpp"];
  21507. asm["__GLOBAL__sub_I_AIScriptingClasses_cpp"] = (function() {
  21508. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21509. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21510. return real___GLOBAL__sub_I_AIScriptingClasses_cpp.apply(null, arguments);
  21511. });
  21512. var real___GLOBAL__sub_I_AccessibilityScriptingClasses_cpp = asm["__GLOBAL__sub_I_AccessibilityScriptingClasses_cpp"];
  21513. asm["__GLOBAL__sub_I_AccessibilityScriptingClasses_cpp"] = (function() {
  21514. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21515. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21516. return real___GLOBAL__sub_I_AccessibilityScriptingClasses_cpp.apply(null, arguments);
  21517. });
  21518. var real___GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp = asm["__GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp"];
  21519. asm["__GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp"] = (function() {
  21520. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21521. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21522. return real___GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp.apply(null, arguments);
  21523. });
  21524. var real___GLOBAL__sub_I_AnimationClip_cpp = asm["__GLOBAL__sub_I_AnimationClip_cpp"];
  21525. asm["__GLOBAL__sub_I_AnimationClip_cpp"] = (function() {
  21526. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21527. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21528. return real___GLOBAL__sub_I_AnimationClip_cpp.apply(null, arguments);
  21529. });
  21530. var real___GLOBAL__sub_I_AnimationScriptingClasses_cpp = asm["__GLOBAL__sub_I_AnimationScriptingClasses_cpp"];
  21531. asm["__GLOBAL__sub_I_AnimationScriptingClasses_cpp"] = (function() {
  21532. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21533. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21534. return real___GLOBAL__sub_I_AnimationScriptingClasses_cpp.apply(null, arguments);
  21535. });
  21536. var real___GLOBAL__sub_I_AssetBundleFileSystem_cpp = asm["__GLOBAL__sub_I_AssetBundleFileSystem_cpp"];
  21537. asm["__GLOBAL__sub_I_AssetBundleFileSystem_cpp"] = (function() {
  21538. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21539. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21540. return real___GLOBAL__sub_I_AssetBundleFileSystem_cpp.apply(null, arguments);
  21541. });
  21542. var real___GLOBAL__sub_I_AssetBundleScriptingClasses_cpp = asm["__GLOBAL__sub_I_AssetBundleScriptingClasses_cpp"];
  21543. asm["__GLOBAL__sub_I_AssetBundleScriptingClasses_cpp"] = (function() {
  21544. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21545. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21546. return real___GLOBAL__sub_I_AssetBundleScriptingClasses_cpp.apply(null, arguments);
  21547. });
  21548. var real___GLOBAL__sub_I_AudioScriptingClasses_cpp = asm["__GLOBAL__sub_I_AudioScriptingClasses_cpp"];
  21549. asm["__GLOBAL__sub_I_AudioScriptingClasses_cpp"] = (function() {
  21550. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21551. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21552. return real___GLOBAL__sub_I_AudioScriptingClasses_cpp.apply(null, arguments);
  21553. });
  21554. var real___GLOBAL__sub_I_Avatar_cpp = asm["__GLOBAL__sub_I_Avatar_cpp"];
  21555. asm["__GLOBAL__sub_I_Avatar_cpp"] = (function() {
  21556. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21557. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21558. return real___GLOBAL__sub_I_Avatar_cpp.apply(null, arguments);
  21559. });
  21560. var real___GLOBAL__sub_I_ClothScriptingClasses_cpp = asm["__GLOBAL__sub_I_ClothScriptingClasses_cpp"];
  21561. asm["__GLOBAL__sub_I_ClothScriptingClasses_cpp"] = (function() {
  21562. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21563. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21564. return real___GLOBAL__sub_I_ClothScriptingClasses_cpp.apply(null, arguments);
  21565. });
  21566. var real___GLOBAL__sub_I_ConstraintJob_cpp = asm["__GLOBAL__sub_I_ConstraintJob_cpp"];
  21567. asm["__GLOBAL__sub_I_ConstraintJob_cpp"] = (function() {
  21568. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21569. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21570. return real___GLOBAL__sub_I_ConstraintJob_cpp.apply(null, arguments);
  21571. });
  21572. var real___GLOBAL__sub_I_ConstraintManager_cpp = asm["__GLOBAL__sub_I_ConstraintManager_cpp"];
  21573. asm["__GLOBAL__sub_I_ConstraintManager_cpp"] = (function() {
  21574. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21575. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21576. return real___GLOBAL__sub_I_ConstraintManager_cpp.apply(null, arguments);
  21577. });
  21578. var real___GLOBAL__sub_I_DirectorScriptingClasses_cpp = asm["__GLOBAL__sub_I_DirectorScriptingClasses_cpp"];
  21579. asm["__GLOBAL__sub_I_DirectorScriptingClasses_cpp"] = (function() {
  21580. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21581. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21582. return real___GLOBAL__sub_I_DirectorScriptingClasses_cpp.apply(null, arguments);
  21583. });
  21584. var real___GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_0_cpp = asm["__GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_0_cpp"];
  21585. asm["__GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_0_cpp"] = (function() {
  21586. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21587. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21588. return real___GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_0_cpp.apply(null, arguments);
  21589. });
  21590. var real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp = asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp"];
  21591. asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp"] = (function() {
  21592. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21593. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21594. return real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp.apply(null, arguments);
  21595. });
  21596. var real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp = asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp"];
  21597. asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp"] = (function() {
  21598. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21599. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21600. return real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp.apply(null, arguments);
  21601. });
  21602. var real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp = asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp"];
  21603. asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp"] = (function() {
  21604. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21605. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21606. return real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp.apply(null, arguments);
  21607. });
  21608. var real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp = asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp"];
  21609. asm["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp"] = (function() {
  21610. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21611. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21612. return real___GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp.apply(null, arguments);
  21613. });
  21614. var real___GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp = asm["__GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp"];
  21615. asm["__GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp"] = (function() {
  21616. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21617. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21618. return real___GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp.apply(null, arguments);
  21619. });
  21620. var real___GLOBAL__sub_I_External_Yoga_Yoga_0_cpp = asm["__GLOBAL__sub_I_External_Yoga_Yoga_0_cpp"];
  21621. asm["__GLOBAL__sub_I_External_Yoga_Yoga_0_cpp"] = (function() {
  21622. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21623. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21624. return real___GLOBAL__sub_I_External_Yoga_Yoga_0_cpp.apply(null, arguments);
  21625. });
  21626. var real___GLOBAL__sub_I_GUITexture_cpp = asm["__GLOBAL__sub_I_GUITexture_cpp"];
  21627. asm["__GLOBAL__sub_I_GUITexture_cpp"] = (function() {
  21628. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21629. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21630. return real___GLOBAL__sub_I_GUITexture_cpp.apply(null, arguments);
  21631. });
  21632. var real___GLOBAL__sub_I_GfxDeviceNull_cpp = asm["__GLOBAL__sub_I_GfxDeviceNull_cpp"];
  21633. asm["__GLOBAL__sub_I_GfxDeviceNull_cpp"] = (function() {
  21634. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21635. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21636. return real___GLOBAL__sub_I_GfxDeviceNull_cpp.apply(null, arguments);
  21637. });
  21638. var real___GLOBAL__sub_I_GridScriptingClasses_cpp = asm["__GLOBAL__sub_I_GridScriptingClasses_cpp"];
  21639. asm["__GLOBAL__sub_I_GridScriptingClasses_cpp"] = (function() {
  21640. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21641. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21642. return real___GLOBAL__sub_I_GridScriptingClasses_cpp.apply(null, arguments);
  21643. });
  21644. var real___GLOBAL__sub_I_IMGUIScriptingClasses_cpp = asm["__GLOBAL__sub_I_IMGUIScriptingClasses_cpp"];
  21645. asm["__GLOBAL__sub_I_IMGUIScriptingClasses_cpp"] = (function() {
  21646. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21647. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21648. return real___GLOBAL__sub_I_IMGUIScriptingClasses_cpp.apply(null, arguments);
  21649. });
  21650. var real___GLOBAL__sub_I_Il2CppCodeRegistration_cpp = asm["__GLOBAL__sub_I_Il2CppCodeRegistration_cpp"];
  21651. asm["__GLOBAL__sub_I_Il2CppCodeRegistration_cpp"] = (function() {
  21652. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21653. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21654. return real___GLOBAL__sub_I_Il2CppCodeRegistration_cpp.apply(null, arguments);
  21655. });
  21656. var real___GLOBAL__sub_I_InputLegacyModuleRegistration_cpp = asm["__GLOBAL__sub_I_InputLegacyModuleRegistration_cpp"];
  21657. asm["__GLOBAL__sub_I_InputLegacyModuleRegistration_cpp"] = (function() {
  21658. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21659. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21660. return real___GLOBAL__sub_I_InputLegacyModuleRegistration_cpp.apply(null, arguments);
  21661. });
  21662. var real___GLOBAL__sub_I_InputLegacyScriptingClasses_cpp = asm["__GLOBAL__sub_I_InputLegacyScriptingClasses_cpp"];
  21663. asm["__GLOBAL__sub_I_InputLegacyScriptingClasses_cpp"] = (function() {
  21664. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21665. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21666. return real___GLOBAL__sub_I_InputLegacyScriptingClasses_cpp.apply(null, arguments);
  21667. });
  21668. var real___GLOBAL__sub_I_InputScriptingClasses_cpp = asm["__GLOBAL__sub_I_InputScriptingClasses_cpp"];
  21669. asm["__GLOBAL__sub_I_InputScriptingClasses_cpp"] = (function() {
  21670. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21671. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21672. return real___GLOBAL__sub_I_InputScriptingClasses_cpp.apply(null, arguments);
  21673. });
  21674. var real___GLOBAL__sub_I_LineRenderer_cpp = asm["__GLOBAL__sub_I_LineRenderer_cpp"];
  21675. asm["__GLOBAL__sub_I_LineRenderer_cpp"] = (function() {
  21676. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21677. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21678. return real___GLOBAL__sub_I_LineRenderer_cpp.apply(null, arguments);
  21679. });
  21680. var real___GLOBAL__sub_I_LogAssert_cpp = asm["__GLOBAL__sub_I_LogAssert_cpp"];
  21681. asm["__GLOBAL__sub_I_LogAssert_cpp"] = (function() {
  21682. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21683. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21684. return real___GLOBAL__sub_I_LogAssert_cpp.apply(null, arguments);
  21685. });
  21686. var real___GLOBAL__sub_I_Lump_libil2cpp_gc_cpp = asm["__GLOBAL__sub_I_Lump_libil2cpp_gc_cpp"];
  21687. asm["__GLOBAL__sub_I_Lump_libil2cpp_gc_cpp"] = (function() {
  21688. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21689. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21690. return real___GLOBAL__sub_I_Lump_libil2cpp_gc_cpp.apply(null, arguments);
  21691. });
  21692. var real___GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp = asm["__GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp"];
  21693. asm["__GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp"] = (function() {
  21694. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21695. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21696. return real___GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp.apply(null, arguments);
  21697. });
  21698. var real___GLOBAL__sub_I_Lump_libil2cpp_os_cpp = asm["__GLOBAL__sub_I_Lump_libil2cpp_os_cpp"];
  21699. asm["__GLOBAL__sub_I_Lump_libil2cpp_os_cpp"] = (function() {
  21700. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21701. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21702. return real___GLOBAL__sub_I_Lump_libil2cpp_os_cpp.apply(null, arguments);
  21703. });
  21704. var real___GLOBAL__sub_I_Lump_libil2cpp_utils_cpp = asm["__GLOBAL__sub_I_Lump_libil2cpp_utils_cpp"];
  21705. asm["__GLOBAL__sub_I_Lump_libil2cpp_utils_cpp"] = (function() {
  21706. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21707. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21708. return real___GLOBAL__sub_I_Lump_libil2cpp_utils_cpp.apply(null, arguments);
  21709. });
  21710. var real___GLOBAL__sub_I_Lump_libil2cpp_vm_cpp = asm["__GLOBAL__sub_I_Lump_libil2cpp_vm_cpp"];
  21711. asm["__GLOBAL__sub_I_Lump_libil2cpp_vm_cpp"] = (function() {
  21712. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21713. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21714. return real___GLOBAL__sub_I_Lump_libil2cpp_vm_cpp.apply(null, arguments);
  21715. });
  21716. var real___GLOBAL__sub_I_Modules_AI_0_cpp = asm["__GLOBAL__sub_I_Modules_AI_0_cpp"];
  21717. asm["__GLOBAL__sub_I_Modules_AI_0_cpp"] = (function() {
  21718. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21719. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21720. return real___GLOBAL__sub_I_Modules_AI_0_cpp.apply(null, arguments);
  21721. });
  21722. var real___GLOBAL__sub_I_Modules_AI_Builder_0_cpp = asm["__GLOBAL__sub_I_Modules_AI_Builder_0_cpp"];
  21723. asm["__GLOBAL__sub_I_Modules_AI_Builder_0_cpp"] = (function() {
  21724. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21725. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21726. return real___GLOBAL__sub_I_Modules_AI_Builder_0_cpp.apply(null, arguments);
  21727. });
  21728. var real___GLOBAL__sub_I_Modules_AI_Crowd_0_cpp = asm["__GLOBAL__sub_I_Modules_AI_Crowd_0_cpp"];
  21729. asm["__GLOBAL__sub_I_Modules_AI_Crowd_0_cpp"] = (function() {
  21730. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21731. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21732. return real___GLOBAL__sub_I_Modules_AI_Crowd_0_cpp.apply(null, arguments);
  21733. });
  21734. var real___GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp = asm["__GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp"];
  21735. asm["__GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp"] = (function() {
  21736. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21737. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21738. return real___GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp.apply(null, arguments);
  21739. });
  21740. var real___GLOBAL__sub_I_Modules_AI_Obstacles_0_cpp = asm["__GLOBAL__sub_I_Modules_AI_Obstacles_0_cpp"];
  21741. asm["__GLOBAL__sub_I_Modules_AI_Obstacles_0_cpp"] = (function() {
  21742. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21743. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21744. return real___GLOBAL__sub_I_Modules_AI_Obstacles_0_cpp.apply(null, arguments);
  21745. });
  21746. var real___GLOBAL__sub_I_Modules_Animation_0_cpp = asm["__GLOBAL__sub_I_Modules_Animation_0_cpp"];
  21747. asm["__GLOBAL__sub_I_Modules_Animation_0_cpp"] = (function() {
  21748. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21749. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21750. return real___GLOBAL__sub_I_Modules_Animation_0_cpp.apply(null, arguments);
  21751. });
  21752. var real___GLOBAL__sub_I_Modules_Animation_1_cpp = asm["__GLOBAL__sub_I_Modules_Animation_1_cpp"];
  21753. asm["__GLOBAL__sub_I_Modules_Animation_1_cpp"] = (function() {
  21754. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21755. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21756. return real___GLOBAL__sub_I_Modules_Animation_1_cpp.apply(null, arguments);
  21757. });
  21758. var real___GLOBAL__sub_I_Modules_Animation_2_cpp = asm["__GLOBAL__sub_I_Modules_Animation_2_cpp"];
  21759. asm["__GLOBAL__sub_I_Modules_Animation_2_cpp"] = (function() {
  21760. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21761. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21762. return real___GLOBAL__sub_I_Modules_Animation_2_cpp.apply(null, arguments);
  21763. });
  21764. var real___GLOBAL__sub_I_Modules_Animation_3_cpp = asm["__GLOBAL__sub_I_Modules_Animation_3_cpp"];
  21765. asm["__GLOBAL__sub_I_Modules_Animation_3_cpp"] = (function() {
  21766. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21767. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21768. return real___GLOBAL__sub_I_Modules_Animation_3_cpp.apply(null, arguments);
  21769. });
  21770. var real___GLOBAL__sub_I_Modules_Animation_5_cpp = asm["__GLOBAL__sub_I_Modules_Animation_5_cpp"];
  21771. asm["__GLOBAL__sub_I_Modules_Animation_5_cpp"] = (function() {
  21772. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21773. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21774. return real___GLOBAL__sub_I_Modules_Animation_5_cpp.apply(null, arguments);
  21775. });
  21776. var real___GLOBAL__sub_I_Modules_Animation_6_cpp = asm["__GLOBAL__sub_I_Modules_Animation_6_cpp"];
  21777. asm["__GLOBAL__sub_I_Modules_Animation_6_cpp"] = (function() {
  21778. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21779. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21780. return real___GLOBAL__sub_I_Modules_Animation_6_cpp.apply(null, arguments);
  21781. });
  21782. var real___GLOBAL__sub_I_Modules_Animation_Director_0_cpp = asm["__GLOBAL__sub_I_Modules_Animation_Director_0_cpp"];
  21783. asm["__GLOBAL__sub_I_Modules_Animation_Director_0_cpp"] = (function() {
  21784. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21785. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21786. return real___GLOBAL__sub_I_Modules_Animation_Director_0_cpp.apply(null, arguments);
  21787. });
  21788. var real___GLOBAL__sub_I_Modules_Animation_Director_1_cpp = asm["__GLOBAL__sub_I_Modules_Animation_Director_1_cpp"];
  21789. asm["__GLOBAL__sub_I_Modules_Animation_Director_1_cpp"] = (function() {
  21790. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21791. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21792. return real___GLOBAL__sub_I_Modules_Animation_Director_1_cpp.apply(null, arguments);
  21793. });
  21794. var real___GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp"];
  21795. asm["__GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp"] = (function() {
  21796. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21797. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21798. return real___GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp.apply(null, arguments);
  21799. });
  21800. var real___GLOBAL__sub_I_Modules_AssetBundle_Public_1_cpp = asm["__GLOBAL__sub_I_Modules_AssetBundle_Public_1_cpp"];
  21801. asm["__GLOBAL__sub_I_Modules_AssetBundle_Public_1_cpp"] = (function() {
  21802. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21803. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21804. return real___GLOBAL__sub_I_Modules_AssetBundle_Public_1_cpp.apply(null, arguments);
  21805. });
  21806. var real___GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp = asm["__GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp"];
  21807. asm["__GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp"] = (function() {
  21808. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21809. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21810. return real___GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp.apply(null, arguments);
  21811. });
  21812. var real___GLOBAL__sub_I_Modules_Audio_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_Audio_Public_0_cpp"];
  21813. asm["__GLOBAL__sub_I_Modules_Audio_Public_0_cpp"] = (function() {
  21814. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21815. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21816. return real___GLOBAL__sub_I_Modules_Audio_Public_0_cpp.apply(null, arguments);
  21817. });
  21818. var real___GLOBAL__sub_I_Modules_Audio_Public_1_cpp = asm["__GLOBAL__sub_I_Modules_Audio_Public_1_cpp"];
  21819. asm["__GLOBAL__sub_I_Modules_Audio_Public_1_cpp"] = (function() {
  21820. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21821. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21822. return real___GLOBAL__sub_I_Modules_Audio_Public_1_cpp.apply(null, arguments);
  21823. });
  21824. var real___GLOBAL__sub_I_Modules_Audio_Public_3_cpp = asm["__GLOBAL__sub_I_Modules_Audio_Public_3_cpp"];
  21825. asm["__GLOBAL__sub_I_Modules_Audio_Public_3_cpp"] = (function() {
  21826. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21827. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21828. return real___GLOBAL__sub_I_Modules_Audio_Public_3_cpp.apply(null, arguments);
  21829. });
  21830. var real___GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp = asm["__GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp"];
  21831. asm["__GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp"] = (function() {
  21832. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21833. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21834. return real___GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp.apply(null, arguments);
  21835. });
  21836. var real___GLOBAL__sub_I_Modules_Audio_Public_sound_0_cpp = asm["__GLOBAL__sub_I_Modules_Audio_Public_sound_0_cpp"];
  21837. asm["__GLOBAL__sub_I_Modules_Audio_Public_sound_0_cpp"] = (function() {
  21838. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21839. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21840. return real___GLOBAL__sub_I_Modules_Audio_Public_sound_0_cpp.apply(null, arguments);
  21841. });
  21842. var real___GLOBAL__sub_I_Modules_Cloth_0_cpp = asm["__GLOBAL__sub_I_Modules_Cloth_0_cpp"];
  21843. asm["__GLOBAL__sub_I_Modules_Cloth_0_cpp"] = (function() {
  21844. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21845. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21846. return real___GLOBAL__sub_I_Modules_Cloth_0_cpp.apply(null, arguments);
  21847. });
  21848. var real___GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp"];
  21849. asm["__GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp"] = (function() {
  21850. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21851. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21852. return real___GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp.apply(null, arguments);
  21853. });
  21854. var real___GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp"];
  21855. asm["__GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp"] = (function() {
  21856. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21857. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21858. return real___GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp.apply(null, arguments);
  21859. });
  21860. var real___GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp = asm["__GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp"];
  21861. asm["__GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp"] = (function() {
  21862. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21863. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21864. return real___GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp.apply(null, arguments);
  21865. });
  21866. var real___GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp = asm["__GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp"];
  21867. asm["__GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp"] = (function() {
  21868. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21869. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21870. return real___GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp.apply(null, arguments);
  21871. });
  21872. var real___GLOBAL__sub_I_Modules_Grid_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_Grid_Public_0_cpp"];
  21873. asm["__GLOBAL__sub_I_Modules_Grid_Public_0_cpp"] = (function() {
  21874. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21875. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21876. return real___GLOBAL__sub_I_Modules_Grid_Public_0_cpp.apply(null, arguments);
  21877. });
  21878. var real___GLOBAL__sub_I_Modules_IMGUI_0_cpp = asm["__GLOBAL__sub_I_Modules_IMGUI_0_cpp"];
  21879. asm["__GLOBAL__sub_I_Modules_IMGUI_0_cpp"] = (function() {
  21880. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21881. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21882. return real___GLOBAL__sub_I_Modules_IMGUI_0_cpp.apply(null, arguments);
  21883. });
  21884. var real___GLOBAL__sub_I_Modules_IMGUI_1_cpp = asm["__GLOBAL__sub_I_Modules_IMGUI_1_cpp"];
  21885. asm["__GLOBAL__sub_I_Modules_IMGUI_1_cpp"] = (function() {
  21886. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21887. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21888. return real___GLOBAL__sub_I_Modules_IMGUI_1_cpp.apply(null, arguments);
  21889. });
  21890. var real___GLOBAL__sub_I_Modules_Input_Private_0_cpp = asm["__GLOBAL__sub_I_Modules_Input_Private_0_cpp"];
  21891. asm["__GLOBAL__sub_I_Modules_Input_Private_0_cpp"] = (function() {
  21892. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21893. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21894. return real___GLOBAL__sub_I_Modules_Input_Private_0_cpp.apply(null, arguments);
  21895. });
  21896. var real___GLOBAL__sub_I_Modules_ParticleSystem_0_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_0_cpp"];
  21897. asm["__GLOBAL__sub_I_Modules_ParticleSystem_0_cpp"] = (function() {
  21898. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21899. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21900. return real___GLOBAL__sub_I_Modules_ParticleSystem_0_cpp.apply(null, arguments);
  21901. });
  21902. var real___GLOBAL__sub_I_Modules_ParticleSystem_1_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_1_cpp"];
  21903. asm["__GLOBAL__sub_I_Modules_ParticleSystem_1_cpp"] = (function() {
  21904. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21905. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21906. return real___GLOBAL__sub_I_Modules_ParticleSystem_1_cpp.apply(null, arguments);
  21907. });
  21908. var real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_0_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_0_cpp"];
  21909. asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_0_cpp"] = (function() {
  21910. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21911. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21912. return real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_0_cpp.apply(null, arguments);
  21913. });
  21914. var real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp"];
  21915. asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp"] = (function() {
  21916. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21917. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21918. return real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp.apply(null, arguments);
  21919. });
  21920. var real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp"];
  21921. asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp"] = (function() {
  21922. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21923. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21924. return real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp.apply(null, arguments);
  21925. });
  21926. var real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp"];
  21927. asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp"] = (function() {
  21928. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21929. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21930. return real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp.apply(null, arguments);
  21931. });
  21932. var real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp"];
  21933. asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp"] = (function() {
  21934. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21935. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21936. return real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp.apply(null, arguments);
  21937. });
  21938. var real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp = asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp"];
  21939. asm["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp"] = (function() {
  21940. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21941. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21942. return real___GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp.apply(null, arguments);
  21943. });
  21944. var real___GLOBAL__sub_I_Modules_PerformanceReporting_0_cpp = asm["__GLOBAL__sub_I_Modules_PerformanceReporting_0_cpp"];
  21945. asm["__GLOBAL__sub_I_Modules_PerformanceReporting_0_cpp"] = (function() {
  21946. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21947. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21948. return real___GLOBAL__sub_I_Modules_PerformanceReporting_0_cpp.apply(null, arguments);
  21949. });
  21950. var real___GLOBAL__sub_I_Modules_Physics2D_0_cpp = asm["__GLOBAL__sub_I_Modules_Physics2D_0_cpp"];
  21951. asm["__GLOBAL__sub_I_Modules_Physics2D_0_cpp"] = (function() {
  21952. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21953. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21954. return real___GLOBAL__sub_I_Modules_Physics2D_0_cpp.apply(null, arguments);
  21955. });
  21956. var real___GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp"];
  21957. asm["__GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp"] = (function() {
  21958. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21959. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21960. return real___GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp.apply(null, arguments);
  21961. });
  21962. var real___GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp = asm["__GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp"];
  21963. asm["__GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp"] = (function() {
  21964. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21965. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21966. return real___GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp.apply(null, arguments);
  21967. });
  21968. var real___GLOBAL__sub_I_Modules_Physics_0_cpp = asm["__GLOBAL__sub_I_Modules_Physics_0_cpp"];
  21969. asm["__GLOBAL__sub_I_Modules_Physics_0_cpp"] = (function() {
  21970. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21971. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21972. return real___GLOBAL__sub_I_Modules_Physics_0_cpp.apply(null, arguments);
  21973. });
  21974. var real___GLOBAL__sub_I_Modules_Physics_1_cpp = asm["__GLOBAL__sub_I_Modules_Physics_1_cpp"];
  21975. asm["__GLOBAL__sub_I_Modules_Physics_1_cpp"] = (function() {
  21976. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21977. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21978. return real___GLOBAL__sub_I_Modules_Physics_1_cpp.apply(null, arguments);
  21979. });
  21980. var real___GLOBAL__sub_I_Modules_Physics_3_cpp = asm["__GLOBAL__sub_I_Modules_Physics_3_cpp"];
  21981. asm["__GLOBAL__sub_I_Modules_Physics_3_cpp"] = (function() {
  21982. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21983. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21984. return real___GLOBAL__sub_I_Modules_Physics_3_cpp.apply(null, arguments);
  21985. });
  21986. var real___GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp = asm["__GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp"];
  21987. asm["__GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp"] = (function() {
  21988. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21989. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21990. return real___GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp.apply(null, arguments);
  21991. });
  21992. var real___GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp = asm["__GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp"];
  21993. asm["__GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp"] = (function() {
  21994. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  21995. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  21996. return real___GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp.apply(null, arguments);
  21997. });
  21998. var real___GLOBAL__sub_I_Modules_Profiler_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_Profiler_Public_0_cpp"];
  21999. asm["__GLOBAL__sub_I_Modules_Profiler_Public_0_cpp"] = (function() {
  22000. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22001. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22002. return real___GLOBAL__sub_I_Modules_Profiler_Public_0_cpp.apply(null, arguments);
  22003. });
  22004. var real___GLOBAL__sub_I_Modules_Profiler_Runtime_0_cpp = asm["__GLOBAL__sub_I_Modules_Profiler_Runtime_0_cpp"];
  22005. asm["__GLOBAL__sub_I_Modules_Profiler_Runtime_0_cpp"] = (function() {
  22006. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22007. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22008. return real___GLOBAL__sub_I_Modules_Profiler_Runtime_0_cpp.apply(null, arguments);
  22009. });
  22010. var real___GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp = asm["__GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp"];
  22011. asm["__GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp"] = (function() {
  22012. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22013. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22014. return real___GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp.apply(null, arguments);
  22015. });
  22016. var real___GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp = asm["__GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp"];
  22017. asm["__GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp"] = (function() {
  22018. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22019. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22020. return real___GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp.apply(null, arguments);
  22021. });
  22022. var real___GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp = asm["__GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp"];
  22023. asm["__GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp"] = (function() {
  22024. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22025. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22026. return real___GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp.apply(null, arguments);
  22027. });
  22028. var real___GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp = asm["__GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp"];
  22029. asm["__GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp"] = (function() {
  22030. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22031. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22032. return real___GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp.apply(null, arguments);
  22033. });
  22034. var real___GLOBAL__sub_I_Modules_Subsystems_0_cpp = asm["__GLOBAL__sub_I_Modules_Subsystems_0_cpp"];
  22035. asm["__GLOBAL__sub_I_Modules_Subsystems_0_cpp"] = (function() {
  22036. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22037. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22038. return real___GLOBAL__sub_I_Modules_Subsystems_0_cpp.apply(null, arguments);
  22039. });
  22040. var real___GLOBAL__sub_I_Modules_TerrainPhysics_0_cpp = asm["__GLOBAL__sub_I_Modules_TerrainPhysics_0_cpp"];
  22041. asm["__GLOBAL__sub_I_Modules_TerrainPhysics_0_cpp"] = (function() {
  22042. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22043. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22044. return real___GLOBAL__sub_I_Modules_TerrainPhysics_0_cpp.apply(null, arguments);
  22045. });
  22046. var real___GLOBAL__sub_I_Modules_Terrain_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_Terrain_Public_0_cpp"];
  22047. asm["__GLOBAL__sub_I_Modules_Terrain_Public_0_cpp"] = (function() {
  22048. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22049. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22050. return real___GLOBAL__sub_I_Modules_Terrain_Public_0_cpp.apply(null, arguments);
  22051. });
  22052. var real___GLOBAL__sub_I_Modules_Terrain_Public_1_cpp = asm["__GLOBAL__sub_I_Modules_Terrain_Public_1_cpp"];
  22053. asm["__GLOBAL__sub_I_Modules_Terrain_Public_1_cpp"] = (function() {
  22054. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22055. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22056. return real___GLOBAL__sub_I_Modules_Terrain_Public_1_cpp.apply(null, arguments);
  22057. });
  22058. var real___GLOBAL__sub_I_Modules_Terrain_Public_2_cpp = asm["__GLOBAL__sub_I_Modules_Terrain_Public_2_cpp"];
  22059. asm["__GLOBAL__sub_I_Modules_Terrain_Public_2_cpp"] = (function() {
  22060. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22061. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22062. return real___GLOBAL__sub_I_Modules_Terrain_Public_2_cpp.apply(null, arguments);
  22063. });
  22064. var real___GLOBAL__sub_I_Modules_Terrain_Public_3_cpp = asm["__GLOBAL__sub_I_Modules_Terrain_Public_3_cpp"];
  22065. asm["__GLOBAL__sub_I_Modules_Terrain_Public_3_cpp"] = (function() {
  22066. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22067. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22068. return real___GLOBAL__sub_I_Modules_Terrain_Public_3_cpp.apply(null, arguments);
  22069. });
  22070. var real___GLOBAL__sub_I_Modules_Terrain_VR_0_cpp = asm["__GLOBAL__sub_I_Modules_Terrain_VR_0_cpp"];
  22071. asm["__GLOBAL__sub_I_Modules_Terrain_VR_0_cpp"] = (function() {
  22072. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22073. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22074. return real___GLOBAL__sub_I_Modules_Terrain_VR_0_cpp.apply(null, arguments);
  22075. });
  22076. var real___GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_cpp = asm["__GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_cpp"];
  22077. asm["__GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_cpp"] = (function() {
  22078. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22079. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22080. return real___GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_cpp.apply(null, arguments);
  22081. });
  22082. var real___GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp"];
  22083. asm["__GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp"] = (function() {
  22084. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22085. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22086. return real___GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp.apply(null, arguments);
  22087. });
  22088. var real___GLOBAL__sub_I_Modules_Tilemap_0_cpp = asm["__GLOBAL__sub_I_Modules_Tilemap_0_cpp"];
  22089. asm["__GLOBAL__sub_I_Modules_Tilemap_0_cpp"] = (function() {
  22090. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22091. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22092. return real___GLOBAL__sub_I_Modules_Tilemap_0_cpp.apply(null, arguments);
  22093. });
  22094. var real___GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp"];
  22095. asm["__GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp"] = (function() {
  22096. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22097. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22098. return real___GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp.apply(null, arguments);
  22099. });
  22100. var real___GLOBAL__sub_I_Modules_UIElements_0_cpp = asm["__GLOBAL__sub_I_Modules_UIElements_0_cpp"];
  22101. asm["__GLOBAL__sub_I_Modules_UIElements_0_cpp"] = (function() {
  22102. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22103. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22104. return real___GLOBAL__sub_I_Modules_UIElements_0_cpp.apply(null, arguments);
  22105. });
  22106. var real___GLOBAL__sub_I_Modules_UI_0_cpp = asm["__GLOBAL__sub_I_Modules_UI_0_cpp"];
  22107. asm["__GLOBAL__sub_I_Modules_UI_0_cpp"] = (function() {
  22108. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22109. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22110. return real___GLOBAL__sub_I_Modules_UI_0_cpp.apply(null, arguments);
  22111. });
  22112. var real___GLOBAL__sub_I_Modules_UI_1_cpp = asm["__GLOBAL__sub_I_Modules_UI_1_cpp"];
  22113. asm["__GLOBAL__sub_I_Modules_UI_1_cpp"] = (function() {
  22114. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22115. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22116. return real___GLOBAL__sub_I_Modules_UI_1_cpp.apply(null, arguments);
  22117. });
  22118. var real___GLOBAL__sub_I_Modules_UI_2_cpp = asm["__GLOBAL__sub_I_Modules_UI_2_cpp"];
  22119. asm["__GLOBAL__sub_I_Modules_UI_2_cpp"] = (function() {
  22120. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22121. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22122. return real___GLOBAL__sub_I_Modules_UI_2_cpp.apply(null, arguments);
  22123. });
  22124. var real___GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp = asm["__GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp"];
  22125. asm["__GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp"] = (function() {
  22126. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22127. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22128. return real___GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp.apply(null, arguments);
  22129. });
  22130. var real___GLOBAL__sub_I_Modules_UnityAnalytics_Dispatcher_0_cpp = asm["__GLOBAL__sub_I_Modules_UnityAnalytics_Dispatcher_0_cpp"];
  22131. asm["__GLOBAL__sub_I_Modules_UnityAnalytics_Dispatcher_0_cpp"] = (function() {
  22132. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22133. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22134. return real___GLOBAL__sub_I_Modules_UnityAnalytics_Dispatcher_0_cpp.apply(null, arguments);
  22135. });
  22136. var real___GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp"];
  22137. asm["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp"] = (function() {
  22138. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22139. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22140. return real___GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp.apply(null, arguments);
  22141. });
  22142. var real___GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp = asm["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp"];
  22143. asm["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp"] = (function() {
  22144. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22145. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22146. return real___GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp.apply(null, arguments);
  22147. });
  22148. var real___GLOBAL__sub_I_Modules_VFX_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_VFX_Public_0_cpp"];
  22149. asm["__GLOBAL__sub_I_Modules_VFX_Public_0_cpp"] = (function() {
  22150. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22151. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22152. return real___GLOBAL__sub_I_Modules_VFX_Public_0_cpp.apply(null, arguments);
  22153. });
  22154. var real___GLOBAL__sub_I_Modules_VFX_Public_1_cpp = asm["__GLOBAL__sub_I_Modules_VFX_Public_1_cpp"];
  22155. asm["__GLOBAL__sub_I_Modules_VFX_Public_1_cpp"] = (function() {
  22156. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22157. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22158. return real___GLOBAL__sub_I_Modules_VFX_Public_1_cpp.apply(null, arguments);
  22159. });
  22160. var real___GLOBAL__sub_I_Modules_VFX_Public_2_cpp = asm["__GLOBAL__sub_I_Modules_VFX_Public_2_cpp"];
  22161. asm["__GLOBAL__sub_I_Modules_VFX_Public_2_cpp"] = (function() {
  22162. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22163. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22164. return real___GLOBAL__sub_I_Modules_VFX_Public_2_cpp.apply(null, arguments);
  22165. });
  22166. var real___GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp = asm["__GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp"];
  22167. asm["__GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp"] = (function() {
  22168. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22169. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22170. return real___GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp.apply(null, arguments);
  22171. });
  22172. var real___GLOBAL__sub_I_Modules_VR_0_cpp = asm["__GLOBAL__sub_I_Modules_VR_0_cpp"];
  22173. asm["__GLOBAL__sub_I_Modules_VR_0_cpp"] = (function() {
  22174. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22175. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22176. return real___GLOBAL__sub_I_Modules_VR_0_cpp.apply(null, arguments);
  22177. });
  22178. var real___GLOBAL__sub_I_Modules_VR_2_cpp = asm["__GLOBAL__sub_I_Modules_VR_2_cpp"];
  22179. asm["__GLOBAL__sub_I_Modules_VR_2_cpp"] = (function() {
  22180. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22181. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22182. return real___GLOBAL__sub_I_Modules_VR_2_cpp.apply(null, arguments);
  22183. });
  22184. var real___GLOBAL__sub_I_Modules_VR_3_cpp = asm["__GLOBAL__sub_I_Modules_VR_3_cpp"];
  22185. asm["__GLOBAL__sub_I_Modules_VR_3_cpp"] = (function() {
  22186. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22187. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22188. return real___GLOBAL__sub_I_Modules_VR_3_cpp.apply(null, arguments);
  22189. });
  22190. var real___GLOBAL__sub_I_Modules_VR_PluginInterface_0_cpp = asm["__GLOBAL__sub_I_Modules_VR_PluginInterface_0_cpp"];
  22191. asm["__GLOBAL__sub_I_Modules_VR_PluginInterface_0_cpp"] = (function() {
  22192. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22193. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22194. return real___GLOBAL__sub_I_Modules_VR_PluginInterface_0_cpp.apply(null, arguments);
  22195. });
  22196. var real___GLOBAL__sub_I_Modules_Vehicles_0_cpp = asm["__GLOBAL__sub_I_Modules_Vehicles_0_cpp"];
  22197. asm["__GLOBAL__sub_I_Modules_Vehicles_0_cpp"] = (function() {
  22198. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22199. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22200. return real___GLOBAL__sub_I_Modules_Vehicles_0_cpp.apply(null, arguments);
  22201. });
  22202. var real___GLOBAL__sub_I_Modules_Video_Public_0_cpp = asm["__GLOBAL__sub_I_Modules_Video_Public_0_cpp"];
  22203. asm["__GLOBAL__sub_I_Modules_Video_Public_0_cpp"] = (function() {
  22204. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22205. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22206. return real___GLOBAL__sub_I_Modules_Video_Public_0_cpp.apply(null, arguments);
  22207. });
  22208. var real___GLOBAL__sub_I_Modules_Video_Public_Base_0_cpp = asm["__GLOBAL__sub_I_Modules_Video_Public_Base_0_cpp"];
  22209. asm["__GLOBAL__sub_I_Modules_Video_Public_Base_0_cpp"] = (function() {
  22210. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22211. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22212. return real___GLOBAL__sub_I_Modules_Video_Public_Base_0_cpp.apply(null, arguments);
  22213. });
  22214. var real___GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp = asm["__GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp"];
  22215. asm["__GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp"] = (function() {
  22216. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22217. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22218. return real___GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp.apply(null, arguments);
  22219. });
  22220. var real___GLOBAL__sub_I_ParticleSystemGeometryJob_cpp = asm["__GLOBAL__sub_I_ParticleSystemGeometryJob_cpp"];
  22221. asm["__GLOBAL__sub_I_ParticleSystemGeometryJob_cpp"] = (function() {
  22222. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22223. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22224. return real___GLOBAL__sub_I_ParticleSystemGeometryJob_cpp.apply(null, arguments);
  22225. });
  22226. var real___GLOBAL__sub_I_ParticleSystemRenderer_cpp = asm["__GLOBAL__sub_I_ParticleSystemRenderer_cpp"];
  22227. asm["__GLOBAL__sub_I_ParticleSystemRenderer_cpp"] = (function() {
  22228. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22229. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22230. return real___GLOBAL__sub_I_ParticleSystemRenderer_cpp.apply(null, arguments);
  22231. });
  22232. var real___GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp = asm["__GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp"];
  22233. asm["__GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp"] = (function() {
  22234. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22235. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22236. return real___GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp.apply(null, arguments);
  22237. });
  22238. var real___GLOBAL__sub_I_Physics2DScriptingClasses_cpp = asm["__GLOBAL__sub_I_Physics2DScriptingClasses_cpp"];
  22239. asm["__GLOBAL__sub_I_Physics2DScriptingClasses_cpp"] = (function() {
  22240. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22241. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22242. return real___GLOBAL__sub_I_Physics2DScriptingClasses_cpp.apply(null, arguments);
  22243. });
  22244. var real___GLOBAL__sub_I_PhysicsQuery_cpp = asm["__GLOBAL__sub_I_PhysicsQuery_cpp"];
  22245. asm["__GLOBAL__sub_I_PhysicsQuery_cpp"] = (function() {
  22246. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22247. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22248. return real___GLOBAL__sub_I_PhysicsQuery_cpp.apply(null, arguments);
  22249. });
  22250. var real___GLOBAL__sub_I_PhysicsScene_cpp = asm["__GLOBAL__sub_I_PhysicsScene_cpp"];
  22251. asm["__GLOBAL__sub_I_PhysicsScene_cpp"] = (function() {
  22252. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22253. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22254. return real___GLOBAL__sub_I_PhysicsScene_cpp.apply(null, arguments);
  22255. });
  22256. var real___GLOBAL__sub_I_PhysicsScriptingClasses_cpp = asm["__GLOBAL__sub_I_PhysicsScriptingClasses_cpp"];
  22257. asm["__GLOBAL__sub_I_PhysicsScriptingClasses_cpp"] = (function() {
  22258. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22259. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22260. return real___GLOBAL__sub_I_PhysicsScriptingClasses_cpp.apply(null, arguments);
  22261. });
  22262. var real___GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Platforms_WebGL_Source_0_cpp = asm["__GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Platforms_WebGL_Source_0_cpp"];
  22263. asm["__GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Platforms_WebGL_Source_0_cpp"] = (function() {
  22264. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22265. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22266. return real___GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Platforms_WebGL_Source_0_cpp.apply(null, arguments);
  22267. });
  22268. var real___GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp = asm["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp"];
  22269. asm["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp"] = (function() {
  22270. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22271. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22272. return real___GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp.apply(null, arguments);
  22273. });
  22274. var real___GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp = asm["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp"];
  22275. asm["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp"] = (function() {
  22276. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22277. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22278. return real___GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp.apply(null, arguments);
  22279. });
  22280. var real___GLOBAL__sub_I_Runtime_2D_Renderer_0_cpp = asm["__GLOBAL__sub_I_Runtime_2D_Renderer_0_cpp"];
  22281. asm["__GLOBAL__sub_I_Runtime_2D_Renderer_0_cpp"] = (function() {
  22282. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22283. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22284. return real___GLOBAL__sub_I_Runtime_2D_Renderer_0_cpp.apply(null, arguments);
  22285. });
  22286. var real___GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp = asm["__GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp"];
  22287. asm["__GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp"] = (function() {
  22288. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22289. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22290. return real___GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp.apply(null, arguments);
  22291. });
  22292. var real___GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp = asm["__GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp"];
  22293. asm["__GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp"] = (function() {
  22294. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22295. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22296. return real___GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp.apply(null, arguments);
  22297. });
  22298. var real___GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp = asm["__GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp"];
  22299. asm["__GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp"] = (function() {
  22300. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22301. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22302. return real___GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp.apply(null, arguments);
  22303. });
  22304. var real___GLOBAL__sub_I_Runtime_Allocator_0_cpp = asm["__GLOBAL__sub_I_Runtime_Allocator_0_cpp"];
  22305. asm["__GLOBAL__sub_I_Runtime_Allocator_0_cpp"] = (function() {
  22306. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22307. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22308. return real___GLOBAL__sub_I_Runtime_Allocator_0_cpp.apply(null, arguments);
  22309. });
  22310. var real___GLOBAL__sub_I_Runtime_Allocator_2_cpp = asm["__GLOBAL__sub_I_Runtime_Allocator_2_cpp"];
  22311. asm["__GLOBAL__sub_I_Runtime_Allocator_2_cpp"] = (function() {
  22312. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22313. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22314. return real___GLOBAL__sub_I_Runtime_Allocator_2_cpp.apply(null, arguments);
  22315. });
  22316. var real___GLOBAL__sub_I_Runtime_Allocator_3_cpp = asm["__GLOBAL__sub_I_Runtime_Allocator_3_cpp"];
  22317. asm["__GLOBAL__sub_I_Runtime_Allocator_3_cpp"] = (function() {
  22318. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22319. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22320. return real___GLOBAL__sub_I_Runtime_Allocator_3_cpp.apply(null, arguments);
  22321. });
  22322. var real___GLOBAL__sub_I_Runtime_Application_0_cpp = asm["__GLOBAL__sub_I_Runtime_Application_0_cpp"];
  22323. asm["__GLOBAL__sub_I_Runtime_Application_0_cpp"] = (function() {
  22324. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22325. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22326. return real___GLOBAL__sub_I_Runtime_Application_0_cpp.apply(null, arguments);
  22327. });
  22328. var real___GLOBAL__sub_I_Runtime_BaseClasses_0_cpp = asm["__GLOBAL__sub_I_Runtime_BaseClasses_0_cpp"];
  22329. asm["__GLOBAL__sub_I_Runtime_BaseClasses_0_cpp"] = (function() {
  22330. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22331. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22332. return real___GLOBAL__sub_I_Runtime_BaseClasses_0_cpp.apply(null, arguments);
  22333. });
  22334. var real___GLOBAL__sub_I_Runtime_BaseClasses_1_cpp = asm["__GLOBAL__sub_I_Runtime_BaseClasses_1_cpp"];
  22335. asm["__GLOBAL__sub_I_Runtime_BaseClasses_1_cpp"] = (function() {
  22336. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22337. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22338. return real___GLOBAL__sub_I_Runtime_BaseClasses_1_cpp.apply(null, arguments);
  22339. });
  22340. var real___GLOBAL__sub_I_Runtime_BaseClasses_2_cpp = asm["__GLOBAL__sub_I_Runtime_BaseClasses_2_cpp"];
  22341. asm["__GLOBAL__sub_I_Runtime_BaseClasses_2_cpp"] = (function() {
  22342. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22343. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22344. return real___GLOBAL__sub_I_Runtime_BaseClasses_2_cpp.apply(null, arguments);
  22345. });
  22346. var real___GLOBAL__sub_I_Runtime_BaseClasses_3_cpp = asm["__GLOBAL__sub_I_Runtime_BaseClasses_3_cpp"];
  22347. asm["__GLOBAL__sub_I_Runtime_BaseClasses_3_cpp"] = (function() {
  22348. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22349. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22350. return real___GLOBAL__sub_I_Runtime_BaseClasses_3_cpp.apply(null, arguments);
  22351. });
  22352. var real___GLOBAL__sub_I_Runtime_Burst_0_cpp = asm["__GLOBAL__sub_I_Runtime_Burst_0_cpp"];
  22353. asm["__GLOBAL__sub_I_Runtime_Burst_0_cpp"] = (function() {
  22354. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22355. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22356. return real___GLOBAL__sub_I_Runtime_Burst_0_cpp.apply(null, arguments);
  22357. });
  22358. var real___GLOBAL__sub_I_Runtime_Camera_0_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_0_cpp"];
  22359. asm["__GLOBAL__sub_I_Runtime_Camera_0_cpp"] = (function() {
  22360. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22361. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22362. return real___GLOBAL__sub_I_Runtime_Camera_0_cpp.apply(null, arguments);
  22363. });
  22364. var real___GLOBAL__sub_I_Runtime_Camera_1_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_1_cpp"];
  22365. asm["__GLOBAL__sub_I_Runtime_Camera_1_cpp"] = (function() {
  22366. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22367. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22368. return real___GLOBAL__sub_I_Runtime_Camera_1_cpp.apply(null, arguments);
  22369. });
  22370. var real___GLOBAL__sub_I_Runtime_Camera_2_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_2_cpp"];
  22371. asm["__GLOBAL__sub_I_Runtime_Camera_2_cpp"] = (function() {
  22372. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22373. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22374. return real___GLOBAL__sub_I_Runtime_Camera_2_cpp.apply(null, arguments);
  22375. });
  22376. var real___GLOBAL__sub_I_Runtime_Camera_3_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_3_cpp"];
  22377. asm["__GLOBAL__sub_I_Runtime_Camera_3_cpp"] = (function() {
  22378. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22379. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22380. return real___GLOBAL__sub_I_Runtime_Camera_3_cpp.apply(null, arguments);
  22381. });
  22382. var real___GLOBAL__sub_I_Runtime_Camera_4_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_4_cpp"];
  22383. asm["__GLOBAL__sub_I_Runtime_Camera_4_cpp"] = (function() {
  22384. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22385. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22386. return real___GLOBAL__sub_I_Runtime_Camera_4_cpp.apply(null, arguments);
  22387. });
  22388. var real___GLOBAL__sub_I_Runtime_Camera_5_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_5_cpp"];
  22389. asm["__GLOBAL__sub_I_Runtime_Camera_5_cpp"] = (function() {
  22390. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22391. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22392. return real___GLOBAL__sub_I_Runtime_Camera_5_cpp.apply(null, arguments);
  22393. });
  22394. var real___GLOBAL__sub_I_Runtime_Camera_6_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_6_cpp"];
  22395. asm["__GLOBAL__sub_I_Runtime_Camera_6_cpp"] = (function() {
  22396. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22397. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22398. return real___GLOBAL__sub_I_Runtime_Camera_6_cpp.apply(null, arguments);
  22399. });
  22400. var real___GLOBAL__sub_I_Runtime_Camera_7_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_7_cpp"];
  22401. asm["__GLOBAL__sub_I_Runtime_Camera_7_cpp"] = (function() {
  22402. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22403. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22404. return real___GLOBAL__sub_I_Runtime_Camera_7_cpp.apply(null, arguments);
  22405. });
  22406. var real___GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp"];
  22407. asm["__GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp"] = (function() {
  22408. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22409. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22410. return real___GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp.apply(null, arguments);
  22411. });
  22412. var real___GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp"];
  22413. asm["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp"] = (function() {
  22414. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22415. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22416. return real___GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp.apply(null, arguments);
  22417. });
  22418. var real___GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_cpp = asm["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_cpp"];
  22419. asm["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_cpp"] = (function() {
  22420. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22421. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22422. return real___GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_cpp.apply(null, arguments);
  22423. });
  22424. var real___GLOBAL__sub_I_Runtime_Containers_0_cpp = asm["__GLOBAL__sub_I_Runtime_Containers_0_cpp"];
  22425. asm["__GLOBAL__sub_I_Runtime_Containers_0_cpp"] = (function() {
  22426. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22427. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22428. return real___GLOBAL__sub_I_Runtime_Containers_0_cpp.apply(null, arguments);
  22429. });
  22430. var real___GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp = asm["__GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp"];
  22431. asm["__GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp"] = (function() {
  22432. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22433. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22434. return real___GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp.apply(null, arguments);
  22435. });
  22436. var real___GLOBAL__sub_I_Runtime_Director_Core_1_cpp = asm["__GLOBAL__sub_I_Runtime_Director_Core_1_cpp"];
  22437. asm["__GLOBAL__sub_I_Runtime_Director_Core_1_cpp"] = (function() {
  22438. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22439. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22440. return real___GLOBAL__sub_I_Runtime_Director_Core_1_cpp.apply(null, arguments);
  22441. });
  22442. var real___GLOBAL__sub_I_Runtime_File_0_cpp = asm["__GLOBAL__sub_I_Runtime_File_0_cpp"];
  22443. asm["__GLOBAL__sub_I_Runtime_File_0_cpp"] = (function() {
  22444. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22445. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22446. return real___GLOBAL__sub_I_Runtime_File_0_cpp.apply(null, arguments);
  22447. });
  22448. var real___GLOBAL__sub_I_Runtime_GameCode_0_cpp = asm["__GLOBAL__sub_I_Runtime_GameCode_0_cpp"];
  22449. asm["__GLOBAL__sub_I_Runtime_GameCode_0_cpp"] = (function() {
  22450. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22451. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22452. return real___GLOBAL__sub_I_Runtime_GameCode_0_cpp.apply(null, arguments);
  22453. });
  22454. var real___GLOBAL__sub_I_Runtime_Geometry_1_cpp = asm["__GLOBAL__sub_I_Runtime_Geometry_1_cpp"];
  22455. asm["__GLOBAL__sub_I_Runtime_Geometry_1_cpp"] = (function() {
  22456. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22457. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22458. return real___GLOBAL__sub_I_Runtime_Geometry_1_cpp.apply(null, arguments);
  22459. });
  22460. var real___GLOBAL__sub_I_Runtime_Geometry_2_cpp = asm["__GLOBAL__sub_I_Runtime_Geometry_2_cpp"];
  22461. asm["__GLOBAL__sub_I_Runtime_Geometry_2_cpp"] = (function() {
  22462. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22463. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22464. return real___GLOBAL__sub_I_Runtime_Geometry_2_cpp.apply(null, arguments);
  22465. });
  22466. var real___GLOBAL__sub_I_Runtime_GfxDevice_1_cpp = asm["__GLOBAL__sub_I_Runtime_GfxDevice_1_cpp"];
  22467. asm["__GLOBAL__sub_I_Runtime_GfxDevice_1_cpp"] = (function() {
  22468. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22469. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22470. return real___GLOBAL__sub_I_Runtime_GfxDevice_1_cpp.apply(null, arguments);
  22471. });
  22472. var real___GLOBAL__sub_I_Runtime_GfxDevice_2_cpp = asm["__GLOBAL__sub_I_Runtime_GfxDevice_2_cpp"];
  22473. asm["__GLOBAL__sub_I_Runtime_GfxDevice_2_cpp"] = (function() {
  22474. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22475. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22476. return real___GLOBAL__sub_I_Runtime_GfxDevice_2_cpp.apply(null, arguments);
  22477. });
  22478. var real___GLOBAL__sub_I_Runtime_GfxDevice_3_cpp = asm["__GLOBAL__sub_I_Runtime_GfxDevice_3_cpp"];
  22479. asm["__GLOBAL__sub_I_Runtime_GfxDevice_3_cpp"] = (function() {
  22480. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22481. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22482. return real___GLOBAL__sub_I_Runtime_GfxDevice_3_cpp.apply(null, arguments);
  22483. });
  22484. var real___GLOBAL__sub_I_Runtime_GfxDevice_4_cpp = asm["__GLOBAL__sub_I_Runtime_GfxDevice_4_cpp"];
  22485. asm["__GLOBAL__sub_I_Runtime_GfxDevice_4_cpp"] = (function() {
  22486. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22487. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22488. return real___GLOBAL__sub_I_Runtime_GfxDevice_4_cpp.apply(null, arguments);
  22489. });
  22490. var real___GLOBAL__sub_I_Runtime_GfxDevice_5_cpp = asm["__GLOBAL__sub_I_Runtime_GfxDevice_5_cpp"];
  22491. asm["__GLOBAL__sub_I_Runtime_GfxDevice_5_cpp"] = (function() {
  22492. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22493. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22494. return real___GLOBAL__sub_I_Runtime_GfxDevice_5_cpp.apply(null, arguments);
  22495. });
  22496. var real___GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp = asm["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp"];
  22497. asm["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp"] = (function() {
  22498. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22499. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22500. return real___GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp.apply(null, arguments);
  22501. });
  22502. var real___GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp = asm["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp"];
  22503. asm["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp"] = (function() {
  22504. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22505. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22506. return real___GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp.apply(null, arguments);
  22507. });
  22508. var real___GLOBAL__sub_I_Runtime_Graphics_0_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_0_cpp"];
  22509. asm["__GLOBAL__sub_I_Runtime_Graphics_0_cpp"] = (function() {
  22510. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22511. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22512. return real___GLOBAL__sub_I_Runtime_Graphics_0_cpp.apply(null, arguments);
  22513. });
  22514. var real___GLOBAL__sub_I_Runtime_Graphics_10_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_10_cpp"];
  22515. asm["__GLOBAL__sub_I_Runtime_Graphics_10_cpp"] = (function() {
  22516. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22517. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22518. return real___GLOBAL__sub_I_Runtime_Graphics_10_cpp.apply(null, arguments);
  22519. });
  22520. var real___GLOBAL__sub_I_Runtime_Graphics_11_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_11_cpp"];
  22521. asm["__GLOBAL__sub_I_Runtime_Graphics_11_cpp"] = (function() {
  22522. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22523. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22524. return real___GLOBAL__sub_I_Runtime_Graphics_11_cpp.apply(null, arguments);
  22525. });
  22526. var real___GLOBAL__sub_I_Runtime_Graphics_12_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_12_cpp"];
  22527. asm["__GLOBAL__sub_I_Runtime_Graphics_12_cpp"] = (function() {
  22528. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22529. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22530. return real___GLOBAL__sub_I_Runtime_Graphics_12_cpp.apply(null, arguments);
  22531. });
  22532. var real___GLOBAL__sub_I_Runtime_Graphics_1_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_1_cpp"];
  22533. asm["__GLOBAL__sub_I_Runtime_Graphics_1_cpp"] = (function() {
  22534. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22535. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22536. return real___GLOBAL__sub_I_Runtime_Graphics_1_cpp.apply(null, arguments);
  22537. });
  22538. var real___GLOBAL__sub_I_Runtime_Graphics_2_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_2_cpp"];
  22539. asm["__GLOBAL__sub_I_Runtime_Graphics_2_cpp"] = (function() {
  22540. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22541. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22542. return real___GLOBAL__sub_I_Runtime_Graphics_2_cpp.apply(null, arguments);
  22543. });
  22544. var real___GLOBAL__sub_I_Runtime_Graphics_4_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_4_cpp"];
  22545. asm["__GLOBAL__sub_I_Runtime_Graphics_4_cpp"] = (function() {
  22546. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22547. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22548. return real___GLOBAL__sub_I_Runtime_Graphics_4_cpp.apply(null, arguments);
  22549. });
  22550. var real___GLOBAL__sub_I_Runtime_Graphics_5_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_5_cpp"];
  22551. asm["__GLOBAL__sub_I_Runtime_Graphics_5_cpp"] = (function() {
  22552. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22553. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22554. return real___GLOBAL__sub_I_Runtime_Graphics_5_cpp.apply(null, arguments);
  22555. });
  22556. var real___GLOBAL__sub_I_Runtime_Graphics_6_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_6_cpp"];
  22557. asm["__GLOBAL__sub_I_Runtime_Graphics_6_cpp"] = (function() {
  22558. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22559. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22560. return real___GLOBAL__sub_I_Runtime_Graphics_6_cpp.apply(null, arguments);
  22561. });
  22562. var real___GLOBAL__sub_I_Runtime_Graphics_8_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_8_cpp"];
  22563. asm["__GLOBAL__sub_I_Runtime_Graphics_8_cpp"] = (function() {
  22564. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22565. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22566. return real___GLOBAL__sub_I_Runtime_Graphics_8_cpp.apply(null, arguments);
  22567. });
  22568. var real___GLOBAL__sub_I_Runtime_Graphics_9_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_9_cpp"];
  22569. asm["__GLOBAL__sub_I_Runtime_Graphics_9_cpp"] = (function() {
  22570. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22571. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22572. return real___GLOBAL__sub_I_Runtime_Graphics_9_cpp.apply(null, arguments);
  22573. });
  22574. var real___GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp"];
  22575. asm["__GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp"] = (function() {
  22576. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22577. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22578. return real___GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp.apply(null, arguments);
  22579. });
  22580. var real___GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp"];
  22581. asm["__GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp"] = (function() {
  22582. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22583. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22584. return real___GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp.apply(null, arguments);
  22585. });
  22586. var real___GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp"];
  22587. asm["__GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp"] = (function() {
  22588. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22589. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22590. return real___GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp.apply(null, arguments);
  22591. });
  22592. var real___GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp"];
  22593. asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp"] = (function() {
  22594. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22595. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22596. return real___GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp.apply(null, arguments);
  22597. });
  22598. var real___GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp"];
  22599. asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp"] = (function() {
  22600. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22601. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22602. return real___GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp.apply(null, arguments);
  22603. });
  22604. var real___GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp"];
  22605. asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp"] = (function() {
  22606. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22607. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22608. return real___GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp.apply(null, arguments);
  22609. });
  22610. var real___GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp"];
  22611. asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp"] = (function() {
  22612. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22613. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22614. return real___GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp.apply(null, arguments);
  22615. });
  22616. var real___GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp"];
  22617. asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp"] = (function() {
  22618. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22619. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22620. return real___GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp.apply(null, arguments);
  22621. });
  22622. var real___GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp"];
  22623. asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp"] = (function() {
  22624. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22625. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22626. return real___GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp.apply(null, arguments);
  22627. });
  22628. var real___GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp"];
  22629. asm["__GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp"] = (function() {
  22630. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22631. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22632. return real___GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp.apply(null, arguments);
  22633. });
  22634. var real___GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp"];
  22635. asm["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp"] = (function() {
  22636. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22637. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22638. return real___GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp.apply(null, arguments);
  22639. });
  22640. var real___GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp = asm["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp"];
  22641. asm["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp"] = (function() {
  22642. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22643. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22644. return real___GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp.apply(null, arguments);
  22645. });
  22646. var real___GLOBAL__sub_I_Runtime_Input_0_cpp = asm["__GLOBAL__sub_I_Runtime_Input_0_cpp"];
  22647. asm["__GLOBAL__sub_I_Runtime_Input_0_cpp"] = (function() {
  22648. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22649. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22650. return real___GLOBAL__sub_I_Runtime_Input_0_cpp.apply(null, arguments);
  22651. });
  22652. var real___GLOBAL__sub_I_Runtime_Interfaces_0_cpp = asm["__GLOBAL__sub_I_Runtime_Interfaces_0_cpp"];
  22653. asm["__GLOBAL__sub_I_Runtime_Interfaces_0_cpp"] = (function() {
  22654. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22655. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22656. return real___GLOBAL__sub_I_Runtime_Interfaces_0_cpp.apply(null, arguments);
  22657. });
  22658. var real___GLOBAL__sub_I_Runtime_Interfaces_1_cpp = asm["__GLOBAL__sub_I_Runtime_Interfaces_1_cpp"];
  22659. asm["__GLOBAL__sub_I_Runtime_Interfaces_1_cpp"] = (function() {
  22660. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22661. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22662. return real___GLOBAL__sub_I_Runtime_Interfaces_1_cpp.apply(null, arguments);
  22663. });
  22664. var real___GLOBAL__sub_I_Runtime_Interfaces_2_cpp = asm["__GLOBAL__sub_I_Runtime_Interfaces_2_cpp"];
  22665. asm["__GLOBAL__sub_I_Runtime_Interfaces_2_cpp"] = (function() {
  22666. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22667. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22668. return real___GLOBAL__sub_I_Runtime_Interfaces_2_cpp.apply(null, arguments);
  22669. });
  22670. var real___GLOBAL__sub_I_Runtime_Jobs_0_cpp = asm["__GLOBAL__sub_I_Runtime_Jobs_0_cpp"];
  22671. asm["__GLOBAL__sub_I_Runtime_Jobs_0_cpp"] = (function() {
  22672. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22673. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22674. return real___GLOBAL__sub_I_Runtime_Jobs_0_cpp.apply(null, arguments);
  22675. });
  22676. var real___GLOBAL__sub_I_Runtime_Jobs_1_cpp = asm["__GLOBAL__sub_I_Runtime_Jobs_1_cpp"];
  22677. asm["__GLOBAL__sub_I_Runtime_Jobs_1_cpp"] = (function() {
  22678. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22679. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22680. return real___GLOBAL__sub_I_Runtime_Jobs_1_cpp.apply(null, arguments);
  22681. });
  22682. var real___GLOBAL__sub_I_Runtime_Jobs_2_cpp = asm["__GLOBAL__sub_I_Runtime_Jobs_2_cpp"];
  22683. asm["__GLOBAL__sub_I_Runtime_Jobs_2_cpp"] = (function() {
  22684. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22685. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22686. return real___GLOBAL__sub_I_Runtime_Jobs_2_cpp.apply(null, arguments);
  22687. });
  22688. var real___GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp = asm["__GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp"];
  22689. asm["__GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp"] = (function() {
  22690. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22691. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22692. return real___GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp.apply(null, arguments);
  22693. });
  22694. var real___GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp = asm["__GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp"];
  22695. asm["__GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp"] = (function() {
  22696. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22697. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22698. return real___GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp.apply(null, arguments);
  22699. });
  22700. var real___GLOBAL__sub_I_Runtime_Math_2_cpp = asm["__GLOBAL__sub_I_Runtime_Math_2_cpp"];
  22701. asm["__GLOBAL__sub_I_Runtime_Math_2_cpp"] = (function() {
  22702. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22703. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22704. return real___GLOBAL__sub_I_Runtime_Math_2_cpp.apply(null, arguments);
  22705. });
  22706. var real___GLOBAL__sub_I_Runtime_Math_Random_0_cpp = asm["__GLOBAL__sub_I_Runtime_Math_Random_0_cpp"];
  22707. asm["__GLOBAL__sub_I_Runtime_Math_Random_0_cpp"] = (function() {
  22708. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22709. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22710. return real___GLOBAL__sub_I_Runtime_Math_Random_0_cpp.apply(null, arguments);
  22711. });
  22712. var real___GLOBAL__sub_I_Runtime_Misc_0_cpp = asm["__GLOBAL__sub_I_Runtime_Misc_0_cpp"];
  22713. asm["__GLOBAL__sub_I_Runtime_Misc_0_cpp"] = (function() {
  22714. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22715. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22716. return real___GLOBAL__sub_I_Runtime_Misc_0_cpp.apply(null, arguments);
  22717. });
  22718. var real___GLOBAL__sub_I_Runtime_Misc_1_cpp = asm["__GLOBAL__sub_I_Runtime_Misc_1_cpp"];
  22719. asm["__GLOBAL__sub_I_Runtime_Misc_1_cpp"] = (function() {
  22720. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22721. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22722. return real___GLOBAL__sub_I_Runtime_Misc_1_cpp.apply(null, arguments);
  22723. });
  22724. var real___GLOBAL__sub_I_Runtime_Misc_2_cpp = asm["__GLOBAL__sub_I_Runtime_Misc_2_cpp"];
  22725. asm["__GLOBAL__sub_I_Runtime_Misc_2_cpp"] = (function() {
  22726. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22727. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22728. return real___GLOBAL__sub_I_Runtime_Misc_2_cpp.apply(null, arguments);
  22729. });
  22730. var real___GLOBAL__sub_I_Runtime_Misc_3_cpp = asm["__GLOBAL__sub_I_Runtime_Misc_3_cpp"];
  22731. asm["__GLOBAL__sub_I_Runtime_Misc_3_cpp"] = (function() {
  22732. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22733. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22734. return real___GLOBAL__sub_I_Runtime_Misc_3_cpp.apply(null, arguments);
  22735. });
  22736. var real___GLOBAL__sub_I_Runtime_Misc_4_cpp = asm["__GLOBAL__sub_I_Runtime_Misc_4_cpp"];
  22737. asm["__GLOBAL__sub_I_Runtime_Misc_4_cpp"] = (function() {
  22738. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22739. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22740. return real___GLOBAL__sub_I_Runtime_Misc_4_cpp.apply(null, arguments);
  22741. });
  22742. var real___GLOBAL__sub_I_Runtime_Misc_5_cpp = asm["__GLOBAL__sub_I_Runtime_Misc_5_cpp"];
  22743. asm["__GLOBAL__sub_I_Runtime_Misc_5_cpp"] = (function() {
  22744. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22745. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22746. return real___GLOBAL__sub_I_Runtime_Misc_5_cpp.apply(null, arguments);
  22747. });
  22748. var real___GLOBAL__sub_I_Runtime_Modules_0_cpp = asm["__GLOBAL__sub_I_Runtime_Modules_0_cpp"];
  22749. asm["__GLOBAL__sub_I_Runtime_Modules_0_cpp"] = (function() {
  22750. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22751. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22752. return real___GLOBAL__sub_I_Runtime_Modules_0_cpp.apply(null, arguments);
  22753. });
  22754. var real___GLOBAL__sub_I_Runtime_Mono_0_cpp = asm["__GLOBAL__sub_I_Runtime_Mono_0_cpp"];
  22755. asm["__GLOBAL__sub_I_Runtime_Mono_0_cpp"] = (function() {
  22756. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22757. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22758. return real___GLOBAL__sub_I_Runtime_Mono_0_cpp.apply(null, arguments);
  22759. });
  22760. var real___GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp = asm["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp"];
  22761. asm["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp"] = (function() {
  22762. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22763. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22764. return real___GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp.apply(null, arguments);
  22765. });
  22766. var real___GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp = asm["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp"];
  22767. asm["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp"] = (function() {
  22768. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22769. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22770. return real___GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp.apply(null, arguments);
  22771. });
  22772. var real___GLOBAL__sub_I_Runtime_Network_0_cpp = asm["__GLOBAL__sub_I_Runtime_Network_0_cpp"];
  22773. asm["__GLOBAL__sub_I_Runtime_Network_0_cpp"] = (function() {
  22774. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22775. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22776. return real___GLOBAL__sub_I_Runtime_Network_0_cpp.apply(null, arguments);
  22777. });
  22778. var real___GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp = asm["__GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp"];
  22779. asm["__GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp"] = (function() {
  22780. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22781. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22782. return real___GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp.apply(null, arguments);
  22783. });
  22784. var real___GLOBAL__sub_I_Runtime_PluginInterface_0_cpp = asm["__GLOBAL__sub_I_Runtime_PluginInterface_0_cpp"];
  22785. asm["__GLOBAL__sub_I_Runtime_PluginInterface_0_cpp"] = (function() {
  22786. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22787. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22788. return real___GLOBAL__sub_I_Runtime_PluginInterface_0_cpp.apply(null, arguments);
  22789. });
  22790. var real___GLOBAL__sub_I_Runtime_PreloadManager_0_cpp = asm["__GLOBAL__sub_I_Runtime_PreloadManager_0_cpp"];
  22791. asm["__GLOBAL__sub_I_Runtime_PreloadManager_0_cpp"] = (function() {
  22792. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22793. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22794. return real___GLOBAL__sub_I_Runtime_PreloadManager_0_cpp.apply(null, arguments);
  22795. });
  22796. var real___GLOBAL__sub_I_Runtime_Profiler_0_cpp = asm["__GLOBAL__sub_I_Runtime_Profiler_0_cpp"];
  22797. asm["__GLOBAL__sub_I_Runtime_Profiler_0_cpp"] = (function() {
  22798. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22799. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22800. return real___GLOBAL__sub_I_Runtime_Profiler_0_cpp.apply(null, arguments);
  22801. });
  22802. var real___GLOBAL__sub_I_Runtime_Profiler_1_cpp = asm["__GLOBAL__sub_I_Runtime_Profiler_1_cpp"];
  22803. asm["__GLOBAL__sub_I_Runtime_Profiler_1_cpp"] = (function() {
  22804. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22805. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22806. return real___GLOBAL__sub_I_Runtime_Profiler_1_cpp.apply(null, arguments);
  22807. });
  22808. var real___GLOBAL__sub_I_Runtime_Profiler_2_cpp = asm["__GLOBAL__sub_I_Runtime_Profiler_2_cpp"];
  22809. asm["__GLOBAL__sub_I_Runtime_Profiler_2_cpp"] = (function() {
  22810. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22811. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22812. return real___GLOBAL__sub_I_Runtime_Profiler_2_cpp.apply(null, arguments);
  22813. });
  22814. var real___GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp = asm["__GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp"];
  22815. asm["__GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp"] = (function() {
  22816. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22817. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22818. return real___GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp.apply(null, arguments);
  22819. });
  22820. var real___GLOBAL__sub_I_Runtime_SceneManager_0_cpp = asm["__GLOBAL__sub_I_Runtime_SceneManager_0_cpp"];
  22821. asm["__GLOBAL__sub_I_Runtime_SceneManager_0_cpp"] = (function() {
  22822. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22823. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22824. return real___GLOBAL__sub_I_Runtime_SceneManager_0_cpp.apply(null, arguments);
  22825. });
  22826. var real___GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp = asm["__GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp"];
  22827. asm["__GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp"] = (function() {
  22828. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22829. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22830. return real___GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp.apply(null, arguments);
  22831. });
  22832. var real___GLOBAL__sub_I_Runtime_Scripting_0_cpp = asm["__GLOBAL__sub_I_Runtime_Scripting_0_cpp"];
  22833. asm["__GLOBAL__sub_I_Runtime_Scripting_0_cpp"] = (function() {
  22834. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22835. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22836. return real___GLOBAL__sub_I_Runtime_Scripting_0_cpp.apply(null, arguments);
  22837. });
  22838. var real___GLOBAL__sub_I_Runtime_Scripting_2_cpp = asm["__GLOBAL__sub_I_Runtime_Scripting_2_cpp"];
  22839. asm["__GLOBAL__sub_I_Runtime_Scripting_2_cpp"] = (function() {
  22840. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22841. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22842. return real___GLOBAL__sub_I_Runtime_Scripting_2_cpp.apply(null, arguments);
  22843. });
  22844. var real___GLOBAL__sub_I_Runtime_Scripting_3_cpp = asm["__GLOBAL__sub_I_Runtime_Scripting_3_cpp"];
  22845. asm["__GLOBAL__sub_I_Runtime_Scripting_3_cpp"] = (function() {
  22846. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22847. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22848. return real___GLOBAL__sub_I_Runtime_Scripting_3_cpp.apply(null, arguments);
  22849. });
  22850. var real___GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp = asm["__GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp"];
  22851. asm["__GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp"] = (function() {
  22852. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22853. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22854. return real___GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp.apply(null, arguments);
  22855. });
  22856. var real___GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp = asm["__GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp"];
  22857. asm["__GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp"] = (function() {
  22858. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22859. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22860. return real___GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp.apply(null, arguments);
  22861. });
  22862. var real___GLOBAL__sub_I_Runtime_Serialize_0_cpp = asm["__GLOBAL__sub_I_Runtime_Serialize_0_cpp"];
  22863. asm["__GLOBAL__sub_I_Runtime_Serialize_0_cpp"] = (function() {
  22864. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22865. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22866. return real___GLOBAL__sub_I_Runtime_Serialize_0_cpp.apply(null, arguments);
  22867. });
  22868. var real___GLOBAL__sub_I_Runtime_Serialize_1_cpp = asm["__GLOBAL__sub_I_Runtime_Serialize_1_cpp"];
  22869. asm["__GLOBAL__sub_I_Runtime_Serialize_1_cpp"] = (function() {
  22870. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22871. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22872. return real___GLOBAL__sub_I_Runtime_Serialize_1_cpp.apply(null, arguments);
  22873. });
  22874. var real___GLOBAL__sub_I_Runtime_Serialize_2_cpp = asm["__GLOBAL__sub_I_Runtime_Serialize_2_cpp"];
  22875. asm["__GLOBAL__sub_I_Runtime_Serialize_2_cpp"] = (function() {
  22876. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22877. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22878. return real___GLOBAL__sub_I_Runtime_Serialize_2_cpp.apply(null, arguments);
  22879. });
  22880. var real___GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp = asm["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp"];
  22881. asm["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp"] = (function() {
  22882. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22883. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22884. return real___GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp.apply(null, arguments);
  22885. });
  22886. var real___GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp = asm["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp"];
  22887. asm["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp"] = (function() {
  22888. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22889. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22890. return real___GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp.apply(null, arguments);
  22891. });
  22892. var real___GLOBAL__sub_I_Runtime_Shaders_0_cpp = asm["__GLOBAL__sub_I_Runtime_Shaders_0_cpp"];
  22893. asm["__GLOBAL__sub_I_Runtime_Shaders_0_cpp"] = (function() {
  22894. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22895. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22896. return real___GLOBAL__sub_I_Runtime_Shaders_0_cpp.apply(null, arguments);
  22897. });
  22898. var real___GLOBAL__sub_I_Runtime_Shaders_1_cpp = asm["__GLOBAL__sub_I_Runtime_Shaders_1_cpp"];
  22899. asm["__GLOBAL__sub_I_Runtime_Shaders_1_cpp"] = (function() {
  22900. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22901. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22902. return real___GLOBAL__sub_I_Runtime_Shaders_1_cpp.apply(null, arguments);
  22903. });
  22904. var real___GLOBAL__sub_I_Runtime_Shaders_2_cpp = asm["__GLOBAL__sub_I_Runtime_Shaders_2_cpp"];
  22905. asm["__GLOBAL__sub_I_Runtime_Shaders_2_cpp"] = (function() {
  22906. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22907. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22908. return real___GLOBAL__sub_I_Runtime_Shaders_2_cpp.apply(null, arguments);
  22909. });
  22910. var real___GLOBAL__sub_I_Runtime_Shaders_3_cpp = asm["__GLOBAL__sub_I_Runtime_Shaders_3_cpp"];
  22911. asm["__GLOBAL__sub_I_Runtime_Shaders_3_cpp"] = (function() {
  22912. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22913. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22914. return real___GLOBAL__sub_I_Runtime_Shaders_3_cpp.apply(null, arguments);
  22915. });
  22916. var real___GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp = asm["__GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp"];
  22917. asm["__GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp"] = (function() {
  22918. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22919. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22920. return real___GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp.apply(null, arguments);
  22921. });
  22922. var real___GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp = asm["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp"];
  22923. asm["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp"] = (function() {
  22924. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22925. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22926. return real___GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp.apply(null, arguments);
  22927. });
  22928. var real___GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp = asm["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp"];
  22929. asm["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp"] = (function() {
  22930. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22931. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22932. return real___GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp.apply(null, arguments);
  22933. });
  22934. var real___GLOBAL__sub_I_Runtime_Streaming_0_cpp = asm["__GLOBAL__sub_I_Runtime_Streaming_0_cpp"];
  22935. asm["__GLOBAL__sub_I_Runtime_Streaming_0_cpp"] = (function() {
  22936. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22937. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22938. return real___GLOBAL__sub_I_Runtime_Streaming_0_cpp.apply(null, arguments);
  22939. });
  22940. var real___GLOBAL__sub_I_Runtime_Streaming_1_cpp = asm["__GLOBAL__sub_I_Runtime_Streaming_1_cpp"];
  22941. asm["__GLOBAL__sub_I_Runtime_Streaming_1_cpp"] = (function() {
  22942. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22943. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22944. return real___GLOBAL__sub_I_Runtime_Streaming_1_cpp.apply(null, arguments);
  22945. });
  22946. var real___GLOBAL__sub_I_Runtime_Transform_0_cpp = asm["__GLOBAL__sub_I_Runtime_Transform_0_cpp"];
  22947. asm["__GLOBAL__sub_I_Runtime_Transform_0_cpp"] = (function() {
  22948. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22949. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22950. return real___GLOBAL__sub_I_Runtime_Transform_0_cpp.apply(null, arguments);
  22951. });
  22952. var real___GLOBAL__sub_I_Runtime_Transform_1_cpp = asm["__GLOBAL__sub_I_Runtime_Transform_1_cpp"];
  22953. asm["__GLOBAL__sub_I_Runtime_Transform_1_cpp"] = (function() {
  22954. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22955. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22956. return real___GLOBAL__sub_I_Runtime_Transform_1_cpp.apply(null, arguments);
  22957. });
  22958. var real___GLOBAL__sub_I_Runtime_Utilities_2_cpp = asm["__GLOBAL__sub_I_Runtime_Utilities_2_cpp"];
  22959. asm["__GLOBAL__sub_I_Runtime_Utilities_2_cpp"] = (function() {
  22960. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22961. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22962. return real___GLOBAL__sub_I_Runtime_Utilities_2_cpp.apply(null, arguments);
  22963. });
  22964. var real___GLOBAL__sub_I_Runtime_Utilities_5_cpp = asm["__GLOBAL__sub_I_Runtime_Utilities_5_cpp"];
  22965. asm["__GLOBAL__sub_I_Runtime_Utilities_5_cpp"] = (function() {
  22966. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22967. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22968. return real___GLOBAL__sub_I_Runtime_Utilities_5_cpp.apply(null, arguments);
  22969. });
  22970. var real___GLOBAL__sub_I_Runtime_Utilities_6_cpp = asm["__GLOBAL__sub_I_Runtime_Utilities_6_cpp"];
  22971. asm["__GLOBAL__sub_I_Runtime_Utilities_6_cpp"] = (function() {
  22972. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22973. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22974. return real___GLOBAL__sub_I_Runtime_Utilities_6_cpp.apply(null, arguments);
  22975. });
  22976. var real___GLOBAL__sub_I_Runtime_Utilities_7_cpp = asm["__GLOBAL__sub_I_Runtime_Utilities_7_cpp"];
  22977. asm["__GLOBAL__sub_I_Runtime_Utilities_7_cpp"] = (function() {
  22978. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22979. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22980. return real___GLOBAL__sub_I_Runtime_Utilities_7_cpp.apply(null, arguments);
  22981. });
  22982. var real___GLOBAL__sub_I_Runtime_Utilities_8_cpp = asm["__GLOBAL__sub_I_Runtime_Utilities_8_cpp"];
  22983. asm["__GLOBAL__sub_I_Runtime_Utilities_8_cpp"] = (function() {
  22984. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22985. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22986. return real___GLOBAL__sub_I_Runtime_Utilities_8_cpp.apply(null, arguments);
  22987. });
  22988. var real___GLOBAL__sub_I_Runtime_Utilities_9_cpp = asm["__GLOBAL__sub_I_Runtime_Utilities_9_cpp"];
  22989. asm["__GLOBAL__sub_I_Runtime_Utilities_9_cpp"] = (function() {
  22990. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22991. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22992. return real___GLOBAL__sub_I_Runtime_Utilities_9_cpp.apply(null, arguments);
  22993. });
  22994. var real___GLOBAL__sub_I_Runtime_Video_0_cpp = asm["__GLOBAL__sub_I_Runtime_Video_0_cpp"];
  22995. asm["__GLOBAL__sub_I_Runtime_Video_0_cpp"] = (function() {
  22996. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  22997. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  22998. return real___GLOBAL__sub_I_Runtime_Video_0_cpp.apply(null, arguments);
  22999. });
  23000. var real___GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp = asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp"];
  23001. asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp"] = (function() {
  23002. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23003. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23004. return real___GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp.apply(null, arguments);
  23005. });
  23006. var real___GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp = asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp"];
  23007. asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp"] = (function() {
  23008. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23009. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23010. return real___GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp.apply(null, arguments);
  23011. });
  23012. var real___GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp = asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp"];
  23013. asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp"] = (function() {
  23014. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23015. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23016. return real___GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp.apply(null, arguments);
  23017. });
  23018. var real___GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp = asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp"];
  23019. asm["__GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp"] = (function() {
  23020. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23021. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23022. return real___GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp.apply(null, arguments);
  23023. });
  23024. var real___GLOBAL__sub_I_Shader_cpp = asm["__GLOBAL__sub_I_Shader_cpp"];
  23025. asm["__GLOBAL__sub_I_Shader_cpp"] = (function() {
  23026. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23027. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23028. return real___GLOBAL__sub_I_Shader_cpp.apply(null, arguments);
  23029. });
  23030. var real___GLOBAL__sub_I_Shadows_cpp = asm["__GLOBAL__sub_I_Shadows_cpp"];
  23031. asm["__GLOBAL__sub_I_Shadows_cpp"] = (function() {
  23032. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23033. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23034. return real___GLOBAL__sub_I_Shadows_cpp.apply(null, arguments);
  23035. });
  23036. var real___GLOBAL__sub_I_ShapeModule_cpp = asm["__GLOBAL__sub_I_ShapeModule_cpp"];
  23037. asm["__GLOBAL__sub_I_ShapeModule_cpp"] = (function() {
  23038. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23039. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23040. return real___GLOBAL__sub_I_ShapeModule_cpp.apply(null, arguments);
  23041. });
  23042. var real___GLOBAL__sub_I_SkinnedMeshRendererManager_cpp = asm["__GLOBAL__sub_I_SkinnedMeshRendererManager_cpp"];
  23043. asm["__GLOBAL__sub_I_SkinnedMeshRendererManager_cpp"] = (function() {
  23044. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23045. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23046. return real___GLOBAL__sub_I_SkinnedMeshRendererManager_cpp.apply(null, arguments);
  23047. });
  23048. var real___GLOBAL__sub_I_SubsystemsScriptingClasses_cpp = asm["__GLOBAL__sub_I_SubsystemsScriptingClasses_cpp"];
  23049. asm["__GLOBAL__sub_I_SubsystemsScriptingClasses_cpp"] = (function() {
  23050. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23051. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23052. return real___GLOBAL__sub_I_SubsystemsScriptingClasses_cpp.apply(null, arguments);
  23053. });
  23054. var real___GLOBAL__sub_I_SwInterCollision_cpp = asm["__GLOBAL__sub_I_SwInterCollision_cpp"];
  23055. asm["__GLOBAL__sub_I_SwInterCollision_cpp"] = (function() {
  23056. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23057. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23058. return real___GLOBAL__sub_I_SwInterCollision_cpp.apply(null, arguments);
  23059. });
  23060. var real___GLOBAL__sub_I_SwSolverKernel_cpp = asm["__GLOBAL__sub_I_SwSolverKernel_cpp"];
  23061. asm["__GLOBAL__sub_I_SwSolverKernel_cpp"] = (function() {
  23062. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23063. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23064. return real___GLOBAL__sub_I_SwSolverKernel_cpp.apply(null, arguments);
  23065. });
  23066. var real___GLOBAL__sub_I_TemplateInstantiations_cpp = asm["__GLOBAL__sub_I_TemplateInstantiations_cpp"];
  23067. asm["__GLOBAL__sub_I_TemplateInstantiations_cpp"] = (function() {
  23068. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23069. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23070. return real___GLOBAL__sub_I_TemplateInstantiations_cpp.apply(null, arguments);
  23071. });
  23072. var real___GLOBAL__sub_I_TerrainScriptingClasses_cpp = asm["__GLOBAL__sub_I_TerrainScriptingClasses_cpp"];
  23073. asm["__GLOBAL__sub_I_TerrainScriptingClasses_cpp"] = (function() {
  23074. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23075. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23076. return real___GLOBAL__sub_I_TerrainScriptingClasses_cpp.apply(null, arguments);
  23077. });
  23078. var real___GLOBAL__sub_I_TextCoreScriptingClasses_cpp = asm["__GLOBAL__sub_I_TextCoreScriptingClasses_cpp"];
  23079. asm["__GLOBAL__sub_I_TextCoreScriptingClasses_cpp"] = (function() {
  23080. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23081. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23082. return real___GLOBAL__sub_I_TextCoreScriptingClasses_cpp.apply(null, arguments);
  23083. });
  23084. var real___GLOBAL__sub_I_TextRenderingScriptingClasses_cpp = asm["__GLOBAL__sub_I_TextRenderingScriptingClasses_cpp"];
  23085. asm["__GLOBAL__sub_I_TextRenderingScriptingClasses_cpp"] = (function() {
  23086. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23087. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23088. return real___GLOBAL__sub_I_TextRenderingScriptingClasses_cpp.apply(null, arguments);
  23089. });
  23090. var real___GLOBAL__sub_I_TilemapScriptingClasses_cpp = asm["__GLOBAL__sub_I_TilemapScriptingClasses_cpp"];
  23091. asm["__GLOBAL__sub_I_TilemapScriptingClasses_cpp"] = (function() {
  23092. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23093. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23094. return real___GLOBAL__sub_I_TilemapScriptingClasses_cpp.apply(null, arguments);
  23095. });
  23096. var real___GLOBAL__sub_I_TrailRenderer_cpp = asm["__GLOBAL__sub_I_TrailRenderer_cpp"];
  23097. asm["__GLOBAL__sub_I_TrailRenderer_cpp"] = (function() {
  23098. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23099. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23100. return real___GLOBAL__sub_I_TrailRenderer_cpp.apply(null, arguments);
  23101. });
  23102. var real___GLOBAL__sub_I_Transform_cpp = asm["__GLOBAL__sub_I_Transform_cpp"];
  23103. asm["__GLOBAL__sub_I_Transform_cpp"] = (function() {
  23104. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23105. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23106. return real___GLOBAL__sub_I_Transform_cpp.apply(null, arguments);
  23107. });
  23108. var real___GLOBAL__sub_I_UIElementsScriptingClasses_cpp = asm["__GLOBAL__sub_I_UIElementsScriptingClasses_cpp"];
  23109. asm["__GLOBAL__sub_I_UIElementsScriptingClasses_cpp"] = (function() {
  23110. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23111. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23112. return real___GLOBAL__sub_I_UIElementsScriptingClasses_cpp.apply(null, arguments);
  23113. });
  23114. var real___GLOBAL__sub_I_UIScriptingClasses_cpp = asm["__GLOBAL__sub_I_UIScriptingClasses_cpp"];
  23115. asm["__GLOBAL__sub_I_UIScriptingClasses_cpp"] = (function() {
  23116. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23117. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23118. return real___GLOBAL__sub_I_UIScriptingClasses_cpp.apply(null, arguments);
  23119. });
  23120. var real___GLOBAL__sub_I_UnityAdsSettings_cpp = asm["__GLOBAL__sub_I_UnityAdsSettings_cpp"];
  23121. asm["__GLOBAL__sub_I_UnityAdsSettings_cpp"] = (function() {
  23122. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23123. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23124. return real___GLOBAL__sub_I_UnityAdsSettings_cpp.apply(null, arguments);
  23125. });
  23126. var real___GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp = asm["__GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp"];
  23127. asm["__GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp"] = (function() {
  23128. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23129. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23130. return real___GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp.apply(null, arguments);
  23131. });
  23132. var real___GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp = asm["__GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp"];
  23133. asm["__GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp"] = (function() {
  23134. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23135. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23136. return real___GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp.apply(null, arguments);
  23137. });
  23138. var real___GLOBAL__sub_I_UnsafeUtility_bindings_cpp = asm["__GLOBAL__sub_I_UnsafeUtility_bindings_cpp"];
  23139. asm["__GLOBAL__sub_I_UnsafeUtility_bindings_cpp"] = (function() {
  23140. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23141. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23142. return real___GLOBAL__sub_I_UnsafeUtility_bindings_cpp.apply(null, arguments);
  23143. });
  23144. var real___GLOBAL__sub_I_VFXScriptingClasses_cpp = asm["__GLOBAL__sub_I_VFXScriptingClasses_cpp"];
  23145. asm["__GLOBAL__sub_I_VFXScriptingClasses_cpp"] = (function() {
  23146. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23147. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23148. return real___GLOBAL__sub_I_VFXScriptingClasses_cpp.apply(null, arguments);
  23149. });
  23150. var real___GLOBAL__sub_I_VRScriptingClasses_cpp = asm["__GLOBAL__sub_I_VRScriptingClasses_cpp"];
  23151. asm["__GLOBAL__sub_I_VRScriptingClasses_cpp"] = (function() {
  23152. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23153. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23154. return real___GLOBAL__sub_I_VRScriptingClasses_cpp.apply(null, arguments);
  23155. });
  23156. var real___GLOBAL__sub_I_VideoScriptingClasses_cpp = asm["__GLOBAL__sub_I_VideoScriptingClasses_cpp"];
  23157. asm["__GLOBAL__sub_I_VideoScriptingClasses_cpp"] = (function() {
  23158. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23159. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23160. return real___GLOBAL__sub_I_VideoScriptingClasses_cpp.apply(null, arguments);
  23161. });
  23162. var real___GLOBAL__sub_I_Wind_cpp = asm["__GLOBAL__sub_I_Wind_cpp"];
  23163. asm["__GLOBAL__sub_I_Wind_cpp"] = (function() {
  23164. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23165. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23166. return real___GLOBAL__sub_I_Wind_cpp.apply(null, arguments);
  23167. });
  23168. var real___GLOBAL__sub_I_XRScriptingClasses_cpp = asm["__GLOBAL__sub_I_XRScriptingClasses_cpp"];
  23169. asm["__GLOBAL__sub_I_XRScriptingClasses_cpp"] = (function() {
  23170. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23171. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23172. return real___GLOBAL__sub_I_XRScriptingClasses_cpp.apply(null, arguments);
  23173. });
  23174. var real___GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp = asm["__GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp"];
  23175. asm["__GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp"] = (function() {
  23176. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23177. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23178. return real___GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp.apply(null, arguments);
  23179. });
  23180. var real___GLOBAL__sub_I_clipmuscle_cpp = asm["__GLOBAL__sub_I_clipmuscle_cpp"];
  23181. asm["__GLOBAL__sub_I_clipmuscle_cpp"] = (function() {
  23182. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23183. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23184. return real___GLOBAL__sub_I_clipmuscle_cpp.apply(null, arguments);
  23185. });
  23186. var real___GLOBAL__sub_I_nvcloth_src_0_cpp = asm["__GLOBAL__sub_I_nvcloth_src_0_cpp"];
  23187. asm["__GLOBAL__sub_I_nvcloth_src_0_cpp"] = (function() {
  23188. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23189. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23190. return real___GLOBAL__sub_I_nvcloth_src_0_cpp.apply(null, arguments);
  23191. });
  23192. var real___GLOBAL__sub_I_nvcloth_src_1_cpp = asm["__GLOBAL__sub_I_nvcloth_src_1_cpp"];
  23193. asm["__GLOBAL__sub_I_nvcloth_src_1_cpp"] = (function() {
  23194. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23195. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23196. return real___GLOBAL__sub_I_nvcloth_src_1_cpp.apply(null, arguments);
  23197. });
  23198. var real___GLOBAL__sub_I_umbra_cpp = asm["__GLOBAL__sub_I_umbra_cpp"];
  23199. asm["__GLOBAL__sub_I_umbra_cpp"] = (function() {
  23200. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23201. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23202. return real___GLOBAL__sub_I_umbra_cpp.apply(null, arguments);
  23203. });
  23204. var real____cxa_can_catch = asm["___cxa_can_catch"];
  23205. asm["___cxa_can_catch"] = (function() {
  23206. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23207. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23208. return real____cxa_can_catch.apply(null, arguments);
  23209. });
  23210. var real____cxa_demangle = asm["___cxa_demangle"];
  23211. asm["___cxa_demangle"] = (function() {
  23212. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23213. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23214. return real____cxa_demangle.apply(null, arguments);
  23215. });
  23216. var real____cxa_is_pointer_type = asm["___cxa_is_pointer_type"];
  23217. asm["___cxa_is_pointer_type"] = (function() {
  23218. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23219. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23220. return real____cxa_is_pointer_type.apply(null, arguments);
  23221. });
  23222. var real____cxx_global_var_init = asm["___cxx_global_var_init"];
  23223. asm["___cxx_global_var_init"] = (function() {
  23224. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23225. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23226. return real____cxx_global_var_init.apply(null, arguments);
  23227. });
  23228. var real____cxx_global_var_init_10_7621 = asm["___cxx_global_var_init_10_7621"];
  23229. asm["___cxx_global_var_init_10_7621"] = (function() {
  23230. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23231. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23232. return real____cxx_global_var_init_10_7621.apply(null, arguments);
  23233. });
  23234. var real____cxx_global_var_init_11 = asm["___cxx_global_var_init_11"];
  23235. asm["___cxx_global_var_init_11"] = (function() {
  23236. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23237. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23238. return real____cxx_global_var_init_11.apply(null, arguments);
  23239. });
  23240. var real____cxx_global_var_init_111 = asm["___cxx_global_var_init_111"];
  23241. asm["___cxx_global_var_init_111"] = (function() {
  23242. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23243. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23244. return real____cxx_global_var_init_111.apply(null, arguments);
  23245. });
  23246. var real____cxx_global_var_init_112 = asm["___cxx_global_var_init_112"];
  23247. asm["___cxx_global_var_init_112"] = (function() {
  23248. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23249. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23250. return real____cxx_global_var_init_112.apply(null, arguments);
  23251. });
  23252. var real____cxx_global_var_init_114 = asm["___cxx_global_var_init_114"];
  23253. asm["___cxx_global_var_init_114"] = (function() {
  23254. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23255. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23256. return real____cxx_global_var_init_114.apply(null, arguments);
  23257. });
  23258. var real____cxx_global_var_init_115 = asm["___cxx_global_var_init_115"];
  23259. asm["___cxx_global_var_init_115"] = (function() {
  23260. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23261. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23262. return real____cxx_global_var_init_115.apply(null, arguments);
  23263. });
  23264. var real____cxx_global_var_init_120 = asm["___cxx_global_var_init_120"];
  23265. asm["___cxx_global_var_init_120"] = (function() {
  23266. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23267. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23268. return real____cxx_global_var_init_120.apply(null, arguments);
  23269. });
  23270. var real____cxx_global_var_init_122 = asm["___cxx_global_var_init_122"];
  23271. asm["___cxx_global_var_init_122"] = (function() {
  23272. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23273. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23274. return real____cxx_global_var_init_122.apply(null, arguments);
  23275. });
  23276. var real____cxx_global_var_init_123 = asm["___cxx_global_var_init_123"];
  23277. asm["___cxx_global_var_init_123"] = (function() {
  23278. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23279. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23280. return real____cxx_global_var_init_123.apply(null, arguments);
  23281. });
  23282. var real____cxx_global_var_init_123_6888 = asm["___cxx_global_var_init_123_6888"];
  23283. asm["___cxx_global_var_init_123_6888"] = (function() {
  23284. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23285. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23286. return real____cxx_global_var_init_123_6888.apply(null, arguments);
  23287. });
  23288. var real____cxx_global_var_init_13 = asm["___cxx_global_var_init_13"];
  23289. asm["___cxx_global_var_init_13"] = (function() {
  23290. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23291. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23292. return real____cxx_global_var_init_13.apply(null, arguments);
  23293. });
  23294. var real____cxx_global_var_init_130 = asm["___cxx_global_var_init_130"];
  23295. asm["___cxx_global_var_init_130"] = (function() {
  23296. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23297. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23298. return real____cxx_global_var_init_130.apply(null, arguments);
  23299. });
  23300. var real____cxx_global_var_init_131 = asm["___cxx_global_var_init_131"];
  23301. asm["___cxx_global_var_init_131"] = (function() {
  23302. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23303. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23304. return real____cxx_global_var_init_131.apply(null, arguments);
  23305. });
  23306. var real____cxx_global_var_init_144 = asm["___cxx_global_var_init_144"];
  23307. asm["___cxx_global_var_init_144"] = (function() {
  23308. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23309. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23310. return real____cxx_global_var_init_144.apply(null, arguments);
  23311. });
  23312. var real____cxx_global_var_init_149 = asm["___cxx_global_var_init_149"];
  23313. asm["___cxx_global_var_init_149"] = (function() {
  23314. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23315. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23316. return real____cxx_global_var_init_149.apply(null, arguments);
  23317. });
  23318. var real____cxx_global_var_init_151 = asm["___cxx_global_var_init_151"];
  23319. asm["___cxx_global_var_init_151"] = (function() {
  23320. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23321. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23322. return real____cxx_global_var_init_151.apply(null, arguments);
  23323. });
  23324. var real____cxx_global_var_init_16 = asm["___cxx_global_var_init_16"];
  23325. asm["___cxx_global_var_init_16"] = (function() {
  23326. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23327. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23328. return real____cxx_global_var_init_16.apply(null, arguments);
  23329. });
  23330. var real____cxx_global_var_init_161 = asm["___cxx_global_var_init_161"];
  23331. asm["___cxx_global_var_init_161"] = (function() {
  23332. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23333. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23334. return real____cxx_global_var_init_161.apply(null, arguments);
  23335. });
  23336. var real____cxx_global_var_init_165 = asm["___cxx_global_var_init_165"];
  23337. asm["___cxx_global_var_init_165"] = (function() {
  23338. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23339. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23340. return real____cxx_global_var_init_165.apply(null, arguments);
  23341. });
  23342. var real____cxx_global_var_init_166 = asm["___cxx_global_var_init_166"];
  23343. asm["___cxx_global_var_init_166"] = (function() {
  23344. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23345. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23346. return real____cxx_global_var_init_166.apply(null, arguments);
  23347. });
  23348. var real____cxx_global_var_init_167 = asm["___cxx_global_var_init_167"];
  23349. asm["___cxx_global_var_init_167"] = (function() {
  23350. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23351. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23352. return real____cxx_global_var_init_167.apply(null, arguments);
  23353. });
  23354. var real____cxx_global_var_init_168 = asm["___cxx_global_var_init_168"];
  23355. asm["___cxx_global_var_init_168"] = (function() {
  23356. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23357. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23358. return real____cxx_global_var_init_168.apply(null, arguments);
  23359. });
  23360. var real____cxx_global_var_init_169 = asm["___cxx_global_var_init_169"];
  23361. asm["___cxx_global_var_init_169"] = (function() {
  23362. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23363. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23364. return real____cxx_global_var_init_169.apply(null, arguments);
  23365. });
  23366. var real____cxx_global_var_init_16_9177 = asm["___cxx_global_var_init_16_9177"];
  23367. asm["___cxx_global_var_init_16_9177"] = (function() {
  23368. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23369. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23370. return real____cxx_global_var_init_16_9177.apply(null, arguments);
  23371. });
  23372. var real____cxx_global_var_init_17 = asm["___cxx_global_var_init_17"];
  23373. asm["___cxx_global_var_init_17"] = (function() {
  23374. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23375. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23376. return real____cxx_global_var_init_17.apply(null, arguments);
  23377. });
  23378. var real____cxx_global_var_init_170 = asm["___cxx_global_var_init_170"];
  23379. asm["___cxx_global_var_init_170"] = (function() {
  23380. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23381. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23382. return real____cxx_global_var_init_170.apply(null, arguments);
  23383. });
  23384. var real____cxx_global_var_init_171 = asm["___cxx_global_var_init_171"];
  23385. asm["___cxx_global_var_init_171"] = (function() {
  23386. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23387. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23388. return real____cxx_global_var_init_171.apply(null, arguments);
  23389. });
  23390. var real____cxx_global_var_init_172 = asm["___cxx_global_var_init_172"];
  23391. asm["___cxx_global_var_init_172"] = (function() {
  23392. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23393. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23394. return real____cxx_global_var_init_172.apply(null, arguments);
  23395. });
  23396. var real____cxx_global_var_init_173 = asm["___cxx_global_var_init_173"];
  23397. asm["___cxx_global_var_init_173"] = (function() {
  23398. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23399. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23400. return real____cxx_global_var_init_173.apply(null, arguments);
  23401. });
  23402. var real____cxx_global_var_init_174 = asm["___cxx_global_var_init_174"];
  23403. asm["___cxx_global_var_init_174"] = (function() {
  23404. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23405. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23406. return real____cxx_global_var_init_174.apply(null, arguments);
  23407. });
  23408. var real____cxx_global_var_init_175 = asm["___cxx_global_var_init_175"];
  23409. asm["___cxx_global_var_init_175"] = (function() {
  23410. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23411. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23412. return real____cxx_global_var_init_175.apply(null, arguments);
  23413. });
  23414. var real____cxx_global_var_init_176 = asm["___cxx_global_var_init_176"];
  23415. asm["___cxx_global_var_init_176"] = (function() {
  23416. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23417. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23418. return real____cxx_global_var_init_176.apply(null, arguments);
  23419. });
  23420. var real____cxx_global_var_init_177 = asm["___cxx_global_var_init_177"];
  23421. asm["___cxx_global_var_init_177"] = (function() {
  23422. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23423. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23424. return real____cxx_global_var_init_177.apply(null, arguments);
  23425. });
  23426. var real____cxx_global_var_init_178 = asm["___cxx_global_var_init_178"];
  23427. asm["___cxx_global_var_init_178"] = (function() {
  23428. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23429. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23430. return real____cxx_global_var_init_178.apply(null, arguments);
  23431. });
  23432. var real____cxx_global_var_init_179 = asm["___cxx_global_var_init_179"];
  23433. asm["___cxx_global_var_init_179"] = (function() {
  23434. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23435. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23436. return real____cxx_global_var_init_179.apply(null, arguments);
  23437. });
  23438. var real____cxx_global_var_init_18 = asm["___cxx_global_var_init_18"];
  23439. asm["___cxx_global_var_init_18"] = (function() {
  23440. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23441. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23442. return real____cxx_global_var_init_18.apply(null, arguments);
  23443. });
  23444. var real____cxx_global_var_init_180 = asm["___cxx_global_var_init_180"];
  23445. asm["___cxx_global_var_init_180"] = (function() {
  23446. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23447. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23448. return real____cxx_global_var_init_180.apply(null, arguments);
  23449. });
  23450. var real____cxx_global_var_init_181 = asm["___cxx_global_var_init_181"];
  23451. asm["___cxx_global_var_init_181"] = (function() {
  23452. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23453. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23454. return real____cxx_global_var_init_181.apply(null, arguments);
  23455. });
  23456. var real____cxx_global_var_init_182 = asm["___cxx_global_var_init_182"];
  23457. asm["___cxx_global_var_init_182"] = (function() {
  23458. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23459. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23460. return real____cxx_global_var_init_182.apply(null, arguments);
  23461. });
  23462. var real____cxx_global_var_init_182_8669 = asm["___cxx_global_var_init_182_8669"];
  23463. asm["___cxx_global_var_init_182_8669"] = (function() {
  23464. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23465. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23466. return real____cxx_global_var_init_182_8669.apply(null, arguments);
  23467. });
  23468. var real____cxx_global_var_init_183 = asm["___cxx_global_var_init_183"];
  23469. asm["___cxx_global_var_init_183"] = (function() {
  23470. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23471. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23472. return real____cxx_global_var_init_183.apply(null, arguments);
  23473. });
  23474. var real____cxx_global_var_init_183_8670 = asm["___cxx_global_var_init_183_8670"];
  23475. asm["___cxx_global_var_init_183_8670"] = (function() {
  23476. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23477. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23478. return real____cxx_global_var_init_183_8670.apply(null, arguments);
  23479. });
  23480. var real____cxx_global_var_init_184 = asm["___cxx_global_var_init_184"];
  23481. asm["___cxx_global_var_init_184"] = (function() {
  23482. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23483. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23484. return real____cxx_global_var_init_184.apply(null, arguments);
  23485. });
  23486. var real____cxx_global_var_init_184_8671 = asm["___cxx_global_var_init_184_8671"];
  23487. asm["___cxx_global_var_init_184_8671"] = (function() {
  23488. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23489. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23490. return real____cxx_global_var_init_184_8671.apply(null, arguments);
  23491. });
  23492. var real____cxx_global_var_init_185 = asm["___cxx_global_var_init_185"];
  23493. asm["___cxx_global_var_init_185"] = (function() {
  23494. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23495. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23496. return real____cxx_global_var_init_185.apply(null, arguments);
  23497. });
  23498. var real____cxx_global_var_init_185_8672 = asm["___cxx_global_var_init_185_8672"];
  23499. asm["___cxx_global_var_init_185_8672"] = (function() {
  23500. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23501. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23502. return real____cxx_global_var_init_185_8672.apply(null, arguments);
  23503. });
  23504. var real____cxx_global_var_init_186 = asm["___cxx_global_var_init_186"];
  23505. asm["___cxx_global_var_init_186"] = (function() {
  23506. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23507. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23508. return real____cxx_global_var_init_186.apply(null, arguments);
  23509. });
  23510. var real____cxx_global_var_init_186_8673 = asm["___cxx_global_var_init_186_8673"];
  23511. asm["___cxx_global_var_init_186_8673"] = (function() {
  23512. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23513. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23514. return real____cxx_global_var_init_186_8673.apply(null, arguments);
  23515. });
  23516. var real____cxx_global_var_init_187 = asm["___cxx_global_var_init_187"];
  23517. asm["___cxx_global_var_init_187"] = (function() {
  23518. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23519. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23520. return real____cxx_global_var_init_187.apply(null, arguments);
  23521. });
  23522. var real____cxx_global_var_init_187_8674 = asm["___cxx_global_var_init_187_8674"];
  23523. asm["___cxx_global_var_init_187_8674"] = (function() {
  23524. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23525. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23526. return real____cxx_global_var_init_187_8674.apply(null, arguments);
  23527. });
  23528. var real____cxx_global_var_init_188 = asm["___cxx_global_var_init_188"];
  23529. asm["___cxx_global_var_init_188"] = (function() {
  23530. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23531. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23532. return real____cxx_global_var_init_188.apply(null, arguments);
  23533. });
  23534. var real____cxx_global_var_init_188_8675 = asm["___cxx_global_var_init_188_8675"];
  23535. asm["___cxx_global_var_init_188_8675"] = (function() {
  23536. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23537. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23538. return real____cxx_global_var_init_188_8675.apply(null, arguments);
  23539. });
  23540. var real____cxx_global_var_init_189 = asm["___cxx_global_var_init_189"];
  23541. asm["___cxx_global_var_init_189"] = (function() {
  23542. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23543. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23544. return real____cxx_global_var_init_189.apply(null, arguments);
  23545. });
  23546. var real____cxx_global_var_init_18_9178 = asm["___cxx_global_var_init_18_9178"];
  23547. asm["___cxx_global_var_init_18_9178"] = (function() {
  23548. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23549. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23550. return real____cxx_global_var_init_18_9178.apply(null, arguments);
  23551. });
  23552. var real____cxx_global_var_init_19 = asm["___cxx_global_var_init_19"];
  23553. asm["___cxx_global_var_init_19"] = (function() {
  23554. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23555. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23556. return real____cxx_global_var_init_19.apply(null, arguments);
  23557. });
  23558. var real____cxx_global_var_init_190 = asm["___cxx_global_var_init_190"];
  23559. asm["___cxx_global_var_init_190"] = (function() {
  23560. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23561. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23562. return real____cxx_global_var_init_190.apply(null, arguments);
  23563. });
  23564. var real____cxx_global_var_init_191 = asm["___cxx_global_var_init_191"];
  23565. asm["___cxx_global_var_init_191"] = (function() {
  23566. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23567. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23568. return real____cxx_global_var_init_191.apply(null, arguments);
  23569. });
  23570. var real____cxx_global_var_init_192 = asm["___cxx_global_var_init_192"];
  23571. asm["___cxx_global_var_init_192"] = (function() {
  23572. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23573. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23574. return real____cxx_global_var_init_192.apply(null, arguments);
  23575. });
  23576. var real____cxx_global_var_init_193 = asm["___cxx_global_var_init_193"];
  23577. asm["___cxx_global_var_init_193"] = (function() {
  23578. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23579. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23580. return real____cxx_global_var_init_193.apply(null, arguments);
  23581. });
  23582. var real____cxx_global_var_init_194 = asm["___cxx_global_var_init_194"];
  23583. asm["___cxx_global_var_init_194"] = (function() {
  23584. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23585. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23586. return real____cxx_global_var_init_194.apply(null, arguments);
  23587. });
  23588. var real____cxx_global_var_init_195 = asm["___cxx_global_var_init_195"];
  23589. asm["___cxx_global_var_init_195"] = (function() {
  23590. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23591. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23592. return real____cxx_global_var_init_195.apply(null, arguments);
  23593. });
  23594. var real____cxx_global_var_init_196 = asm["___cxx_global_var_init_196"];
  23595. asm["___cxx_global_var_init_196"] = (function() {
  23596. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23597. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23598. return real____cxx_global_var_init_196.apply(null, arguments);
  23599. });
  23600. var real____cxx_global_var_init_197 = asm["___cxx_global_var_init_197"];
  23601. asm["___cxx_global_var_init_197"] = (function() {
  23602. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23603. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23604. return real____cxx_global_var_init_197.apply(null, arguments);
  23605. });
  23606. var real____cxx_global_var_init_198 = asm["___cxx_global_var_init_198"];
  23607. asm["___cxx_global_var_init_198"] = (function() {
  23608. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23609. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23610. return real____cxx_global_var_init_198.apply(null, arguments);
  23611. });
  23612. var real____cxx_global_var_init_199 = asm["___cxx_global_var_init_199"];
  23613. asm["___cxx_global_var_init_199"] = (function() {
  23614. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23615. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23616. return real____cxx_global_var_init_199.apply(null, arguments);
  23617. });
  23618. var real____cxx_global_var_init_19_9179 = asm["___cxx_global_var_init_19_9179"];
  23619. asm["___cxx_global_var_init_19_9179"] = (function() {
  23620. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23621. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23622. return real____cxx_global_var_init_19_9179.apply(null, arguments);
  23623. });
  23624. var real____cxx_global_var_init_1_6764 = asm["___cxx_global_var_init_1_6764"];
  23625. asm["___cxx_global_var_init_1_6764"] = (function() {
  23626. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23627. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23628. return real____cxx_global_var_init_1_6764.apply(null, arguments);
  23629. });
  23630. var real____cxx_global_var_init_1_8982 = asm["___cxx_global_var_init_1_8982"];
  23631. asm["___cxx_global_var_init_1_8982"] = (function() {
  23632. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23633. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23634. return real____cxx_global_var_init_1_8982.apply(null, arguments);
  23635. });
  23636. var real____cxx_global_var_init_200 = asm["___cxx_global_var_init_200"];
  23637. asm["___cxx_global_var_init_200"] = (function() {
  23638. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23639. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23640. return real____cxx_global_var_init_200.apply(null, arguments);
  23641. });
  23642. var real____cxx_global_var_init_201 = asm["___cxx_global_var_init_201"];
  23643. asm["___cxx_global_var_init_201"] = (function() {
  23644. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23645. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23646. return real____cxx_global_var_init_201.apply(null, arguments);
  23647. });
  23648. var real____cxx_global_var_init_202 = asm["___cxx_global_var_init_202"];
  23649. asm["___cxx_global_var_init_202"] = (function() {
  23650. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23651. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23652. return real____cxx_global_var_init_202.apply(null, arguments);
  23653. });
  23654. var real____cxx_global_var_init_203 = asm["___cxx_global_var_init_203"];
  23655. asm["___cxx_global_var_init_203"] = (function() {
  23656. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23657. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23658. return real____cxx_global_var_init_203.apply(null, arguments);
  23659. });
  23660. var real____cxx_global_var_init_204 = asm["___cxx_global_var_init_204"];
  23661. asm["___cxx_global_var_init_204"] = (function() {
  23662. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23663. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23664. return real____cxx_global_var_init_204.apply(null, arguments);
  23665. });
  23666. var real____cxx_global_var_init_205 = asm["___cxx_global_var_init_205"];
  23667. asm["___cxx_global_var_init_205"] = (function() {
  23668. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23669. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23670. return real____cxx_global_var_init_205.apply(null, arguments);
  23671. });
  23672. var real____cxx_global_var_init_206 = asm["___cxx_global_var_init_206"];
  23673. asm["___cxx_global_var_init_206"] = (function() {
  23674. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23675. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23676. return real____cxx_global_var_init_206.apply(null, arguments);
  23677. });
  23678. var real____cxx_global_var_init_207 = asm["___cxx_global_var_init_207"];
  23679. asm["___cxx_global_var_init_207"] = (function() {
  23680. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23681. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23682. return real____cxx_global_var_init_207.apply(null, arguments);
  23683. });
  23684. var real____cxx_global_var_init_208 = asm["___cxx_global_var_init_208"];
  23685. asm["___cxx_global_var_init_208"] = (function() {
  23686. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23687. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23688. return real____cxx_global_var_init_208.apply(null, arguments);
  23689. });
  23690. var real____cxx_global_var_init_209 = asm["___cxx_global_var_init_209"];
  23691. asm["___cxx_global_var_init_209"] = (function() {
  23692. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23693. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23694. return real____cxx_global_var_init_209.apply(null, arguments);
  23695. });
  23696. var real____cxx_global_var_init_20_9180 = asm["___cxx_global_var_init_20_9180"];
  23697. asm["___cxx_global_var_init_20_9180"] = (function() {
  23698. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23699. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23700. return real____cxx_global_var_init_20_9180.apply(null, arguments);
  23701. });
  23702. var real____cxx_global_var_init_21 = asm["___cxx_global_var_init_21"];
  23703. asm["___cxx_global_var_init_21"] = (function() {
  23704. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23705. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23706. return real____cxx_global_var_init_21.apply(null, arguments);
  23707. });
  23708. var real____cxx_global_var_init_210 = asm["___cxx_global_var_init_210"];
  23709. asm["___cxx_global_var_init_210"] = (function() {
  23710. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23711. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23712. return real____cxx_global_var_init_210.apply(null, arguments);
  23713. });
  23714. var real____cxx_global_var_init_211 = asm["___cxx_global_var_init_211"];
  23715. asm["___cxx_global_var_init_211"] = (function() {
  23716. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23717. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23718. return real____cxx_global_var_init_211.apply(null, arguments);
  23719. });
  23720. var real____cxx_global_var_init_212 = asm["___cxx_global_var_init_212"];
  23721. asm["___cxx_global_var_init_212"] = (function() {
  23722. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23723. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23724. return real____cxx_global_var_init_212.apply(null, arguments);
  23725. });
  23726. var real____cxx_global_var_init_213 = asm["___cxx_global_var_init_213"];
  23727. asm["___cxx_global_var_init_213"] = (function() {
  23728. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23729. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23730. return real____cxx_global_var_init_213.apply(null, arguments);
  23731. });
  23732. var real____cxx_global_var_init_214 = asm["___cxx_global_var_init_214"];
  23733. asm["___cxx_global_var_init_214"] = (function() {
  23734. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23735. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23736. return real____cxx_global_var_init_214.apply(null, arguments);
  23737. });
  23738. var real____cxx_global_var_init_215_1168 = asm["___cxx_global_var_init_215_1168"];
  23739. asm["___cxx_global_var_init_215_1168"] = (function() {
  23740. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23741. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23742. return real____cxx_global_var_init_215_1168.apply(null, arguments);
  23743. });
  23744. var real____cxx_global_var_init_21_9181 = asm["___cxx_global_var_init_21_9181"];
  23745. asm["___cxx_global_var_init_21_9181"] = (function() {
  23746. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23747. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23748. return real____cxx_global_var_init_21_9181.apply(null, arguments);
  23749. });
  23750. var real____cxx_global_var_init_22_9182 = asm["___cxx_global_var_init_22_9182"];
  23751. asm["___cxx_global_var_init_22_9182"] = (function() {
  23752. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23753. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23754. return real____cxx_global_var_init_22_9182.apply(null, arguments);
  23755. });
  23756. var real____cxx_global_var_init_22_9270 = asm["___cxx_global_var_init_22_9270"];
  23757. asm["___cxx_global_var_init_22_9270"] = (function() {
  23758. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23759. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23760. return real____cxx_global_var_init_22_9270.apply(null, arguments);
  23761. });
  23762. var real____cxx_global_var_init_23 = asm["___cxx_global_var_init_23"];
  23763. asm["___cxx_global_var_init_23"] = (function() {
  23764. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23765. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23766. return real____cxx_global_var_init_23.apply(null, arguments);
  23767. });
  23768. var real____cxx_global_var_init_23_9183 = asm["___cxx_global_var_init_23_9183"];
  23769. asm["___cxx_global_var_init_23_9183"] = (function() {
  23770. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23771. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23772. return real____cxx_global_var_init_23_9183.apply(null, arguments);
  23773. });
  23774. var real____cxx_global_var_init_24 = asm["___cxx_global_var_init_24"];
  23775. asm["___cxx_global_var_init_24"] = (function() {
  23776. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23777. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23778. return real____cxx_global_var_init_24.apply(null, arguments);
  23779. });
  23780. var real____cxx_global_var_init_24_9184 = asm["___cxx_global_var_init_24_9184"];
  23781. asm["___cxx_global_var_init_24_9184"] = (function() {
  23782. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23783. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23784. return real____cxx_global_var_init_24_9184.apply(null, arguments);
  23785. });
  23786. var real____cxx_global_var_init_24_9271 = asm["___cxx_global_var_init_24_9271"];
  23787. asm["___cxx_global_var_init_24_9271"] = (function() {
  23788. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23789. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23790. return real____cxx_global_var_init_24_9271.apply(null, arguments);
  23791. });
  23792. var real____cxx_global_var_init_25 = asm["___cxx_global_var_init_25"];
  23793. asm["___cxx_global_var_init_25"] = (function() {
  23794. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23795. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23796. return real____cxx_global_var_init_25.apply(null, arguments);
  23797. });
  23798. var real____cxx_global_var_init_25_1169 = asm["___cxx_global_var_init_25_1169"];
  23799. asm["___cxx_global_var_init_25_1169"] = (function() {
  23800. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23801. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23802. return real____cxx_global_var_init_25_1169.apply(null, arguments);
  23803. });
  23804. var real____cxx_global_var_init_26_5292 = asm["___cxx_global_var_init_26_5292"];
  23805. asm["___cxx_global_var_init_26_5292"] = (function() {
  23806. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23807. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23808. return real____cxx_global_var_init_26_5292.apply(null, arguments);
  23809. });
  23810. var real____cxx_global_var_init_26_9272 = asm["___cxx_global_var_init_26_9272"];
  23811. asm["___cxx_global_var_init_26_9272"] = (function() {
  23812. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23813. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23814. return real____cxx_global_var_init_26_9272.apply(null, arguments);
  23815. });
  23816. var real____cxx_global_var_init_27 = asm["___cxx_global_var_init_27"];
  23817. asm["___cxx_global_var_init_27"] = (function() {
  23818. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23819. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23820. return real____cxx_global_var_init_27.apply(null, arguments);
  23821. });
  23822. var real____cxx_global_var_init_28_3916 = asm["___cxx_global_var_init_28_3916"];
  23823. asm["___cxx_global_var_init_28_3916"] = (function() {
  23824. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23825. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23826. return real____cxx_global_var_init_28_3916.apply(null, arguments);
  23827. });
  23828. var real____cxx_global_var_init_28_4482 = asm["___cxx_global_var_init_28_4482"];
  23829. asm["___cxx_global_var_init_28_4482"] = (function() {
  23830. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23831. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23832. return real____cxx_global_var_init_28_4482.apply(null, arguments);
  23833. });
  23834. var real____cxx_global_var_init_29 = asm["___cxx_global_var_init_29"];
  23835. asm["___cxx_global_var_init_29"] = (function() {
  23836. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23837. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23838. return real____cxx_global_var_init_29.apply(null, arguments);
  23839. });
  23840. var real____cxx_global_var_init_29_6803 = asm["___cxx_global_var_init_29_6803"];
  23841. asm["___cxx_global_var_init_29_6803"] = (function() {
  23842. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23843. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23844. return real____cxx_global_var_init_29_6803.apply(null, arguments);
  23845. });
  23846. var real____cxx_global_var_init_2_10890 = asm["___cxx_global_var_init_2_10890"];
  23847. asm["___cxx_global_var_init_2_10890"] = (function() {
  23848. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23849. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23850. return real____cxx_global_var_init_2_10890.apply(null, arguments);
  23851. });
  23852. var real____cxx_global_var_init_30_6804 = asm["___cxx_global_var_init_30_6804"];
  23853. asm["___cxx_global_var_init_30_6804"] = (function() {
  23854. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23855. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23856. return real____cxx_global_var_init_30_6804.apply(null, arguments);
  23857. });
  23858. var real____cxx_global_var_init_30_9055 = asm["___cxx_global_var_init_30_9055"];
  23859. asm["___cxx_global_var_init_30_9055"] = (function() {
  23860. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23861. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23862. return real____cxx_global_var_init_30_9055.apply(null, arguments);
  23863. });
  23864. var real____cxx_global_var_init_31 = asm["___cxx_global_var_init_31"];
  23865. asm["___cxx_global_var_init_31"] = (function() {
  23866. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23867. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23868. return real____cxx_global_var_init_31.apply(null, arguments);
  23869. });
  23870. var real____cxx_global_var_init_31_9866 = asm["___cxx_global_var_init_31_9866"];
  23871. asm["___cxx_global_var_init_31_9866"] = (function() {
  23872. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23873. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23874. return real____cxx_global_var_init_31_9866.apply(null, arguments);
  23875. });
  23876. var real____cxx_global_var_init_32_9056 = asm["___cxx_global_var_init_32_9056"];
  23877. asm["___cxx_global_var_init_32_9056"] = (function() {
  23878. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23879. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23880. return real____cxx_global_var_init_32_9056.apply(null, arguments);
  23881. });
  23882. var real____cxx_global_var_init_33 = asm["___cxx_global_var_init_33"];
  23883. asm["___cxx_global_var_init_33"] = (function() {
  23884. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23885. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23886. return real____cxx_global_var_init_33.apply(null, arguments);
  23887. });
  23888. var real____cxx_global_var_init_34_9057 = asm["___cxx_global_var_init_34_9057"];
  23889. asm["___cxx_global_var_init_34_9057"] = (function() {
  23890. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23891. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23892. return real____cxx_global_var_init_34_9057.apply(null, arguments);
  23893. });
  23894. var real____cxx_global_var_init_35 = asm["___cxx_global_var_init_35"];
  23895. asm["___cxx_global_var_init_35"] = (function() {
  23896. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23897. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23898. return real____cxx_global_var_init_35.apply(null, arguments);
  23899. });
  23900. var real____cxx_global_var_init_35_7296 = asm["___cxx_global_var_init_35_7296"];
  23901. asm["___cxx_global_var_init_35_7296"] = (function() {
  23902. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23903. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23904. return real____cxx_global_var_init_35_7296.apply(null, arguments);
  23905. });
  23906. var real____cxx_global_var_init_36 = asm["___cxx_global_var_init_36"];
  23907. asm["___cxx_global_var_init_36"] = (function() {
  23908. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23909. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23910. return real____cxx_global_var_init_36.apply(null, arguments);
  23911. });
  23912. var real____cxx_global_var_init_36_12649 = asm["___cxx_global_var_init_36_12649"];
  23913. asm["___cxx_global_var_init_36_12649"] = (function() {
  23914. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23915. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23916. return real____cxx_global_var_init_36_12649.apply(null, arguments);
  23917. });
  23918. var real____cxx_global_var_init_37 = asm["___cxx_global_var_init_37"];
  23919. asm["___cxx_global_var_init_37"] = (function() {
  23920. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23921. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23922. return real____cxx_global_var_init_37.apply(null, arguments);
  23923. });
  23924. var real____cxx_global_var_init_37_12650 = asm["___cxx_global_var_init_37_12650"];
  23925. asm["___cxx_global_var_init_37_12650"] = (function() {
  23926. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23927. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23928. return real____cxx_global_var_init_37_12650.apply(null, arguments);
  23929. });
  23930. var real____cxx_global_var_init_38 = asm["___cxx_global_var_init_38"];
  23931. asm["___cxx_global_var_init_38"] = (function() {
  23932. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23933. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23934. return real____cxx_global_var_init_38.apply(null, arguments);
  23935. });
  23936. var real____cxx_global_var_init_3826 = asm["___cxx_global_var_init_3826"];
  23937. asm["___cxx_global_var_init_3826"] = (function() {
  23938. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23939. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23940. return real____cxx_global_var_init_3826.apply(null, arguments);
  23941. });
  23942. var real____cxx_global_var_init_38_12651 = asm["___cxx_global_var_init_38_12651"];
  23943. asm["___cxx_global_var_init_38_12651"] = (function() {
  23944. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23945. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23946. return real____cxx_global_var_init_38_12651.apply(null, arguments);
  23947. });
  23948. var real____cxx_global_var_init_39 = asm["___cxx_global_var_init_39"];
  23949. asm["___cxx_global_var_init_39"] = (function() {
  23950. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23951. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23952. return real____cxx_global_var_init_39.apply(null, arguments);
  23953. });
  23954. var real____cxx_global_var_init_39_7786 = asm["___cxx_global_var_init_39_7786"];
  23955. asm["___cxx_global_var_init_39_7786"] = (function() {
  23956. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23957. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23958. return real____cxx_global_var_init_39_7786.apply(null, arguments);
  23959. });
  23960. var real____cxx_global_var_init_3_4139 = asm["___cxx_global_var_init_3_4139"];
  23961. asm["___cxx_global_var_init_3_4139"] = (function() {
  23962. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23963. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23964. return real____cxx_global_var_init_3_4139.apply(null, arguments);
  23965. });
  23966. var real____cxx_global_var_init_40 = asm["___cxx_global_var_init_40"];
  23967. asm["___cxx_global_var_init_40"] = (function() {
  23968. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23969. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23970. return real____cxx_global_var_init_40.apply(null, arguments);
  23971. });
  23972. var real____cxx_global_var_init_40_13342 = asm["___cxx_global_var_init_40_13342"];
  23973. asm["___cxx_global_var_init_40_13342"] = (function() {
  23974. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23975. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23976. return real____cxx_global_var_init_40_13342.apply(null, arguments);
  23977. });
  23978. var real____cxx_global_var_init_40_7787 = asm["___cxx_global_var_init_40_7787"];
  23979. asm["___cxx_global_var_init_40_7787"] = (function() {
  23980. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23981. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23982. return real____cxx_global_var_init_40_7787.apply(null, arguments);
  23983. });
  23984. var real____cxx_global_var_init_40_9172 = asm["___cxx_global_var_init_40_9172"];
  23985. asm["___cxx_global_var_init_40_9172"] = (function() {
  23986. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23987. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23988. return real____cxx_global_var_init_40_9172.apply(null, arguments);
  23989. });
  23990. var real____cxx_global_var_init_41 = asm["___cxx_global_var_init_41"];
  23991. asm["___cxx_global_var_init_41"] = (function() {
  23992. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23993. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  23994. return real____cxx_global_var_init_41.apply(null, arguments);
  23995. });
  23996. var real____cxx_global_var_init_41_7788 = asm["___cxx_global_var_init_41_7788"];
  23997. asm["___cxx_global_var_init_41_7788"] = (function() {
  23998. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  23999. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24000. return real____cxx_global_var_init_41_7788.apply(null, arguments);
  24001. });
  24002. var real____cxx_global_var_init_41_9173 = asm["___cxx_global_var_init_41_9173"];
  24003. asm["___cxx_global_var_init_41_9173"] = (function() {
  24004. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24005. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24006. return real____cxx_global_var_init_41_9173.apply(null, arguments);
  24007. });
  24008. var real____cxx_global_var_init_42 = asm["___cxx_global_var_init_42"];
  24009. asm["___cxx_global_var_init_42"] = (function() {
  24010. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24011. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24012. return real____cxx_global_var_init_42.apply(null, arguments);
  24013. });
  24014. var real____cxx_global_var_init_42_7789 = asm["___cxx_global_var_init_42_7789"];
  24015. asm["___cxx_global_var_init_42_7789"] = (function() {
  24016. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24017. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24018. return real____cxx_global_var_init_42_7789.apply(null, arguments);
  24019. });
  24020. var real____cxx_global_var_init_42_9174 = asm["___cxx_global_var_init_42_9174"];
  24021. asm["___cxx_global_var_init_42_9174"] = (function() {
  24022. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24023. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24024. return real____cxx_global_var_init_42_9174.apply(null, arguments);
  24025. });
  24026. var real____cxx_global_var_init_43 = asm["___cxx_global_var_init_43"];
  24027. asm["___cxx_global_var_init_43"] = (function() {
  24028. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24029. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24030. return real____cxx_global_var_init_43.apply(null, arguments);
  24031. });
  24032. var real____cxx_global_var_init_43_7790 = asm["___cxx_global_var_init_43_7790"];
  24033. asm["___cxx_global_var_init_43_7790"] = (function() {
  24034. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24035. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24036. return real____cxx_global_var_init_43_7790.apply(null, arguments);
  24037. });
  24038. var real____cxx_global_var_init_43_9175 = asm["___cxx_global_var_init_43_9175"];
  24039. asm["___cxx_global_var_init_43_9175"] = (function() {
  24040. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24041. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24042. return real____cxx_global_var_init_43_9175.apply(null, arguments);
  24043. });
  24044. var real____cxx_global_var_init_44 = asm["___cxx_global_var_init_44"];
  24045. asm["___cxx_global_var_init_44"] = (function() {
  24046. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24047. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24048. return real____cxx_global_var_init_44.apply(null, arguments);
  24049. });
  24050. var real____cxx_global_var_init_44_4479 = asm["___cxx_global_var_init_44_4479"];
  24051. asm["___cxx_global_var_init_44_4479"] = (function() {
  24052. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24053. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24054. return real____cxx_global_var_init_44_4479.apply(null, arguments);
  24055. });
  24056. var real____cxx_global_var_init_44_7480 = asm["___cxx_global_var_init_44_7480"];
  24057. asm["___cxx_global_var_init_44_7480"] = (function() {
  24058. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24059. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24060. return real____cxx_global_var_init_44_7480.apply(null, arguments);
  24061. });
  24062. var real____cxx_global_var_init_44_7791 = asm["___cxx_global_var_init_44_7791"];
  24063. asm["___cxx_global_var_init_44_7791"] = (function() {
  24064. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24065. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24066. return real____cxx_global_var_init_44_7791.apply(null, arguments);
  24067. });
  24068. var real____cxx_global_var_init_44_9176 = asm["___cxx_global_var_init_44_9176"];
  24069. asm["___cxx_global_var_init_44_9176"] = (function() {
  24070. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24071. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24072. return real____cxx_global_var_init_44_9176.apply(null, arguments);
  24073. });
  24074. var real____cxx_global_var_init_45 = asm["___cxx_global_var_init_45"];
  24075. asm["___cxx_global_var_init_45"] = (function() {
  24076. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24077. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24078. return real____cxx_global_var_init_45.apply(null, arguments);
  24079. });
  24080. var real____cxx_global_var_init_45_4480 = asm["___cxx_global_var_init_45_4480"];
  24081. asm["___cxx_global_var_init_45_4480"] = (function() {
  24082. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24083. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24084. return real____cxx_global_var_init_45_4480.apply(null, arguments);
  24085. });
  24086. var real____cxx_global_var_init_45_7792 = asm["___cxx_global_var_init_45_7792"];
  24087. asm["___cxx_global_var_init_45_7792"] = (function() {
  24088. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24089. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24090. return real____cxx_global_var_init_45_7792.apply(null, arguments);
  24091. });
  24092. var real____cxx_global_var_init_46 = asm["___cxx_global_var_init_46"];
  24093. asm["___cxx_global_var_init_46"] = (function() {
  24094. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24095. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24096. return real____cxx_global_var_init_46.apply(null, arguments);
  24097. });
  24098. var real____cxx_global_var_init_46_4481 = asm["___cxx_global_var_init_46_4481"];
  24099. asm["___cxx_global_var_init_46_4481"] = (function() {
  24100. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24101. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24102. return real____cxx_global_var_init_46_4481.apply(null, arguments);
  24103. });
  24104. var real____cxx_global_var_init_47 = asm["___cxx_global_var_init_47"];
  24105. asm["___cxx_global_var_init_47"] = (function() {
  24106. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24107. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24108. return real____cxx_global_var_init_47.apply(null, arguments);
  24109. });
  24110. var real____cxx_global_var_init_47_1170 = asm["___cxx_global_var_init_47_1170"];
  24111. asm["___cxx_global_var_init_47_1170"] = (function() {
  24112. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24113. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24114. return real____cxx_global_var_init_47_1170.apply(null, arguments);
  24115. });
  24116. var real____cxx_global_var_init_48 = asm["___cxx_global_var_init_48"];
  24117. asm["___cxx_global_var_init_48"] = (function() {
  24118. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24119. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24120. return real____cxx_global_var_init_48.apply(null, arguments);
  24121. });
  24122. var real____cxx_global_var_init_48_1171 = asm["___cxx_global_var_init_48_1171"];
  24123. asm["___cxx_global_var_init_48_1171"] = (function() {
  24124. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24125. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24126. return real____cxx_global_var_init_48_1171.apply(null, arguments);
  24127. });
  24128. var real____cxx_global_var_init_4_669 = asm["___cxx_global_var_init_4_669"];
  24129. asm["___cxx_global_var_init_4_669"] = (function() {
  24130. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24131. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24132. return real____cxx_global_var_init_4_669.apply(null, arguments);
  24133. });
  24134. var real____cxx_global_var_init_4_6710 = asm["___cxx_global_var_init_4_6710"];
  24135. asm["___cxx_global_var_init_4_6710"] = (function() {
  24136. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24137. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24138. return real____cxx_global_var_init_4_6710.apply(null, arguments);
  24139. });
  24140. var real____cxx_global_var_init_5 = asm["___cxx_global_var_init_5"];
  24141. asm["___cxx_global_var_init_5"] = (function() {
  24142. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24143. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24144. return real____cxx_global_var_init_5.apply(null, arguments);
  24145. });
  24146. var real____cxx_global_var_init_50 = asm["___cxx_global_var_init_50"];
  24147. asm["___cxx_global_var_init_50"] = (function() {
  24148. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24149. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24150. return real____cxx_global_var_init_50.apply(null, arguments);
  24151. });
  24152. var real____cxx_global_var_init_53 = asm["___cxx_global_var_init_53"];
  24153. asm["___cxx_global_var_init_53"] = (function() {
  24154. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24155. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24156. return real____cxx_global_var_init_53.apply(null, arguments);
  24157. });
  24158. var real____cxx_global_var_init_57 = asm["___cxx_global_var_init_57"];
  24159. asm["___cxx_global_var_init_57"] = (function() {
  24160. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24161. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24162. return real____cxx_global_var_init_57.apply(null, arguments);
  24163. });
  24164. var real____cxx_global_var_init_58 = asm["___cxx_global_var_init_58"];
  24165. asm["___cxx_global_var_init_58"] = (function() {
  24166. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24167. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24168. return real____cxx_global_var_init_58.apply(null, arguments);
  24169. });
  24170. var real____cxx_global_var_init_63 = asm["___cxx_global_var_init_63"];
  24171. asm["___cxx_global_var_init_63"] = (function() {
  24172. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24173. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24174. return real____cxx_global_var_init_63.apply(null, arguments);
  24175. });
  24176. var real____cxx_global_var_init_67 = asm["___cxx_global_var_init_67"];
  24177. asm["___cxx_global_var_init_67"] = (function() {
  24178. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24179. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24180. return real____cxx_global_var_init_67.apply(null, arguments);
  24181. });
  24182. var real____cxx_global_var_init_68 = asm["___cxx_global_var_init_68"];
  24183. asm["___cxx_global_var_init_68"] = (function() {
  24184. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24185. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24186. return real____cxx_global_var_init_68.apply(null, arguments);
  24187. });
  24188. var real____cxx_global_var_init_69 = asm["___cxx_global_var_init_69"];
  24189. asm["___cxx_global_var_init_69"] = (function() {
  24190. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24191. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24192. return real____cxx_global_var_init_69.apply(null, arguments);
  24193. });
  24194. var real____cxx_global_var_init_6_4226 = asm["___cxx_global_var_init_6_4226"];
  24195. asm["___cxx_global_var_init_6_4226"] = (function() {
  24196. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24197. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24198. return real____cxx_global_var_init_6_4226.apply(null, arguments);
  24199. });
  24200. var real____cxx_global_var_init_7 = asm["___cxx_global_var_init_7"];
  24201. asm["___cxx_global_var_init_7"] = (function() {
  24202. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24203. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24204. return real____cxx_global_var_init_7.apply(null, arguments);
  24205. });
  24206. var real____cxx_global_var_init_70 = asm["___cxx_global_var_init_70"];
  24207. asm["___cxx_global_var_init_70"] = (function() {
  24208. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24209. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24210. return real____cxx_global_var_init_70.apply(null, arguments);
  24211. });
  24212. var real____cxx_global_var_init_7295 = asm["___cxx_global_var_init_7295"];
  24213. asm["___cxx_global_var_init_7295"] = (function() {
  24214. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24215. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24216. return real____cxx_global_var_init_7295.apply(null, arguments);
  24217. });
  24218. var real____cxx_global_var_init_75 = asm["___cxx_global_var_init_75"];
  24219. asm["___cxx_global_var_init_75"] = (function() {
  24220. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24221. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24222. return real____cxx_global_var_init_75.apply(null, arguments);
  24223. });
  24224. var real____cxx_global_var_init_75_8813 = asm["___cxx_global_var_init_75_8813"];
  24225. asm["___cxx_global_var_init_75_8813"] = (function() {
  24226. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24227. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24228. return real____cxx_global_var_init_75_8813.apply(null, arguments);
  24229. });
  24230. var real____cxx_global_var_init_77 = asm["___cxx_global_var_init_77"];
  24231. asm["___cxx_global_var_init_77"] = (function() {
  24232. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24233. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24234. return real____cxx_global_var_init_77.apply(null, arguments);
  24235. });
  24236. var real____cxx_global_var_init_77_1167 = asm["___cxx_global_var_init_77_1167"];
  24237. asm["___cxx_global_var_init_77_1167"] = (function() {
  24238. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24239. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24240. return real____cxx_global_var_init_77_1167.apply(null, arguments);
  24241. });
  24242. var real____cxx_global_var_init_77_5879 = asm["___cxx_global_var_init_77_5879"];
  24243. asm["___cxx_global_var_init_77_5879"] = (function() {
  24244. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24245. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24246. return real____cxx_global_var_init_77_5879.apply(null, arguments);
  24247. });
  24248. var real____cxx_global_var_init_78 = asm["___cxx_global_var_init_78"];
  24249. asm["___cxx_global_var_init_78"] = (function() {
  24250. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24251. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24252. return real____cxx_global_var_init_78.apply(null, arguments);
  24253. });
  24254. var real____cxx_global_var_init_79 = asm["___cxx_global_var_init_79"];
  24255. asm["___cxx_global_var_init_79"] = (function() {
  24256. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24257. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24258. return real____cxx_global_var_init_79.apply(null, arguments);
  24259. });
  24260. var real____cxx_global_var_init_7_4227 = asm["___cxx_global_var_init_7_4227"];
  24261. asm["___cxx_global_var_init_7_4227"] = (function() {
  24262. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24263. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24264. return real____cxx_global_var_init_7_4227.apply(null, arguments);
  24265. });
  24266. var real____cxx_global_var_init_7_6648 = asm["___cxx_global_var_init_7_6648"];
  24267. asm["___cxx_global_var_init_7_6648"] = (function() {
  24268. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24269. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24270. return real____cxx_global_var_init_7_6648.apply(null, arguments);
  24271. });
  24272. var real____cxx_global_var_init_80 = asm["___cxx_global_var_init_80"];
  24273. asm["___cxx_global_var_init_80"] = (function() {
  24274. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24275. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24276. return real____cxx_global_var_init_80.apply(null, arguments);
  24277. });
  24278. var real____cxx_global_var_init_8030 = asm["___cxx_global_var_init_8030"];
  24279. asm["___cxx_global_var_init_8030"] = (function() {
  24280. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24281. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24282. return real____cxx_global_var_init_8030.apply(null, arguments);
  24283. });
  24284. var real____cxx_global_var_init_81 = asm["___cxx_global_var_init_81"];
  24285. asm["___cxx_global_var_init_81"] = (function() {
  24286. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24287. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24288. return real____cxx_global_var_init_81.apply(null, arguments);
  24289. });
  24290. var real____cxx_global_var_init_81_5880 = asm["___cxx_global_var_init_81_5880"];
  24291. asm["___cxx_global_var_init_81_5880"] = (function() {
  24292. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24293. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24294. return real____cxx_global_var_init_81_5880.apply(null, arguments);
  24295. });
  24296. var real____cxx_global_var_init_87 = asm["___cxx_global_var_init_87"];
  24297. asm["___cxx_global_var_init_87"] = (function() {
  24298. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24299. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24300. return real____cxx_global_var_init_87.apply(null, arguments);
  24301. });
  24302. var real____cxx_global_var_init_8981 = asm["___cxx_global_var_init_8981"];
  24303. asm["___cxx_global_var_init_8981"] = (function() {
  24304. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24305. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24306. return real____cxx_global_var_init_8981.apply(null, arguments);
  24307. });
  24308. var real____cxx_global_var_init_8_4228 = asm["___cxx_global_var_init_8_4228"];
  24309. asm["___cxx_global_var_init_8_4228"] = (function() {
  24310. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24311. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24312. return real____cxx_global_var_init_8_4228.apply(null, arguments);
  24313. });
  24314. var real____cxx_global_var_init_9 = asm["___cxx_global_var_init_9"];
  24315. asm["___cxx_global_var_init_9"] = (function() {
  24316. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24317. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24318. return real____cxx_global_var_init_9.apply(null, arguments);
  24319. });
  24320. var real____emscripten_environ_constructor = asm["___emscripten_environ_constructor"];
  24321. asm["___emscripten_environ_constructor"] = (function() {
  24322. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24323. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24324. return real____emscripten_environ_constructor.apply(null, arguments);
  24325. });
  24326. var real____errno_location = asm["___errno_location"];
  24327. asm["___errno_location"] = (function() {
  24328. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24329. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24330. return real____errno_location.apply(null, arguments);
  24331. });
  24332. var real___get_daylight = asm["__get_daylight"];
  24333. asm["__get_daylight"] = (function() {
  24334. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24335. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24336. return real___get_daylight.apply(null, arguments);
  24337. });
  24338. var real___get_environ = asm["__get_environ"];
  24339. asm["__get_environ"] = (function() {
  24340. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24341. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24342. return real___get_environ.apply(null, arguments);
  24343. });
  24344. var real___get_timezone = asm["__get_timezone"];
  24345. asm["__get_timezone"] = (function() {
  24346. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24347. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24348. return real___get_timezone.apply(null, arguments);
  24349. });
  24350. var real___get_tzname = asm["__get_tzname"];
  24351. asm["__get_tzname"] = (function() {
  24352. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24353. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24354. return real___get_tzname.apply(null, arguments);
  24355. });
  24356. var real__fflush = asm["_fflush"];
  24357. asm["_fflush"] = (function() {
  24358. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24359. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24360. return real__fflush.apply(null, arguments);
  24361. });
  24362. var real__free = asm["_free"];
  24363. asm["_free"] = (function() {
  24364. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24365. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24366. return real__free.apply(null, arguments);
  24367. });
  24368. var real__htonl = asm["_htonl"];
  24369. asm["_htonl"] = (function() {
  24370. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24371. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24372. return real__htonl.apply(null, arguments);
  24373. });
  24374. var real__htons = asm["_htons"];
  24375. asm["_htons"] = (function() {
  24376. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24377. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24378. return real__htons.apply(null, arguments);
  24379. });
  24380. var real__i64Add = asm["_i64Add"];
  24381. asm["_i64Add"] = (function() {
  24382. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24383. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24384. return real__i64Add.apply(null, arguments);
  24385. });
  24386. var real__llvm_bswap_i16 = asm["_llvm_bswap_i16"];
  24387. asm["_llvm_bswap_i16"] = (function() {
  24388. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24389. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24390. return real__llvm_bswap_i16.apply(null, arguments);
  24391. });
  24392. var real__llvm_bswap_i32 = asm["_llvm_bswap_i32"];
  24393. asm["_llvm_bswap_i32"] = (function() {
  24394. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24395. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24396. return real__llvm_bswap_i32.apply(null, arguments);
  24397. });
  24398. var real__llvm_ctlz_i64 = asm["_llvm_ctlz_i64"];
  24399. asm["_llvm_ctlz_i64"] = (function() {
  24400. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24401. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24402. return real__llvm_ctlz_i64.apply(null, arguments);
  24403. });
  24404. var real__llvm_ctpop_i32 = asm["_llvm_ctpop_i32"];
  24405. asm["_llvm_ctpop_i32"] = (function() {
  24406. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24407. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24408. return real__llvm_ctpop_i32.apply(null, arguments);
  24409. });
  24410. var real__llvm_maxnum_f32 = asm["_llvm_maxnum_f32"];
  24411. asm["_llvm_maxnum_f32"] = (function() {
  24412. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24413. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24414. return real__llvm_maxnum_f32.apply(null, arguments);
  24415. });
  24416. var real__llvm_maxnum_f64 = asm["_llvm_maxnum_f64"];
  24417. asm["_llvm_maxnum_f64"] = (function() {
  24418. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24419. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24420. return real__llvm_maxnum_f64.apply(null, arguments);
  24421. });
  24422. var real__llvm_minnum_f32 = asm["_llvm_minnum_f32"];
  24423. asm["_llvm_minnum_f32"] = (function() {
  24424. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24425. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24426. return real__llvm_minnum_f32.apply(null, arguments);
  24427. });
  24428. var real__llvm_round_f32 = asm["_llvm_round_f32"];
  24429. asm["_llvm_round_f32"] = (function() {
  24430. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24431. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24432. return real__llvm_round_f32.apply(null, arguments);
  24433. });
  24434. var real__main = asm["_main"];
  24435. asm["_main"] = (function() {
  24436. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24437. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24438. return real__main.apply(null, arguments);
  24439. });
  24440. var real__malloc = asm["_malloc"];
  24441. asm["_malloc"] = (function() {
  24442. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24443. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24444. return real__malloc.apply(null, arguments);
  24445. });
  24446. var real__memalign = asm["_memalign"];
  24447. asm["_memalign"] = (function() {
  24448. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24449. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24450. return real__memalign.apply(null, arguments);
  24451. });
  24452. var real__memmove = asm["_memmove"];
  24453. asm["_memmove"] = (function() {
  24454. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24455. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24456. return real__memmove.apply(null, arguments);
  24457. });
  24458. var real__ntohs = asm["_ntohs"];
  24459. asm["_ntohs"] = (function() {
  24460. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24461. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24462. return real__ntohs.apply(null, arguments);
  24463. });
  24464. var real__pthread_cond_broadcast = asm["_pthread_cond_broadcast"];
  24465. asm["_pthread_cond_broadcast"] = (function() {
  24466. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24467. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24468. return real__pthread_cond_broadcast.apply(null, arguments);
  24469. });
  24470. var real__pthread_mutex_lock = asm["_pthread_mutex_lock"];
  24471. asm["_pthread_mutex_lock"] = (function() {
  24472. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24473. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24474. return real__pthread_mutex_lock.apply(null, arguments);
  24475. });
  24476. var real__pthread_mutex_unlock = asm["_pthread_mutex_unlock"];
  24477. asm["_pthread_mutex_unlock"] = (function() {
  24478. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24479. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24480. return real__pthread_mutex_unlock.apply(null, arguments);
  24481. });
  24482. var real__realloc = asm["_realloc"];
  24483. asm["_realloc"] = (function() {
  24484. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24485. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24486. return real__realloc.apply(null, arguments);
  24487. });
  24488. var real__saveSetjmp = asm["_saveSetjmp"];
  24489. asm["_saveSetjmp"] = (function() {
  24490. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24491. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24492. return real__saveSetjmp.apply(null, arguments);
  24493. });
  24494. var real__sbrk = asm["_sbrk"];
  24495. asm["_sbrk"] = (function() {
  24496. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24497. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24498. return real__sbrk.apply(null, arguments);
  24499. });
  24500. var real__strlen = asm["_strlen"];
  24501. asm["_strlen"] = (function() {
  24502. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24503. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24504. return real__strlen.apply(null, arguments);
  24505. });
  24506. var real__testSetjmp = asm["_testSetjmp"];
  24507. asm["_testSetjmp"] = (function() {
  24508. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24509. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24510. return real__testSetjmp.apply(null, arguments);
  24511. });
  24512. var real_establishStackSpace = asm["establishStackSpace"];
  24513. asm["establishStackSpace"] = (function() {
  24514. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24515. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24516. return real_establishStackSpace.apply(null, arguments);
  24517. });
  24518. var real_getTempRet0 = asm["getTempRet0"];
  24519. asm["getTempRet0"] = (function() {
  24520. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24521. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24522. return real_getTempRet0.apply(null, arguments);
  24523. });
  24524. var real_setTempRet0 = asm["setTempRet0"];
  24525. asm["setTempRet0"] = (function() {
  24526. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24527. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24528. return real_setTempRet0.apply(null, arguments);
  24529. });
  24530. var real_setThrew = asm["setThrew"];
  24531. asm["setThrew"] = (function() {
  24532. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24533. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24534. return real_setThrew.apply(null, arguments);
  24535. });
  24536. var real_stackAlloc = asm["stackAlloc"];
  24537. asm["stackAlloc"] = (function() {
  24538. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24539. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24540. return real_stackAlloc.apply(null, arguments);
  24541. });
  24542. var real_stackRestore = asm["stackRestore"];
  24543. asm["stackRestore"] = (function() {
  24544. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24545. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24546. return real_stackRestore.apply(null, arguments);
  24547. });
  24548. var real_stackSave = asm["stackSave"];
  24549. asm["stackSave"] = (function() {
  24550. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24551. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24552. return real_stackSave.apply(null, arguments);
  24553. });
  24554. Module["asm"] = asm;
  24555. var _InjectProfilerSample = Module["_InjectProfilerSample"] = (function() {
  24556. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24557. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24558. return Module["asm"]["_InjectProfilerSample"].apply(null, arguments);
  24559. });
  24560. var _SendMessage = Module["_SendMessage"] = (function() {
  24561. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24562. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24563. return Module["asm"]["_SendMessage"].apply(null, arguments);
  24564. });
  24565. var _SendMessageFloat = Module["_SendMessageFloat"] = (function() {
  24566. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24567. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24568. return Module["asm"]["_SendMessageFloat"].apply(null, arguments);
  24569. });
  24570. var _SendMessageString = Module["_SendMessageString"] = (function() {
  24571. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24572. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24573. return Module["asm"]["_SendMessageString"].apply(null, arguments);
  24574. });
  24575. var _SetFullscreen = Module["_SetFullscreen"] = (function() {
  24576. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24577. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24578. return Module["asm"]["_SetFullscreen"].apply(null, arguments);
  24579. });
  24580. var __GLOBAL__sub_I_AIScriptingClasses_cpp = Module["__GLOBAL__sub_I_AIScriptingClasses_cpp"] = (function() {
  24581. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24582. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24583. return Module["asm"]["__GLOBAL__sub_I_AIScriptingClasses_cpp"].apply(null, arguments);
  24584. });
  24585. var __GLOBAL__sub_I_AccessibilityScriptingClasses_cpp = Module["__GLOBAL__sub_I_AccessibilityScriptingClasses_cpp"] = (function() {
  24586. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24587. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24588. return Module["asm"]["__GLOBAL__sub_I_AccessibilityScriptingClasses_cpp"].apply(null, arguments);
  24589. });
  24590. var __GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp = Module["__GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp"] = (function() {
  24591. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24592. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24593. return Module["asm"]["__GLOBAL__sub_I_AndroidJNIScriptingClasses_cpp"].apply(null, arguments);
  24594. });
  24595. var __GLOBAL__sub_I_AnimationClip_cpp = Module["__GLOBAL__sub_I_AnimationClip_cpp"] = (function() {
  24596. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24597. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24598. return Module["asm"]["__GLOBAL__sub_I_AnimationClip_cpp"].apply(null, arguments);
  24599. });
  24600. var __GLOBAL__sub_I_AnimationScriptingClasses_cpp = Module["__GLOBAL__sub_I_AnimationScriptingClasses_cpp"] = (function() {
  24601. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24602. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24603. return Module["asm"]["__GLOBAL__sub_I_AnimationScriptingClasses_cpp"].apply(null, arguments);
  24604. });
  24605. var __GLOBAL__sub_I_AssetBundleFileSystem_cpp = Module["__GLOBAL__sub_I_AssetBundleFileSystem_cpp"] = (function() {
  24606. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24607. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24608. return Module["asm"]["__GLOBAL__sub_I_AssetBundleFileSystem_cpp"].apply(null, arguments);
  24609. });
  24610. var __GLOBAL__sub_I_AssetBundleScriptingClasses_cpp = Module["__GLOBAL__sub_I_AssetBundleScriptingClasses_cpp"] = (function() {
  24611. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24612. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24613. return Module["asm"]["__GLOBAL__sub_I_AssetBundleScriptingClasses_cpp"].apply(null, arguments);
  24614. });
  24615. var __GLOBAL__sub_I_AudioScriptingClasses_cpp = Module["__GLOBAL__sub_I_AudioScriptingClasses_cpp"] = (function() {
  24616. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24617. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24618. return Module["asm"]["__GLOBAL__sub_I_AudioScriptingClasses_cpp"].apply(null, arguments);
  24619. });
  24620. var __GLOBAL__sub_I_Avatar_cpp = Module["__GLOBAL__sub_I_Avatar_cpp"] = (function() {
  24621. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24622. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24623. return Module["asm"]["__GLOBAL__sub_I_Avatar_cpp"].apply(null, arguments);
  24624. });
  24625. var __GLOBAL__sub_I_ClothScriptingClasses_cpp = Module["__GLOBAL__sub_I_ClothScriptingClasses_cpp"] = (function() {
  24626. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24627. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24628. return Module["asm"]["__GLOBAL__sub_I_ClothScriptingClasses_cpp"].apply(null, arguments);
  24629. });
  24630. var __GLOBAL__sub_I_ConstraintJob_cpp = Module["__GLOBAL__sub_I_ConstraintJob_cpp"] = (function() {
  24631. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24632. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24633. return Module["asm"]["__GLOBAL__sub_I_ConstraintJob_cpp"].apply(null, arguments);
  24634. });
  24635. var __GLOBAL__sub_I_ConstraintManager_cpp = Module["__GLOBAL__sub_I_ConstraintManager_cpp"] = (function() {
  24636. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24637. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24638. return Module["asm"]["__GLOBAL__sub_I_ConstraintManager_cpp"].apply(null, arguments);
  24639. });
  24640. var __GLOBAL__sub_I_DirectorScriptingClasses_cpp = Module["__GLOBAL__sub_I_DirectorScriptingClasses_cpp"] = (function() {
  24641. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24642. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24643. return Module["asm"]["__GLOBAL__sub_I_DirectorScriptingClasses_cpp"].apply(null, arguments);
  24644. });
  24645. var __GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_0_cpp = Module["__GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_0_cpp"] = (function() {
  24646. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24647. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24648. return Module["asm"]["__GLOBAL__sub_I_External_Box2D_Box2D_Dynamics_0_cpp"].apply(null, arguments);
  24649. });
  24650. var __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp = Module["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp"] = (function() {
  24651. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24652. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24653. return Module["asm"]["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_0_cpp"].apply(null, arguments);
  24654. });
  24655. var __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp = Module["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp"] = (function() {
  24656. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24657. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24658. return Module["asm"]["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_1_cpp"].apply(null, arguments);
  24659. });
  24660. var __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp = Module["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp"] = (function() {
  24661. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24662. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24663. return Module["asm"]["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_2_cpp"].apply(null, arguments);
  24664. });
  24665. var __GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp = Module["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp"] = (function() {
  24666. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24667. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24668. return Module["asm"]["__GLOBAL__sub_I_External_Box2D_Box2D_Jobs_3_cpp"].apply(null, arguments);
  24669. });
  24670. var __GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp = Module["__GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp"] = (function() {
  24671. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24672. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24673. return Module["asm"]["__GLOBAL__sub_I_External_ProphecySDK_BlitOperations_1_cpp"].apply(null, arguments);
  24674. });
  24675. var __GLOBAL__sub_I_External_Yoga_Yoga_0_cpp = Module["__GLOBAL__sub_I_External_Yoga_Yoga_0_cpp"] = (function() {
  24676. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24677. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24678. return Module["asm"]["__GLOBAL__sub_I_External_Yoga_Yoga_0_cpp"].apply(null, arguments);
  24679. });
  24680. var __GLOBAL__sub_I_GUITexture_cpp = Module["__GLOBAL__sub_I_GUITexture_cpp"] = (function() {
  24681. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24682. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24683. return Module["asm"]["__GLOBAL__sub_I_GUITexture_cpp"].apply(null, arguments);
  24684. });
  24685. var __GLOBAL__sub_I_GfxDeviceNull_cpp = Module["__GLOBAL__sub_I_GfxDeviceNull_cpp"] = (function() {
  24686. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24687. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24688. return Module["asm"]["__GLOBAL__sub_I_GfxDeviceNull_cpp"].apply(null, arguments);
  24689. });
  24690. var __GLOBAL__sub_I_GridScriptingClasses_cpp = Module["__GLOBAL__sub_I_GridScriptingClasses_cpp"] = (function() {
  24691. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24692. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24693. return Module["asm"]["__GLOBAL__sub_I_GridScriptingClasses_cpp"].apply(null, arguments);
  24694. });
  24695. var __GLOBAL__sub_I_IMGUIScriptingClasses_cpp = Module["__GLOBAL__sub_I_IMGUIScriptingClasses_cpp"] = (function() {
  24696. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24697. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24698. return Module["asm"]["__GLOBAL__sub_I_IMGUIScriptingClasses_cpp"].apply(null, arguments);
  24699. });
  24700. var __GLOBAL__sub_I_Il2CppCodeRegistration_cpp = Module["__GLOBAL__sub_I_Il2CppCodeRegistration_cpp"] = (function() {
  24701. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24702. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24703. return Module["asm"]["__GLOBAL__sub_I_Il2CppCodeRegistration_cpp"].apply(null, arguments);
  24704. });
  24705. var __GLOBAL__sub_I_InputLegacyModuleRegistration_cpp = Module["__GLOBAL__sub_I_InputLegacyModuleRegistration_cpp"] = (function() {
  24706. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24707. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24708. return Module["asm"]["__GLOBAL__sub_I_InputLegacyModuleRegistration_cpp"].apply(null, arguments);
  24709. });
  24710. var __GLOBAL__sub_I_InputLegacyScriptingClasses_cpp = Module["__GLOBAL__sub_I_InputLegacyScriptingClasses_cpp"] = (function() {
  24711. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24712. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24713. return Module["asm"]["__GLOBAL__sub_I_InputLegacyScriptingClasses_cpp"].apply(null, arguments);
  24714. });
  24715. var __GLOBAL__sub_I_InputScriptingClasses_cpp = Module["__GLOBAL__sub_I_InputScriptingClasses_cpp"] = (function() {
  24716. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24717. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24718. return Module["asm"]["__GLOBAL__sub_I_InputScriptingClasses_cpp"].apply(null, arguments);
  24719. });
  24720. var __GLOBAL__sub_I_LineRenderer_cpp = Module["__GLOBAL__sub_I_LineRenderer_cpp"] = (function() {
  24721. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24722. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24723. return Module["asm"]["__GLOBAL__sub_I_LineRenderer_cpp"].apply(null, arguments);
  24724. });
  24725. var __GLOBAL__sub_I_LogAssert_cpp = Module["__GLOBAL__sub_I_LogAssert_cpp"] = (function() {
  24726. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24727. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24728. return Module["asm"]["__GLOBAL__sub_I_LogAssert_cpp"].apply(null, arguments);
  24729. });
  24730. var __GLOBAL__sub_I_Lump_libil2cpp_gc_cpp = Module["__GLOBAL__sub_I_Lump_libil2cpp_gc_cpp"] = (function() {
  24731. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24732. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24733. return Module["asm"]["__GLOBAL__sub_I_Lump_libil2cpp_gc_cpp"].apply(null, arguments);
  24734. });
  24735. var __GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp = Module["__GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp"] = (function() {
  24736. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24737. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24738. return Module["asm"]["__GLOBAL__sub_I_Lump_libil2cpp_metadata_cpp"].apply(null, arguments);
  24739. });
  24740. var __GLOBAL__sub_I_Lump_libil2cpp_os_cpp = Module["__GLOBAL__sub_I_Lump_libil2cpp_os_cpp"] = (function() {
  24741. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24742. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24743. return Module["asm"]["__GLOBAL__sub_I_Lump_libil2cpp_os_cpp"].apply(null, arguments);
  24744. });
  24745. var __GLOBAL__sub_I_Lump_libil2cpp_utils_cpp = Module["__GLOBAL__sub_I_Lump_libil2cpp_utils_cpp"] = (function() {
  24746. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24747. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24748. return Module["asm"]["__GLOBAL__sub_I_Lump_libil2cpp_utils_cpp"].apply(null, arguments);
  24749. });
  24750. var __GLOBAL__sub_I_Lump_libil2cpp_vm_cpp = Module["__GLOBAL__sub_I_Lump_libil2cpp_vm_cpp"] = (function() {
  24751. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24752. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24753. return Module["asm"]["__GLOBAL__sub_I_Lump_libil2cpp_vm_cpp"].apply(null, arguments);
  24754. });
  24755. var __GLOBAL__sub_I_Modules_AI_0_cpp = Module["__GLOBAL__sub_I_Modules_AI_0_cpp"] = (function() {
  24756. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24757. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24758. return Module["asm"]["__GLOBAL__sub_I_Modules_AI_0_cpp"].apply(null, arguments);
  24759. });
  24760. var __GLOBAL__sub_I_Modules_AI_Builder_0_cpp = Module["__GLOBAL__sub_I_Modules_AI_Builder_0_cpp"] = (function() {
  24761. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24762. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24763. return Module["asm"]["__GLOBAL__sub_I_Modules_AI_Builder_0_cpp"].apply(null, arguments);
  24764. });
  24765. var __GLOBAL__sub_I_Modules_AI_Crowd_0_cpp = Module["__GLOBAL__sub_I_Modules_AI_Crowd_0_cpp"] = (function() {
  24766. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24767. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24768. return Module["asm"]["__GLOBAL__sub_I_Modules_AI_Crowd_0_cpp"].apply(null, arguments);
  24769. });
  24770. var __GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp = Module["__GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp"] = (function() {
  24771. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24772. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24773. return Module["asm"]["__GLOBAL__sub_I_Modules_AI_NavMesh_0_cpp"].apply(null, arguments);
  24774. });
  24775. var __GLOBAL__sub_I_Modules_AI_Obstacles_0_cpp = Module["__GLOBAL__sub_I_Modules_AI_Obstacles_0_cpp"] = (function() {
  24776. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24777. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24778. return Module["asm"]["__GLOBAL__sub_I_Modules_AI_Obstacles_0_cpp"].apply(null, arguments);
  24779. });
  24780. var __GLOBAL__sub_I_Modules_Animation_0_cpp = Module["__GLOBAL__sub_I_Modules_Animation_0_cpp"] = (function() {
  24781. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24782. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24783. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_0_cpp"].apply(null, arguments);
  24784. });
  24785. var __GLOBAL__sub_I_Modules_Animation_1_cpp = Module["__GLOBAL__sub_I_Modules_Animation_1_cpp"] = (function() {
  24786. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24787. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24788. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_1_cpp"].apply(null, arguments);
  24789. });
  24790. var __GLOBAL__sub_I_Modules_Animation_2_cpp = Module["__GLOBAL__sub_I_Modules_Animation_2_cpp"] = (function() {
  24791. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24792. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24793. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_2_cpp"].apply(null, arguments);
  24794. });
  24795. var __GLOBAL__sub_I_Modules_Animation_3_cpp = Module["__GLOBAL__sub_I_Modules_Animation_3_cpp"] = (function() {
  24796. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24797. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24798. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_3_cpp"].apply(null, arguments);
  24799. });
  24800. var __GLOBAL__sub_I_Modules_Animation_5_cpp = Module["__GLOBAL__sub_I_Modules_Animation_5_cpp"] = (function() {
  24801. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24802. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24803. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_5_cpp"].apply(null, arguments);
  24804. });
  24805. var __GLOBAL__sub_I_Modules_Animation_6_cpp = Module["__GLOBAL__sub_I_Modules_Animation_6_cpp"] = (function() {
  24806. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24807. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24808. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_6_cpp"].apply(null, arguments);
  24809. });
  24810. var __GLOBAL__sub_I_Modules_Animation_Director_0_cpp = Module["__GLOBAL__sub_I_Modules_Animation_Director_0_cpp"] = (function() {
  24811. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24812. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24813. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_Director_0_cpp"].apply(null, arguments);
  24814. });
  24815. var __GLOBAL__sub_I_Modules_Animation_Director_1_cpp = Module["__GLOBAL__sub_I_Modules_Animation_Director_1_cpp"] = (function() {
  24816. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24817. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24818. return Module["asm"]["__GLOBAL__sub_I_Modules_Animation_Director_1_cpp"].apply(null, arguments);
  24819. });
  24820. var __GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp"] = (function() {
  24821. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24822. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24823. return Module["asm"]["__GLOBAL__sub_I_Modules_AssetBundle_Public_0_cpp"].apply(null, arguments);
  24824. });
  24825. var __GLOBAL__sub_I_Modules_AssetBundle_Public_1_cpp = Module["__GLOBAL__sub_I_Modules_AssetBundle_Public_1_cpp"] = (function() {
  24826. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24827. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24828. return Module["asm"]["__GLOBAL__sub_I_Modules_AssetBundle_Public_1_cpp"].apply(null, arguments);
  24829. });
  24830. var __GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp = Module["__GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp"] = (function() {
  24831. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24832. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24833. return Module["asm"]["__GLOBAL__sub_I_Modules_AssetBundle_Public_2_cpp"].apply(null, arguments);
  24834. });
  24835. var __GLOBAL__sub_I_Modules_Audio_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_Audio_Public_0_cpp"] = (function() {
  24836. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24837. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24838. return Module["asm"]["__GLOBAL__sub_I_Modules_Audio_Public_0_cpp"].apply(null, arguments);
  24839. });
  24840. var __GLOBAL__sub_I_Modules_Audio_Public_1_cpp = Module["__GLOBAL__sub_I_Modules_Audio_Public_1_cpp"] = (function() {
  24841. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24842. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24843. return Module["asm"]["__GLOBAL__sub_I_Modules_Audio_Public_1_cpp"].apply(null, arguments);
  24844. });
  24845. var __GLOBAL__sub_I_Modules_Audio_Public_3_cpp = Module["__GLOBAL__sub_I_Modules_Audio_Public_3_cpp"] = (function() {
  24846. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24847. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24848. return Module["asm"]["__GLOBAL__sub_I_Modules_Audio_Public_3_cpp"].apply(null, arguments);
  24849. });
  24850. var __GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp = Module["__GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp"] = (function() {
  24851. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24852. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24853. return Module["asm"]["__GLOBAL__sub_I_Modules_Audio_Public_ScriptBindings_1_cpp"].apply(null, arguments);
  24854. });
  24855. var __GLOBAL__sub_I_Modules_Audio_Public_sound_0_cpp = Module["__GLOBAL__sub_I_Modules_Audio_Public_sound_0_cpp"] = (function() {
  24856. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24857. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24858. return Module["asm"]["__GLOBAL__sub_I_Modules_Audio_Public_sound_0_cpp"].apply(null, arguments);
  24859. });
  24860. var __GLOBAL__sub_I_Modules_Cloth_0_cpp = Module["__GLOBAL__sub_I_Modules_Cloth_0_cpp"] = (function() {
  24861. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24862. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24863. return Module["asm"]["__GLOBAL__sub_I_Modules_Cloth_0_cpp"].apply(null, arguments);
  24864. });
  24865. var __GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp"] = (function() {
  24866. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24867. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24868. return Module["asm"]["__GLOBAL__sub_I_Modules_CrashReporting_Public_0_cpp"].apply(null, arguments);
  24869. });
  24870. var __GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp"] = (function() {
  24871. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24872. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24873. return Module["asm"]["__GLOBAL__sub_I_Modules_DSPGraph_Public_0_cpp"].apply(null, arguments);
  24874. });
  24875. var __GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp = Module["__GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp"] = (function() {
  24876. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24877. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24878. return Module["asm"]["__GLOBAL__sub_I_Modules_DSPGraph_Public_1_cpp"].apply(null, arguments);
  24879. });
  24880. var __GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp = Module["__GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp"] = (function() {
  24881. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24882. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24883. return Module["asm"]["__GLOBAL__sub_I_Modules_DSPGraph_Public_3_cpp"].apply(null, arguments);
  24884. });
  24885. var __GLOBAL__sub_I_Modules_Grid_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_Grid_Public_0_cpp"] = (function() {
  24886. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24887. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24888. return Module["asm"]["__GLOBAL__sub_I_Modules_Grid_Public_0_cpp"].apply(null, arguments);
  24889. });
  24890. var __GLOBAL__sub_I_Modules_IMGUI_0_cpp = Module["__GLOBAL__sub_I_Modules_IMGUI_0_cpp"] = (function() {
  24891. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24892. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24893. return Module["asm"]["__GLOBAL__sub_I_Modules_IMGUI_0_cpp"].apply(null, arguments);
  24894. });
  24895. var __GLOBAL__sub_I_Modules_IMGUI_1_cpp = Module["__GLOBAL__sub_I_Modules_IMGUI_1_cpp"] = (function() {
  24896. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24897. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24898. return Module["asm"]["__GLOBAL__sub_I_Modules_IMGUI_1_cpp"].apply(null, arguments);
  24899. });
  24900. var __GLOBAL__sub_I_Modules_Input_Private_0_cpp = Module["__GLOBAL__sub_I_Modules_Input_Private_0_cpp"] = (function() {
  24901. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24902. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24903. return Module["asm"]["__GLOBAL__sub_I_Modules_Input_Private_0_cpp"].apply(null, arguments);
  24904. });
  24905. var __GLOBAL__sub_I_Modules_ParticleSystem_0_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_0_cpp"] = (function() {
  24906. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24907. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24908. return Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_0_cpp"].apply(null, arguments);
  24909. });
  24910. var __GLOBAL__sub_I_Modules_ParticleSystem_1_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_1_cpp"] = (function() {
  24911. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24912. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24913. return Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_1_cpp"].apply(null, arguments);
  24914. });
  24915. var __GLOBAL__sub_I_Modules_ParticleSystem_Modules_0_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_0_cpp"] = (function() {
  24916. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24917. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24918. return Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_0_cpp"].apply(null, arguments);
  24919. });
  24920. var __GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp"] = (function() {
  24921. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24922. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24923. return Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_1_cpp"].apply(null, arguments);
  24924. });
  24925. var __GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp"] = (function() {
  24926. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24927. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24928. return Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_2_cpp"].apply(null, arguments);
  24929. });
  24930. var __GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp"] = (function() {
  24931. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24932. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24933. return Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_3_cpp"].apply(null, arguments);
  24934. });
  24935. var __GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp"] = (function() {
  24936. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24937. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24938. return Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_4_cpp"].apply(null, arguments);
  24939. });
  24940. var __GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp = Module["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp"] = (function() {
  24941. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24942. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24943. return Module["asm"]["__GLOBAL__sub_I_Modules_ParticleSystem_Modules_5_cpp"].apply(null, arguments);
  24944. });
  24945. var __GLOBAL__sub_I_Modules_PerformanceReporting_0_cpp = Module["__GLOBAL__sub_I_Modules_PerformanceReporting_0_cpp"] = (function() {
  24946. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24947. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24948. return Module["asm"]["__GLOBAL__sub_I_Modules_PerformanceReporting_0_cpp"].apply(null, arguments);
  24949. });
  24950. var __GLOBAL__sub_I_Modules_Physics2D_0_cpp = Module["__GLOBAL__sub_I_Modules_Physics2D_0_cpp"] = (function() {
  24951. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24952. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24953. return Module["asm"]["__GLOBAL__sub_I_Modules_Physics2D_0_cpp"].apply(null, arguments);
  24954. });
  24955. var __GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp"] = (function() {
  24956. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24957. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24958. return Module["asm"]["__GLOBAL__sub_I_Modules_Physics2D_Public_0_cpp"].apply(null, arguments);
  24959. });
  24960. var __GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp = Module["__GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp"] = (function() {
  24961. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24962. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24963. return Module["asm"]["__GLOBAL__sub_I_Modules_Physics2D_Public_1_cpp"].apply(null, arguments);
  24964. });
  24965. var __GLOBAL__sub_I_Modules_Physics_0_cpp = Module["__GLOBAL__sub_I_Modules_Physics_0_cpp"] = (function() {
  24966. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24967. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24968. return Module["asm"]["__GLOBAL__sub_I_Modules_Physics_0_cpp"].apply(null, arguments);
  24969. });
  24970. var __GLOBAL__sub_I_Modules_Physics_1_cpp = Module["__GLOBAL__sub_I_Modules_Physics_1_cpp"] = (function() {
  24971. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24972. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24973. return Module["asm"]["__GLOBAL__sub_I_Modules_Physics_1_cpp"].apply(null, arguments);
  24974. });
  24975. var __GLOBAL__sub_I_Modules_Physics_3_cpp = Module["__GLOBAL__sub_I_Modules_Physics_3_cpp"] = (function() {
  24976. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24977. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24978. return Module["asm"]["__GLOBAL__sub_I_Modules_Physics_3_cpp"].apply(null, arguments);
  24979. });
  24980. var __GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp = Module["__GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp"] = (function() {
  24981. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24982. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24983. return Module["asm"]["__GLOBAL__sub_I_Modules_Physics_BatchCommands_0_cpp"].apply(null, arguments);
  24984. });
  24985. var __GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp = Module["__GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp"] = (function() {
  24986. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24987. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24988. return Module["asm"]["__GLOBAL__sub_I_Modules_Profiler_Dispatch_0_cpp"].apply(null, arguments);
  24989. });
  24990. var __GLOBAL__sub_I_Modules_Profiler_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_Profiler_Public_0_cpp"] = (function() {
  24991. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24992. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24993. return Module["asm"]["__GLOBAL__sub_I_Modules_Profiler_Public_0_cpp"].apply(null, arguments);
  24994. });
  24995. var __GLOBAL__sub_I_Modules_Profiler_Runtime_0_cpp = Module["__GLOBAL__sub_I_Modules_Profiler_Runtime_0_cpp"] = (function() {
  24996. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  24997. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  24998. return Module["asm"]["__GLOBAL__sub_I_Modules_Profiler_Runtime_0_cpp"].apply(null, arguments);
  24999. });
  25000. var __GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp = Module["__GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp"] = (function() {
  25001. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25002. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25003. return Module["asm"]["__GLOBAL__sub_I_Modules_Profiler_Runtime_1_cpp"].apply(null, arguments);
  25004. });
  25005. var __GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp = Module["__GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp"] = (function() {
  25006. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25007. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25008. return Module["asm"]["__GLOBAL__sub_I_Modules_Profiler_Runtime_2_cpp"].apply(null, arguments);
  25009. });
  25010. var __GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp = Module["__GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp"] = (function() {
  25011. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25012. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25013. return Module["asm"]["__GLOBAL__sub_I_Modules_SpriteMask_Private_0_cpp"].apply(null, arguments);
  25014. });
  25015. var __GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp = Module["__GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp"] = (function() {
  25016. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25017. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25018. return Module["asm"]["__GLOBAL__sub_I_Modules_SpriteShape_Private_0_cpp"].apply(null, arguments);
  25019. });
  25020. var __GLOBAL__sub_I_Modules_Subsystems_0_cpp = Module["__GLOBAL__sub_I_Modules_Subsystems_0_cpp"] = (function() {
  25021. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25022. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25023. return Module["asm"]["__GLOBAL__sub_I_Modules_Subsystems_0_cpp"].apply(null, arguments);
  25024. });
  25025. var __GLOBAL__sub_I_Modules_TerrainPhysics_0_cpp = Module["__GLOBAL__sub_I_Modules_TerrainPhysics_0_cpp"] = (function() {
  25026. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25027. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25028. return Module["asm"]["__GLOBAL__sub_I_Modules_TerrainPhysics_0_cpp"].apply(null, arguments);
  25029. });
  25030. var __GLOBAL__sub_I_Modules_Terrain_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_Terrain_Public_0_cpp"] = (function() {
  25031. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25032. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25033. return Module["asm"]["__GLOBAL__sub_I_Modules_Terrain_Public_0_cpp"].apply(null, arguments);
  25034. });
  25035. var __GLOBAL__sub_I_Modules_Terrain_Public_1_cpp = Module["__GLOBAL__sub_I_Modules_Terrain_Public_1_cpp"] = (function() {
  25036. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25037. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25038. return Module["asm"]["__GLOBAL__sub_I_Modules_Terrain_Public_1_cpp"].apply(null, arguments);
  25039. });
  25040. var __GLOBAL__sub_I_Modules_Terrain_Public_2_cpp = Module["__GLOBAL__sub_I_Modules_Terrain_Public_2_cpp"] = (function() {
  25041. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25042. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25043. return Module["asm"]["__GLOBAL__sub_I_Modules_Terrain_Public_2_cpp"].apply(null, arguments);
  25044. });
  25045. var __GLOBAL__sub_I_Modules_Terrain_Public_3_cpp = Module["__GLOBAL__sub_I_Modules_Terrain_Public_3_cpp"] = (function() {
  25046. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25047. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25048. return Module["asm"]["__GLOBAL__sub_I_Modules_Terrain_Public_3_cpp"].apply(null, arguments);
  25049. });
  25050. var __GLOBAL__sub_I_Modules_Terrain_VR_0_cpp = Module["__GLOBAL__sub_I_Modules_Terrain_VR_0_cpp"] = (function() {
  25051. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25052. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25053. return Module["asm"]["__GLOBAL__sub_I_Modules_Terrain_VR_0_cpp"].apply(null, arguments);
  25054. });
  25055. var __GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_cpp = Module["__GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_cpp"] = (function() {
  25056. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25057. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25058. return Module["asm"]["__GLOBAL__sub_I_Modules_TextCore_Native_FontEngine_0_cpp"].apply(null, arguments);
  25059. });
  25060. var __GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp"] = (function() {
  25061. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25062. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25063. return Module["asm"]["__GLOBAL__sub_I_Modules_TextRendering_Public_0_cpp"].apply(null, arguments);
  25064. });
  25065. var __GLOBAL__sub_I_Modules_Tilemap_0_cpp = Module["__GLOBAL__sub_I_Modules_Tilemap_0_cpp"] = (function() {
  25066. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25067. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25068. return Module["asm"]["__GLOBAL__sub_I_Modules_Tilemap_0_cpp"].apply(null, arguments);
  25069. });
  25070. var __GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp"] = (function() {
  25071. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25072. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25073. return Module["asm"]["__GLOBAL__sub_I_Modules_Tilemap_Public_0_cpp"].apply(null, arguments);
  25074. });
  25075. var __GLOBAL__sub_I_Modules_UIElements_0_cpp = Module["__GLOBAL__sub_I_Modules_UIElements_0_cpp"] = (function() {
  25076. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25077. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25078. return Module["asm"]["__GLOBAL__sub_I_Modules_UIElements_0_cpp"].apply(null, arguments);
  25079. });
  25080. var __GLOBAL__sub_I_Modules_UI_0_cpp = Module["__GLOBAL__sub_I_Modules_UI_0_cpp"] = (function() {
  25081. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25082. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25083. return Module["asm"]["__GLOBAL__sub_I_Modules_UI_0_cpp"].apply(null, arguments);
  25084. });
  25085. var __GLOBAL__sub_I_Modules_UI_1_cpp = Module["__GLOBAL__sub_I_Modules_UI_1_cpp"] = (function() {
  25086. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25087. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25088. return Module["asm"]["__GLOBAL__sub_I_Modules_UI_1_cpp"].apply(null, arguments);
  25089. });
  25090. var __GLOBAL__sub_I_Modules_UI_2_cpp = Module["__GLOBAL__sub_I_Modules_UI_2_cpp"] = (function() {
  25091. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25092. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25093. return Module["asm"]["__GLOBAL__sub_I_Modules_UI_2_cpp"].apply(null, arguments);
  25094. });
  25095. var __GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp = Module["__GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp"] = (function() {
  25096. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25097. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25098. return Module["asm"]["__GLOBAL__sub_I_Modules_UnityAnalytics_CoreStats_0_cpp"].apply(null, arguments);
  25099. });
  25100. var __GLOBAL__sub_I_Modules_UnityAnalytics_Dispatcher_0_cpp = Module["__GLOBAL__sub_I_Modules_UnityAnalytics_Dispatcher_0_cpp"] = (function() {
  25101. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25102. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25103. return Module["asm"]["__GLOBAL__sub_I_Modules_UnityAnalytics_Dispatcher_0_cpp"].apply(null, arguments);
  25104. });
  25105. var __GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp"] = (function() {
  25106. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25107. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25108. return Module["asm"]["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_0_cpp"].apply(null, arguments);
  25109. });
  25110. var __GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp = Module["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp"] = (function() {
  25111. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25112. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25113. return Module["asm"]["__GLOBAL__sub_I_Modules_UnityWebRequest_Public_DownloadHandler_0_cpp"].apply(null, arguments);
  25114. });
  25115. var __GLOBAL__sub_I_Modules_VFX_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_VFX_Public_0_cpp"] = (function() {
  25116. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25117. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25118. return Module["asm"]["__GLOBAL__sub_I_Modules_VFX_Public_0_cpp"].apply(null, arguments);
  25119. });
  25120. var __GLOBAL__sub_I_Modules_VFX_Public_1_cpp = Module["__GLOBAL__sub_I_Modules_VFX_Public_1_cpp"] = (function() {
  25121. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25122. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25123. return Module["asm"]["__GLOBAL__sub_I_Modules_VFX_Public_1_cpp"].apply(null, arguments);
  25124. });
  25125. var __GLOBAL__sub_I_Modules_VFX_Public_2_cpp = Module["__GLOBAL__sub_I_Modules_VFX_Public_2_cpp"] = (function() {
  25126. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25127. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25128. return Module["asm"]["__GLOBAL__sub_I_Modules_VFX_Public_2_cpp"].apply(null, arguments);
  25129. });
  25130. var __GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp = Module["__GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp"] = (function() {
  25131. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25132. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25133. return Module["asm"]["__GLOBAL__sub_I_Modules_VFX_Public_Systems_0_cpp"].apply(null, arguments);
  25134. });
  25135. var __GLOBAL__sub_I_Modules_VR_0_cpp = Module["__GLOBAL__sub_I_Modules_VR_0_cpp"] = (function() {
  25136. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25137. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25138. return Module["asm"]["__GLOBAL__sub_I_Modules_VR_0_cpp"].apply(null, arguments);
  25139. });
  25140. var __GLOBAL__sub_I_Modules_VR_2_cpp = Module["__GLOBAL__sub_I_Modules_VR_2_cpp"] = (function() {
  25141. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25142. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25143. return Module["asm"]["__GLOBAL__sub_I_Modules_VR_2_cpp"].apply(null, arguments);
  25144. });
  25145. var __GLOBAL__sub_I_Modules_VR_3_cpp = Module["__GLOBAL__sub_I_Modules_VR_3_cpp"] = (function() {
  25146. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25147. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25148. return Module["asm"]["__GLOBAL__sub_I_Modules_VR_3_cpp"].apply(null, arguments);
  25149. });
  25150. var __GLOBAL__sub_I_Modules_VR_PluginInterface_0_cpp = Module["__GLOBAL__sub_I_Modules_VR_PluginInterface_0_cpp"] = (function() {
  25151. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25152. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25153. return Module["asm"]["__GLOBAL__sub_I_Modules_VR_PluginInterface_0_cpp"].apply(null, arguments);
  25154. });
  25155. var __GLOBAL__sub_I_Modules_Vehicles_0_cpp = Module["__GLOBAL__sub_I_Modules_Vehicles_0_cpp"] = (function() {
  25156. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25157. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25158. return Module["asm"]["__GLOBAL__sub_I_Modules_Vehicles_0_cpp"].apply(null, arguments);
  25159. });
  25160. var __GLOBAL__sub_I_Modules_Video_Public_0_cpp = Module["__GLOBAL__sub_I_Modules_Video_Public_0_cpp"] = (function() {
  25161. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25162. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25163. return Module["asm"]["__GLOBAL__sub_I_Modules_Video_Public_0_cpp"].apply(null, arguments);
  25164. });
  25165. var __GLOBAL__sub_I_Modules_Video_Public_Base_0_cpp = Module["__GLOBAL__sub_I_Modules_Video_Public_Base_0_cpp"] = (function() {
  25166. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25167. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25168. return Module["asm"]["__GLOBAL__sub_I_Modules_Video_Public_Base_0_cpp"].apply(null, arguments);
  25169. });
  25170. var __GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp = Module["__GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp"] = (function() {
  25171. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25172. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25173. return Module["asm"]["__GLOBAL__sub_I_Modules_XR_Subsystems_Input_Public_1_cpp"].apply(null, arguments);
  25174. });
  25175. var __GLOBAL__sub_I_ParticleSystemGeometryJob_cpp = Module["__GLOBAL__sub_I_ParticleSystemGeometryJob_cpp"] = (function() {
  25176. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25177. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25178. return Module["asm"]["__GLOBAL__sub_I_ParticleSystemGeometryJob_cpp"].apply(null, arguments);
  25179. });
  25180. var __GLOBAL__sub_I_ParticleSystemRenderer_cpp = Module["__GLOBAL__sub_I_ParticleSystemRenderer_cpp"] = (function() {
  25181. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25182. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25183. return Module["asm"]["__GLOBAL__sub_I_ParticleSystemRenderer_cpp"].apply(null, arguments);
  25184. });
  25185. var __GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp = Module["__GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp"] = (function() {
  25186. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25187. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25188. return Module["asm"]["__GLOBAL__sub_I_ParticleSystemScriptingClasses_cpp"].apply(null, arguments);
  25189. });
  25190. var __GLOBAL__sub_I_Physics2DScriptingClasses_cpp = Module["__GLOBAL__sub_I_Physics2DScriptingClasses_cpp"] = (function() {
  25191. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25192. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25193. return Module["asm"]["__GLOBAL__sub_I_Physics2DScriptingClasses_cpp"].apply(null, arguments);
  25194. });
  25195. var __GLOBAL__sub_I_PhysicsQuery_cpp = Module["__GLOBAL__sub_I_PhysicsQuery_cpp"] = (function() {
  25196. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25197. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25198. return Module["asm"]["__GLOBAL__sub_I_PhysicsQuery_cpp"].apply(null, arguments);
  25199. });
  25200. var __GLOBAL__sub_I_PhysicsScene_cpp = Module["__GLOBAL__sub_I_PhysicsScene_cpp"] = (function() {
  25201. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25202. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25203. return Module["asm"]["__GLOBAL__sub_I_PhysicsScene_cpp"].apply(null, arguments);
  25204. });
  25205. var __GLOBAL__sub_I_PhysicsScriptingClasses_cpp = Module["__GLOBAL__sub_I_PhysicsScriptingClasses_cpp"] = (function() {
  25206. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25207. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25208. return Module["asm"]["__GLOBAL__sub_I_PhysicsScriptingClasses_cpp"].apply(null, arguments);
  25209. });
  25210. var __GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Platforms_WebGL_Source_0_cpp = Module["__GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Platforms_WebGL_Source_0_cpp"] = (function() {
  25211. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25212. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25213. return Module["asm"]["__GLOBAL__sub_I_PlatformDependent_WebGL_External_baselib_builds_Platforms_WebGL_Source_0_cpp"].apply(null, arguments);
  25214. });
  25215. var __GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp = Module["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp"] = (function() {
  25216. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25217. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25218. return Module["asm"]["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_0_cpp"].apply(null, arguments);
  25219. });
  25220. var __GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp = Module["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp"] = (function() {
  25221. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25222. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25223. return Module["asm"]["__GLOBAL__sub_I_PlatformDependent_WebGL_Source_2_cpp"].apply(null, arguments);
  25224. });
  25225. var __GLOBAL__sub_I_Runtime_2D_Renderer_0_cpp = Module["__GLOBAL__sub_I_Runtime_2D_Renderer_0_cpp"] = (function() {
  25226. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25227. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25228. return Module["asm"]["__GLOBAL__sub_I_Runtime_2D_Renderer_0_cpp"].apply(null, arguments);
  25229. });
  25230. var __GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp = Module["__GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp"] = (function() {
  25231. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25232. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25233. return Module["asm"]["__GLOBAL__sub_I_Runtime_2D_Sorting_0_cpp"].apply(null, arguments);
  25234. });
  25235. var __GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp = Module["__GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp"] = (function() {
  25236. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25237. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25238. return Module["asm"]["__GLOBAL__sub_I_Runtime_2D_SpriteAtlas_0_cpp"].apply(null, arguments);
  25239. });
  25240. var __GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp = Module["__GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp"] = (function() {
  25241. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25242. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25243. return Module["asm"]["__GLOBAL__sub_I_Runtime_2D_SpriteTiling_0_cpp"].apply(null, arguments);
  25244. });
  25245. var __GLOBAL__sub_I_Runtime_Allocator_0_cpp = Module["__GLOBAL__sub_I_Runtime_Allocator_0_cpp"] = (function() {
  25246. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25247. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25248. return Module["asm"]["__GLOBAL__sub_I_Runtime_Allocator_0_cpp"].apply(null, arguments);
  25249. });
  25250. var __GLOBAL__sub_I_Runtime_Allocator_2_cpp = Module["__GLOBAL__sub_I_Runtime_Allocator_2_cpp"] = (function() {
  25251. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25252. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25253. return Module["asm"]["__GLOBAL__sub_I_Runtime_Allocator_2_cpp"].apply(null, arguments);
  25254. });
  25255. var __GLOBAL__sub_I_Runtime_Allocator_3_cpp = Module["__GLOBAL__sub_I_Runtime_Allocator_3_cpp"] = (function() {
  25256. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25257. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25258. return Module["asm"]["__GLOBAL__sub_I_Runtime_Allocator_3_cpp"].apply(null, arguments);
  25259. });
  25260. var __GLOBAL__sub_I_Runtime_Application_0_cpp = Module["__GLOBAL__sub_I_Runtime_Application_0_cpp"] = (function() {
  25261. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25262. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25263. return Module["asm"]["__GLOBAL__sub_I_Runtime_Application_0_cpp"].apply(null, arguments);
  25264. });
  25265. var __GLOBAL__sub_I_Runtime_BaseClasses_0_cpp = Module["__GLOBAL__sub_I_Runtime_BaseClasses_0_cpp"] = (function() {
  25266. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25267. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25268. return Module["asm"]["__GLOBAL__sub_I_Runtime_BaseClasses_0_cpp"].apply(null, arguments);
  25269. });
  25270. var __GLOBAL__sub_I_Runtime_BaseClasses_1_cpp = Module["__GLOBAL__sub_I_Runtime_BaseClasses_1_cpp"] = (function() {
  25271. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25272. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25273. return Module["asm"]["__GLOBAL__sub_I_Runtime_BaseClasses_1_cpp"].apply(null, arguments);
  25274. });
  25275. var __GLOBAL__sub_I_Runtime_BaseClasses_2_cpp = Module["__GLOBAL__sub_I_Runtime_BaseClasses_2_cpp"] = (function() {
  25276. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25277. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25278. return Module["asm"]["__GLOBAL__sub_I_Runtime_BaseClasses_2_cpp"].apply(null, arguments);
  25279. });
  25280. var __GLOBAL__sub_I_Runtime_BaseClasses_3_cpp = Module["__GLOBAL__sub_I_Runtime_BaseClasses_3_cpp"] = (function() {
  25281. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25282. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25283. return Module["asm"]["__GLOBAL__sub_I_Runtime_BaseClasses_3_cpp"].apply(null, arguments);
  25284. });
  25285. var __GLOBAL__sub_I_Runtime_Burst_0_cpp = Module["__GLOBAL__sub_I_Runtime_Burst_0_cpp"] = (function() {
  25286. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25287. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25288. return Module["asm"]["__GLOBAL__sub_I_Runtime_Burst_0_cpp"].apply(null, arguments);
  25289. });
  25290. var __GLOBAL__sub_I_Runtime_Camera_0_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_0_cpp"] = (function() {
  25291. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25292. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25293. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_0_cpp"].apply(null, arguments);
  25294. });
  25295. var __GLOBAL__sub_I_Runtime_Camera_1_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_1_cpp"] = (function() {
  25296. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25297. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25298. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_1_cpp"].apply(null, arguments);
  25299. });
  25300. var __GLOBAL__sub_I_Runtime_Camera_2_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_2_cpp"] = (function() {
  25301. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25302. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25303. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_2_cpp"].apply(null, arguments);
  25304. });
  25305. var __GLOBAL__sub_I_Runtime_Camera_3_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_3_cpp"] = (function() {
  25306. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25307. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25308. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_3_cpp"].apply(null, arguments);
  25309. });
  25310. var __GLOBAL__sub_I_Runtime_Camera_4_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_4_cpp"] = (function() {
  25311. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25312. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25313. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_4_cpp"].apply(null, arguments);
  25314. });
  25315. var __GLOBAL__sub_I_Runtime_Camera_5_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_5_cpp"] = (function() {
  25316. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25317. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25318. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_5_cpp"].apply(null, arguments);
  25319. });
  25320. var __GLOBAL__sub_I_Runtime_Camera_6_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_6_cpp"] = (function() {
  25321. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25322. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25323. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_6_cpp"].apply(null, arguments);
  25324. });
  25325. var __GLOBAL__sub_I_Runtime_Camera_7_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_7_cpp"] = (function() {
  25326. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25327. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25328. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_7_cpp"].apply(null, arguments);
  25329. });
  25330. var __GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp"] = (function() {
  25331. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25332. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25333. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_Culling_0_cpp"].apply(null, arguments);
  25334. });
  25335. var __GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp"] = (function() {
  25336. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25337. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25338. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_0_cpp"].apply(null, arguments);
  25339. });
  25340. var __GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_cpp = Module["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_cpp"] = (function() {
  25341. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25342. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25343. return Module["asm"]["__GLOBAL__sub_I_Runtime_Camera_RenderLoops_2_cpp"].apply(null, arguments);
  25344. });
  25345. var __GLOBAL__sub_I_Runtime_Containers_0_cpp = Module["__GLOBAL__sub_I_Runtime_Containers_0_cpp"] = (function() {
  25346. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25347. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25348. return Module["asm"]["__GLOBAL__sub_I_Runtime_Containers_0_cpp"].apply(null, arguments);
  25349. });
  25350. var __GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp = Module["__GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp"] = (function() {
  25351. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25352. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25353. return Module["asm"]["__GLOBAL__sub_I_Runtime_Core_Callbacks_0_cpp"].apply(null, arguments);
  25354. });
  25355. var __GLOBAL__sub_I_Runtime_Director_Core_1_cpp = Module["__GLOBAL__sub_I_Runtime_Director_Core_1_cpp"] = (function() {
  25356. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25357. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25358. return Module["asm"]["__GLOBAL__sub_I_Runtime_Director_Core_1_cpp"].apply(null, arguments);
  25359. });
  25360. var __GLOBAL__sub_I_Runtime_File_0_cpp = Module["__GLOBAL__sub_I_Runtime_File_0_cpp"] = (function() {
  25361. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25362. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25363. return Module["asm"]["__GLOBAL__sub_I_Runtime_File_0_cpp"].apply(null, arguments);
  25364. });
  25365. var __GLOBAL__sub_I_Runtime_GameCode_0_cpp = Module["__GLOBAL__sub_I_Runtime_GameCode_0_cpp"] = (function() {
  25366. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25367. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25368. return Module["asm"]["__GLOBAL__sub_I_Runtime_GameCode_0_cpp"].apply(null, arguments);
  25369. });
  25370. var __GLOBAL__sub_I_Runtime_Geometry_1_cpp = Module["__GLOBAL__sub_I_Runtime_Geometry_1_cpp"] = (function() {
  25371. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25372. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25373. return Module["asm"]["__GLOBAL__sub_I_Runtime_Geometry_1_cpp"].apply(null, arguments);
  25374. });
  25375. var __GLOBAL__sub_I_Runtime_Geometry_2_cpp = Module["__GLOBAL__sub_I_Runtime_Geometry_2_cpp"] = (function() {
  25376. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25377. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25378. return Module["asm"]["__GLOBAL__sub_I_Runtime_Geometry_2_cpp"].apply(null, arguments);
  25379. });
  25380. var __GLOBAL__sub_I_Runtime_GfxDevice_1_cpp = Module["__GLOBAL__sub_I_Runtime_GfxDevice_1_cpp"] = (function() {
  25381. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25382. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25383. return Module["asm"]["__GLOBAL__sub_I_Runtime_GfxDevice_1_cpp"].apply(null, arguments);
  25384. });
  25385. var __GLOBAL__sub_I_Runtime_GfxDevice_2_cpp = Module["__GLOBAL__sub_I_Runtime_GfxDevice_2_cpp"] = (function() {
  25386. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25387. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25388. return Module["asm"]["__GLOBAL__sub_I_Runtime_GfxDevice_2_cpp"].apply(null, arguments);
  25389. });
  25390. var __GLOBAL__sub_I_Runtime_GfxDevice_3_cpp = Module["__GLOBAL__sub_I_Runtime_GfxDevice_3_cpp"] = (function() {
  25391. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25392. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25393. return Module["asm"]["__GLOBAL__sub_I_Runtime_GfxDevice_3_cpp"].apply(null, arguments);
  25394. });
  25395. var __GLOBAL__sub_I_Runtime_GfxDevice_4_cpp = Module["__GLOBAL__sub_I_Runtime_GfxDevice_4_cpp"] = (function() {
  25396. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25397. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25398. return Module["asm"]["__GLOBAL__sub_I_Runtime_GfxDevice_4_cpp"].apply(null, arguments);
  25399. });
  25400. var __GLOBAL__sub_I_Runtime_GfxDevice_5_cpp = Module["__GLOBAL__sub_I_Runtime_GfxDevice_5_cpp"] = (function() {
  25401. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25402. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25403. return Module["asm"]["__GLOBAL__sub_I_Runtime_GfxDevice_5_cpp"].apply(null, arguments);
  25404. });
  25405. var __GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp = Module["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp"] = (function() {
  25406. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25407. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25408. return Module["asm"]["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_0_cpp"].apply(null, arguments);
  25409. });
  25410. var __GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp = Module["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp"] = (function() {
  25411. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25412. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25413. return Module["asm"]["__GLOBAL__sub_I_Runtime_GfxDevice_opengles_2_cpp"].apply(null, arguments);
  25414. });
  25415. var __GLOBAL__sub_I_Runtime_Graphics_0_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_0_cpp"] = (function() {
  25416. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25417. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25418. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_0_cpp"].apply(null, arguments);
  25419. });
  25420. var __GLOBAL__sub_I_Runtime_Graphics_10_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_10_cpp"] = (function() {
  25421. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25422. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25423. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_10_cpp"].apply(null, arguments);
  25424. });
  25425. var __GLOBAL__sub_I_Runtime_Graphics_11_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_11_cpp"] = (function() {
  25426. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25427. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25428. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_11_cpp"].apply(null, arguments);
  25429. });
  25430. var __GLOBAL__sub_I_Runtime_Graphics_12_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_12_cpp"] = (function() {
  25431. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25432. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25433. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_12_cpp"].apply(null, arguments);
  25434. });
  25435. var __GLOBAL__sub_I_Runtime_Graphics_1_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_1_cpp"] = (function() {
  25436. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25437. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25438. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_1_cpp"].apply(null, arguments);
  25439. });
  25440. var __GLOBAL__sub_I_Runtime_Graphics_2_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_2_cpp"] = (function() {
  25441. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25442. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25443. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_2_cpp"].apply(null, arguments);
  25444. });
  25445. var __GLOBAL__sub_I_Runtime_Graphics_4_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_4_cpp"] = (function() {
  25446. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25447. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25448. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_4_cpp"].apply(null, arguments);
  25449. });
  25450. var __GLOBAL__sub_I_Runtime_Graphics_5_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_5_cpp"] = (function() {
  25451. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25452. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25453. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_5_cpp"].apply(null, arguments);
  25454. });
  25455. var __GLOBAL__sub_I_Runtime_Graphics_6_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_6_cpp"] = (function() {
  25456. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25457. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25458. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_6_cpp"].apply(null, arguments);
  25459. });
  25460. var __GLOBAL__sub_I_Runtime_Graphics_8_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_8_cpp"] = (function() {
  25461. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25462. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25463. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_8_cpp"].apply(null, arguments);
  25464. });
  25465. var __GLOBAL__sub_I_Runtime_Graphics_9_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_9_cpp"] = (function() {
  25466. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25467. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25468. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_9_cpp"].apply(null, arguments);
  25469. });
  25470. var __GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp"] = (function() {
  25471. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25472. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25473. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Billboard_0_cpp"].apply(null, arguments);
  25474. });
  25475. var __GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp"] = (function() {
  25476. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25477. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25478. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_CommandBuffer_0_cpp"].apply(null, arguments);
  25479. });
  25480. var __GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp"] = (function() {
  25481. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25482. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25483. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_LOD_0_cpp"].apply(null, arguments);
  25484. });
  25485. var __GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp"] = (function() {
  25486. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25487. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25488. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Mesh_0_cpp"].apply(null, arguments);
  25489. });
  25490. var __GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp"] = (function() {
  25491. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25492. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25493. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Mesh_1_cpp"].apply(null, arguments);
  25494. });
  25495. var __GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp"] = (function() {
  25496. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25497. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25498. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Mesh_2_cpp"].apply(null, arguments);
  25499. });
  25500. var __GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp"] = (function() {
  25501. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25502. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25503. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Mesh_3_cpp"].apply(null, arguments);
  25504. });
  25505. var __GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp"] = (function() {
  25506. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25507. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25508. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Mesh_4_cpp"].apply(null, arguments);
  25509. });
  25510. var __GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp"] = (function() {
  25511. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25512. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25513. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Mesh_5_cpp"].apply(null, arguments);
  25514. });
  25515. var __GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp"] = (function() {
  25516. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25517. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25518. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_Mesh_6_cpp"].apply(null, arguments);
  25519. });
  25520. var __GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp"] = (function() {
  25521. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25522. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25523. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_0_cpp"].apply(null, arguments);
  25524. });
  25525. var __GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp = Module["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp"] = (function() {
  25526. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25527. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25528. return Module["asm"]["__GLOBAL__sub_I_Runtime_Graphics_ScriptableRenderLoop_1_cpp"].apply(null, arguments);
  25529. });
  25530. var __GLOBAL__sub_I_Runtime_Input_0_cpp = Module["__GLOBAL__sub_I_Runtime_Input_0_cpp"] = (function() {
  25531. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25532. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25533. return Module["asm"]["__GLOBAL__sub_I_Runtime_Input_0_cpp"].apply(null, arguments);
  25534. });
  25535. var __GLOBAL__sub_I_Runtime_Interfaces_0_cpp = Module["__GLOBAL__sub_I_Runtime_Interfaces_0_cpp"] = (function() {
  25536. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25537. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25538. return Module["asm"]["__GLOBAL__sub_I_Runtime_Interfaces_0_cpp"].apply(null, arguments);
  25539. });
  25540. var __GLOBAL__sub_I_Runtime_Interfaces_1_cpp = Module["__GLOBAL__sub_I_Runtime_Interfaces_1_cpp"] = (function() {
  25541. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25542. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25543. return Module["asm"]["__GLOBAL__sub_I_Runtime_Interfaces_1_cpp"].apply(null, arguments);
  25544. });
  25545. var __GLOBAL__sub_I_Runtime_Interfaces_2_cpp = Module["__GLOBAL__sub_I_Runtime_Interfaces_2_cpp"] = (function() {
  25546. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25547. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25548. return Module["asm"]["__GLOBAL__sub_I_Runtime_Interfaces_2_cpp"].apply(null, arguments);
  25549. });
  25550. var __GLOBAL__sub_I_Runtime_Jobs_0_cpp = Module["__GLOBAL__sub_I_Runtime_Jobs_0_cpp"] = (function() {
  25551. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25552. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25553. return Module["asm"]["__GLOBAL__sub_I_Runtime_Jobs_0_cpp"].apply(null, arguments);
  25554. });
  25555. var __GLOBAL__sub_I_Runtime_Jobs_1_cpp = Module["__GLOBAL__sub_I_Runtime_Jobs_1_cpp"] = (function() {
  25556. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25557. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25558. return Module["asm"]["__GLOBAL__sub_I_Runtime_Jobs_1_cpp"].apply(null, arguments);
  25559. });
  25560. var __GLOBAL__sub_I_Runtime_Jobs_2_cpp = Module["__GLOBAL__sub_I_Runtime_Jobs_2_cpp"] = (function() {
  25561. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25562. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25563. return Module["asm"]["__GLOBAL__sub_I_Runtime_Jobs_2_cpp"].apply(null, arguments);
  25564. });
  25565. var __GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp = Module["__GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp"] = (function() {
  25566. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25567. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25568. return Module["asm"]["__GLOBAL__sub_I_Runtime_Jobs_Internal_1_cpp"].apply(null, arguments);
  25569. });
  25570. var __GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp = Module["__GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp"] = (function() {
  25571. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25572. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25573. return Module["asm"]["__GLOBAL__sub_I_Runtime_Jobs_ScriptBindings_0_cpp"].apply(null, arguments);
  25574. });
  25575. var __GLOBAL__sub_I_Runtime_Math_2_cpp = Module["__GLOBAL__sub_I_Runtime_Math_2_cpp"] = (function() {
  25576. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25577. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25578. return Module["asm"]["__GLOBAL__sub_I_Runtime_Math_2_cpp"].apply(null, arguments);
  25579. });
  25580. var __GLOBAL__sub_I_Runtime_Math_Random_0_cpp = Module["__GLOBAL__sub_I_Runtime_Math_Random_0_cpp"] = (function() {
  25581. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25582. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25583. return Module["asm"]["__GLOBAL__sub_I_Runtime_Math_Random_0_cpp"].apply(null, arguments);
  25584. });
  25585. var __GLOBAL__sub_I_Runtime_Misc_0_cpp = Module["__GLOBAL__sub_I_Runtime_Misc_0_cpp"] = (function() {
  25586. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25587. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25588. return Module["asm"]["__GLOBAL__sub_I_Runtime_Misc_0_cpp"].apply(null, arguments);
  25589. });
  25590. var __GLOBAL__sub_I_Runtime_Misc_1_cpp = Module["__GLOBAL__sub_I_Runtime_Misc_1_cpp"] = (function() {
  25591. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25592. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25593. return Module["asm"]["__GLOBAL__sub_I_Runtime_Misc_1_cpp"].apply(null, arguments);
  25594. });
  25595. var __GLOBAL__sub_I_Runtime_Misc_2_cpp = Module["__GLOBAL__sub_I_Runtime_Misc_2_cpp"] = (function() {
  25596. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25597. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25598. return Module["asm"]["__GLOBAL__sub_I_Runtime_Misc_2_cpp"].apply(null, arguments);
  25599. });
  25600. var __GLOBAL__sub_I_Runtime_Misc_3_cpp = Module["__GLOBAL__sub_I_Runtime_Misc_3_cpp"] = (function() {
  25601. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25602. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25603. return Module["asm"]["__GLOBAL__sub_I_Runtime_Misc_3_cpp"].apply(null, arguments);
  25604. });
  25605. var __GLOBAL__sub_I_Runtime_Misc_4_cpp = Module["__GLOBAL__sub_I_Runtime_Misc_4_cpp"] = (function() {
  25606. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25607. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25608. return Module["asm"]["__GLOBAL__sub_I_Runtime_Misc_4_cpp"].apply(null, arguments);
  25609. });
  25610. var __GLOBAL__sub_I_Runtime_Misc_5_cpp = Module["__GLOBAL__sub_I_Runtime_Misc_5_cpp"] = (function() {
  25611. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25612. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25613. return Module["asm"]["__GLOBAL__sub_I_Runtime_Misc_5_cpp"].apply(null, arguments);
  25614. });
  25615. var __GLOBAL__sub_I_Runtime_Modules_0_cpp = Module["__GLOBAL__sub_I_Runtime_Modules_0_cpp"] = (function() {
  25616. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25617. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25618. return Module["asm"]["__GLOBAL__sub_I_Runtime_Modules_0_cpp"].apply(null, arguments);
  25619. });
  25620. var __GLOBAL__sub_I_Runtime_Mono_0_cpp = Module["__GLOBAL__sub_I_Runtime_Mono_0_cpp"] = (function() {
  25621. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25622. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25623. return Module["asm"]["__GLOBAL__sub_I_Runtime_Mono_0_cpp"].apply(null, arguments);
  25624. });
  25625. var __GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp = Module["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp"] = (function() {
  25626. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25627. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25628. return Module["asm"]["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_0_cpp"].apply(null, arguments);
  25629. });
  25630. var __GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp = Module["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp"] = (function() {
  25631. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25632. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25633. return Module["asm"]["__GLOBAL__sub_I_Runtime_Mono_SerializationBackend_DirectMemoryAccess_1_cpp"].apply(null, arguments);
  25634. });
  25635. var __GLOBAL__sub_I_Runtime_Network_0_cpp = Module["__GLOBAL__sub_I_Runtime_Network_0_cpp"] = (function() {
  25636. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25637. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25638. return Module["asm"]["__GLOBAL__sub_I_Runtime_Network_0_cpp"].apply(null, arguments);
  25639. });
  25640. var __GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp = Module["__GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp"] = (function() {
  25641. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25642. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25643. return Module["asm"]["__GLOBAL__sub_I_Runtime_Network_PlayerCommunicator_0_cpp"].apply(null, arguments);
  25644. });
  25645. var __GLOBAL__sub_I_Runtime_PluginInterface_0_cpp = Module["__GLOBAL__sub_I_Runtime_PluginInterface_0_cpp"] = (function() {
  25646. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25647. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25648. return Module["asm"]["__GLOBAL__sub_I_Runtime_PluginInterface_0_cpp"].apply(null, arguments);
  25649. });
  25650. var __GLOBAL__sub_I_Runtime_PreloadManager_0_cpp = Module["__GLOBAL__sub_I_Runtime_PreloadManager_0_cpp"] = (function() {
  25651. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25652. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25653. return Module["asm"]["__GLOBAL__sub_I_Runtime_PreloadManager_0_cpp"].apply(null, arguments);
  25654. });
  25655. var __GLOBAL__sub_I_Runtime_Profiler_0_cpp = Module["__GLOBAL__sub_I_Runtime_Profiler_0_cpp"] = (function() {
  25656. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25657. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25658. return Module["asm"]["__GLOBAL__sub_I_Runtime_Profiler_0_cpp"].apply(null, arguments);
  25659. });
  25660. var __GLOBAL__sub_I_Runtime_Profiler_1_cpp = Module["__GLOBAL__sub_I_Runtime_Profiler_1_cpp"] = (function() {
  25661. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25662. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25663. return Module["asm"]["__GLOBAL__sub_I_Runtime_Profiler_1_cpp"].apply(null, arguments);
  25664. });
  25665. var __GLOBAL__sub_I_Runtime_Profiler_2_cpp = Module["__GLOBAL__sub_I_Runtime_Profiler_2_cpp"] = (function() {
  25666. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25667. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25668. return Module["asm"]["__GLOBAL__sub_I_Runtime_Profiler_2_cpp"].apply(null, arguments);
  25669. });
  25670. var __GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp = Module["__GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp"] = (function() {
  25671. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25672. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25673. return Module["asm"]["__GLOBAL__sub_I_Runtime_Profiler_ScriptBindings_0_cpp"].apply(null, arguments);
  25674. });
  25675. var __GLOBAL__sub_I_Runtime_SceneManager_0_cpp = Module["__GLOBAL__sub_I_Runtime_SceneManager_0_cpp"] = (function() {
  25676. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25677. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25678. return Module["asm"]["__GLOBAL__sub_I_Runtime_SceneManager_0_cpp"].apply(null, arguments);
  25679. });
  25680. var __GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp = Module["__GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp"] = (function() {
  25681. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25682. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25683. return Module["asm"]["__GLOBAL__sub_I_Runtime_ScriptingBackend_Il2Cpp_0_cpp"].apply(null, arguments);
  25684. });
  25685. var __GLOBAL__sub_I_Runtime_Scripting_0_cpp = Module["__GLOBAL__sub_I_Runtime_Scripting_0_cpp"] = (function() {
  25686. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25687. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25688. return Module["asm"]["__GLOBAL__sub_I_Runtime_Scripting_0_cpp"].apply(null, arguments);
  25689. });
  25690. var __GLOBAL__sub_I_Runtime_Scripting_2_cpp = Module["__GLOBAL__sub_I_Runtime_Scripting_2_cpp"] = (function() {
  25691. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25692. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25693. return Module["asm"]["__GLOBAL__sub_I_Runtime_Scripting_2_cpp"].apply(null, arguments);
  25694. });
  25695. var __GLOBAL__sub_I_Runtime_Scripting_3_cpp = Module["__GLOBAL__sub_I_Runtime_Scripting_3_cpp"] = (function() {
  25696. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25697. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25698. return Module["asm"]["__GLOBAL__sub_I_Runtime_Scripting_3_cpp"].apply(null, arguments);
  25699. });
  25700. var __GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp = Module["__GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp"] = (function() {
  25701. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25702. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25703. return Module["asm"]["__GLOBAL__sub_I_Runtime_Scripting_APIUpdating_0_cpp"].apply(null, arguments);
  25704. });
  25705. var __GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp = Module["__GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp"] = (function() {
  25706. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25707. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25708. return Module["asm"]["__GLOBAL__sub_I_Runtime_Scripting_ManagedReference_0_cpp"].apply(null, arguments);
  25709. });
  25710. var __GLOBAL__sub_I_Runtime_Serialize_0_cpp = Module["__GLOBAL__sub_I_Runtime_Serialize_0_cpp"] = (function() {
  25711. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25712. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25713. return Module["asm"]["__GLOBAL__sub_I_Runtime_Serialize_0_cpp"].apply(null, arguments);
  25714. });
  25715. var __GLOBAL__sub_I_Runtime_Serialize_1_cpp = Module["__GLOBAL__sub_I_Runtime_Serialize_1_cpp"] = (function() {
  25716. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25717. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25718. return Module["asm"]["__GLOBAL__sub_I_Runtime_Serialize_1_cpp"].apply(null, arguments);
  25719. });
  25720. var __GLOBAL__sub_I_Runtime_Serialize_2_cpp = Module["__GLOBAL__sub_I_Runtime_Serialize_2_cpp"] = (function() {
  25721. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25722. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25723. return Module["asm"]["__GLOBAL__sub_I_Runtime_Serialize_2_cpp"].apply(null, arguments);
  25724. });
  25725. var __GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp = Module["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp"] = (function() {
  25726. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25727. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25728. return Module["asm"]["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_0_cpp"].apply(null, arguments);
  25729. });
  25730. var __GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp = Module["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp"] = (function() {
  25731. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25732. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25733. return Module["asm"]["__GLOBAL__sub_I_Runtime_Serialize_TransferFunctions_1_cpp"].apply(null, arguments);
  25734. });
  25735. var __GLOBAL__sub_I_Runtime_Shaders_0_cpp = Module["__GLOBAL__sub_I_Runtime_Shaders_0_cpp"] = (function() {
  25736. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25737. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25738. return Module["asm"]["__GLOBAL__sub_I_Runtime_Shaders_0_cpp"].apply(null, arguments);
  25739. });
  25740. var __GLOBAL__sub_I_Runtime_Shaders_1_cpp = Module["__GLOBAL__sub_I_Runtime_Shaders_1_cpp"] = (function() {
  25741. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25742. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25743. return Module["asm"]["__GLOBAL__sub_I_Runtime_Shaders_1_cpp"].apply(null, arguments);
  25744. });
  25745. var __GLOBAL__sub_I_Runtime_Shaders_2_cpp = Module["__GLOBAL__sub_I_Runtime_Shaders_2_cpp"] = (function() {
  25746. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25747. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25748. return Module["asm"]["__GLOBAL__sub_I_Runtime_Shaders_2_cpp"].apply(null, arguments);
  25749. });
  25750. var __GLOBAL__sub_I_Runtime_Shaders_3_cpp = Module["__GLOBAL__sub_I_Runtime_Shaders_3_cpp"] = (function() {
  25751. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25752. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25753. return Module["asm"]["__GLOBAL__sub_I_Runtime_Shaders_3_cpp"].apply(null, arguments);
  25754. });
  25755. var __GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp = Module["__GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp"] = (function() {
  25756. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25757. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25758. return Module["asm"]["__GLOBAL__sub_I_Runtime_Shaders_GpuPrograms_0_cpp"].apply(null, arguments);
  25759. });
  25760. var __GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp = Module["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp"] = (function() {
  25761. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25762. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25763. return Module["asm"]["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_1_cpp"].apply(null, arguments);
  25764. });
  25765. var __GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp = Module["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp"] = (function() {
  25766. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25767. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25768. return Module["asm"]["__GLOBAL__sub_I_Runtime_Shaders_ShaderImpl_2_cpp"].apply(null, arguments);
  25769. });
  25770. var __GLOBAL__sub_I_Runtime_Streaming_0_cpp = Module["__GLOBAL__sub_I_Runtime_Streaming_0_cpp"] = (function() {
  25771. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25772. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25773. return Module["asm"]["__GLOBAL__sub_I_Runtime_Streaming_0_cpp"].apply(null, arguments);
  25774. });
  25775. var __GLOBAL__sub_I_Runtime_Streaming_1_cpp = Module["__GLOBAL__sub_I_Runtime_Streaming_1_cpp"] = (function() {
  25776. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25777. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25778. return Module["asm"]["__GLOBAL__sub_I_Runtime_Streaming_1_cpp"].apply(null, arguments);
  25779. });
  25780. var __GLOBAL__sub_I_Runtime_Transform_0_cpp = Module["__GLOBAL__sub_I_Runtime_Transform_0_cpp"] = (function() {
  25781. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25782. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25783. return Module["asm"]["__GLOBAL__sub_I_Runtime_Transform_0_cpp"].apply(null, arguments);
  25784. });
  25785. var __GLOBAL__sub_I_Runtime_Transform_1_cpp = Module["__GLOBAL__sub_I_Runtime_Transform_1_cpp"] = (function() {
  25786. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25787. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25788. return Module["asm"]["__GLOBAL__sub_I_Runtime_Transform_1_cpp"].apply(null, arguments);
  25789. });
  25790. var __GLOBAL__sub_I_Runtime_Utilities_2_cpp = Module["__GLOBAL__sub_I_Runtime_Utilities_2_cpp"] = (function() {
  25791. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25792. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25793. return Module["asm"]["__GLOBAL__sub_I_Runtime_Utilities_2_cpp"].apply(null, arguments);
  25794. });
  25795. var __GLOBAL__sub_I_Runtime_Utilities_5_cpp = Module["__GLOBAL__sub_I_Runtime_Utilities_5_cpp"] = (function() {
  25796. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25797. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25798. return Module["asm"]["__GLOBAL__sub_I_Runtime_Utilities_5_cpp"].apply(null, arguments);
  25799. });
  25800. var __GLOBAL__sub_I_Runtime_Utilities_6_cpp = Module["__GLOBAL__sub_I_Runtime_Utilities_6_cpp"] = (function() {
  25801. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25802. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25803. return Module["asm"]["__GLOBAL__sub_I_Runtime_Utilities_6_cpp"].apply(null, arguments);
  25804. });
  25805. var __GLOBAL__sub_I_Runtime_Utilities_7_cpp = Module["__GLOBAL__sub_I_Runtime_Utilities_7_cpp"] = (function() {
  25806. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25807. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25808. return Module["asm"]["__GLOBAL__sub_I_Runtime_Utilities_7_cpp"].apply(null, arguments);
  25809. });
  25810. var __GLOBAL__sub_I_Runtime_Utilities_8_cpp = Module["__GLOBAL__sub_I_Runtime_Utilities_8_cpp"] = (function() {
  25811. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25812. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25813. return Module["asm"]["__GLOBAL__sub_I_Runtime_Utilities_8_cpp"].apply(null, arguments);
  25814. });
  25815. var __GLOBAL__sub_I_Runtime_Utilities_9_cpp = Module["__GLOBAL__sub_I_Runtime_Utilities_9_cpp"] = (function() {
  25816. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25817. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25818. return Module["asm"]["__GLOBAL__sub_I_Runtime_Utilities_9_cpp"].apply(null, arguments);
  25819. });
  25820. var __GLOBAL__sub_I_Runtime_Video_0_cpp = Module["__GLOBAL__sub_I_Runtime_Video_0_cpp"] = (function() {
  25821. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25822. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25823. return Module["asm"]["__GLOBAL__sub_I_Runtime_Video_0_cpp"].apply(null, arguments);
  25824. });
  25825. var __GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp = Module["__GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp"] = (function() {
  25826. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25827. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25828. return Module["asm"]["__GLOBAL__sub_I_Runtime_VirtualFileSystem_0_cpp"].apply(null, arguments);
  25829. });
  25830. var __GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp = Module["__GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp"] = (function() {
  25831. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25832. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25833. return Module["asm"]["__GLOBAL__sub_I_Runtime_VirtualFileSystem_1_cpp"].apply(null, arguments);
  25834. });
  25835. var __GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp = Module["__GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp"] = (function() {
  25836. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25837. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25838. return Module["asm"]["__GLOBAL__sub_I_Runtime_VirtualFileSystem_ArchiveFileSystem_0_cpp"].apply(null, arguments);
  25839. });
  25840. var __GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp = Module["__GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp"] = (function() {
  25841. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25842. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25843. return Module["asm"]["__GLOBAL__sub_I_Runtime_VirtualFileSystem_MemoryFileSystem_0_cpp"].apply(null, arguments);
  25844. });
  25845. var __GLOBAL__sub_I_Shader_cpp = Module["__GLOBAL__sub_I_Shader_cpp"] = (function() {
  25846. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25847. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25848. return Module["asm"]["__GLOBAL__sub_I_Shader_cpp"].apply(null, arguments);
  25849. });
  25850. var __GLOBAL__sub_I_Shadows_cpp = Module["__GLOBAL__sub_I_Shadows_cpp"] = (function() {
  25851. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25852. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25853. return Module["asm"]["__GLOBAL__sub_I_Shadows_cpp"].apply(null, arguments);
  25854. });
  25855. var __GLOBAL__sub_I_ShapeModule_cpp = Module["__GLOBAL__sub_I_ShapeModule_cpp"] = (function() {
  25856. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25857. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25858. return Module["asm"]["__GLOBAL__sub_I_ShapeModule_cpp"].apply(null, arguments);
  25859. });
  25860. var __GLOBAL__sub_I_SkinnedMeshRendererManager_cpp = Module["__GLOBAL__sub_I_SkinnedMeshRendererManager_cpp"] = (function() {
  25861. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25862. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25863. return Module["asm"]["__GLOBAL__sub_I_SkinnedMeshRendererManager_cpp"].apply(null, arguments);
  25864. });
  25865. var __GLOBAL__sub_I_SubsystemsScriptingClasses_cpp = Module["__GLOBAL__sub_I_SubsystemsScriptingClasses_cpp"] = (function() {
  25866. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25867. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25868. return Module["asm"]["__GLOBAL__sub_I_SubsystemsScriptingClasses_cpp"].apply(null, arguments);
  25869. });
  25870. var __GLOBAL__sub_I_SwInterCollision_cpp = Module["__GLOBAL__sub_I_SwInterCollision_cpp"] = (function() {
  25871. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25872. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25873. return Module["asm"]["__GLOBAL__sub_I_SwInterCollision_cpp"].apply(null, arguments);
  25874. });
  25875. var __GLOBAL__sub_I_SwSolverKernel_cpp = Module["__GLOBAL__sub_I_SwSolverKernel_cpp"] = (function() {
  25876. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25877. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25878. return Module["asm"]["__GLOBAL__sub_I_SwSolverKernel_cpp"].apply(null, arguments);
  25879. });
  25880. var __GLOBAL__sub_I_TemplateInstantiations_cpp = Module["__GLOBAL__sub_I_TemplateInstantiations_cpp"] = (function() {
  25881. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25882. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25883. return Module["asm"]["__GLOBAL__sub_I_TemplateInstantiations_cpp"].apply(null, arguments);
  25884. });
  25885. var __GLOBAL__sub_I_TerrainScriptingClasses_cpp = Module["__GLOBAL__sub_I_TerrainScriptingClasses_cpp"] = (function() {
  25886. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25887. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25888. return Module["asm"]["__GLOBAL__sub_I_TerrainScriptingClasses_cpp"].apply(null, arguments);
  25889. });
  25890. var __GLOBAL__sub_I_TextCoreScriptingClasses_cpp = Module["__GLOBAL__sub_I_TextCoreScriptingClasses_cpp"] = (function() {
  25891. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25892. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25893. return Module["asm"]["__GLOBAL__sub_I_TextCoreScriptingClasses_cpp"].apply(null, arguments);
  25894. });
  25895. var __GLOBAL__sub_I_TextRenderingScriptingClasses_cpp = Module["__GLOBAL__sub_I_TextRenderingScriptingClasses_cpp"] = (function() {
  25896. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25897. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25898. return Module["asm"]["__GLOBAL__sub_I_TextRenderingScriptingClasses_cpp"].apply(null, arguments);
  25899. });
  25900. var __GLOBAL__sub_I_TilemapScriptingClasses_cpp = Module["__GLOBAL__sub_I_TilemapScriptingClasses_cpp"] = (function() {
  25901. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25902. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25903. return Module["asm"]["__GLOBAL__sub_I_TilemapScriptingClasses_cpp"].apply(null, arguments);
  25904. });
  25905. var __GLOBAL__sub_I_TrailRenderer_cpp = Module["__GLOBAL__sub_I_TrailRenderer_cpp"] = (function() {
  25906. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25907. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25908. return Module["asm"]["__GLOBAL__sub_I_TrailRenderer_cpp"].apply(null, arguments);
  25909. });
  25910. var __GLOBAL__sub_I_Transform_cpp = Module["__GLOBAL__sub_I_Transform_cpp"] = (function() {
  25911. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25912. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25913. return Module["asm"]["__GLOBAL__sub_I_Transform_cpp"].apply(null, arguments);
  25914. });
  25915. var __GLOBAL__sub_I_UIElementsScriptingClasses_cpp = Module["__GLOBAL__sub_I_UIElementsScriptingClasses_cpp"] = (function() {
  25916. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25917. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25918. return Module["asm"]["__GLOBAL__sub_I_UIElementsScriptingClasses_cpp"].apply(null, arguments);
  25919. });
  25920. var __GLOBAL__sub_I_UIScriptingClasses_cpp = Module["__GLOBAL__sub_I_UIScriptingClasses_cpp"] = (function() {
  25921. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25922. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25923. return Module["asm"]["__GLOBAL__sub_I_UIScriptingClasses_cpp"].apply(null, arguments);
  25924. });
  25925. var __GLOBAL__sub_I_UnityAdsSettings_cpp = Module["__GLOBAL__sub_I_UnityAdsSettings_cpp"] = (function() {
  25926. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25927. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25928. return Module["asm"]["__GLOBAL__sub_I_UnityAdsSettings_cpp"].apply(null, arguments);
  25929. });
  25930. var __GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp = Module["__GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp"] = (function() {
  25931. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25932. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25933. return Module["asm"]["__GLOBAL__sub_I_UnityAnalyticsScriptingClasses_cpp"].apply(null, arguments);
  25934. });
  25935. var __GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp = Module["__GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp"] = (function() {
  25936. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25937. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25938. return Module["asm"]["__GLOBAL__sub_I_UnityWebRequestScriptingClasses_cpp"].apply(null, arguments);
  25939. });
  25940. var __GLOBAL__sub_I_UnsafeUtility_bindings_cpp = Module["__GLOBAL__sub_I_UnsafeUtility_bindings_cpp"] = (function() {
  25941. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25942. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25943. return Module["asm"]["__GLOBAL__sub_I_UnsafeUtility_bindings_cpp"].apply(null, arguments);
  25944. });
  25945. var __GLOBAL__sub_I_VFXScriptingClasses_cpp = Module["__GLOBAL__sub_I_VFXScriptingClasses_cpp"] = (function() {
  25946. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25947. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25948. return Module["asm"]["__GLOBAL__sub_I_VFXScriptingClasses_cpp"].apply(null, arguments);
  25949. });
  25950. var __GLOBAL__sub_I_VRScriptingClasses_cpp = Module["__GLOBAL__sub_I_VRScriptingClasses_cpp"] = (function() {
  25951. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25952. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25953. return Module["asm"]["__GLOBAL__sub_I_VRScriptingClasses_cpp"].apply(null, arguments);
  25954. });
  25955. var __GLOBAL__sub_I_VideoScriptingClasses_cpp = Module["__GLOBAL__sub_I_VideoScriptingClasses_cpp"] = (function() {
  25956. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25957. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25958. return Module["asm"]["__GLOBAL__sub_I_VideoScriptingClasses_cpp"].apply(null, arguments);
  25959. });
  25960. var __GLOBAL__sub_I_Wind_cpp = Module["__GLOBAL__sub_I_Wind_cpp"] = (function() {
  25961. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25962. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25963. return Module["asm"]["__GLOBAL__sub_I_Wind_cpp"].apply(null, arguments);
  25964. });
  25965. var __GLOBAL__sub_I_XRScriptingClasses_cpp = Module["__GLOBAL__sub_I_XRScriptingClasses_cpp"] = (function() {
  25966. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25967. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25968. return Module["asm"]["__GLOBAL__sub_I_XRScriptingClasses_cpp"].apply(null, arguments);
  25969. });
  25970. var __GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp = Module["__GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp"] = (function() {
  25971. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25972. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25973. return Module["asm"]["__GLOBAL__sub_I_artifacts_WebGL_codegenerator_0_cpp"].apply(null, arguments);
  25974. });
  25975. var __GLOBAL__sub_I_clipmuscle_cpp = Module["__GLOBAL__sub_I_clipmuscle_cpp"] = (function() {
  25976. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25977. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25978. return Module["asm"]["__GLOBAL__sub_I_clipmuscle_cpp"].apply(null, arguments);
  25979. });
  25980. var __GLOBAL__sub_I_nvcloth_src_0_cpp = Module["__GLOBAL__sub_I_nvcloth_src_0_cpp"] = (function() {
  25981. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25982. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25983. return Module["asm"]["__GLOBAL__sub_I_nvcloth_src_0_cpp"].apply(null, arguments);
  25984. });
  25985. var __GLOBAL__sub_I_nvcloth_src_1_cpp = Module["__GLOBAL__sub_I_nvcloth_src_1_cpp"] = (function() {
  25986. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25987. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25988. return Module["asm"]["__GLOBAL__sub_I_nvcloth_src_1_cpp"].apply(null, arguments);
  25989. });
  25990. var __GLOBAL__sub_I_umbra_cpp = Module["__GLOBAL__sub_I_umbra_cpp"] = (function() {
  25991. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25992. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25993. return Module["asm"]["__GLOBAL__sub_I_umbra_cpp"].apply(null, arguments);
  25994. });
  25995. var ___cxa_can_catch = Module["___cxa_can_catch"] = (function() {
  25996. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  25997. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  25998. return Module["asm"]["___cxa_can_catch"].apply(null, arguments);
  25999. });
  26000. var ___cxa_demangle = Module["___cxa_demangle"] = (function() {
  26001. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26002. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26003. return Module["asm"]["___cxa_demangle"].apply(null, arguments);
  26004. });
  26005. var ___cxa_is_pointer_type = Module["___cxa_is_pointer_type"] = (function() {
  26006. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26007. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26008. return Module["asm"]["___cxa_is_pointer_type"].apply(null, arguments);
  26009. });
  26010. var ___cxx_global_var_init = Module["___cxx_global_var_init"] = (function() {
  26011. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26012. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26013. return Module["asm"]["___cxx_global_var_init"].apply(null, arguments);
  26014. });
  26015. var ___cxx_global_var_init_10_7621 = Module["___cxx_global_var_init_10_7621"] = (function() {
  26016. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26017. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26018. return Module["asm"]["___cxx_global_var_init_10_7621"].apply(null, arguments);
  26019. });
  26020. var ___cxx_global_var_init_11 = Module["___cxx_global_var_init_11"] = (function() {
  26021. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26022. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26023. return Module["asm"]["___cxx_global_var_init_11"].apply(null, arguments);
  26024. });
  26025. var ___cxx_global_var_init_111 = Module["___cxx_global_var_init_111"] = (function() {
  26026. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26027. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26028. return Module["asm"]["___cxx_global_var_init_111"].apply(null, arguments);
  26029. });
  26030. var ___cxx_global_var_init_112 = Module["___cxx_global_var_init_112"] = (function() {
  26031. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26032. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26033. return Module["asm"]["___cxx_global_var_init_112"].apply(null, arguments);
  26034. });
  26035. var ___cxx_global_var_init_114 = Module["___cxx_global_var_init_114"] = (function() {
  26036. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26037. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26038. return Module["asm"]["___cxx_global_var_init_114"].apply(null, arguments);
  26039. });
  26040. var ___cxx_global_var_init_115 = Module["___cxx_global_var_init_115"] = (function() {
  26041. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26042. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26043. return Module["asm"]["___cxx_global_var_init_115"].apply(null, arguments);
  26044. });
  26045. var ___cxx_global_var_init_120 = Module["___cxx_global_var_init_120"] = (function() {
  26046. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26047. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26048. return Module["asm"]["___cxx_global_var_init_120"].apply(null, arguments);
  26049. });
  26050. var ___cxx_global_var_init_122 = Module["___cxx_global_var_init_122"] = (function() {
  26051. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26052. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26053. return Module["asm"]["___cxx_global_var_init_122"].apply(null, arguments);
  26054. });
  26055. var ___cxx_global_var_init_123 = Module["___cxx_global_var_init_123"] = (function() {
  26056. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26057. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26058. return Module["asm"]["___cxx_global_var_init_123"].apply(null, arguments);
  26059. });
  26060. var ___cxx_global_var_init_123_6888 = Module["___cxx_global_var_init_123_6888"] = (function() {
  26061. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26062. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26063. return Module["asm"]["___cxx_global_var_init_123_6888"].apply(null, arguments);
  26064. });
  26065. var ___cxx_global_var_init_13 = Module["___cxx_global_var_init_13"] = (function() {
  26066. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26067. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26068. return Module["asm"]["___cxx_global_var_init_13"].apply(null, arguments);
  26069. });
  26070. var ___cxx_global_var_init_130 = Module["___cxx_global_var_init_130"] = (function() {
  26071. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26072. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26073. return Module["asm"]["___cxx_global_var_init_130"].apply(null, arguments);
  26074. });
  26075. var ___cxx_global_var_init_131 = Module["___cxx_global_var_init_131"] = (function() {
  26076. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26077. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26078. return Module["asm"]["___cxx_global_var_init_131"].apply(null, arguments);
  26079. });
  26080. var ___cxx_global_var_init_144 = Module["___cxx_global_var_init_144"] = (function() {
  26081. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26082. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26083. return Module["asm"]["___cxx_global_var_init_144"].apply(null, arguments);
  26084. });
  26085. var ___cxx_global_var_init_149 = Module["___cxx_global_var_init_149"] = (function() {
  26086. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26087. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26088. return Module["asm"]["___cxx_global_var_init_149"].apply(null, arguments);
  26089. });
  26090. var ___cxx_global_var_init_151 = Module["___cxx_global_var_init_151"] = (function() {
  26091. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26092. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26093. return Module["asm"]["___cxx_global_var_init_151"].apply(null, arguments);
  26094. });
  26095. var ___cxx_global_var_init_16 = Module["___cxx_global_var_init_16"] = (function() {
  26096. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26097. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26098. return Module["asm"]["___cxx_global_var_init_16"].apply(null, arguments);
  26099. });
  26100. var ___cxx_global_var_init_161 = Module["___cxx_global_var_init_161"] = (function() {
  26101. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26102. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26103. return Module["asm"]["___cxx_global_var_init_161"].apply(null, arguments);
  26104. });
  26105. var ___cxx_global_var_init_165 = Module["___cxx_global_var_init_165"] = (function() {
  26106. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26107. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26108. return Module["asm"]["___cxx_global_var_init_165"].apply(null, arguments);
  26109. });
  26110. var ___cxx_global_var_init_166 = Module["___cxx_global_var_init_166"] = (function() {
  26111. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26112. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26113. return Module["asm"]["___cxx_global_var_init_166"].apply(null, arguments);
  26114. });
  26115. var ___cxx_global_var_init_167 = Module["___cxx_global_var_init_167"] = (function() {
  26116. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26117. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26118. return Module["asm"]["___cxx_global_var_init_167"].apply(null, arguments);
  26119. });
  26120. var ___cxx_global_var_init_168 = Module["___cxx_global_var_init_168"] = (function() {
  26121. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26122. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26123. return Module["asm"]["___cxx_global_var_init_168"].apply(null, arguments);
  26124. });
  26125. var ___cxx_global_var_init_169 = Module["___cxx_global_var_init_169"] = (function() {
  26126. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26127. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26128. return Module["asm"]["___cxx_global_var_init_169"].apply(null, arguments);
  26129. });
  26130. var ___cxx_global_var_init_16_9177 = Module["___cxx_global_var_init_16_9177"] = (function() {
  26131. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26132. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26133. return Module["asm"]["___cxx_global_var_init_16_9177"].apply(null, arguments);
  26134. });
  26135. var ___cxx_global_var_init_17 = Module["___cxx_global_var_init_17"] = (function() {
  26136. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26137. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26138. return Module["asm"]["___cxx_global_var_init_17"].apply(null, arguments);
  26139. });
  26140. var ___cxx_global_var_init_170 = Module["___cxx_global_var_init_170"] = (function() {
  26141. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26142. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26143. return Module["asm"]["___cxx_global_var_init_170"].apply(null, arguments);
  26144. });
  26145. var ___cxx_global_var_init_171 = Module["___cxx_global_var_init_171"] = (function() {
  26146. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26147. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26148. return Module["asm"]["___cxx_global_var_init_171"].apply(null, arguments);
  26149. });
  26150. var ___cxx_global_var_init_172 = Module["___cxx_global_var_init_172"] = (function() {
  26151. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26152. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26153. return Module["asm"]["___cxx_global_var_init_172"].apply(null, arguments);
  26154. });
  26155. var ___cxx_global_var_init_173 = Module["___cxx_global_var_init_173"] = (function() {
  26156. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26157. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26158. return Module["asm"]["___cxx_global_var_init_173"].apply(null, arguments);
  26159. });
  26160. var ___cxx_global_var_init_174 = Module["___cxx_global_var_init_174"] = (function() {
  26161. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26162. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26163. return Module["asm"]["___cxx_global_var_init_174"].apply(null, arguments);
  26164. });
  26165. var ___cxx_global_var_init_175 = Module["___cxx_global_var_init_175"] = (function() {
  26166. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26167. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26168. return Module["asm"]["___cxx_global_var_init_175"].apply(null, arguments);
  26169. });
  26170. var ___cxx_global_var_init_176 = Module["___cxx_global_var_init_176"] = (function() {
  26171. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26172. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26173. return Module["asm"]["___cxx_global_var_init_176"].apply(null, arguments);
  26174. });
  26175. var ___cxx_global_var_init_177 = Module["___cxx_global_var_init_177"] = (function() {
  26176. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26177. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26178. return Module["asm"]["___cxx_global_var_init_177"].apply(null, arguments);
  26179. });
  26180. var ___cxx_global_var_init_178 = Module["___cxx_global_var_init_178"] = (function() {
  26181. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26182. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26183. return Module["asm"]["___cxx_global_var_init_178"].apply(null, arguments);
  26184. });
  26185. var ___cxx_global_var_init_179 = Module["___cxx_global_var_init_179"] = (function() {
  26186. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26187. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26188. return Module["asm"]["___cxx_global_var_init_179"].apply(null, arguments);
  26189. });
  26190. var ___cxx_global_var_init_18 = Module["___cxx_global_var_init_18"] = (function() {
  26191. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26192. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26193. return Module["asm"]["___cxx_global_var_init_18"].apply(null, arguments);
  26194. });
  26195. var ___cxx_global_var_init_180 = Module["___cxx_global_var_init_180"] = (function() {
  26196. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26197. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26198. return Module["asm"]["___cxx_global_var_init_180"].apply(null, arguments);
  26199. });
  26200. var ___cxx_global_var_init_181 = Module["___cxx_global_var_init_181"] = (function() {
  26201. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26202. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26203. return Module["asm"]["___cxx_global_var_init_181"].apply(null, arguments);
  26204. });
  26205. var ___cxx_global_var_init_182 = Module["___cxx_global_var_init_182"] = (function() {
  26206. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26207. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26208. return Module["asm"]["___cxx_global_var_init_182"].apply(null, arguments);
  26209. });
  26210. var ___cxx_global_var_init_182_8669 = Module["___cxx_global_var_init_182_8669"] = (function() {
  26211. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26212. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26213. return Module["asm"]["___cxx_global_var_init_182_8669"].apply(null, arguments);
  26214. });
  26215. var ___cxx_global_var_init_183 = Module["___cxx_global_var_init_183"] = (function() {
  26216. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26217. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26218. return Module["asm"]["___cxx_global_var_init_183"].apply(null, arguments);
  26219. });
  26220. var ___cxx_global_var_init_183_8670 = Module["___cxx_global_var_init_183_8670"] = (function() {
  26221. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26222. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26223. return Module["asm"]["___cxx_global_var_init_183_8670"].apply(null, arguments);
  26224. });
  26225. var ___cxx_global_var_init_184 = Module["___cxx_global_var_init_184"] = (function() {
  26226. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26227. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26228. return Module["asm"]["___cxx_global_var_init_184"].apply(null, arguments);
  26229. });
  26230. var ___cxx_global_var_init_184_8671 = Module["___cxx_global_var_init_184_8671"] = (function() {
  26231. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26232. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26233. return Module["asm"]["___cxx_global_var_init_184_8671"].apply(null, arguments);
  26234. });
  26235. var ___cxx_global_var_init_185 = Module["___cxx_global_var_init_185"] = (function() {
  26236. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26237. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26238. return Module["asm"]["___cxx_global_var_init_185"].apply(null, arguments);
  26239. });
  26240. var ___cxx_global_var_init_185_8672 = Module["___cxx_global_var_init_185_8672"] = (function() {
  26241. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26242. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26243. return Module["asm"]["___cxx_global_var_init_185_8672"].apply(null, arguments);
  26244. });
  26245. var ___cxx_global_var_init_186 = Module["___cxx_global_var_init_186"] = (function() {
  26246. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26247. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26248. return Module["asm"]["___cxx_global_var_init_186"].apply(null, arguments);
  26249. });
  26250. var ___cxx_global_var_init_186_8673 = Module["___cxx_global_var_init_186_8673"] = (function() {
  26251. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26252. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26253. return Module["asm"]["___cxx_global_var_init_186_8673"].apply(null, arguments);
  26254. });
  26255. var ___cxx_global_var_init_187 = Module["___cxx_global_var_init_187"] = (function() {
  26256. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26257. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26258. return Module["asm"]["___cxx_global_var_init_187"].apply(null, arguments);
  26259. });
  26260. var ___cxx_global_var_init_187_8674 = Module["___cxx_global_var_init_187_8674"] = (function() {
  26261. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26262. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26263. return Module["asm"]["___cxx_global_var_init_187_8674"].apply(null, arguments);
  26264. });
  26265. var ___cxx_global_var_init_188 = Module["___cxx_global_var_init_188"] = (function() {
  26266. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26267. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26268. return Module["asm"]["___cxx_global_var_init_188"].apply(null, arguments);
  26269. });
  26270. var ___cxx_global_var_init_188_8675 = Module["___cxx_global_var_init_188_8675"] = (function() {
  26271. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26272. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26273. return Module["asm"]["___cxx_global_var_init_188_8675"].apply(null, arguments);
  26274. });
  26275. var ___cxx_global_var_init_189 = Module["___cxx_global_var_init_189"] = (function() {
  26276. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26277. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26278. return Module["asm"]["___cxx_global_var_init_189"].apply(null, arguments);
  26279. });
  26280. var ___cxx_global_var_init_18_9178 = Module["___cxx_global_var_init_18_9178"] = (function() {
  26281. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26282. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26283. return Module["asm"]["___cxx_global_var_init_18_9178"].apply(null, arguments);
  26284. });
  26285. var ___cxx_global_var_init_19 = Module["___cxx_global_var_init_19"] = (function() {
  26286. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26287. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26288. return Module["asm"]["___cxx_global_var_init_19"].apply(null, arguments);
  26289. });
  26290. var ___cxx_global_var_init_190 = Module["___cxx_global_var_init_190"] = (function() {
  26291. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26292. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26293. return Module["asm"]["___cxx_global_var_init_190"].apply(null, arguments);
  26294. });
  26295. var ___cxx_global_var_init_191 = Module["___cxx_global_var_init_191"] = (function() {
  26296. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26297. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26298. return Module["asm"]["___cxx_global_var_init_191"].apply(null, arguments);
  26299. });
  26300. var ___cxx_global_var_init_192 = Module["___cxx_global_var_init_192"] = (function() {
  26301. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26302. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26303. return Module["asm"]["___cxx_global_var_init_192"].apply(null, arguments);
  26304. });
  26305. var ___cxx_global_var_init_193 = Module["___cxx_global_var_init_193"] = (function() {
  26306. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26307. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26308. return Module["asm"]["___cxx_global_var_init_193"].apply(null, arguments);
  26309. });
  26310. var ___cxx_global_var_init_194 = Module["___cxx_global_var_init_194"] = (function() {
  26311. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26312. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26313. return Module["asm"]["___cxx_global_var_init_194"].apply(null, arguments);
  26314. });
  26315. var ___cxx_global_var_init_195 = Module["___cxx_global_var_init_195"] = (function() {
  26316. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26317. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26318. return Module["asm"]["___cxx_global_var_init_195"].apply(null, arguments);
  26319. });
  26320. var ___cxx_global_var_init_196 = Module["___cxx_global_var_init_196"] = (function() {
  26321. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26322. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26323. return Module["asm"]["___cxx_global_var_init_196"].apply(null, arguments);
  26324. });
  26325. var ___cxx_global_var_init_197 = Module["___cxx_global_var_init_197"] = (function() {
  26326. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26327. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26328. return Module["asm"]["___cxx_global_var_init_197"].apply(null, arguments);
  26329. });
  26330. var ___cxx_global_var_init_198 = Module["___cxx_global_var_init_198"] = (function() {
  26331. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26332. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26333. return Module["asm"]["___cxx_global_var_init_198"].apply(null, arguments);
  26334. });
  26335. var ___cxx_global_var_init_199 = Module["___cxx_global_var_init_199"] = (function() {
  26336. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26337. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26338. return Module["asm"]["___cxx_global_var_init_199"].apply(null, arguments);
  26339. });
  26340. var ___cxx_global_var_init_19_9179 = Module["___cxx_global_var_init_19_9179"] = (function() {
  26341. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26342. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26343. return Module["asm"]["___cxx_global_var_init_19_9179"].apply(null, arguments);
  26344. });
  26345. var ___cxx_global_var_init_1_6764 = Module["___cxx_global_var_init_1_6764"] = (function() {
  26346. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26347. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26348. return Module["asm"]["___cxx_global_var_init_1_6764"].apply(null, arguments);
  26349. });
  26350. var ___cxx_global_var_init_1_8982 = Module["___cxx_global_var_init_1_8982"] = (function() {
  26351. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26352. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26353. return Module["asm"]["___cxx_global_var_init_1_8982"].apply(null, arguments);
  26354. });
  26355. var ___cxx_global_var_init_200 = Module["___cxx_global_var_init_200"] = (function() {
  26356. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26357. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26358. return Module["asm"]["___cxx_global_var_init_200"].apply(null, arguments);
  26359. });
  26360. var ___cxx_global_var_init_201 = Module["___cxx_global_var_init_201"] = (function() {
  26361. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26362. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26363. return Module["asm"]["___cxx_global_var_init_201"].apply(null, arguments);
  26364. });
  26365. var ___cxx_global_var_init_202 = Module["___cxx_global_var_init_202"] = (function() {
  26366. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26367. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26368. return Module["asm"]["___cxx_global_var_init_202"].apply(null, arguments);
  26369. });
  26370. var ___cxx_global_var_init_203 = Module["___cxx_global_var_init_203"] = (function() {
  26371. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26372. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26373. return Module["asm"]["___cxx_global_var_init_203"].apply(null, arguments);
  26374. });
  26375. var ___cxx_global_var_init_204 = Module["___cxx_global_var_init_204"] = (function() {
  26376. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26377. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26378. return Module["asm"]["___cxx_global_var_init_204"].apply(null, arguments);
  26379. });
  26380. var ___cxx_global_var_init_205 = Module["___cxx_global_var_init_205"] = (function() {
  26381. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26382. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26383. return Module["asm"]["___cxx_global_var_init_205"].apply(null, arguments);
  26384. });
  26385. var ___cxx_global_var_init_206 = Module["___cxx_global_var_init_206"] = (function() {
  26386. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26387. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26388. return Module["asm"]["___cxx_global_var_init_206"].apply(null, arguments);
  26389. });
  26390. var ___cxx_global_var_init_207 = Module["___cxx_global_var_init_207"] = (function() {
  26391. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26392. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26393. return Module["asm"]["___cxx_global_var_init_207"].apply(null, arguments);
  26394. });
  26395. var ___cxx_global_var_init_208 = Module["___cxx_global_var_init_208"] = (function() {
  26396. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26397. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26398. return Module["asm"]["___cxx_global_var_init_208"].apply(null, arguments);
  26399. });
  26400. var ___cxx_global_var_init_209 = Module["___cxx_global_var_init_209"] = (function() {
  26401. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26402. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26403. return Module["asm"]["___cxx_global_var_init_209"].apply(null, arguments);
  26404. });
  26405. var ___cxx_global_var_init_20_9180 = Module["___cxx_global_var_init_20_9180"] = (function() {
  26406. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26407. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26408. return Module["asm"]["___cxx_global_var_init_20_9180"].apply(null, arguments);
  26409. });
  26410. var ___cxx_global_var_init_21 = Module["___cxx_global_var_init_21"] = (function() {
  26411. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26412. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26413. return Module["asm"]["___cxx_global_var_init_21"].apply(null, arguments);
  26414. });
  26415. var ___cxx_global_var_init_210 = Module["___cxx_global_var_init_210"] = (function() {
  26416. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26417. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26418. return Module["asm"]["___cxx_global_var_init_210"].apply(null, arguments);
  26419. });
  26420. var ___cxx_global_var_init_211 = Module["___cxx_global_var_init_211"] = (function() {
  26421. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26422. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26423. return Module["asm"]["___cxx_global_var_init_211"].apply(null, arguments);
  26424. });
  26425. var ___cxx_global_var_init_212 = Module["___cxx_global_var_init_212"] = (function() {
  26426. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26427. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26428. return Module["asm"]["___cxx_global_var_init_212"].apply(null, arguments);
  26429. });
  26430. var ___cxx_global_var_init_213 = Module["___cxx_global_var_init_213"] = (function() {
  26431. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26432. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26433. return Module["asm"]["___cxx_global_var_init_213"].apply(null, arguments);
  26434. });
  26435. var ___cxx_global_var_init_214 = Module["___cxx_global_var_init_214"] = (function() {
  26436. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26437. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26438. return Module["asm"]["___cxx_global_var_init_214"].apply(null, arguments);
  26439. });
  26440. var ___cxx_global_var_init_215_1168 = Module["___cxx_global_var_init_215_1168"] = (function() {
  26441. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26442. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26443. return Module["asm"]["___cxx_global_var_init_215_1168"].apply(null, arguments);
  26444. });
  26445. var ___cxx_global_var_init_21_9181 = Module["___cxx_global_var_init_21_9181"] = (function() {
  26446. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26447. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26448. return Module["asm"]["___cxx_global_var_init_21_9181"].apply(null, arguments);
  26449. });
  26450. var ___cxx_global_var_init_22_9182 = Module["___cxx_global_var_init_22_9182"] = (function() {
  26451. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26452. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26453. return Module["asm"]["___cxx_global_var_init_22_9182"].apply(null, arguments);
  26454. });
  26455. var ___cxx_global_var_init_22_9270 = Module["___cxx_global_var_init_22_9270"] = (function() {
  26456. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26457. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26458. return Module["asm"]["___cxx_global_var_init_22_9270"].apply(null, arguments);
  26459. });
  26460. var ___cxx_global_var_init_23 = Module["___cxx_global_var_init_23"] = (function() {
  26461. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26462. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26463. return Module["asm"]["___cxx_global_var_init_23"].apply(null, arguments);
  26464. });
  26465. var ___cxx_global_var_init_23_9183 = Module["___cxx_global_var_init_23_9183"] = (function() {
  26466. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26467. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26468. return Module["asm"]["___cxx_global_var_init_23_9183"].apply(null, arguments);
  26469. });
  26470. var ___cxx_global_var_init_24 = Module["___cxx_global_var_init_24"] = (function() {
  26471. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26472. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26473. return Module["asm"]["___cxx_global_var_init_24"].apply(null, arguments);
  26474. });
  26475. var ___cxx_global_var_init_24_9184 = Module["___cxx_global_var_init_24_9184"] = (function() {
  26476. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26477. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26478. return Module["asm"]["___cxx_global_var_init_24_9184"].apply(null, arguments);
  26479. });
  26480. var ___cxx_global_var_init_24_9271 = Module["___cxx_global_var_init_24_9271"] = (function() {
  26481. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26482. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26483. return Module["asm"]["___cxx_global_var_init_24_9271"].apply(null, arguments);
  26484. });
  26485. var ___cxx_global_var_init_25 = Module["___cxx_global_var_init_25"] = (function() {
  26486. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26487. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26488. return Module["asm"]["___cxx_global_var_init_25"].apply(null, arguments);
  26489. });
  26490. var ___cxx_global_var_init_25_1169 = Module["___cxx_global_var_init_25_1169"] = (function() {
  26491. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26492. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26493. return Module["asm"]["___cxx_global_var_init_25_1169"].apply(null, arguments);
  26494. });
  26495. var ___cxx_global_var_init_26_5292 = Module["___cxx_global_var_init_26_5292"] = (function() {
  26496. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26497. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26498. return Module["asm"]["___cxx_global_var_init_26_5292"].apply(null, arguments);
  26499. });
  26500. var ___cxx_global_var_init_26_9272 = Module["___cxx_global_var_init_26_9272"] = (function() {
  26501. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26502. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26503. return Module["asm"]["___cxx_global_var_init_26_9272"].apply(null, arguments);
  26504. });
  26505. var ___cxx_global_var_init_27 = Module["___cxx_global_var_init_27"] = (function() {
  26506. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26507. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26508. return Module["asm"]["___cxx_global_var_init_27"].apply(null, arguments);
  26509. });
  26510. var ___cxx_global_var_init_28_3916 = Module["___cxx_global_var_init_28_3916"] = (function() {
  26511. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26512. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26513. return Module["asm"]["___cxx_global_var_init_28_3916"].apply(null, arguments);
  26514. });
  26515. var ___cxx_global_var_init_28_4482 = Module["___cxx_global_var_init_28_4482"] = (function() {
  26516. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26517. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26518. return Module["asm"]["___cxx_global_var_init_28_4482"].apply(null, arguments);
  26519. });
  26520. var ___cxx_global_var_init_29 = Module["___cxx_global_var_init_29"] = (function() {
  26521. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26522. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26523. return Module["asm"]["___cxx_global_var_init_29"].apply(null, arguments);
  26524. });
  26525. var ___cxx_global_var_init_29_6803 = Module["___cxx_global_var_init_29_6803"] = (function() {
  26526. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26527. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26528. return Module["asm"]["___cxx_global_var_init_29_6803"].apply(null, arguments);
  26529. });
  26530. var ___cxx_global_var_init_2_10890 = Module["___cxx_global_var_init_2_10890"] = (function() {
  26531. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26532. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26533. return Module["asm"]["___cxx_global_var_init_2_10890"].apply(null, arguments);
  26534. });
  26535. var ___cxx_global_var_init_30_6804 = Module["___cxx_global_var_init_30_6804"] = (function() {
  26536. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26537. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26538. return Module["asm"]["___cxx_global_var_init_30_6804"].apply(null, arguments);
  26539. });
  26540. var ___cxx_global_var_init_30_9055 = Module["___cxx_global_var_init_30_9055"] = (function() {
  26541. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26542. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26543. return Module["asm"]["___cxx_global_var_init_30_9055"].apply(null, arguments);
  26544. });
  26545. var ___cxx_global_var_init_31 = Module["___cxx_global_var_init_31"] = (function() {
  26546. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26547. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26548. return Module["asm"]["___cxx_global_var_init_31"].apply(null, arguments);
  26549. });
  26550. var ___cxx_global_var_init_31_9866 = Module["___cxx_global_var_init_31_9866"] = (function() {
  26551. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26552. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26553. return Module["asm"]["___cxx_global_var_init_31_9866"].apply(null, arguments);
  26554. });
  26555. var ___cxx_global_var_init_32_9056 = Module["___cxx_global_var_init_32_9056"] = (function() {
  26556. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26557. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26558. return Module["asm"]["___cxx_global_var_init_32_9056"].apply(null, arguments);
  26559. });
  26560. var ___cxx_global_var_init_33 = Module["___cxx_global_var_init_33"] = (function() {
  26561. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26562. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26563. return Module["asm"]["___cxx_global_var_init_33"].apply(null, arguments);
  26564. });
  26565. var ___cxx_global_var_init_34_9057 = Module["___cxx_global_var_init_34_9057"] = (function() {
  26566. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26567. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26568. return Module["asm"]["___cxx_global_var_init_34_9057"].apply(null, arguments);
  26569. });
  26570. var ___cxx_global_var_init_35 = Module["___cxx_global_var_init_35"] = (function() {
  26571. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26572. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26573. return Module["asm"]["___cxx_global_var_init_35"].apply(null, arguments);
  26574. });
  26575. var ___cxx_global_var_init_35_7296 = Module["___cxx_global_var_init_35_7296"] = (function() {
  26576. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26577. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26578. return Module["asm"]["___cxx_global_var_init_35_7296"].apply(null, arguments);
  26579. });
  26580. var ___cxx_global_var_init_36 = Module["___cxx_global_var_init_36"] = (function() {
  26581. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26582. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26583. return Module["asm"]["___cxx_global_var_init_36"].apply(null, arguments);
  26584. });
  26585. var ___cxx_global_var_init_36_12649 = Module["___cxx_global_var_init_36_12649"] = (function() {
  26586. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26587. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26588. return Module["asm"]["___cxx_global_var_init_36_12649"].apply(null, arguments);
  26589. });
  26590. var ___cxx_global_var_init_37 = Module["___cxx_global_var_init_37"] = (function() {
  26591. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26592. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26593. return Module["asm"]["___cxx_global_var_init_37"].apply(null, arguments);
  26594. });
  26595. var ___cxx_global_var_init_37_12650 = Module["___cxx_global_var_init_37_12650"] = (function() {
  26596. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26597. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26598. return Module["asm"]["___cxx_global_var_init_37_12650"].apply(null, arguments);
  26599. });
  26600. var ___cxx_global_var_init_38 = Module["___cxx_global_var_init_38"] = (function() {
  26601. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26602. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26603. return Module["asm"]["___cxx_global_var_init_38"].apply(null, arguments);
  26604. });
  26605. var ___cxx_global_var_init_3826 = Module["___cxx_global_var_init_3826"] = (function() {
  26606. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26607. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26608. return Module["asm"]["___cxx_global_var_init_3826"].apply(null, arguments);
  26609. });
  26610. var ___cxx_global_var_init_38_12651 = Module["___cxx_global_var_init_38_12651"] = (function() {
  26611. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26612. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26613. return Module["asm"]["___cxx_global_var_init_38_12651"].apply(null, arguments);
  26614. });
  26615. var ___cxx_global_var_init_39 = Module["___cxx_global_var_init_39"] = (function() {
  26616. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26617. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26618. return Module["asm"]["___cxx_global_var_init_39"].apply(null, arguments);
  26619. });
  26620. var ___cxx_global_var_init_39_7786 = Module["___cxx_global_var_init_39_7786"] = (function() {
  26621. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26622. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26623. return Module["asm"]["___cxx_global_var_init_39_7786"].apply(null, arguments);
  26624. });
  26625. var ___cxx_global_var_init_3_4139 = Module["___cxx_global_var_init_3_4139"] = (function() {
  26626. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26627. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26628. return Module["asm"]["___cxx_global_var_init_3_4139"].apply(null, arguments);
  26629. });
  26630. var ___cxx_global_var_init_40 = Module["___cxx_global_var_init_40"] = (function() {
  26631. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26632. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26633. return Module["asm"]["___cxx_global_var_init_40"].apply(null, arguments);
  26634. });
  26635. var ___cxx_global_var_init_40_13342 = Module["___cxx_global_var_init_40_13342"] = (function() {
  26636. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26637. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26638. return Module["asm"]["___cxx_global_var_init_40_13342"].apply(null, arguments);
  26639. });
  26640. var ___cxx_global_var_init_40_7787 = Module["___cxx_global_var_init_40_7787"] = (function() {
  26641. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26642. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26643. return Module["asm"]["___cxx_global_var_init_40_7787"].apply(null, arguments);
  26644. });
  26645. var ___cxx_global_var_init_40_9172 = Module["___cxx_global_var_init_40_9172"] = (function() {
  26646. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26647. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26648. return Module["asm"]["___cxx_global_var_init_40_9172"].apply(null, arguments);
  26649. });
  26650. var ___cxx_global_var_init_41 = Module["___cxx_global_var_init_41"] = (function() {
  26651. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26652. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26653. return Module["asm"]["___cxx_global_var_init_41"].apply(null, arguments);
  26654. });
  26655. var ___cxx_global_var_init_41_7788 = Module["___cxx_global_var_init_41_7788"] = (function() {
  26656. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26657. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26658. return Module["asm"]["___cxx_global_var_init_41_7788"].apply(null, arguments);
  26659. });
  26660. var ___cxx_global_var_init_41_9173 = Module["___cxx_global_var_init_41_9173"] = (function() {
  26661. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26662. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26663. return Module["asm"]["___cxx_global_var_init_41_9173"].apply(null, arguments);
  26664. });
  26665. var ___cxx_global_var_init_42 = Module["___cxx_global_var_init_42"] = (function() {
  26666. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26667. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26668. return Module["asm"]["___cxx_global_var_init_42"].apply(null, arguments);
  26669. });
  26670. var ___cxx_global_var_init_42_7789 = Module["___cxx_global_var_init_42_7789"] = (function() {
  26671. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26672. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26673. return Module["asm"]["___cxx_global_var_init_42_7789"].apply(null, arguments);
  26674. });
  26675. var ___cxx_global_var_init_42_9174 = Module["___cxx_global_var_init_42_9174"] = (function() {
  26676. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26677. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26678. return Module["asm"]["___cxx_global_var_init_42_9174"].apply(null, arguments);
  26679. });
  26680. var ___cxx_global_var_init_43 = Module["___cxx_global_var_init_43"] = (function() {
  26681. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26682. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26683. return Module["asm"]["___cxx_global_var_init_43"].apply(null, arguments);
  26684. });
  26685. var ___cxx_global_var_init_43_7790 = Module["___cxx_global_var_init_43_7790"] = (function() {
  26686. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26687. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26688. return Module["asm"]["___cxx_global_var_init_43_7790"].apply(null, arguments);
  26689. });
  26690. var ___cxx_global_var_init_43_9175 = Module["___cxx_global_var_init_43_9175"] = (function() {
  26691. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26692. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26693. return Module["asm"]["___cxx_global_var_init_43_9175"].apply(null, arguments);
  26694. });
  26695. var ___cxx_global_var_init_44 = Module["___cxx_global_var_init_44"] = (function() {
  26696. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26697. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26698. return Module["asm"]["___cxx_global_var_init_44"].apply(null, arguments);
  26699. });
  26700. var ___cxx_global_var_init_44_4479 = Module["___cxx_global_var_init_44_4479"] = (function() {
  26701. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26702. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26703. return Module["asm"]["___cxx_global_var_init_44_4479"].apply(null, arguments);
  26704. });
  26705. var ___cxx_global_var_init_44_7480 = Module["___cxx_global_var_init_44_7480"] = (function() {
  26706. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26707. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26708. return Module["asm"]["___cxx_global_var_init_44_7480"].apply(null, arguments);
  26709. });
  26710. var ___cxx_global_var_init_44_7791 = Module["___cxx_global_var_init_44_7791"] = (function() {
  26711. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26712. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26713. return Module["asm"]["___cxx_global_var_init_44_7791"].apply(null, arguments);
  26714. });
  26715. var ___cxx_global_var_init_44_9176 = Module["___cxx_global_var_init_44_9176"] = (function() {
  26716. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26717. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26718. return Module["asm"]["___cxx_global_var_init_44_9176"].apply(null, arguments);
  26719. });
  26720. var ___cxx_global_var_init_45 = Module["___cxx_global_var_init_45"] = (function() {
  26721. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26722. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26723. return Module["asm"]["___cxx_global_var_init_45"].apply(null, arguments);
  26724. });
  26725. var ___cxx_global_var_init_45_4480 = Module["___cxx_global_var_init_45_4480"] = (function() {
  26726. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26727. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26728. return Module["asm"]["___cxx_global_var_init_45_4480"].apply(null, arguments);
  26729. });
  26730. var ___cxx_global_var_init_45_7792 = Module["___cxx_global_var_init_45_7792"] = (function() {
  26731. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26732. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26733. return Module["asm"]["___cxx_global_var_init_45_7792"].apply(null, arguments);
  26734. });
  26735. var ___cxx_global_var_init_46 = Module["___cxx_global_var_init_46"] = (function() {
  26736. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26737. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26738. return Module["asm"]["___cxx_global_var_init_46"].apply(null, arguments);
  26739. });
  26740. var ___cxx_global_var_init_46_4481 = Module["___cxx_global_var_init_46_4481"] = (function() {
  26741. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26742. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26743. return Module["asm"]["___cxx_global_var_init_46_4481"].apply(null, arguments);
  26744. });
  26745. var ___cxx_global_var_init_47 = Module["___cxx_global_var_init_47"] = (function() {
  26746. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26747. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26748. return Module["asm"]["___cxx_global_var_init_47"].apply(null, arguments);
  26749. });
  26750. var ___cxx_global_var_init_47_1170 = Module["___cxx_global_var_init_47_1170"] = (function() {
  26751. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26752. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26753. return Module["asm"]["___cxx_global_var_init_47_1170"].apply(null, arguments);
  26754. });
  26755. var ___cxx_global_var_init_48 = Module["___cxx_global_var_init_48"] = (function() {
  26756. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26757. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26758. return Module["asm"]["___cxx_global_var_init_48"].apply(null, arguments);
  26759. });
  26760. var ___cxx_global_var_init_48_1171 = Module["___cxx_global_var_init_48_1171"] = (function() {
  26761. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26762. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26763. return Module["asm"]["___cxx_global_var_init_48_1171"].apply(null, arguments);
  26764. });
  26765. var ___cxx_global_var_init_4_669 = Module["___cxx_global_var_init_4_669"] = (function() {
  26766. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26767. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26768. return Module["asm"]["___cxx_global_var_init_4_669"].apply(null, arguments);
  26769. });
  26770. var ___cxx_global_var_init_4_6710 = Module["___cxx_global_var_init_4_6710"] = (function() {
  26771. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26772. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26773. return Module["asm"]["___cxx_global_var_init_4_6710"].apply(null, arguments);
  26774. });
  26775. var ___cxx_global_var_init_5 = Module["___cxx_global_var_init_5"] = (function() {
  26776. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26777. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26778. return Module["asm"]["___cxx_global_var_init_5"].apply(null, arguments);
  26779. });
  26780. var ___cxx_global_var_init_50 = Module["___cxx_global_var_init_50"] = (function() {
  26781. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26782. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26783. return Module["asm"]["___cxx_global_var_init_50"].apply(null, arguments);
  26784. });
  26785. var ___cxx_global_var_init_53 = Module["___cxx_global_var_init_53"] = (function() {
  26786. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26787. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26788. return Module["asm"]["___cxx_global_var_init_53"].apply(null, arguments);
  26789. });
  26790. var ___cxx_global_var_init_57 = Module["___cxx_global_var_init_57"] = (function() {
  26791. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26792. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26793. return Module["asm"]["___cxx_global_var_init_57"].apply(null, arguments);
  26794. });
  26795. var ___cxx_global_var_init_58 = Module["___cxx_global_var_init_58"] = (function() {
  26796. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26797. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26798. return Module["asm"]["___cxx_global_var_init_58"].apply(null, arguments);
  26799. });
  26800. var ___cxx_global_var_init_63 = Module["___cxx_global_var_init_63"] = (function() {
  26801. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26802. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26803. return Module["asm"]["___cxx_global_var_init_63"].apply(null, arguments);
  26804. });
  26805. var ___cxx_global_var_init_67 = Module["___cxx_global_var_init_67"] = (function() {
  26806. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26807. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26808. return Module["asm"]["___cxx_global_var_init_67"].apply(null, arguments);
  26809. });
  26810. var ___cxx_global_var_init_68 = Module["___cxx_global_var_init_68"] = (function() {
  26811. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26812. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26813. return Module["asm"]["___cxx_global_var_init_68"].apply(null, arguments);
  26814. });
  26815. var ___cxx_global_var_init_69 = Module["___cxx_global_var_init_69"] = (function() {
  26816. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26817. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26818. return Module["asm"]["___cxx_global_var_init_69"].apply(null, arguments);
  26819. });
  26820. var ___cxx_global_var_init_6_4226 = Module["___cxx_global_var_init_6_4226"] = (function() {
  26821. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26822. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26823. return Module["asm"]["___cxx_global_var_init_6_4226"].apply(null, arguments);
  26824. });
  26825. var ___cxx_global_var_init_7 = Module["___cxx_global_var_init_7"] = (function() {
  26826. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26827. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26828. return Module["asm"]["___cxx_global_var_init_7"].apply(null, arguments);
  26829. });
  26830. var ___cxx_global_var_init_70 = Module["___cxx_global_var_init_70"] = (function() {
  26831. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26832. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26833. return Module["asm"]["___cxx_global_var_init_70"].apply(null, arguments);
  26834. });
  26835. var ___cxx_global_var_init_7295 = Module["___cxx_global_var_init_7295"] = (function() {
  26836. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26837. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26838. return Module["asm"]["___cxx_global_var_init_7295"].apply(null, arguments);
  26839. });
  26840. var ___cxx_global_var_init_75 = Module["___cxx_global_var_init_75"] = (function() {
  26841. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26842. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26843. return Module["asm"]["___cxx_global_var_init_75"].apply(null, arguments);
  26844. });
  26845. var ___cxx_global_var_init_75_8813 = Module["___cxx_global_var_init_75_8813"] = (function() {
  26846. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26847. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26848. return Module["asm"]["___cxx_global_var_init_75_8813"].apply(null, arguments);
  26849. });
  26850. var ___cxx_global_var_init_77 = Module["___cxx_global_var_init_77"] = (function() {
  26851. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26852. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26853. return Module["asm"]["___cxx_global_var_init_77"].apply(null, arguments);
  26854. });
  26855. var ___cxx_global_var_init_77_1167 = Module["___cxx_global_var_init_77_1167"] = (function() {
  26856. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26857. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26858. return Module["asm"]["___cxx_global_var_init_77_1167"].apply(null, arguments);
  26859. });
  26860. var ___cxx_global_var_init_77_5879 = Module["___cxx_global_var_init_77_5879"] = (function() {
  26861. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26862. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26863. return Module["asm"]["___cxx_global_var_init_77_5879"].apply(null, arguments);
  26864. });
  26865. var ___cxx_global_var_init_78 = Module["___cxx_global_var_init_78"] = (function() {
  26866. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26867. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26868. return Module["asm"]["___cxx_global_var_init_78"].apply(null, arguments);
  26869. });
  26870. var ___cxx_global_var_init_79 = Module["___cxx_global_var_init_79"] = (function() {
  26871. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26872. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26873. return Module["asm"]["___cxx_global_var_init_79"].apply(null, arguments);
  26874. });
  26875. var ___cxx_global_var_init_7_4227 = Module["___cxx_global_var_init_7_4227"] = (function() {
  26876. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26877. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26878. return Module["asm"]["___cxx_global_var_init_7_4227"].apply(null, arguments);
  26879. });
  26880. var ___cxx_global_var_init_7_6648 = Module["___cxx_global_var_init_7_6648"] = (function() {
  26881. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26882. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26883. return Module["asm"]["___cxx_global_var_init_7_6648"].apply(null, arguments);
  26884. });
  26885. var ___cxx_global_var_init_80 = Module["___cxx_global_var_init_80"] = (function() {
  26886. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26887. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26888. return Module["asm"]["___cxx_global_var_init_80"].apply(null, arguments);
  26889. });
  26890. var ___cxx_global_var_init_8030 = Module["___cxx_global_var_init_8030"] = (function() {
  26891. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26892. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26893. return Module["asm"]["___cxx_global_var_init_8030"].apply(null, arguments);
  26894. });
  26895. var ___cxx_global_var_init_81 = Module["___cxx_global_var_init_81"] = (function() {
  26896. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26897. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26898. return Module["asm"]["___cxx_global_var_init_81"].apply(null, arguments);
  26899. });
  26900. var ___cxx_global_var_init_81_5880 = Module["___cxx_global_var_init_81_5880"] = (function() {
  26901. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26902. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26903. return Module["asm"]["___cxx_global_var_init_81_5880"].apply(null, arguments);
  26904. });
  26905. var ___cxx_global_var_init_87 = Module["___cxx_global_var_init_87"] = (function() {
  26906. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26907. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26908. return Module["asm"]["___cxx_global_var_init_87"].apply(null, arguments);
  26909. });
  26910. var ___cxx_global_var_init_8981 = Module["___cxx_global_var_init_8981"] = (function() {
  26911. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26912. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26913. return Module["asm"]["___cxx_global_var_init_8981"].apply(null, arguments);
  26914. });
  26915. var ___cxx_global_var_init_8_4228 = Module["___cxx_global_var_init_8_4228"] = (function() {
  26916. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26917. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26918. return Module["asm"]["___cxx_global_var_init_8_4228"].apply(null, arguments);
  26919. });
  26920. var ___cxx_global_var_init_9 = Module["___cxx_global_var_init_9"] = (function() {
  26921. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26922. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26923. return Module["asm"]["___cxx_global_var_init_9"].apply(null, arguments);
  26924. });
  26925. var ___emscripten_environ_constructor = Module["___emscripten_environ_constructor"] = (function() {
  26926. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26927. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26928. return Module["asm"]["___emscripten_environ_constructor"].apply(null, arguments);
  26929. });
  26930. var ___errno_location = Module["___errno_location"] = (function() {
  26931. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26932. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26933. return Module["asm"]["___errno_location"].apply(null, arguments);
  26934. });
  26935. var __get_daylight = Module["__get_daylight"] = (function() {
  26936. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26937. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26938. return Module["asm"]["__get_daylight"].apply(null, arguments);
  26939. });
  26940. var __get_environ = Module["__get_environ"] = (function() {
  26941. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26942. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26943. return Module["asm"]["__get_environ"].apply(null, arguments);
  26944. });
  26945. var __get_timezone = Module["__get_timezone"] = (function() {
  26946. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26947. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26948. return Module["asm"]["__get_timezone"].apply(null, arguments);
  26949. });
  26950. var __get_tzname = Module["__get_tzname"] = (function() {
  26951. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26952. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26953. return Module["asm"]["__get_tzname"].apply(null, arguments);
  26954. });
  26955. var _emscripten_replace_memory = Module["_emscripten_replace_memory"] = (function() {
  26956. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26957. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26958. return Module["asm"]["_emscripten_replace_memory"].apply(null, arguments);
  26959. });
  26960. var _fflush = Module["_fflush"] = (function() {
  26961. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26962. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26963. return Module["asm"]["_fflush"].apply(null, arguments);
  26964. });
  26965. var _free = Module["_free"] = (function() {
  26966. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26967. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26968. return Module["asm"]["_free"].apply(null, arguments);
  26969. });
  26970. var _htonl = Module["_htonl"] = (function() {
  26971. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26972. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26973. return Module["asm"]["_htonl"].apply(null, arguments);
  26974. });
  26975. var _htons = Module["_htons"] = (function() {
  26976. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26977. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26978. return Module["asm"]["_htons"].apply(null, arguments);
  26979. });
  26980. var _i64Add = Module["_i64Add"] = (function() {
  26981. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26982. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26983. return Module["asm"]["_i64Add"].apply(null, arguments);
  26984. });
  26985. var _llvm_bswap_i16 = Module["_llvm_bswap_i16"] = (function() {
  26986. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26987. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26988. return Module["asm"]["_llvm_bswap_i16"].apply(null, arguments);
  26989. });
  26990. var _llvm_bswap_i32 = Module["_llvm_bswap_i32"] = (function() {
  26991. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26992. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26993. return Module["asm"]["_llvm_bswap_i32"].apply(null, arguments);
  26994. });
  26995. var _llvm_ctlz_i64 = Module["_llvm_ctlz_i64"] = (function() {
  26996. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  26997. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  26998. return Module["asm"]["_llvm_ctlz_i64"].apply(null, arguments);
  26999. });
  27000. var _llvm_ctpop_i32 = Module["_llvm_ctpop_i32"] = (function() {
  27001. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27002. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27003. return Module["asm"]["_llvm_ctpop_i32"].apply(null, arguments);
  27004. });
  27005. var _llvm_maxnum_f32 = Module["_llvm_maxnum_f32"] = (function() {
  27006. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27007. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27008. return Module["asm"]["_llvm_maxnum_f32"].apply(null, arguments);
  27009. });
  27010. var _llvm_maxnum_f64 = Module["_llvm_maxnum_f64"] = (function() {
  27011. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27012. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27013. return Module["asm"]["_llvm_maxnum_f64"].apply(null, arguments);
  27014. });
  27015. var _llvm_minnum_f32 = Module["_llvm_minnum_f32"] = (function() {
  27016. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27017. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27018. return Module["asm"]["_llvm_minnum_f32"].apply(null, arguments);
  27019. });
  27020. var _llvm_round_f32 = Module["_llvm_round_f32"] = (function() {
  27021. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27022. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27023. return Module["asm"]["_llvm_round_f32"].apply(null, arguments);
  27024. });
  27025. var _main = Module["_main"] = (function() {
  27026. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27027. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27028. return Module["asm"]["_main"].apply(null, arguments);
  27029. });
  27030. var _malloc = Module["_malloc"] = (function() {
  27031. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27032. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27033. return Module["asm"]["_malloc"].apply(null, arguments);
  27034. });
  27035. var _memalign = Module["_memalign"] = (function() {
  27036. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27037. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27038. return Module["asm"]["_memalign"].apply(null, arguments);
  27039. });
  27040. var _memcpy = Module["_memcpy"] = (function() {
  27041. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27042. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27043. return Module["asm"]["_memcpy"].apply(null, arguments);
  27044. });
  27045. var _memmove = Module["_memmove"] = (function() {
  27046. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27047. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27048. return Module["asm"]["_memmove"].apply(null, arguments);
  27049. });
  27050. var _memset = Module["_memset"] = (function() {
  27051. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27052. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27053. return Module["asm"]["_memset"].apply(null, arguments);
  27054. });
  27055. var _ntohs = Module["_ntohs"] = (function() {
  27056. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27057. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27058. return Module["asm"]["_ntohs"].apply(null, arguments);
  27059. });
  27060. var _pthread_cond_broadcast = Module["_pthread_cond_broadcast"] = (function() {
  27061. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27062. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27063. return Module["asm"]["_pthread_cond_broadcast"].apply(null, arguments);
  27064. });
  27065. var _pthread_mutex_lock = Module["_pthread_mutex_lock"] = (function() {
  27066. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27067. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27068. return Module["asm"]["_pthread_mutex_lock"].apply(null, arguments);
  27069. });
  27070. var _pthread_mutex_unlock = Module["_pthread_mutex_unlock"] = (function() {
  27071. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27072. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27073. return Module["asm"]["_pthread_mutex_unlock"].apply(null, arguments);
  27074. });
  27075. var _realloc = Module["_realloc"] = (function() {
  27076. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27077. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27078. return Module["asm"]["_realloc"].apply(null, arguments);
  27079. });
  27080. var _saveSetjmp = Module["_saveSetjmp"] = (function() {
  27081. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27082. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27083. return Module["asm"]["_saveSetjmp"].apply(null, arguments);
  27084. });
  27085. var _sbrk = Module["_sbrk"] = (function() {
  27086. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27087. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27088. return Module["asm"]["_sbrk"].apply(null, arguments);
  27089. });
  27090. var _strlen = Module["_strlen"] = (function() {
  27091. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27092. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27093. return Module["asm"]["_strlen"].apply(null, arguments);
  27094. });
  27095. var _testSetjmp = Module["_testSetjmp"] = (function() {
  27096. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27097. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27098. return Module["asm"]["_testSetjmp"].apply(null, arguments);
  27099. });
  27100. var establishStackSpace = Module["establishStackSpace"] = (function() {
  27101. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27102. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27103. return Module["asm"]["establishStackSpace"].apply(null, arguments);
  27104. });
  27105. var getTempRet0 = Module["getTempRet0"] = (function() {
  27106. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27107. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27108. return Module["asm"]["getTempRet0"].apply(null, arguments);
  27109. });
  27110. var runPostSets = Module["runPostSets"] = (function() {
  27111. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27112. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27113. return Module["asm"]["runPostSets"].apply(null, arguments);
  27114. });
  27115. var setTempRet0 = Module["setTempRet0"] = (function() {
  27116. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27117. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27118. return Module["asm"]["setTempRet0"].apply(null, arguments);
  27119. });
  27120. var setThrew = Module["setThrew"] = (function() {
  27121. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27122. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27123. return Module["asm"]["setThrew"].apply(null, arguments);
  27124. });
  27125. var stackAlloc = Module["stackAlloc"] = (function() {
  27126. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27127. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27128. return Module["asm"]["stackAlloc"].apply(null, arguments);
  27129. });
  27130. var stackRestore = Module["stackRestore"] = (function() {
  27131. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27132. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27133. return Module["asm"]["stackRestore"].apply(null, arguments);
  27134. });
  27135. var stackSave = Module["stackSave"] = (function() {
  27136. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27137. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27138. return Module["asm"]["stackSave"].apply(null, arguments);
  27139. });
  27140. var dynCall_dd = Module["dynCall_dd"] = (function() {
  27141. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27142. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27143. return Module["asm"]["dynCall_dd"].apply(null, arguments);
  27144. });
  27145. var dynCall_ddd = Module["dynCall_ddd"] = (function() {
  27146. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27147. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27148. return Module["asm"]["dynCall_ddd"].apply(null, arguments);
  27149. });
  27150. var dynCall_dddi = Module["dynCall_dddi"] = (function() {
  27151. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27152. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27153. return Module["asm"]["dynCall_dddi"].apply(null, arguments);
  27154. });
  27155. var dynCall_ddi = Module["dynCall_ddi"] = (function() {
  27156. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27157. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27158. return Module["asm"]["dynCall_ddi"].apply(null, arguments);
  27159. });
  27160. var dynCall_ddidi = Module["dynCall_ddidi"] = (function() {
  27161. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27162. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27163. return Module["asm"]["dynCall_ddidi"].apply(null, arguments);
  27164. });
  27165. var dynCall_dfi = Module["dynCall_dfi"] = (function() {
  27166. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27167. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27168. return Module["asm"]["dynCall_dfi"].apply(null, arguments);
  27169. });
  27170. var dynCall_di = Module["dynCall_di"] = (function() {
  27171. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27172. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27173. return Module["asm"]["dynCall_di"].apply(null, arguments);
  27174. });
  27175. var dynCall_diddi = Module["dynCall_diddi"] = (function() {
  27176. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27177. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27178. return Module["asm"]["dynCall_diddi"].apply(null, arguments);
  27179. });
  27180. var dynCall_didi = Module["dynCall_didi"] = (function() {
  27181. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27182. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27183. return Module["asm"]["dynCall_didi"].apply(null, arguments);
  27184. });
  27185. var dynCall_dii = Module["dynCall_dii"] = (function() {
  27186. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27187. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27188. return Module["asm"]["dynCall_dii"].apply(null, arguments);
  27189. });
  27190. var dynCall_diidi = Module["dynCall_diidi"] = (function() {
  27191. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27192. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27193. return Module["asm"]["dynCall_diidi"].apply(null, arguments);
  27194. });
  27195. var dynCall_diii = Module["dynCall_diii"] = (function() {
  27196. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27197. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27198. return Module["asm"]["dynCall_diii"].apply(null, arguments);
  27199. });
  27200. var dynCall_diiid = Module["dynCall_diiid"] = (function() {
  27201. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27202. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27203. return Module["asm"]["dynCall_diiid"].apply(null, arguments);
  27204. });
  27205. var dynCall_diiidi = Module["dynCall_diiidi"] = (function() {
  27206. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27207. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27208. return Module["asm"]["dynCall_diiidi"].apply(null, arguments);
  27209. });
  27210. var dynCall_diiii = Module["dynCall_diiii"] = (function() {
  27211. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27212. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27213. return Module["asm"]["dynCall_diiii"].apply(null, arguments);
  27214. });
  27215. var dynCall_dij = Module["dynCall_dij"] = (function() {
  27216. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27217. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27218. return Module["asm"]["dynCall_dij"].apply(null, arguments);
  27219. });
  27220. var dynCall_dji = Module["dynCall_dji"] = (function() {
  27221. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27222. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27223. return Module["asm"]["dynCall_dji"].apply(null, arguments);
  27224. });
  27225. var dynCall_f = Module["dynCall_f"] = (function() {
  27226. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27227. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27228. return Module["asm"]["dynCall_f"].apply(null, arguments);
  27229. });
  27230. var dynCall_fdi = Module["dynCall_fdi"] = (function() {
  27231. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27232. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27233. return Module["asm"]["dynCall_fdi"].apply(null, arguments);
  27234. });
  27235. var dynCall_ff = Module["dynCall_ff"] = (function() {
  27236. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27237. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27238. return Module["asm"]["dynCall_ff"].apply(null, arguments);
  27239. });
  27240. var dynCall_fff = Module["dynCall_fff"] = (function() {
  27241. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27242. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27243. return Module["asm"]["dynCall_fff"].apply(null, arguments);
  27244. });
  27245. var dynCall_fffff = Module["dynCall_fffff"] = (function() {
  27246. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27247. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27248. return Module["asm"]["dynCall_fffff"].apply(null, arguments);
  27249. });
  27250. var dynCall_ffffffi = Module["dynCall_ffffffi"] = (function() {
  27251. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27252. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27253. return Module["asm"]["dynCall_ffffffi"].apply(null, arguments);
  27254. });
  27255. var dynCall_fffffi = Module["dynCall_fffffi"] = (function() {
  27256. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27257. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27258. return Module["asm"]["dynCall_fffffi"].apply(null, arguments);
  27259. });
  27260. var dynCall_ffffi = Module["dynCall_ffffi"] = (function() {
  27261. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27262. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27263. return Module["asm"]["dynCall_ffffi"].apply(null, arguments);
  27264. });
  27265. var dynCall_ffffii = Module["dynCall_ffffii"] = (function() {
  27266. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27267. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27268. return Module["asm"]["dynCall_ffffii"].apply(null, arguments);
  27269. });
  27270. var dynCall_fffi = Module["dynCall_fffi"] = (function() {
  27271. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27272. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27273. return Module["asm"]["dynCall_fffi"].apply(null, arguments);
  27274. });
  27275. var dynCall_fffifffi = Module["dynCall_fffifffi"] = (function() {
  27276. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27277. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27278. return Module["asm"]["dynCall_fffifffi"].apply(null, arguments);
  27279. });
  27280. var dynCall_ffi = Module["dynCall_ffi"] = (function() {
  27281. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27282. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27283. return Module["asm"]["dynCall_ffi"].apply(null, arguments);
  27284. });
  27285. var dynCall_fi = Module["dynCall_fi"] = (function() {
  27286. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27287. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27288. return Module["asm"]["dynCall_fi"].apply(null, arguments);
  27289. });
  27290. var dynCall_fidi = Module["dynCall_fidi"] = (function() {
  27291. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27292. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27293. return Module["asm"]["dynCall_fidi"].apply(null, arguments);
  27294. });
  27295. var dynCall_fif = Module["dynCall_fif"] = (function() {
  27296. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27297. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27298. return Module["asm"]["dynCall_fif"].apply(null, arguments);
  27299. });
  27300. var dynCall_fiff = Module["dynCall_fiff"] = (function() {
  27301. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27302. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27303. return Module["asm"]["dynCall_fiff"].apply(null, arguments);
  27304. });
  27305. var dynCall_fiffffi = Module["dynCall_fiffffi"] = (function() {
  27306. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27307. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27308. return Module["asm"]["dynCall_fiffffi"].apply(null, arguments);
  27309. });
  27310. var dynCall_fifffi = Module["dynCall_fifffi"] = (function() {
  27311. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27312. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27313. return Module["asm"]["dynCall_fifffi"].apply(null, arguments);
  27314. });
  27315. var dynCall_fiffi = Module["dynCall_fiffi"] = (function() {
  27316. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27317. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27318. return Module["asm"]["dynCall_fiffi"].apply(null, arguments);
  27319. });
  27320. var dynCall_fifi = Module["dynCall_fifi"] = (function() {
  27321. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27322. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27323. return Module["asm"]["dynCall_fifi"].apply(null, arguments);
  27324. });
  27325. var dynCall_fifii = Module["dynCall_fifii"] = (function() {
  27326. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27327. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27328. return Module["asm"]["dynCall_fifii"].apply(null, arguments);
  27329. });
  27330. var dynCall_fifiii = Module["dynCall_fifiii"] = (function() {
  27331. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27332. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27333. return Module["asm"]["dynCall_fifiii"].apply(null, arguments);
  27334. });
  27335. var dynCall_fifiiiii = Module["dynCall_fifiiiii"] = (function() {
  27336. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27337. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27338. return Module["asm"]["dynCall_fifiiiii"].apply(null, arguments);
  27339. });
  27340. var dynCall_fii = Module["dynCall_fii"] = (function() {
  27341. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27342. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27343. return Module["asm"]["dynCall_fii"].apply(null, arguments);
  27344. });
  27345. var dynCall_fiifdi = Module["dynCall_fiifdi"] = (function() {
  27346. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27347. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27348. return Module["asm"]["dynCall_fiifdi"].apply(null, arguments);
  27349. });
  27350. var dynCall_fiiffffi = Module["dynCall_fiiffffi"] = (function() {
  27351. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27352. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27353. return Module["asm"]["dynCall_fiiffffi"].apply(null, arguments);
  27354. });
  27355. var dynCall_fiiffi = Module["dynCall_fiiffi"] = (function() {
  27356. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27357. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27358. return Module["asm"]["dynCall_fiiffi"].apply(null, arguments);
  27359. });
  27360. var dynCall_fiifi = Module["dynCall_fiifi"] = (function() {
  27361. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27362. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27363. return Module["asm"]["dynCall_fiifi"].apply(null, arguments);
  27364. });
  27365. var dynCall_fiifii = Module["dynCall_fiifii"] = (function() {
  27366. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27367. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27368. return Module["asm"]["dynCall_fiifii"].apply(null, arguments);
  27369. });
  27370. var dynCall_fiifji = Module["dynCall_fiifji"] = (function() {
  27371. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27372. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27373. return Module["asm"]["dynCall_fiifji"].apply(null, arguments);
  27374. });
  27375. var dynCall_fiii = Module["dynCall_fiii"] = (function() {
  27376. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27377. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27378. return Module["asm"]["dynCall_fiii"].apply(null, arguments);
  27379. });
  27380. var dynCall_fiiif = Module["dynCall_fiiif"] = (function() {
  27381. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27382. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27383. return Module["asm"]["dynCall_fiiif"].apply(null, arguments);
  27384. });
  27385. var dynCall_fiiifii = Module["dynCall_fiiifii"] = (function() {
  27386. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27387. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27388. return Module["asm"]["dynCall_fiiifii"].apply(null, arguments);
  27389. });
  27390. var dynCall_fiiii = Module["dynCall_fiiii"] = (function() {
  27391. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27392. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27393. return Module["asm"]["dynCall_fiiii"].apply(null, arguments);
  27394. });
  27395. var dynCall_fiiiif = Module["dynCall_fiiiif"] = (function() {
  27396. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27397. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27398. return Module["asm"]["dynCall_fiiiif"].apply(null, arguments);
  27399. });
  27400. var dynCall_fiiiiii = Module["dynCall_fiiiiii"] = (function() {
  27401. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27402. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27403. return Module["asm"]["dynCall_fiiiiii"].apply(null, arguments);
  27404. });
  27405. var dynCall_fiiiiiifiifif = Module["dynCall_fiiiiiifiifif"] = (function() {
  27406. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27407. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27408. return Module["asm"]["dynCall_fiiiiiifiifif"].apply(null, arguments);
  27409. });
  27410. var dynCall_fiiiiiifiiiif = Module["dynCall_fiiiiiifiiiif"] = (function() {
  27411. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27412. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27413. return Module["asm"]["dynCall_fiiiiiifiiiif"].apply(null, arguments);
  27414. });
  27415. var dynCall_fji = Module["dynCall_fji"] = (function() {
  27416. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27417. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27418. return Module["asm"]["dynCall_fji"].apply(null, arguments);
  27419. });
  27420. var dynCall_i = Module["dynCall_i"] = (function() {
  27421. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27422. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27423. return Module["asm"]["dynCall_i"].apply(null, arguments);
  27424. });
  27425. var dynCall_idddi = Module["dynCall_idddi"] = (function() {
  27426. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27427. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27428. return Module["asm"]["dynCall_idddi"].apply(null, arguments);
  27429. });
  27430. var dynCall_iddi = Module["dynCall_iddi"] = (function() {
  27431. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27432. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27433. return Module["asm"]["dynCall_iddi"].apply(null, arguments);
  27434. });
  27435. var dynCall_iddii = Module["dynCall_iddii"] = (function() {
  27436. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27437. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27438. return Module["asm"]["dynCall_iddii"].apply(null, arguments);
  27439. });
  27440. var dynCall_idi = Module["dynCall_idi"] = (function() {
  27441. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27442. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27443. return Module["asm"]["dynCall_idi"].apply(null, arguments);
  27444. });
  27445. var dynCall_idii = Module["dynCall_idii"] = (function() {
  27446. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27447. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27448. return Module["asm"]["dynCall_idii"].apply(null, arguments);
  27449. });
  27450. var dynCall_idiii = Module["dynCall_idiii"] = (function() {
  27451. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27452. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27453. return Module["asm"]["dynCall_idiii"].apply(null, arguments);
  27454. });
  27455. var dynCall_idiiii = Module["dynCall_idiiii"] = (function() {
  27456. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27457. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27458. return Module["asm"]["dynCall_idiiii"].apply(null, arguments);
  27459. });
  27460. var dynCall_idiiiii = Module["dynCall_idiiiii"] = (function() {
  27461. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27462. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27463. return Module["asm"]["dynCall_idiiiii"].apply(null, arguments);
  27464. });
  27465. var dynCall_iffffi = Module["dynCall_iffffi"] = (function() {
  27466. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27467. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27468. return Module["asm"]["dynCall_iffffi"].apply(null, arguments);
  27469. });
  27470. var dynCall_ifffi = Module["dynCall_ifffi"] = (function() {
  27471. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27472. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27473. return Module["asm"]["dynCall_ifffi"].apply(null, arguments);
  27474. });
  27475. var dynCall_iffi = Module["dynCall_iffi"] = (function() {
  27476. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27477. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27478. return Module["asm"]["dynCall_iffi"].apply(null, arguments);
  27479. });
  27480. var dynCall_ifi = Module["dynCall_ifi"] = (function() {
  27481. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27482. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27483. return Module["asm"]["dynCall_ifi"].apply(null, arguments);
  27484. });
  27485. var dynCall_ifiii = Module["dynCall_ifiii"] = (function() {
  27486. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27487. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27488. return Module["asm"]["dynCall_ifiii"].apply(null, arguments);
  27489. });
  27490. var dynCall_ifiiii = Module["dynCall_ifiiii"] = (function() {
  27491. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27492. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27493. return Module["asm"]["dynCall_ifiiii"].apply(null, arguments);
  27494. });
  27495. var dynCall_ii = Module["dynCall_ii"] = (function() {
  27496. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27497. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27498. return Module["asm"]["dynCall_ii"].apply(null, arguments);
  27499. });
  27500. var dynCall_iidi = Module["dynCall_iidi"] = (function() {
  27501. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27502. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27503. return Module["asm"]["dynCall_iidi"].apply(null, arguments);
  27504. });
  27505. var dynCall_iidii = Module["dynCall_iidii"] = (function() {
  27506. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27507. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27508. return Module["asm"]["dynCall_iidii"].apply(null, arguments);
  27509. });
  27510. var dynCall_iidiii = Module["dynCall_iidiii"] = (function() {
  27511. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27512. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27513. return Module["asm"]["dynCall_iidiii"].apply(null, arguments);
  27514. });
  27515. var dynCall_iif = Module["dynCall_iif"] = (function() {
  27516. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27517. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27518. return Module["asm"]["dynCall_iif"].apply(null, arguments);
  27519. });
  27520. var dynCall_iifff = Module["dynCall_iifff"] = (function() {
  27521. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27522. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27523. return Module["asm"]["dynCall_iifff"].apply(null, arguments);
  27524. });
  27525. var dynCall_iiffffiii = Module["dynCall_iiffffiii"] = (function() {
  27526. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27527. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27528. return Module["asm"]["dynCall_iiffffiii"].apply(null, arguments);
  27529. });
  27530. var dynCall_iifffi = Module["dynCall_iifffi"] = (function() {
  27531. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27532. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27533. return Module["asm"]["dynCall_iifffi"].apply(null, arguments);
  27534. });
  27535. var dynCall_iiffi = Module["dynCall_iiffi"] = (function() {
  27536. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27537. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27538. return Module["asm"]["dynCall_iiffi"].apply(null, arguments);
  27539. });
  27540. var dynCall_iiffifiii = Module["dynCall_iiffifiii"] = (function() {
  27541. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27542. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27543. return Module["asm"]["dynCall_iiffifiii"].apply(null, arguments);
  27544. });
  27545. var dynCall_iiffii = Module["dynCall_iiffii"] = (function() {
  27546. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27547. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27548. return Module["asm"]["dynCall_iiffii"].apply(null, arguments);
  27549. });
  27550. var dynCall_iiffiii = Module["dynCall_iiffiii"] = (function() {
  27551. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27552. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27553. return Module["asm"]["dynCall_iiffiii"].apply(null, arguments);
  27554. });
  27555. var dynCall_iiffiiiii = Module["dynCall_iiffiiiii"] = (function() {
  27556. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27557. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27558. return Module["asm"]["dynCall_iiffiiiii"].apply(null, arguments);
  27559. });
  27560. var dynCall_iifi = Module["dynCall_iifi"] = (function() {
  27561. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27562. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27563. return Module["asm"]["dynCall_iifi"].apply(null, arguments);
  27564. });
  27565. var dynCall_iififi = Module["dynCall_iififi"] = (function() {
  27566. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27567. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27568. return Module["asm"]["dynCall_iififi"].apply(null, arguments);
  27569. });
  27570. var dynCall_iifii = Module["dynCall_iifii"] = (function() {
  27571. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27572. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27573. return Module["asm"]["dynCall_iifii"].apply(null, arguments);
  27574. });
  27575. var dynCall_iifiifiii = Module["dynCall_iifiifiii"] = (function() {
  27576. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27577. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27578. return Module["asm"]["dynCall_iifiifiii"].apply(null, arguments);
  27579. });
  27580. var dynCall_iifiii = Module["dynCall_iifiii"] = (function() {
  27581. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27582. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27583. return Module["asm"]["dynCall_iifiii"].apply(null, arguments);
  27584. });
  27585. var dynCall_iifiiii = Module["dynCall_iifiiii"] = (function() {
  27586. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27587. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27588. return Module["asm"]["dynCall_iifiiii"].apply(null, arguments);
  27589. });
  27590. var dynCall_iifiiiii = Module["dynCall_iifiiiii"] = (function() {
  27591. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27592. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27593. return Module["asm"]["dynCall_iifiiiii"].apply(null, arguments);
  27594. });
  27595. var dynCall_iifiiiiii = Module["dynCall_iifiiiiii"] = (function() {
  27596. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27597. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27598. return Module["asm"]["dynCall_iifiiiiii"].apply(null, arguments);
  27599. });
  27600. var dynCall_iii = Module["dynCall_iii"] = (function() {
  27601. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27602. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27603. return Module["asm"]["dynCall_iii"].apply(null, arguments);
  27604. });
  27605. var dynCall_iiiddi = Module["dynCall_iiiddi"] = (function() {
  27606. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27607. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27608. return Module["asm"]["dynCall_iiiddi"].apply(null, arguments);
  27609. });
  27610. var dynCall_iiidi = Module["dynCall_iiidi"] = (function() {
  27611. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27612. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27613. return Module["asm"]["dynCall_iiidi"].apply(null, arguments);
  27614. });
  27615. var dynCall_iiidii = Module["dynCall_iiidii"] = (function() {
  27616. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27617. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27618. return Module["asm"]["dynCall_iiidii"].apply(null, arguments);
  27619. });
  27620. var dynCall_iiidiii = Module["dynCall_iiidiii"] = (function() {
  27621. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27622. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27623. return Module["asm"]["dynCall_iiidiii"].apply(null, arguments);
  27624. });
  27625. var dynCall_iiif = Module["dynCall_iiif"] = (function() {
  27626. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27627. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27628. return Module["asm"]["dynCall_iiif"].apply(null, arguments);
  27629. });
  27630. var dynCall_iiiffi = Module["dynCall_iiiffi"] = (function() {
  27631. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27632. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27633. return Module["asm"]["dynCall_iiiffi"].apply(null, arguments);
  27634. });
  27635. var dynCall_iiiffifiii = Module["dynCall_iiiffifiii"] = (function() {
  27636. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27637. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27638. return Module["asm"]["dynCall_iiiffifiii"].apply(null, arguments);
  27639. });
  27640. var dynCall_iiiffii = Module["dynCall_iiiffii"] = (function() {
  27641. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27642. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27643. return Module["asm"]["dynCall_iiiffii"].apply(null, arguments);
  27644. });
  27645. var dynCall_iiifi = Module["dynCall_iiifi"] = (function() {
  27646. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27647. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27648. return Module["asm"]["dynCall_iiifi"].apply(null, arguments);
  27649. });
  27650. var dynCall_iiififii = Module["dynCall_iiififii"] = (function() {
  27651. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27652. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27653. return Module["asm"]["dynCall_iiififii"].apply(null, arguments);
  27654. });
  27655. var dynCall_iiifii = Module["dynCall_iiifii"] = (function() {
  27656. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27657. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27658. return Module["asm"]["dynCall_iiifii"].apply(null, arguments);
  27659. });
  27660. var dynCall_iiifiifii = Module["dynCall_iiifiifii"] = (function() {
  27661. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27662. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27663. return Module["asm"]["dynCall_iiifiifii"].apply(null, arguments);
  27664. });
  27665. var dynCall_iiifiifiii = Module["dynCall_iiifiifiii"] = (function() {
  27666. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27667. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27668. return Module["asm"]["dynCall_iiifiifiii"].apply(null, arguments);
  27669. });
  27670. var dynCall_iiifiifiiii = Module["dynCall_iiifiifiiii"] = (function() {
  27671. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27672. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27673. return Module["asm"]["dynCall_iiifiifiiii"].apply(null, arguments);
  27674. });
  27675. var dynCall_iiifiii = Module["dynCall_iiifiii"] = (function() {
  27676. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27677. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27678. return Module["asm"]["dynCall_iiifiii"].apply(null, arguments);
  27679. });
  27680. var dynCall_iiifiiii = Module["dynCall_iiifiiii"] = (function() {
  27681. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27682. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27683. return Module["asm"]["dynCall_iiifiiii"].apply(null, arguments);
  27684. });
  27685. var dynCall_iiifiiiii = Module["dynCall_iiifiiiii"] = (function() {
  27686. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27687. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27688. return Module["asm"]["dynCall_iiifiiiii"].apply(null, arguments);
  27689. });
  27690. var dynCall_iiii = Module["dynCall_iiii"] = (function() {
  27691. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27692. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27693. return Module["asm"]["dynCall_iiii"].apply(null, arguments);
  27694. });
  27695. var dynCall_iiiif = Module["dynCall_iiiif"] = (function() {
  27696. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27697. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27698. return Module["asm"]["dynCall_iiiif"].apply(null, arguments);
  27699. });
  27700. var dynCall_iiiifffffi = Module["dynCall_iiiifffffi"] = (function() {
  27701. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27702. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27703. return Module["asm"]["dynCall_iiiifffffi"].apply(null, arguments);
  27704. });
  27705. var dynCall_iiiifffffii = Module["dynCall_iiiifffffii"] = (function() {
  27706. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27707. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27708. return Module["asm"]["dynCall_iiiifffffii"].apply(null, arguments);
  27709. });
  27710. var dynCall_iiiiffii = Module["dynCall_iiiiffii"] = (function() {
  27711. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27712. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27713. return Module["asm"]["dynCall_iiiiffii"].apply(null, arguments);
  27714. });
  27715. var dynCall_iiiifi = Module["dynCall_iiiifi"] = (function() {
  27716. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27717. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27718. return Module["asm"]["dynCall_iiiifi"].apply(null, arguments);
  27719. });
  27720. var dynCall_iiiififi = Module["dynCall_iiiififi"] = (function() {
  27721. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27722. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27723. return Module["asm"]["dynCall_iiiififi"].apply(null, arguments);
  27724. });
  27725. var dynCall_iiiifii = Module["dynCall_iiiifii"] = (function() {
  27726. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27727. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27728. return Module["asm"]["dynCall_iiiifii"].apply(null, arguments);
  27729. });
  27730. var dynCall_iiiifiii = Module["dynCall_iiiifiii"] = (function() {
  27731. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27732. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27733. return Module["asm"]["dynCall_iiiifiii"].apply(null, arguments);
  27734. });
  27735. var dynCall_iiiifiiii = Module["dynCall_iiiifiiii"] = (function() {
  27736. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27737. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27738. return Module["asm"]["dynCall_iiiifiiii"].apply(null, arguments);
  27739. });
  27740. var dynCall_iiiifiiiii = Module["dynCall_iiiifiiiii"] = (function() {
  27741. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27742. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27743. return Module["asm"]["dynCall_iiiifiiiii"].apply(null, arguments);
  27744. });
  27745. var dynCall_iiiii = Module["dynCall_iiiii"] = (function() {
  27746. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27747. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27748. return Module["asm"]["dynCall_iiiii"].apply(null, arguments);
  27749. });
  27750. var dynCall_iiiiidii = Module["dynCall_iiiiidii"] = (function() {
  27751. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27752. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27753. return Module["asm"]["dynCall_iiiiidii"].apply(null, arguments);
  27754. });
  27755. var dynCall_iiiiiffi = Module["dynCall_iiiiiffi"] = (function() {
  27756. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27757. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27758. return Module["asm"]["dynCall_iiiiiffi"].apply(null, arguments);
  27759. });
  27760. var dynCall_iiiiifi = Module["dynCall_iiiiifi"] = (function() {
  27761. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27762. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27763. return Module["asm"]["dynCall_iiiiifi"].apply(null, arguments);
  27764. });
  27765. var dynCall_iiiiifii = Module["dynCall_iiiiifii"] = (function() {
  27766. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27767. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27768. return Module["asm"]["dynCall_iiiiifii"].apply(null, arguments);
  27769. });
  27770. var dynCall_iiiiifiii = Module["dynCall_iiiiifiii"] = (function() {
  27771. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27772. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27773. return Module["asm"]["dynCall_iiiiifiii"].apply(null, arguments);
  27774. });
  27775. var dynCall_iiiiifiiiiif = Module["dynCall_iiiiifiiiiif"] = (function() {
  27776. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27777. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27778. return Module["asm"]["dynCall_iiiiifiiiiif"].apply(null, arguments);
  27779. });
  27780. var dynCall_iiiiii = Module["dynCall_iiiiii"] = (function() {
  27781. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27782. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27783. return Module["asm"]["dynCall_iiiiii"].apply(null, arguments);
  27784. });
  27785. var dynCall_iiiiiifffiiifiii = Module["dynCall_iiiiiifffiiifiii"] = (function() {
  27786. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27787. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27788. return Module["asm"]["dynCall_iiiiiifffiiifiii"].apply(null, arguments);
  27789. });
  27790. var dynCall_iiiiiiffiiiiiiiiiffffiii = Module["dynCall_iiiiiiffiiiiiiiiiffffiii"] = (function() {
  27791. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27792. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27793. return Module["asm"]["dynCall_iiiiiiffiiiiiiiiiffffiii"].apply(null, arguments);
  27794. });
  27795. var dynCall_iiiiiiffiiiiiiiiiffffiiii = Module["dynCall_iiiiiiffiiiiiiiiiffffiiii"] = (function() {
  27796. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27797. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27798. return Module["asm"]["dynCall_iiiiiiffiiiiiiiiiffffiiii"].apply(null, arguments);
  27799. });
  27800. var dynCall_iiiiiiffiiiiiiiiiiiiiii = Module["dynCall_iiiiiiffiiiiiiiiiiiiiii"] = (function() {
  27801. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27802. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27803. return Module["asm"]["dynCall_iiiiiiffiiiiiiiiiiiiiii"].apply(null, arguments);
  27804. });
  27805. var dynCall_iiiiiifiif = Module["dynCall_iiiiiifiif"] = (function() {
  27806. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27807. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27808. return Module["asm"]["dynCall_iiiiiifiif"].apply(null, arguments);
  27809. });
  27810. var dynCall_iiiiiifiii = Module["dynCall_iiiiiifiii"] = (function() {
  27811. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27812. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27813. return Module["asm"]["dynCall_iiiiiifiii"].apply(null, arguments);
  27814. });
  27815. var dynCall_iiiiiii = Module["dynCall_iiiiiii"] = (function() {
  27816. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27817. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27818. return Module["asm"]["dynCall_iiiiiii"].apply(null, arguments);
  27819. });
  27820. var dynCall_iiiiiiifiif = Module["dynCall_iiiiiiifiif"] = (function() {
  27821. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27822. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27823. return Module["asm"]["dynCall_iiiiiiifiif"].apply(null, arguments);
  27824. });
  27825. var dynCall_iiiiiiii = Module["dynCall_iiiiiiii"] = (function() {
  27826. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27827. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27828. return Module["asm"]["dynCall_iiiiiiii"].apply(null, arguments);
  27829. });
  27830. var dynCall_iiiiiiiii = Module["dynCall_iiiiiiiii"] = (function() {
  27831. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27832. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27833. return Module["asm"]["dynCall_iiiiiiiii"].apply(null, arguments);
  27834. });
  27835. var dynCall_iiiiiiiiii = Module["dynCall_iiiiiiiiii"] = (function() {
  27836. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27837. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27838. return Module["asm"]["dynCall_iiiiiiiiii"].apply(null, arguments);
  27839. });
  27840. var dynCall_iiiiiiiiiii = Module["dynCall_iiiiiiiiiii"] = (function() {
  27841. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27842. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27843. return Module["asm"]["dynCall_iiiiiiiiiii"].apply(null, arguments);
  27844. });
  27845. var dynCall_iiiiiiiiiiii = Module["dynCall_iiiiiiiiiiii"] = (function() {
  27846. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27847. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27848. return Module["asm"]["dynCall_iiiiiiiiiiii"].apply(null, arguments);
  27849. });
  27850. var dynCall_iiiiiiiiiiiii = Module["dynCall_iiiiiiiiiiiii"] = (function() {
  27851. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27852. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27853. return Module["asm"]["dynCall_iiiiiiiiiiiii"].apply(null, arguments);
  27854. });
  27855. var dynCall_iiiiiiiiiiiiii = Module["dynCall_iiiiiiiiiiiiii"] = (function() {
  27856. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27857. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27858. return Module["asm"]["dynCall_iiiiiiiiiiiiii"].apply(null, arguments);
  27859. });
  27860. var dynCall_iiiiij = Module["dynCall_iiiiij"] = (function() {
  27861. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27862. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27863. return Module["asm"]["dynCall_iiiiij"].apply(null, arguments);
  27864. });
  27865. var dynCall_iiiiiji = Module["dynCall_iiiiiji"] = (function() {
  27866. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27867. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27868. return Module["asm"]["dynCall_iiiiiji"].apply(null, arguments);
  27869. });
  27870. var dynCall_iiiiijjiiiii = Module["dynCall_iiiiijjiiiii"] = (function() {
  27871. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27872. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27873. return Module["asm"]["dynCall_iiiiijjiiiii"].apply(null, arguments);
  27874. });
  27875. var dynCall_iiiij = Module["dynCall_iiiij"] = (function() {
  27876. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27877. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27878. return Module["asm"]["dynCall_iiiij"].apply(null, arguments);
  27879. });
  27880. var dynCall_iiiiji = Module["dynCall_iiiiji"] = (function() {
  27881. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27882. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27883. return Module["asm"]["dynCall_iiiiji"].apply(null, arguments);
  27884. });
  27885. var dynCall_iiiijii = Module["dynCall_iiiijii"] = (function() {
  27886. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27887. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27888. return Module["asm"]["dynCall_iiiijii"].apply(null, arguments);
  27889. });
  27890. var dynCall_iiiijijii = Module["dynCall_iiiijijii"] = (function() {
  27891. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27892. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27893. return Module["asm"]["dynCall_iiiijijii"].apply(null, arguments);
  27894. });
  27895. var dynCall_iiiijjii = Module["dynCall_iiiijjii"] = (function() {
  27896. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27897. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27898. return Module["asm"]["dynCall_iiiijjii"].apply(null, arguments);
  27899. });
  27900. var dynCall_iiiijjiiii = Module["dynCall_iiiijjiiii"] = (function() {
  27901. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27902. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27903. return Module["asm"]["dynCall_iiiijjiiii"].apply(null, arguments);
  27904. });
  27905. var dynCall_iiij = Module["dynCall_iiij"] = (function() {
  27906. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27907. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27908. return Module["asm"]["dynCall_iiij"].apply(null, arguments);
  27909. });
  27910. var dynCall_iiiji = Module["dynCall_iiiji"] = (function() {
  27911. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27912. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27913. return Module["asm"]["dynCall_iiiji"].apply(null, arguments);
  27914. });
  27915. var dynCall_iiijii = Module["dynCall_iiijii"] = (function() {
  27916. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27917. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27918. return Module["asm"]["dynCall_iiijii"].apply(null, arguments);
  27919. });
  27920. var dynCall_iiijiii = Module["dynCall_iiijiii"] = (function() {
  27921. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27922. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27923. return Module["asm"]["dynCall_iiijiii"].apply(null, arguments);
  27924. });
  27925. var dynCall_iiijji = Module["dynCall_iiijji"] = (function() {
  27926. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27927. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27928. return Module["asm"]["dynCall_iiijji"].apply(null, arguments);
  27929. });
  27930. var dynCall_iiijjii = Module["dynCall_iiijjii"] = (function() {
  27931. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27932. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27933. return Module["asm"]["dynCall_iiijjii"].apply(null, arguments);
  27934. });
  27935. var dynCall_iij = Module["dynCall_iij"] = (function() {
  27936. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27937. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27938. return Module["asm"]["dynCall_iij"].apply(null, arguments);
  27939. });
  27940. var dynCall_iiji = Module["dynCall_iiji"] = (function() {
  27941. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27942. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27943. return Module["asm"]["dynCall_iiji"].apply(null, arguments);
  27944. });
  27945. var dynCall_iijii = Module["dynCall_iijii"] = (function() {
  27946. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27947. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27948. return Module["asm"]["dynCall_iijii"].apply(null, arguments);
  27949. });
  27950. var dynCall_iijiii = Module["dynCall_iijiii"] = (function() {
  27951. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27952. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27953. return Module["asm"]["dynCall_iijiii"].apply(null, arguments);
  27954. });
  27955. var dynCall_iijji = Module["dynCall_iijji"] = (function() {
  27956. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27957. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27958. return Module["asm"]["dynCall_iijji"].apply(null, arguments);
  27959. });
  27960. var dynCall_iijjii = Module["dynCall_iijjii"] = (function() {
  27961. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27962. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27963. return Module["asm"]["dynCall_iijjii"].apply(null, arguments);
  27964. });
  27965. var dynCall_iijjiii = Module["dynCall_iijjiii"] = (function() {
  27966. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27967. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27968. return Module["asm"]["dynCall_iijjiii"].apply(null, arguments);
  27969. });
  27970. var dynCall_iijjji = Module["dynCall_iijjji"] = (function() {
  27971. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27972. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27973. return Module["asm"]["dynCall_iijjji"].apply(null, arguments);
  27974. });
  27975. var dynCall_ij = Module["dynCall_ij"] = (function() {
  27976. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27977. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27978. return Module["asm"]["dynCall_ij"].apply(null, arguments);
  27979. });
  27980. var dynCall_iji = Module["dynCall_iji"] = (function() {
  27981. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27982. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27983. return Module["asm"]["dynCall_iji"].apply(null, arguments);
  27984. });
  27985. var dynCall_ijiii = Module["dynCall_ijiii"] = (function() {
  27986. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27987. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27988. return Module["asm"]["dynCall_ijiii"].apply(null, arguments);
  27989. });
  27990. var dynCall_ijiiii = Module["dynCall_ijiiii"] = (function() {
  27991. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27992. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27993. return Module["asm"]["dynCall_ijiiii"].apply(null, arguments);
  27994. });
  27995. var dynCall_ijiiiii = Module["dynCall_ijiiiii"] = (function() {
  27996. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  27997. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  27998. return Module["asm"]["dynCall_ijiiiii"].apply(null, arguments);
  27999. });
  28000. var dynCall_ijiiiiii = Module["dynCall_ijiiiiii"] = (function() {
  28001. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28002. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28003. return Module["asm"]["dynCall_ijiiiiii"].apply(null, arguments);
  28004. });
  28005. var dynCall_ijj = Module["dynCall_ijj"] = (function() {
  28006. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28007. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28008. return Module["asm"]["dynCall_ijj"].apply(null, arguments);
  28009. });
  28010. var dynCall_ijji = Module["dynCall_ijji"] = (function() {
  28011. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28012. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28013. return Module["asm"]["dynCall_ijji"].apply(null, arguments);
  28014. });
  28015. var dynCall_j = Module["dynCall_j"] = (function() {
  28016. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28017. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28018. return Module["asm"]["dynCall_j"].apply(null, arguments);
  28019. });
  28020. var dynCall_jdi = Module["dynCall_jdi"] = (function() {
  28021. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28022. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28023. return Module["asm"]["dynCall_jdi"].apply(null, arguments);
  28024. });
  28025. var dynCall_jdii = Module["dynCall_jdii"] = (function() {
  28026. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28027. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28028. return Module["asm"]["dynCall_jdii"].apply(null, arguments);
  28029. });
  28030. var dynCall_jfi = Module["dynCall_jfi"] = (function() {
  28031. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28032. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28033. return Module["asm"]["dynCall_jfi"].apply(null, arguments);
  28034. });
  28035. var dynCall_ji = Module["dynCall_ji"] = (function() {
  28036. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28037. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28038. return Module["asm"]["dynCall_ji"].apply(null, arguments);
  28039. });
  28040. var dynCall_jid = Module["dynCall_jid"] = (function() {
  28041. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28042. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28043. return Module["asm"]["dynCall_jid"].apply(null, arguments);
  28044. });
  28045. var dynCall_jidi = Module["dynCall_jidi"] = (function() {
  28046. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28047. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28048. return Module["asm"]["dynCall_jidi"].apply(null, arguments);
  28049. });
  28050. var dynCall_jidii = Module["dynCall_jidii"] = (function() {
  28051. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28052. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28053. return Module["asm"]["dynCall_jidii"].apply(null, arguments);
  28054. });
  28055. var dynCall_jifi = Module["dynCall_jifi"] = (function() {
  28056. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28057. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28058. return Module["asm"]["dynCall_jifi"].apply(null, arguments);
  28059. });
  28060. var dynCall_jii = Module["dynCall_jii"] = (function() {
  28061. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28062. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28063. return Module["asm"]["dynCall_jii"].apply(null, arguments);
  28064. });
  28065. var dynCall_jiii = Module["dynCall_jiii"] = (function() {
  28066. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28067. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28068. return Module["asm"]["dynCall_jiii"].apply(null, arguments);
  28069. });
  28070. var dynCall_jiiii = Module["dynCall_jiiii"] = (function() {
  28071. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28072. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28073. return Module["asm"]["dynCall_jiiii"].apply(null, arguments);
  28074. });
  28075. var dynCall_jiiiii = Module["dynCall_jiiiii"] = (function() {
  28076. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28077. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28078. return Module["asm"]["dynCall_jiiiii"].apply(null, arguments);
  28079. });
  28080. var dynCall_jiiiiii = Module["dynCall_jiiiiii"] = (function() {
  28081. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28082. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28083. return Module["asm"]["dynCall_jiiiiii"].apply(null, arguments);
  28084. });
  28085. var dynCall_jiiiiiiiiii = Module["dynCall_jiiiiiiiiii"] = (function() {
  28086. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28087. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28088. return Module["asm"]["dynCall_jiiiiiiiiii"].apply(null, arguments);
  28089. });
  28090. var dynCall_jiiij = Module["dynCall_jiiij"] = (function() {
  28091. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28092. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28093. return Module["asm"]["dynCall_jiiij"].apply(null, arguments);
  28094. });
  28095. var dynCall_jiiiji = Module["dynCall_jiiiji"] = (function() {
  28096. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28097. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28098. return Module["asm"]["dynCall_jiiiji"].apply(null, arguments);
  28099. });
  28100. var dynCall_jiiji = Module["dynCall_jiiji"] = (function() {
  28101. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28102. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28103. return Module["asm"]["dynCall_jiiji"].apply(null, arguments);
  28104. });
  28105. var dynCall_jiji = Module["dynCall_jiji"] = (function() {
  28106. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28107. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28108. return Module["asm"]["dynCall_jiji"].apply(null, arguments);
  28109. });
  28110. var dynCall_jijii = Module["dynCall_jijii"] = (function() {
  28111. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28112. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28113. return Module["asm"]["dynCall_jijii"].apply(null, arguments);
  28114. });
  28115. var dynCall_jijiii = Module["dynCall_jijiii"] = (function() {
  28116. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28117. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28118. return Module["asm"]["dynCall_jijiii"].apply(null, arguments);
  28119. });
  28120. var dynCall_jijj = Module["dynCall_jijj"] = (function() {
  28121. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28122. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28123. return Module["asm"]["dynCall_jijj"].apply(null, arguments);
  28124. });
  28125. var dynCall_jijji = Module["dynCall_jijji"] = (function() {
  28126. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28127. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28128. return Module["asm"]["dynCall_jijji"].apply(null, arguments);
  28129. });
  28130. var dynCall_jj = Module["dynCall_jj"] = (function() {
  28131. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28132. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28133. return Module["asm"]["dynCall_jj"].apply(null, arguments);
  28134. });
  28135. var dynCall_jji = Module["dynCall_jji"] = (function() {
  28136. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28137. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28138. return Module["asm"]["dynCall_jji"].apply(null, arguments);
  28139. });
  28140. var dynCall_jjii = Module["dynCall_jjii"] = (function() {
  28141. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28142. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28143. return Module["asm"]["dynCall_jjii"].apply(null, arguments);
  28144. });
  28145. var dynCall_jjji = Module["dynCall_jjji"] = (function() {
  28146. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28147. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28148. return Module["asm"]["dynCall_jjji"].apply(null, arguments);
  28149. });
  28150. var dynCall_jjjji = Module["dynCall_jjjji"] = (function() {
  28151. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28152. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28153. return Module["asm"]["dynCall_jjjji"].apply(null, arguments);
  28154. });
  28155. var dynCall_v = Module["dynCall_v"] = (function() {
  28156. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28157. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28158. return Module["asm"]["dynCall_v"].apply(null, arguments);
  28159. });
  28160. var dynCall_vd = Module["dynCall_vd"] = (function() {
  28161. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28162. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28163. return Module["asm"]["dynCall_vd"].apply(null, arguments);
  28164. });
  28165. var dynCall_vdi = Module["dynCall_vdi"] = (function() {
  28166. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28167. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28168. return Module["asm"]["dynCall_vdi"].apply(null, arguments);
  28169. });
  28170. var dynCall_vdii = Module["dynCall_vdii"] = (function() {
  28171. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28172. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28173. return Module["asm"]["dynCall_vdii"].apply(null, arguments);
  28174. });
  28175. var dynCall_vf = Module["dynCall_vf"] = (function() {
  28176. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28177. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28178. return Module["asm"]["dynCall_vf"].apply(null, arguments);
  28179. });
  28180. var dynCall_vff = Module["dynCall_vff"] = (function() {
  28181. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28182. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28183. return Module["asm"]["dynCall_vff"].apply(null, arguments);
  28184. });
  28185. var dynCall_vfff = Module["dynCall_vfff"] = (function() {
  28186. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28187. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28188. return Module["asm"]["dynCall_vfff"].apply(null, arguments);
  28189. });
  28190. var dynCall_vffff = Module["dynCall_vffff"] = (function() {
  28191. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28192. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28193. return Module["asm"]["dynCall_vffff"].apply(null, arguments);
  28194. });
  28195. var dynCall_vffffffi = Module["dynCall_vffffffi"] = (function() {
  28196. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28197. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28198. return Module["asm"]["dynCall_vffffffi"].apply(null, arguments);
  28199. });
  28200. var dynCall_vffffffii = Module["dynCall_vffffffii"] = (function() {
  28201. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28202. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28203. return Module["asm"]["dynCall_vffffffii"].apply(null, arguments);
  28204. });
  28205. var dynCall_vffffi = Module["dynCall_vffffi"] = (function() {
  28206. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28207. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28208. return Module["asm"]["dynCall_vffffi"].apply(null, arguments);
  28209. });
  28210. var dynCall_vffffii = Module["dynCall_vffffii"] = (function() {
  28211. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28212. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28213. return Module["asm"]["dynCall_vffffii"].apply(null, arguments);
  28214. });
  28215. var dynCall_vffffiiii = Module["dynCall_vffffiiii"] = (function() {
  28216. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28217. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28218. return Module["asm"]["dynCall_vffffiiii"].apply(null, arguments);
  28219. });
  28220. var dynCall_vfffi = Module["dynCall_vfffi"] = (function() {
  28221. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28222. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28223. return Module["asm"]["dynCall_vfffi"].apply(null, arguments);
  28224. });
  28225. var dynCall_vffi = Module["dynCall_vffi"] = (function() {
  28226. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28227. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28228. return Module["asm"]["dynCall_vffi"].apply(null, arguments);
  28229. });
  28230. var dynCall_vfi = Module["dynCall_vfi"] = (function() {
  28231. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28232. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28233. return Module["asm"]["dynCall_vfi"].apply(null, arguments);
  28234. });
  28235. var dynCall_vfii = Module["dynCall_vfii"] = (function() {
  28236. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28237. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28238. return Module["asm"]["dynCall_vfii"].apply(null, arguments);
  28239. });
  28240. var dynCall_vfiii = Module["dynCall_vfiii"] = (function() {
  28241. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28242. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28243. return Module["asm"]["dynCall_vfiii"].apply(null, arguments);
  28244. });
  28245. var dynCall_vfiiiii = Module["dynCall_vfiiiii"] = (function() {
  28246. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28247. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28248. return Module["asm"]["dynCall_vfiiiii"].apply(null, arguments);
  28249. });
  28250. var dynCall_vi = Module["dynCall_vi"] = (function() {
  28251. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28252. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28253. return Module["asm"]["dynCall_vi"].apply(null, arguments);
  28254. });
  28255. var dynCall_vid = Module["dynCall_vid"] = (function() {
  28256. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28257. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28258. return Module["asm"]["dynCall_vid"].apply(null, arguments);
  28259. });
  28260. var dynCall_vidd = Module["dynCall_vidd"] = (function() {
  28261. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28262. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28263. return Module["asm"]["dynCall_vidd"].apply(null, arguments);
  28264. });
  28265. var dynCall_vidddi = Module["dynCall_vidddi"] = (function() {
  28266. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28267. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28268. return Module["asm"]["dynCall_vidddi"].apply(null, arguments);
  28269. });
  28270. var dynCall_viddi = Module["dynCall_viddi"] = (function() {
  28271. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28272. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28273. return Module["asm"]["dynCall_viddi"].apply(null, arguments);
  28274. });
  28275. var dynCall_viddiiii = Module["dynCall_viddiiii"] = (function() {
  28276. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28277. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28278. return Module["asm"]["dynCall_viddiiii"].apply(null, arguments);
  28279. });
  28280. var dynCall_vidi = Module["dynCall_vidi"] = (function() {
  28281. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28282. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28283. return Module["asm"]["dynCall_vidi"].apply(null, arguments);
  28284. });
  28285. var dynCall_vidii = Module["dynCall_vidii"] = (function() {
  28286. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28287. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28288. return Module["asm"]["dynCall_vidii"].apply(null, arguments);
  28289. });
  28290. var dynCall_vidiii = Module["dynCall_vidiii"] = (function() {
  28291. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28292. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28293. return Module["asm"]["dynCall_vidiii"].apply(null, arguments);
  28294. });
  28295. var dynCall_vif = Module["dynCall_vif"] = (function() {
  28296. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28297. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28298. return Module["asm"]["dynCall_vif"].apply(null, arguments);
  28299. });
  28300. var dynCall_viff = Module["dynCall_viff"] = (function() {
  28301. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28302. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28303. return Module["asm"]["dynCall_viff"].apply(null, arguments);
  28304. });
  28305. var dynCall_vifff = Module["dynCall_vifff"] = (function() {
  28306. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28307. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28308. return Module["asm"]["dynCall_vifff"].apply(null, arguments);
  28309. });
  28310. var dynCall_viffff = Module["dynCall_viffff"] = (function() {
  28311. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28312. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28313. return Module["asm"]["dynCall_viffff"].apply(null, arguments);
  28314. });
  28315. var dynCall_viffffffi = Module["dynCall_viffffffi"] = (function() {
  28316. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28317. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28318. return Module["asm"]["dynCall_viffffffi"].apply(null, arguments);
  28319. });
  28320. var dynCall_vifffffi = Module["dynCall_vifffffi"] = (function() {
  28321. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28322. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28323. return Module["asm"]["dynCall_vifffffi"].apply(null, arguments);
  28324. });
  28325. var dynCall_viffffi = Module["dynCall_viffffi"] = (function() {
  28326. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28327. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28328. return Module["asm"]["dynCall_viffffi"].apply(null, arguments);
  28329. });
  28330. var dynCall_viffffii = Module["dynCall_viffffii"] = (function() {
  28331. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28332. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28333. return Module["asm"]["dynCall_viffffii"].apply(null, arguments);
  28334. });
  28335. var dynCall_viffffiifffiiiiif = Module["dynCall_viffffiifffiiiiif"] = (function() {
  28336. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28337. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28338. return Module["asm"]["dynCall_viffffiifffiiiiif"].apply(null, arguments);
  28339. });
  28340. var dynCall_vifffi = Module["dynCall_vifffi"] = (function() {
  28341. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28342. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28343. return Module["asm"]["dynCall_vifffi"].apply(null, arguments);
  28344. });
  28345. var dynCall_vifffii = Module["dynCall_vifffii"] = (function() {
  28346. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28347. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28348. return Module["asm"]["dynCall_vifffii"].apply(null, arguments);
  28349. });
  28350. var dynCall_viffi = Module["dynCall_viffi"] = (function() {
  28351. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28352. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28353. return Module["asm"]["dynCall_viffi"].apply(null, arguments);
  28354. });
  28355. var dynCall_viffifffi = Module["dynCall_viffifffi"] = (function() {
  28356. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28357. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28358. return Module["asm"]["dynCall_viffifffi"].apply(null, arguments);
  28359. });
  28360. var dynCall_viffii = Module["dynCall_viffii"] = (function() {
  28361. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28362. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28363. return Module["asm"]["dynCall_viffii"].apply(null, arguments);
  28364. });
  28365. var dynCall_viffiifffffiii = Module["dynCall_viffiifffffiii"] = (function() {
  28366. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28367. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28368. return Module["asm"]["dynCall_viffiifffffiii"].apply(null, arguments);
  28369. });
  28370. var dynCall_viffiifffiii = Module["dynCall_viffiifffiii"] = (function() {
  28371. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28372. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28373. return Module["asm"]["dynCall_viffiifffiii"].apply(null, arguments);
  28374. });
  28375. var dynCall_viffiii = Module["dynCall_viffiii"] = (function() {
  28376. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28377. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28378. return Module["asm"]["dynCall_viffiii"].apply(null, arguments);
  28379. });
  28380. var dynCall_viffiiiif = Module["dynCall_viffiiiif"] = (function() {
  28381. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28382. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28383. return Module["asm"]["dynCall_viffiiiif"].apply(null, arguments);
  28384. });
  28385. var dynCall_vifi = Module["dynCall_vifi"] = (function() {
  28386. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28387. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28388. return Module["asm"]["dynCall_vifi"].apply(null, arguments);
  28389. });
  28390. var dynCall_vififi = Module["dynCall_vififi"] = (function() {
  28391. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28392. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28393. return Module["asm"]["dynCall_vififi"].apply(null, arguments);
  28394. });
  28395. var dynCall_vifii = Module["dynCall_vifii"] = (function() {
  28396. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28397. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28398. return Module["asm"]["dynCall_vifii"].apply(null, arguments);
  28399. });
  28400. var dynCall_vifiii = Module["dynCall_vifiii"] = (function() {
  28401. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28402. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28403. return Module["asm"]["dynCall_vifiii"].apply(null, arguments);
  28404. });
  28405. var dynCall_vifiiii = Module["dynCall_vifiiii"] = (function() {
  28406. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28407. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28408. return Module["asm"]["dynCall_vifiiii"].apply(null, arguments);
  28409. });
  28410. var dynCall_vifiiiii = Module["dynCall_vifiiiii"] = (function() {
  28411. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28412. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28413. return Module["asm"]["dynCall_vifiiiii"].apply(null, arguments);
  28414. });
  28415. var dynCall_vii = Module["dynCall_vii"] = (function() {
  28416. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28417. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28418. return Module["asm"]["dynCall_vii"].apply(null, arguments);
  28419. });
  28420. var dynCall_viid = Module["dynCall_viid"] = (function() {
  28421. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28422. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28423. return Module["asm"]["dynCall_viid"].apply(null, arguments);
  28424. });
  28425. var dynCall_viidd = Module["dynCall_viidd"] = (function() {
  28426. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28427. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28428. return Module["asm"]["dynCall_viidd"].apply(null, arguments);
  28429. });
  28430. var dynCall_viidi = Module["dynCall_viidi"] = (function() {
  28431. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28432. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28433. return Module["asm"]["dynCall_viidi"].apply(null, arguments);
  28434. });
  28435. var dynCall_viidii = Module["dynCall_viidii"] = (function() {
  28436. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28437. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28438. return Module["asm"]["dynCall_viidii"].apply(null, arguments);
  28439. });
  28440. var dynCall_viif = Module["dynCall_viif"] = (function() {
  28441. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28442. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28443. return Module["asm"]["dynCall_viif"].apply(null, arguments);
  28444. });
  28445. var dynCall_viiff = Module["dynCall_viiff"] = (function() {
  28446. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28447. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28448. return Module["asm"]["dynCall_viiff"].apply(null, arguments);
  28449. });
  28450. var dynCall_viifff = Module["dynCall_viifff"] = (function() {
  28451. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28452. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28453. return Module["asm"]["dynCall_viifff"].apply(null, arguments);
  28454. });
  28455. var dynCall_viifffi = Module["dynCall_viifffi"] = (function() {
  28456. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28457. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28458. return Module["asm"]["dynCall_viifffi"].apply(null, arguments);
  28459. });
  28460. var dynCall_viiffi = Module["dynCall_viiffi"] = (function() {
  28461. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28462. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28463. return Module["asm"]["dynCall_viiffi"].apply(null, arguments);
  28464. });
  28465. var dynCall_viiffii = Module["dynCall_viiffii"] = (function() {
  28466. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28467. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28468. return Module["asm"]["dynCall_viiffii"].apply(null, arguments);
  28469. });
  28470. var dynCall_viifi = Module["dynCall_viifi"] = (function() {
  28471. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28472. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28473. return Module["asm"]["dynCall_viifi"].apply(null, arguments);
  28474. });
  28475. var dynCall_viifii = Module["dynCall_viifii"] = (function() {
  28476. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28477. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28478. return Module["asm"]["dynCall_viifii"].apply(null, arguments);
  28479. });
  28480. var dynCall_viifiii = Module["dynCall_viifiii"] = (function() {
  28481. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28482. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28483. return Module["asm"]["dynCall_viifiii"].apply(null, arguments);
  28484. });
  28485. var dynCall_viifiiii = Module["dynCall_viifiiii"] = (function() {
  28486. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28487. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28488. return Module["asm"]["dynCall_viifiiii"].apply(null, arguments);
  28489. });
  28490. var dynCall_viii = Module["dynCall_viii"] = (function() {
  28491. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28492. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28493. return Module["asm"]["dynCall_viii"].apply(null, arguments);
  28494. });
  28495. var dynCall_viiidi = Module["dynCall_viiidi"] = (function() {
  28496. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28497. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28498. return Module["asm"]["dynCall_viiidi"].apply(null, arguments);
  28499. });
  28500. var dynCall_viiif = Module["dynCall_viiif"] = (function() {
  28501. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28502. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28503. return Module["asm"]["dynCall_viiif"].apply(null, arguments);
  28504. });
  28505. var dynCall_viiiffffi = Module["dynCall_viiiffffi"] = (function() {
  28506. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28507. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28508. return Module["asm"]["dynCall_viiiffffi"].apply(null, arguments);
  28509. });
  28510. var dynCall_viiifffi = Module["dynCall_viiifffi"] = (function() {
  28511. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28512. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28513. return Module["asm"]["dynCall_viiifffi"].apply(null, arguments);
  28514. });
  28515. var dynCall_viiiffi = Module["dynCall_viiiffi"] = (function() {
  28516. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28517. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28518. return Module["asm"]["dynCall_viiiffi"].apply(null, arguments);
  28519. });
  28520. var dynCall_viiiffii = Module["dynCall_viiiffii"] = (function() {
  28521. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28522. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28523. return Module["asm"]["dynCall_viiiffii"].apply(null, arguments);
  28524. });
  28525. var dynCall_viiifi = Module["dynCall_viiifi"] = (function() {
  28526. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28527. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28528. return Module["asm"]["dynCall_viiifi"].apply(null, arguments);
  28529. });
  28530. var dynCall_viiififfi = Module["dynCall_viiififfi"] = (function() {
  28531. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28532. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28533. return Module["asm"]["dynCall_viiififfi"].apply(null, arguments);
  28534. });
  28535. var dynCall_viiififi = Module["dynCall_viiififi"] = (function() {
  28536. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28537. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28538. return Module["asm"]["dynCall_viiififi"].apply(null, arguments);
  28539. });
  28540. var dynCall_viiifii = Module["dynCall_viiifii"] = (function() {
  28541. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28542. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28543. return Module["asm"]["dynCall_viiifii"].apply(null, arguments);
  28544. });
  28545. var dynCall_viiifiii = Module["dynCall_viiifiii"] = (function() {
  28546. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28547. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28548. return Module["asm"]["dynCall_viiifiii"].apply(null, arguments);
  28549. });
  28550. var dynCall_viiifiiiii = Module["dynCall_viiifiiiii"] = (function() {
  28551. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28552. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28553. return Module["asm"]["dynCall_viiifiiiii"].apply(null, arguments);
  28554. });
  28555. var dynCall_viiii = Module["dynCall_viiii"] = (function() {
  28556. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28557. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28558. return Module["asm"]["dynCall_viiii"].apply(null, arguments);
  28559. });
  28560. var dynCall_viiiiddi = Module["dynCall_viiiiddi"] = (function() {
  28561. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28562. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28563. return Module["asm"]["dynCall_viiiiddi"].apply(null, arguments);
  28564. });
  28565. var dynCall_viiiif = Module["dynCall_viiiif"] = (function() {
  28566. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28567. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28568. return Module["asm"]["dynCall_viiiif"].apply(null, arguments);
  28569. });
  28570. var dynCall_viiiiffi = Module["dynCall_viiiiffi"] = (function() {
  28571. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28572. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28573. return Module["asm"]["dynCall_viiiiffi"].apply(null, arguments);
  28574. });
  28575. var dynCall_viiiifi = Module["dynCall_viiiifi"] = (function() {
  28576. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28577. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28578. return Module["asm"]["dynCall_viiiifi"].apply(null, arguments);
  28579. });
  28580. var dynCall_viiiififfi = Module["dynCall_viiiififfi"] = (function() {
  28581. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28582. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28583. return Module["asm"]["dynCall_viiiififfi"].apply(null, arguments);
  28584. });
  28585. var dynCall_viiiifii = Module["dynCall_viiiifii"] = (function() {
  28586. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28587. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28588. return Module["asm"]["dynCall_viiiifii"].apply(null, arguments);
  28589. });
  28590. var dynCall_viiiifiifi = Module["dynCall_viiiifiifi"] = (function() {
  28591. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28592. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28593. return Module["asm"]["dynCall_viiiifiifi"].apply(null, arguments);
  28594. });
  28595. var dynCall_viiiifiii = Module["dynCall_viiiifiii"] = (function() {
  28596. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28597. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28598. return Module["asm"]["dynCall_viiiifiii"].apply(null, arguments);
  28599. });
  28600. var dynCall_viiiifiiii = Module["dynCall_viiiifiiii"] = (function() {
  28601. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28602. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28603. return Module["asm"]["dynCall_viiiifiiii"].apply(null, arguments);
  28604. });
  28605. var dynCall_viiiifiiiii = Module["dynCall_viiiifiiiii"] = (function() {
  28606. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28607. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28608. return Module["asm"]["dynCall_viiiifiiiii"].apply(null, arguments);
  28609. });
  28610. var dynCall_viiiifiiiiif = Module["dynCall_viiiifiiiiif"] = (function() {
  28611. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28612. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28613. return Module["asm"]["dynCall_viiiifiiiiif"].apply(null, arguments);
  28614. });
  28615. var dynCall_viiiifiiiiiiii = Module["dynCall_viiiifiiiiiiii"] = (function() {
  28616. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28617. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28618. return Module["asm"]["dynCall_viiiifiiiiiiii"].apply(null, arguments);
  28619. });
  28620. var dynCall_viiiii = Module["dynCall_viiiii"] = (function() {
  28621. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28622. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28623. return Module["asm"]["dynCall_viiiii"].apply(null, arguments);
  28624. });
  28625. var dynCall_viiiiif = Module["dynCall_viiiiif"] = (function() {
  28626. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28627. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28628. return Module["asm"]["dynCall_viiiiif"].apply(null, arguments);
  28629. });
  28630. var dynCall_viiiiifffi = Module["dynCall_viiiiifffi"] = (function() {
  28631. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28632. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28633. return Module["asm"]["dynCall_viiiiifffi"].apply(null, arguments);
  28634. });
  28635. var dynCall_viiiiiffi = Module["dynCall_viiiiiffi"] = (function() {
  28636. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28637. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28638. return Module["asm"]["dynCall_viiiiiffi"].apply(null, arguments);
  28639. });
  28640. var dynCall_viiiiiffii = Module["dynCall_viiiiiffii"] = (function() {
  28641. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28642. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28643. return Module["asm"]["dynCall_viiiiiffii"].apply(null, arguments);
  28644. });
  28645. var dynCall_viiiiifi = Module["dynCall_viiiiifi"] = (function() {
  28646. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28647. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28648. return Module["asm"]["dynCall_viiiiifi"].apply(null, arguments);
  28649. });
  28650. var dynCall_viiiiifii = Module["dynCall_viiiiifii"] = (function() {
  28651. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28652. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28653. return Module["asm"]["dynCall_viiiiifii"].apply(null, arguments);
  28654. });
  28655. var dynCall_viiiiii = Module["dynCall_viiiiii"] = (function() {
  28656. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28657. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28658. return Module["asm"]["dynCall_viiiiii"].apply(null, arguments);
  28659. });
  28660. var dynCall_viiiiiif = Module["dynCall_viiiiiif"] = (function() {
  28661. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28662. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28663. return Module["asm"]["dynCall_viiiiiif"].apply(null, arguments);
  28664. });
  28665. var dynCall_viiiiiifddfiii = Module["dynCall_viiiiiifddfiii"] = (function() {
  28666. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28667. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28668. return Module["asm"]["dynCall_viiiiiifddfiii"].apply(null, arguments);
  28669. });
  28670. var dynCall_viiiiiiffffiii = Module["dynCall_viiiiiiffffiii"] = (function() {
  28671. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28672. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28673. return Module["asm"]["dynCall_viiiiiiffffiii"].apply(null, arguments);
  28674. });
  28675. var dynCall_viiiiiifi = Module["dynCall_viiiiiifi"] = (function() {
  28676. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28677. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28678. return Module["asm"]["dynCall_viiiiiifi"].apply(null, arguments);
  28679. });
  28680. var dynCall_viiiiiifiifiii = Module["dynCall_viiiiiifiifiii"] = (function() {
  28681. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28682. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28683. return Module["asm"]["dynCall_viiiiiifiifiii"].apply(null, arguments);
  28684. });
  28685. var dynCall_viiiiiifjjfiii = Module["dynCall_viiiiiifjjfiii"] = (function() {
  28686. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28687. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28688. return Module["asm"]["dynCall_viiiiiifjjfiii"].apply(null, arguments);
  28689. });
  28690. var dynCall_viiiiiii = Module["dynCall_viiiiiii"] = (function() {
  28691. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28692. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28693. return Module["asm"]["dynCall_viiiiiii"].apply(null, arguments);
  28694. });
  28695. var dynCall_viiiiiiifddfii = Module["dynCall_viiiiiiifddfii"] = (function() {
  28696. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28697. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28698. return Module["asm"]["dynCall_viiiiiiifddfii"].apply(null, arguments);
  28699. });
  28700. var dynCall_viiiiiiiffffii = Module["dynCall_viiiiiiiffffii"] = (function() {
  28701. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28702. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28703. return Module["asm"]["dynCall_viiiiiiiffffii"].apply(null, arguments);
  28704. });
  28705. var dynCall_viiiiiiifiifii = Module["dynCall_viiiiiiifiifii"] = (function() {
  28706. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28707. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28708. return Module["asm"]["dynCall_viiiiiiifiifii"].apply(null, arguments);
  28709. });
  28710. var dynCall_viiiiiiifiii = Module["dynCall_viiiiiiifiii"] = (function() {
  28711. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28712. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28713. return Module["asm"]["dynCall_viiiiiiifiii"].apply(null, arguments);
  28714. });
  28715. var dynCall_viiiiiiifjjfii = Module["dynCall_viiiiiiifjjfii"] = (function() {
  28716. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28717. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28718. return Module["asm"]["dynCall_viiiiiiifjjfii"].apply(null, arguments);
  28719. });
  28720. var dynCall_viiiiiiii = Module["dynCall_viiiiiiii"] = (function() {
  28721. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28722. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28723. return Module["asm"]["dynCall_viiiiiiii"].apply(null, arguments);
  28724. });
  28725. var dynCall_viiiiiiiii = Module["dynCall_viiiiiiiii"] = (function() {
  28726. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28727. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28728. return Module["asm"]["dynCall_viiiiiiiii"].apply(null, arguments);
  28729. });
  28730. var dynCall_viiiiiiiiii = Module["dynCall_viiiiiiiiii"] = (function() {
  28731. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28732. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28733. return Module["asm"]["dynCall_viiiiiiiiii"].apply(null, arguments);
  28734. });
  28735. var dynCall_viiiiiiiiiii = Module["dynCall_viiiiiiiiiii"] = (function() {
  28736. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28737. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28738. return Module["asm"]["dynCall_viiiiiiiiiii"].apply(null, arguments);
  28739. });
  28740. var dynCall_viiiiiiiiiiifii = Module["dynCall_viiiiiiiiiiifii"] = (function() {
  28741. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28742. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28743. return Module["asm"]["dynCall_viiiiiiiiiiifii"].apply(null, arguments);
  28744. });
  28745. var dynCall_viiiiiiiiiiii = Module["dynCall_viiiiiiiiiiii"] = (function() {
  28746. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28747. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28748. return Module["asm"]["dynCall_viiiiiiiiiiii"].apply(null, arguments);
  28749. });
  28750. var dynCall_viiiiiiiiiiiii = Module["dynCall_viiiiiiiiiiiii"] = (function() {
  28751. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28752. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28753. return Module["asm"]["dynCall_viiiiiiiiiiiii"].apply(null, arguments);
  28754. });
  28755. var dynCall_viiiiiiiiiiiiii = Module["dynCall_viiiiiiiiiiiiii"] = (function() {
  28756. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28757. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28758. return Module["asm"]["dynCall_viiiiiiiiiiiiii"].apply(null, arguments);
  28759. });
  28760. var dynCall_viiiiiiiiiiiiiii = Module["dynCall_viiiiiiiiiiiiiii"] = (function() {
  28761. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28762. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28763. return Module["asm"]["dynCall_viiiiiiiiiiiiiii"].apply(null, arguments);
  28764. });
  28765. var dynCall_viiiiiiiiiiiiiiiiii = Module["dynCall_viiiiiiiiiiiiiiiiii"] = (function() {
  28766. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28767. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28768. return Module["asm"]["dynCall_viiiiiiiiiiiiiiiiii"].apply(null, arguments);
  28769. });
  28770. var dynCall_viiiiiiiiiji = Module["dynCall_viiiiiiiiiji"] = (function() {
  28771. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28772. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28773. return Module["asm"]["dynCall_viiiiiiiiiji"].apply(null, arguments);
  28774. });
  28775. var dynCall_viiiiiiiji = Module["dynCall_viiiiiiiji"] = (function() {
  28776. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28777. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28778. return Module["asm"]["dynCall_viiiiiiiji"].apply(null, arguments);
  28779. });
  28780. var dynCall_viiiiiiijii = Module["dynCall_viiiiiiijii"] = (function() {
  28781. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28782. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28783. return Module["asm"]["dynCall_viiiiiiijii"].apply(null, arguments);
  28784. });
  28785. var dynCall_viiiiiji = Module["dynCall_viiiiiji"] = (function() {
  28786. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28787. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28788. return Module["asm"]["dynCall_viiiiiji"].apply(null, arguments);
  28789. });
  28790. var dynCall_viiiiijii = Module["dynCall_viiiiijii"] = (function() {
  28791. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28792. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28793. return Module["asm"]["dynCall_viiiiijii"].apply(null, arguments);
  28794. });
  28795. var dynCall_viiiij = Module["dynCall_viiiij"] = (function() {
  28796. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28797. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28798. return Module["asm"]["dynCall_viiiij"].apply(null, arguments);
  28799. });
  28800. var dynCall_viiiiji = Module["dynCall_viiiiji"] = (function() {
  28801. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28802. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28803. return Module["asm"]["dynCall_viiiiji"].apply(null, arguments);
  28804. });
  28805. var dynCall_viiiijii = Module["dynCall_viiiijii"] = (function() {
  28806. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28807. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28808. return Module["asm"]["dynCall_viiiijii"].apply(null, arguments);
  28809. });
  28810. var dynCall_viiiijiiii = Module["dynCall_viiiijiiii"] = (function() {
  28811. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28812. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28813. return Module["asm"]["dynCall_viiiijiiii"].apply(null, arguments);
  28814. });
  28815. var dynCall_viiiijjiii = Module["dynCall_viiiijjiii"] = (function() {
  28816. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28817. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28818. return Module["asm"]["dynCall_viiiijjiii"].apply(null, arguments);
  28819. });
  28820. var dynCall_viiiji = Module["dynCall_viiiji"] = (function() {
  28821. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28822. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28823. return Module["asm"]["dynCall_viiiji"].apply(null, arguments);
  28824. });
  28825. var dynCall_viiijji = Module["dynCall_viiijji"] = (function() {
  28826. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28827. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28828. return Module["asm"]["dynCall_viiijji"].apply(null, arguments);
  28829. });
  28830. var dynCall_viiijjii = Module["dynCall_viiijjii"] = (function() {
  28831. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28832. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28833. return Module["asm"]["dynCall_viiijjii"].apply(null, arguments);
  28834. });
  28835. var dynCall_viiijjiii = Module["dynCall_viiijjiii"] = (function() {
  28836. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28837. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28838. return Module["asm"]["dynCall_viiijjiii"].apply(null, arguments);
  28839. });
  28840. var dynCall_viij = Module["dynCall_viij"] = (function() {
  28841. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28842. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28843. return Module["asm"]["dynCall_viij"].apply(null, arguments);
  28844. });
  28845. var dynCall_viiji = Module["dynCall_viiji"] = (function() {
  28846. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28847. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28848. return Module["asm"]["dynCall_viiji"].apply(null, arguments);
  28849. });
  28850. var dynCall_viijii = Module["dynCall_viijii"] = (function() {
  28851. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28852. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28853. return Module["asm"]["dynCall_viijii"].apply(null, arguments);
  28854. });
  28855. var dynCall_viijiiii = Module["dynCall_viijiiii"] = (function() {
  28856. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28857. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28858. return Module["asm"]["dynCall_viijiiii"].apply(null, arguments);
  28859. });
  28860. var dynCall_viijiijiii = Module["dynCall_viijiijiii"] = (function() {
  28861. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28862. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28863. return Module["asm"]["dynCall_viijiijiii"].apply(null, arguments);
  28864. });
  28865. var dynCall_viijijii = Module["dynCall_viijijii"] = (function() {
  28866. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28867. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28868. return Module["asm"]["dynCall_viijijii"].apply(null, arguments);
  28869. });
  28870. var dynCall_viijijiii = Module["dynCall_viijijiii"] = (function() {
  28871. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28872. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28873. return Module["asm"]["dynCall_viijijiii"].apply(null, arguments);
  28874. });
  28875. var dynCall_viijijj = Module["dynCall_viijijj"] = (function() {
  28876. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28877. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28878. return Module["asm"]["dynCall_viijijj"].apply(null, arguments);
  28879. });
  28880. var dynCall_viijj = Module["dynCall_viijj"] = (function() {
  28881. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28882. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28883. return Module["asm"]["dynCall_viijj"].apply(null, arguments);
  28884. });
  28885. var dynCall_viijji = Module["dynCall_viijji"] = (function() {
  28886. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28887. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28888. return Module["asm"]["dynCall_viijji"].apply(null, arguments);
  28889. });
  28890. var dynCall_viijjii = Module["dynCall_viijjii"] = (function() {
  28891. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28892. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28893. return Module["asm"]["dynCall_viijjii"].apply(null, arguments);
  28894. });
  28895. var dynCall_viijjiii = Module["dynCall_viijjiii"] = (function() {
  28896. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28897. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28898. return Module["asm"]["dynCall_viijjiii"].apply(null, arguments);
  28899. });
  28900. var dynCall_viijjji = Module["dynCall_viijjji"] = (function() {
  28901. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28902. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28903. return Module["asm"]["dynCall_viijjji"].apply(null, arguments);
  28904. });
  28905. var dynCall_vij = Module["dynCall_vij"] = (function() {
  28906. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28907. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28908. return Module["asm"]["dynCall_vij"].apply(null, arguments);
  28909. });
  28910. var dynCall_viji = Module["dynCall_viji"] = (function() {
  28911. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28912. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28913. return Module["asm"]["dynCall_viji"].apply(null, arguments);
  28914. });
  28915. var dynCall_vijii = Module["dynCall_vijii"] = (function() {
  28916. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28917. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28918. return Module["asm"]["dynCall_vijii"].apply(null, arguments);
  28919. });
  28920. var dynCall_vijiii = Module["dynCall_vijiii"] = (function() {
  28921. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28922. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28923. return Module["asm"]["dynCall_vijiii"].apply(null, arguments);
  28924. });
  28925. var dynCall_vijiji = Module["dynCall_vijiji"] = (function() {
  28926. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28927. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28928. return Module["asm"]["dynCall_vijiji"].apply(null, arguments);
  28929. });
  28930. var dynCall_vijijji = Module["dynCall_vijijji"] = (function() {
  28931. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28932. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28933. return Module["asm"]["dynCall_vijijji"].apply(null, arguments);
  28934. });
  28935. var dynCall_vijji = Module["dynCall_vijji"] = (function() {
  28936. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28937. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28938. return Module["asm"]["dynCall_vijji"].apply(null, arguments);
  28939. });
  28940. var dynCall_vijjii = Module["dynCall_vijjii"] = (function() {
  28941. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28942. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28943. return Module["asm"]["dynCall_vijjii"].apply(null, arguments);
  28944. });
  28945. var dynCall_vji = Module["dynCall_vji"] = (function() {
  28946. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28947. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28948. return Module["asm"]["dynCall_vji"].apply(null, arguments);
  28949. });
  28950. var dynCall_vjii = Module["dynCall_vjii"] = (function() {
  28951. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28952. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28953. return Module["asm"]["dynCall_vjii"].apply(null, arguments);
  28954. });
  28955. var dynCall_vjiiii = Module["dynCall_vjiiii"] = (function() {
  28956. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28957. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28958. return Module["asm"]["dynCall_vjiiii"].apply(null, arguments);
  28959. });
  28960. var dynCall_vjji = Module["dynCall_vjji"] = (function() {
  28961. assert(runtimeInitialized, "you need to wait for the runtime to be ready (e.g. wait for main() to be called)");
  28962. assert(!runtimeExited, "the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");
  28963. return Module["asm"]["dynCall_vjji"].apply(null, arguments);
  28964. });
  28965. Module["asm"] = asm;
  28966. if (!Module["intArrayFromString"]) Module["intArrayFromString"] = (function() {
  28967. abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  28968. });
  28969. if (!Module["intArrayToString"]) Module["intArrayToString"] = (function() {
  28970. abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  28971. });
  28972. Module["ccall"] = ccall;
  28973. Module["cwrap"] = cwrap;
  28974. if (!Module["setValue"]) Module["setValue"] = (function() {
  28975. abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  28976. });
  28977. if (!Module["getValue"]) Module["getValue"] = (function() {
  28978. abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  28979. });
  28980. if (!Module["allocate"]) Module["allocate"] = (function() {
  28981. abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  28982. });
  28983. if (!Module["getMemory"]) Module["getMemory"] = (function() {
  28984. abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you");
  28985. });
  28986. if (!Module["Pointer_stringify"]) Module["Pointer_stringify"] = (function() {
  28987. abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  28988. });
  28989. if (!Module["AsciiToString"]) Module["AsciiToString"] = (function() {
  28990. abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  28991. });
  28992. if (!Module["stringToAscii"]) Module["stringToAscii"] = (function() {
  28993. abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  28994. });
  28995. if (!Module["UTF8ArrayToString"]) Module["UTF8ArrayToString"] = (function() {
  28996. abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  28997. });
  28998. if (!Module["UTF8ToString"]) Module["UTF8ToString"] = (function() {
  28999. abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29000. });
  29001. if (!Module["stringToUTF8Array"]) Module["stringToUTF8Array"] = (function() {
  29002. abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29003. });
  29004. if (!Module["stringToUTF8"]) Module["stringToUTF8"] = (function() {
  29005. abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29006. });
  29007. if (!Module["lengthBytesUTF8"]) Module["lengthBytesUTF8"] = (function() {
  29008. abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29009. });
  29010. if (!Module["UTF16ToString"]) Module["UTF16ToString"] = (function() {
  29011. abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29012. });
  29013. if (!Module["stringToUTF16"]) Module["stringToUTF16"] = (function() {
  29014. abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29015. });
  29016. if (!Module["lengthBytesUTF16"]) Module["lengthBytesUTF16"] = (function() {
  29017. abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29018. });
  29019. if (!Module["UTF32ToString"]) Module["UTF32ToString"] = (function() {
  29020. abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29021. });
  29022. if (!Module["stringToUTF32"]) Module["stringToUTF32"] = (function() {
  29023. abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29024. });
  29025. if (!Module["lengthBytesUTF32"]) Module["lengthBytesUTF32"] = (function() {
  29026. abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29027. });
  29028. if (!Module["allocateUTF8"]) Module["allocateUTF8"] = (function() {
  29029. abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29030. });
  29031. Module["stackTrace"] = stackTrace;
  29032. if (!Module["addOnPreRun"]) Module["addOnPreRun"] = (function() {
  29033. abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29034. });
  29035. if (!Module["addOnInit"]) Module["addOnInit"] = (function() {
  29036. abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29037. });
  29038. if (!Module["addOnPreMain"]) Module["addOnPreMain"] = (function() {
  29039. abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29040. });
  29041. if (!Module["addOnExit"]) Module["addOnExit"] = (function() {
  29042. abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29043. });
  29044. if (!Module["addOnPostRun"]) Module["addOnPostRun"] = (function() {
  29045. abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29046. });
  29047. if (!Module["writeStringToMemory"]) Module["writeStringToMemory"] = (function() {
  29048. abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29049. });
  29050. if (!Module["writeArrayToMemory"]) Module["writeArrayToMemory"] = (function() {
  29051. abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29052. });
  29053. if (!Module["writeAsciiToMemory"]) Module["writeAsciiToMemory"] = (function() {
  29054. abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29055. });
  29056. Module["addRunDependency"] = addRunDependency;
  29057. Module["removeRunDependency"] = removeRunDependency;
  29058. if (!Module["ENV"]) Module["ENV"] = (function() {
  29059. abort("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29060. });
  29061. if (!Module["FS"]) Module["FS"] = (function() {
  29062. abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29063. });
  29064. if (!Module["FS_createFolder"]) Module["FS_createFolder"] = (function() {
  29065. abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you");
  29066. });
  29067. Module["FS_createPath"] = FS.createPath;
  29068. Module["FS_createDataFile"] = FS.createDataFile;
  29069. if (!Module["FS_createPreloadedFile"]) Module["FS_createPreloadedFile"] = (function() {
  29070. abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you");
  29071. });
  29072. if (!Module["FS_createLazyFile"]) Module["FS_createLazyFile"] = (function() {
  29073. abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you");
  29074. });
  29075. if (!Module["FS_createLink"]) Module["FS_createLink"] = (function() {
  29076. abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you");
  29077. });
  29078. if (!Module["FS_createDevice"]) Module["FS_createDevice"] = (function() {
  29079. abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you");
  29080. });
  29081. if (!Module["FS_unlink"]) Module["FS_unlink"] = (function() {
  29082. abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you");
  29083. });
  29084. if (!Module["GL"]) Module["GL"] = (function() {
  29085. abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29086. });
  29087. if (!Module["staticAlloc"]) Module["staticAlloc"] = (function() {
  29088. abort("'staticAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29089. });
  29090. if (!Module["dynamicAlloc"]) Module["dynamicAlloc"] = (function() {
  29091. abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29092. });
  29093. if (!Module["warnOnce"]) Module["warnOnce"] = (function() {
  29094. abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29095. });
  29096. if (!Module["loadDynamicLibrary"]) Module["loadDynamicLibrary"] = (function() {
  29097. abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29098. });
  29099. if (!Module["loadWebAssemblyModule"]) Module["loadWebAssemblyModule"] = (function() {
  29100. abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29101. });
  29102. if (!Module["getLEB"]) Module["getLEB"] = (function() {
  29103. abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29104. });
  29105. if (!Module["getFunctionTables"]) Module["getFunctionTables"] = (function() {
  29106. abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29107. });
  29108. if (!Module["alignFunctionTables"]) Module["alignFunctionTables"] = (function() {
  29109. abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29110. });
  29111. if (!Module["registerFunctions"]) Module["registerFunctions"] = (function() {
  29112. abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29113. });
  29114. if (!Module["addFunction"]) Module["addFunction"] = (function() {
  29115. abort("'addFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29116. });
  29117. if (!Module["removeFunction"]) Module["removeFunction"] = (function() {
  29118. abort("'removeFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29119. });
  29120. if (!Module["getFuncWrapper"]) Module["getFuncWrapper"] = (function() {
  29121. abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29122. });
  29123. if (!Module["prettyPrint"]) Module["prettyPrint"] = (function() {
  29124. abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29125. });
  29126. if (!Module["makeBigInt"]) Module["makeBigInt"] = (function() {
  29127. abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29128. });
  29129. if (!Module["dynCall"]) Module["dynCall"] = (function() {
  29130. abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29131. });
  29132. if (!Module["getCompilerSetting"]) Module["getCompilerSetting"] = (function() {
  29133. abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29134. });
  29135. if (!Module["stackSave"]) Module["stackSave"] = (function() {
  29136. abort("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29137. });
  29138. if (!Module["stackRestore"]) Module["stackRestore"] = (function() {
  29139. abort("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29140. });
  29141. if (!Module["stackAlloc"]) Module["stackAlloc"] = (function() {
  29142. abort("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29143. });
  29144. if (!Module["establishStackSpace"]) Module["establishStackSpace"] = (function() {
  29145. abort("'establishStackSpace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29146. });
  29147. if (!Module["print"]) Module["print"] = (function() {
  29148. abort("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29149. });
  29150. if (!Module["printErr"]) Module["printErr"] = (function() {
  29151. abort("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29152. });
  29153. Module["writeStackCookie"] = writeStackCookie;
  29154. Module["checkStackCookie"] = checkStackCookie;
  29155. if (!Module["abortStackOverflow"]) Module["abortStackOverflow"] = (function() {
  29156. abort("'abortStackOverflow' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29157. });
  29158. if (!Module["ALLOC_NORMAL"]) Object.defineProperty(Module, "ALLOC_NORMAL", {
  29159. get: (function() {
  29160. abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29161. })
  29162. });
  29163. if (!Module["ALLOC_STACK"]) Object.defineProperty(Module, "ALLOC_STACK", {
  29164. get: (function() {
  29165. abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29166. })
  29167. });
  29168. if (!Module["ALLOC_STATIC"]) Object.defineProperty(Module, "ALLOC_STATIC", {
  29169. get: (function() {
  29170. abort("'ALLOC_STATIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29171. })
  29172. });
  29173. if (!Module["ALLOC_DYNAMIC"]) Object.defineProperty(Module, "ALLOC_DYNAMIC", {
  29174. get: (function() {
  29175. abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29176. })
  29177. });
  29178. if (!Module["ALLOC_NONE"]) Object.defineProperty(Module, "ALLOC_NONE", {
  29179. get: (function() {
  29180. abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)");
  29181. })
  29182. });
  29183. Module["then"] = (function(func) {
  29184. if (Module["calledRun"]) {
  29185. func(Module);
  29186. } else {
  29187. var old = Module["onRuntimeInitialized"];
  29188. Module["onRuntimeInitialized"] = (function() {
  29189. if (old) old();
  29190. func(Module);
  29191. });
  29192. }
  29193. return Module;
  29194. });
  29195. function ExitStatus(status) {
  29196. this.name = "ExitStatus";
  29197. this.message = "Program terminated with exit(" + status + ")";
  29198. this.status = status;
  29199. }
  29200. ExitStatus.prototype = new Error;
  29201. ExitStatus.prototype.constructor = ExitStatus;
  29202. var initialStackTop;
  29203. var calledMain = false;
  29204. dependenciesFulfilled = function runCaller() {
  29205. if (!Module["calledRun"]) run();
  29206. if (!Module["calledRun"]) dependenciesFulfilled = runCaller;
  29207. };
  29208. Module["callMain"] = function callMain(args) {
  29209. assert(runDependencies == 0, "cannot call main when async dependencies remain! (listen on __ATMAIN__)");
  29210. assert(__ATPRERUN__.length == 0, "cannot call main when preRun functions remain to be called");
  29211. args = args || [];
  29212. ensureInitRuntime();
  29213. var argc = args.length + 1;
  29214. var argv = stackAlloc((argc + 1) * 4);
  29215. HEAP32[argv >> 2] = allocateUTF8OnStack(Module["thisProgram"]);
  29216. for (var i = 1; i < argc; i++) {
  29217. HEAP32[(argv >> 2) + i] = allocateUTF8OnStack(args[i - 1]);
  29218. }
  29219. HEAP32[(argv >> 2) + argc] = 0;
  29220. try {
  29221. var ret = Module["_main"](argc, argv, 0);
  29222. exit(ret, true);
  29223. } catch (e) {
  29224. if (e instanceof ExitStatus) {
  29225. return;
  29226. } else if (e == "SimulateInfiniteLoop") {
  29227. Module["noExitRuntime"] = true;
  29228. return;
  29229. } else {
  29230. var toLog = e;
  29231. if (e && typeof e === "object" && e.stack) {
  29232. toLog = [ e, e.stack ];
  29233. }
  29234. err("exception thrown: " + toLog);
  29235. Module["quit"](1, e);
  29236. }
  29237. } finally {
  29238. calledMain = true;
  29239. }
  29240. };
  29241. function run(args) {
  29242. args = args || Module["arguments"];
  29243. if (runDependencies > 0) {
  29244. return;
  29245. }
  29246. writeStackCookie();
  29247. preRun();
  29248. if (runDependencies > 0) return;
  29249. if (Module["calledRun"]) return;
  29250. function doRun() {
  29251. if (Module["calledRun"]) return;
  29252. Module["calledRun"] = true;
  29253. if (ABORT) return;
  29254. ensureInitRuntime();
  29255. preMain();
  29256. if (Module["onRuntimeInitialized"]) Module["onRuntimeInitialized"]();
  29257. if (Module["_main"] && shouldRunNow) Module["callMain"](args);
  29258. postRun();
  29259. }
  29260. if (Module["setStatus"]) {
  29261. Module["setStatus"]("Running...");
  29262. setTimeout((function() {
  29263. setTimeout((function() {
  29264. Module["setStatus"]("");
  29265. }), 1);
  29266. doRun();
  29267. }), 1);
  29268. } else {
  29269. doRun();
  29270. }
  29271. checkStackCookie();
  29272. }
  29273. Module["run"] = run;
  29274. function checkUnflushedContent() {
  29275. var print = out;
  29276. var printErr = err;
  29277. var has = false;
  29278. out = err = (function(x) {
  29279. has = true;
  29280. });
  29281. try {
  29282. var flush = Module["_fflush"];
  29283. if (flush) flush(0);
  29284. var hasFS = true;
  29285. if (hasFS) {
  29286. [ "stdout", "stderr" ].forEach((function(name) {
  29287. var info = FS.analyzePath("/dev/" + name);
  29288. if (!info) return;
  29289. var stream = info.object;
  29290. var rdev = stream.rdev;
  29291. var tty = TTY.ttys[rdev];
  29292. if (tty && tty.output && tty.output.length) {
  29293. has = true;
  29294. }
  29295. }));
  29296. }
  29297. } catch (e) {}
  29298. out = print;
  29299. err = printErr;
  29300. if (has) {
  29301. warnOnce("stdio streams had content in them that was not flushed. you should set NO_EXIT_RUNTIME to 0 (see the FAQ), or make sure to emit a newline when you printf etc.");
  29302. }
  29303. }
  29304. function exit(status, implicit) {
  29305. checkUnflushedContent();
  29306. if (implicit && Module["noExitRuntime"] && status === 0) {
  29307. return;
  29308. }
  29309. if (Module["noExitRuntime"]) {
  29310. if (!implicit) {
  29311. err("exit(" + status + ") called, but NO_EXIT_RUNTIME is set, so halting execution but not exiting the runtime or preventing further async execution (build with NO_EXIT_RUNTIME=0, if you want a true shutdown)");
  29312. }
  29313. } else {
  29314. ABORT = true;
  29315. EXITSTATUS = status;
  29316. STACKTOP = initialStackTop;
  29317. exitRuntime();
  29318. if (Module["onExit"]) Module["onExit"](status);
  29319. }
  29320. Module["quit"](status, new ExitStatus(status));
  29321. }
  29322. var abortDecorators = [];
  29323. function abort(what) {
  29324. if (Module["onAbort"]) {
  29325. Module["onAbort"](what);
  29326. }
  29327. if (what !== undefined) {
  29328. out(what);
  29329. err(what);
  29330. what = JSON.stringify(what);
  29331. } else {
  29332. what = "";
  29333. }
  29334. ABORT = true;
  29335. EXITSTATUS = 1;
  29336. var extra = "";
  29337. var output = "abort(" + what + ") at " + stackTrace() + extra;
  29338. if (abortDecorators) {
  29339. abortDecorators.forEach((function(decorator) {
  29340. output = decorator(output, what);
  29341. }));
  29342. }
  29343. throw output;
  29344. }
  29345. Module["abort"] = abort;
  29346. if (Module["preInit"]) {
  29347. if (typeof Module["preInit"] == "function") Module["preInit"] = [ Module["preInit"] ];
  29348. while (Module["preInit"].length > 0) {
  29349. Module["preInit"].pop()();
  29350. }
  29351. }
  29352. var shouldRunNow = true;
  29353. if (Module["noInitialRun"]) {
  29354. shouldRunNow = false;
  29355. }
  29356. Module["noExitRuntime"] = true;
  29357. run();
  29358. return UnityModule;
  29359. }
  29360. );
  29361. })();
  29362. if (typeof exports === 'object' && typeof module === 'object')
  29363. module.exports = UnityModule;
  29364. else if (typeof define === 'function' && define['amd'])
  29365. define([], function() { return UnityModule; });
  29366. else if (typeof exports === 'object')
  29367. exports["UnityModule"] = UnityModule;